\startluacode

local function botthing(characters,target,base,accent)
--    if not characters[target] then
        local data1 = characters[base]
        local data2 = characters[accent]
        if data1 and data2 then
            characters[target] = { -- "Ḥ"
                height   = data1.height,
                depth    = (data1.depth or 0) + 0.5*(data2.height or 0),
                width    = data1.width,
                unicode  = target,
                commands = {
                    { "slot", 0, 0x048 },
                    { "left", 0.5*(data2.width  or 0) + 0.5*(data1.width  or 0)},
                    { "down", 0.2*(data2.height or 0) +     (data1.height or 0) },
                    { "slot", 0, 0x2D9, },
                },
            }
        end
--    end
end

local function topthing(characters,target,base,accent)
--    if not characters[target] then
        local data1 = characters[base]
        local data2 = characters[accent]
        if data1 and data2 then
            characters[target] = { -- "Ḥ"
                height   = (data1.height or 0) + 0.5*(data2.height or 0),
                depth    = data1.depth,
                width    = data1.width,
                unicode  = target,
                commands = {
                    { "slot", 0, 0x048 },
                    { "left", 0.5*(data2.width  or 0) + 0.5*(data1.width  or 0) },
                    { "up",   0.5*(data2.height or 0) },
                    { "slot", 0, 0x2D9, },
                },
            }
        end
--    end
end

local function initialize(tfmdata,value)
    if value then
        botthing(tfmdata.characters,0x1E24,0x048,0x2D9)
--        topthing(tfmdata.characters,0x1E24,0x048,0x2D9)
    end
end
local specification = {
    name        = "idrify",
    description = "idrify",
    manipulators = {
        base = initialize,
        node = initialize,
    }
}

fonts.handlers.otf.features.register(specification)
\stopluacode

\definefontfeature[default][default][idrify=yes]

\definedfont[Serif*default @ 11pt]

\showglyphs

Ḥ

\stoptext
