keymacro_add
libedit_private void keymacro_add(EditLine *, const wchar_t *,
keymacro_add(el, buf, keymacro_map_cmd(el, (int) map[i]), XK_CMD);
keymacro_add(el, buf, keymacro_map_cmd(el, EM_EXCHANGE_MARK), XK_CMD);
keymacro_add(el, in, keymacro_map_str(el, out), ntype);
keymacro_add(el, in, keymacro_map_cmd(el, cmd), ntype);
keymacro_add(el, strA, &arrow[A_K_UP].fun, arrow[A_K_UP].type);
keymacro_add(el, strB, &arrow[A_K_DN].fun, arrow[A_K_DN].type);
keymacro_add(el, strC, &arrow[A_K_RT].fun, arrow[A_K_RT].type);
keymacro_add(el, strD, &arrow[A_K_LT].fun, arrow[A_K_LT].type);
keymacro_add(el, strH, &arrow[A_K_HO].fun, arrow[A_K_HO].type);
keymacro_add(el, strF, &arrow[A_K_EN].fun, arrow[A_K_EN].type);
keymacro_add(el, stOA, &arrow[A_K_UP].fun, arrow[A_K_UP].type);
keymacro_add(el, stOB, &arrow[A_K_DN].fun, arrow[A_K_DN].type);
keymacro_add(el, stOC, &arrow[A_K_RT].fun, arrow[A_K_RT].type);
keymacro_add(el, stOD, &arrow[A_K_LT].fun, arrow[A_K_LT].type);
keymacro_add(el, stOH, &arrow[A_K_HO].fun, arrow[A_K_HO].type);
keymacro_add(el, stOF, &arrow[A_K_EN].fun, arrow[A_K_EN].type);
keymacro_add(el, &strA[1], &arrow[A_K_UP].fun, arrow[A_K_UP].type);
keymacro_add(el, &strB[1], &arrow[A_K_DN].fun, arrow[A_K_DN].type);
keymacro_add(el, &strC[1], &arrow[A_K_RT].fun, arrow[A_K_RT].type);
keymacro_add(el, &strD[1], &arrow[A_K_LT].fun, arrow[A_K_LT].type);
keymacro_add(el, &strH[1], &arrow[A_K_HO].fun, arrow[A_K_HO].type);
keymacro_add(el, &strF[1], &arrow[A_K_EN].fun, arrow[A_K_EN].type);
keymacro_add(el, &stOA[1], &arrow[A_K_UP].fun, arrow[A_K_UP].type);
keymacro_add(el, &stOB[1], &arrow[A_K_DN].fun, arrow[A_K_DN].type);
keymacro_add(el, &stOC[1], &arrow[A_K_RT].fun, arrow[A_K_RT].type);
keymacro_add(el, &stOD[1], &arrow[A_K_LT].fun, arrow[A_K_LT].type);
keymacro_add(el, &stOH[1], &arrow[A_K_HO].fun, arrow[A_K_HO].type);
keymacro_add(el, &stOF[1], &arrow[A_K_EN].fun, arrow[A_K_EN].type);
keymacro_add(el, px, &arrow[i].fun,
keymacro_add(el, px, &arrow[i].fun,