Good day!
Let's look at grub_cmdline_get() func code:
/* normal/cmdline.c - line 300 */
plen = grub_utf8_strlen (prompt);
lpos = llen = 0;
buf[0] = '\0';
if ((grub_getxy () >> 8) != 0)
grub_putchar ('\n');
grub_printf (prompt);
xpos = plen;
Idea is very simple - we move cursor `plen` times.
All is OK when `promt` contains only ASCII symblos. If we use UTF8 strings -
we get incorrect cursor moving (grub_strlen returns incorrect length due to
UTF-8 symbol floating byte size).
There are two ways:
* encode smth like grub_utf8_strlen ()
* modify grub_strlen () func and add this feature
I do my best to solve this problem, but what way do you recommend?
Thanks
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel