• Re: ksh93u+m locale issue with select statement

    From Martijn Dekker@martijn@inlv.demon.nl to comp.unix.shell on Wed Feb 25 00:39:12 2026
    From Newsgroup: comp.unix.shell

    Op 11-01-2026 om 04:51 schreef Janis Papanagnou:
    Kornshell-adoesn't-aseem-ato-ahandle-aumlauts-aor-aother-anon-ASCII-aUnicode characters-acorrectly-awith-athe-a'select'-astatement;

    The code for showing the menu is not aware of multibyte locales. Thanks for the report. I've fixed it for the next release. See: https://github.com/ksh93/ksh/commit/18e4cbc1

    Observed in ksh version AJM 93u+m/1.0.8 2024-01-01.

    FYI, you're two point releases behind.
    --
    || modernish -- harness the shell
    || https://github.com/modernish/modernish
    ||
    || KornShell lives!
    || https://github.com/ksh93/ksh
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Janis Papanagnou@janis_papanagnou+ng@hotmail.com to comp.unix.shell on Wed Feb 25 03:06:35 2026
    From Newsgroup: comp.unix.shell

    Thanks for fixing the select issue!

    On 2026-02-25 01:39, Martijn Dekker wrote:
    Op 11-01-2026 om 04:51 schreef Janis Papanagnou:
    [...]
    Observed in ksh version AJM 93u+m/1.0.8 2024-01-01.

    FYI, you're two point releases behind.

    Thanks. - That's probably because since my distro meanwhile supports
    "u+m" already I'm just using what's provided.[*]

    But maybe I should again get the newest one and ignore what comes out
    of the box with my system? (I think if any of the two other issues I
    have with "u+m" would get fixed then I'd do that, but I recall you
    haven't intended to change these[**], so there's [at the moment] no
    pressing need to change to the latest release.)

    Janis

    [*] If it were still an "u+" I'd certainly get "u+m" from a more up to
    date source since I prefer that. I'm glad that "u+m" made it into the
    distros.

    [**] One was the vi-mode expansion of $(cmd) when typing a '*', which
    was already _existing_ in original "u+" (and which, sadly, you removed
    from "u+m"); I had used that very often and I'm really missing it. :-/

    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Richard Harnden@richard.nospam@gmail.invalid to comp.unix.shell on Tue Mar 17 10:55:21 2026
    From Newsgroup: comp.unix.shell

    On 25/02/2026 00:39, Martijn Dekker wrote:
    Op 11-01-2026 om 04:51 schreef Janis Papanagnou:
    Kornshell-adoesn't-aseem-ato-ahandle-aumlauts-aor-aother-anon-ASCII-aUnicode >> characters-acorrectly-awith-athe-a'select'-astatement;

    The code for showing the menu is not aware of multibyte locales. Thanks
    for the report. I've fixed it for the next release. See: https://github.com/ksh93/ksh/commit/18e4cbc1

    Observed in ksh version AJM 93u+m/1.0.8 2024-01-01.

    FYI, you're two point releases behind.


    Same for printf "%-*s" - counts octets, not printable characters.

    93u+m/1.0.6, so way behind.



    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From Geoff Clare@geoff@clare.See-My-Signature.invalid to comp.unix.shell on Tue Mar 17 13:31:17 2026
    From Newsgroup: comp.unix.shell

    Richard Harnden wrote:

    Same for printf "%-*s" - counts octets, not printable characters.

    That's what printf is supposed to do, as POSIX requires that field
    widths specify the number of bytes (I assume for compatibility with
    the printf() C function).
    --
    Geoff Clare <netnews@gclare.org.uk>
    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From Richard Harnden@richard.nospam@gmail.invalid to comp.unix.shell on Tue Mar 17 14:09:08 2026
    From Newsgroup: comp.unix.shell

    On 17/03/2026 13:31, Geoff Clare wrote:
    Richard Harnden wrote:

    Same for printf "%-*s" - counts octets, not printable characters.

    That's what printf is supposed to do, as POSIX requires that field
    widths specify the number of bytes (I assume for compatibility with
    the printf() C function).


    Ah, okay, thanks.

    I have a function that pads by ignoring utf8 continuation bytes and
    ignores ansi escapes. Not exactly pretty, but it works for me.

    --- Synchronet 3.21d-Linux NewsLink 1.2