⚠ This page contains old, outdated, obsolete, … historic or WIP content! No warranties e.g. for correctness!
All 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
mksh R33 has been released; read the ChangeLog for details. (Happy Birthday to everyone who has on this day.)
The news in short and human-readable:
- Improved build system, once again; better error tracking; better portability with regards to tools in /usr/bin at build and compilers
- Integrate all changes from OpenBSD ksh
- Integrate some changes from Debian: the “dot” command needs an argument; prevent namespace conflict between (built-in) aliases and (POSIX, not Korn) shell functions
- Add \uXXXX and \xXX escapes to the print builtin
- No longer check if we are called as “sh” for special handling
- Implement here strings: you can now replace print -r -- "$foo" | command with command <<<"$foo" – like ksh93, zsh; GNU bash behaves differently if and only if $foo is not quoted
- Implement string replacement ${var/pattern/string}
Especially cool feature: replace x=$(print -r -- "$x" | sed -e 's/foo.*bar/baz/g') with x=${x//foo*bar/baz} ☺
Note: the distfile is not here yet, it’ll take a while to be released. Once it’s uploaded, the mksh homepage will be updated with appropriate information. UPDATE: It’s out now.