MirBSD Korn Shell

Software Screenshot:
MirBSD Korn Shell
Software Details:
Version: R49
Upload Date: 17 Feb 15
Developer: MirOS Project
Distribution Type: Freeware
Downloads: 71

Rating: 2.0/5 (Total Votes: 1)

MirBSD Korn Shell (mksh) is an actively developed successor of pdksh (the Public Domain Korn Shell), aimed at producing a shell good for interactive use, but with primary focus on scripting.

The project is intended to be portable to most *nix-like operating systems as long as they're not too obscure.

What is new in this release:

  • [tg] dot.mkshrc: fix two issues with the cd wrapper
  • [tg] Unbreak set +p (wider issue still to be addressed)
  • [Steffen Daode Nurpmeso] Use WCONTINUED with waitpid(2)
  • [millert] Add proper suspend builtin handling tty(4) and setpgrp(2)
  • [tg] Sanitise and slightly optimise control character handling
  • [tg] Add O_BINARY to all open(2) calls for OS/2 kLIBC support
  • [tg] Generate option strings for shell, set, ulimit at compile time
  • [Steffen Daode Nurpmeso] Drop ISTRIP termios(4) mode
  • [tg] Mention negative history numbers, octals in the manpage
  • [tg] Make check.pl work with Perl < 5.6.1 again
  • [tg] Detect getsid(2) and skip the oksh suspend builtin otherwise
  • [tg] Document that set -o noclobber is unsafe for tempfiles
  • [tg] Update to Unicode 6.3.0
  • [RT] Restore some portability
  • [tg] Fix parsing positional argument variable names
  • [tg] Sprinkle a few __attribute__((__pure__)); fix warnings
  • [tg] Fix build on OSX: always use our wcwidth code; only use our strlcpy(3) code if the OE doesn't provide one (prompted by jonthn on IRC)
  • [tg] Optimise sh -c to exec even in MKSH_SMALL
  • [tg] Use new BAFH for hashing

What is new in version R47:

  • R47 is a must-have bugfix update which corrects most issues popping up with R45/R46 as well as some much older bugs.
  • It is now even more aligned with POSIX behavior, removes the need for cttyhack on Linux, and introduces the new "set ±o inherit-xtrace", with which the behaviour of "set -x" upon entering a function can be controlled.
  • Character widths are now calculated per the Unicode 6.2.0 standard.

What is new in version R44:

  • [tg] "$@" always generates words; bug spotted by engla in IRC
  • [tg] Optimise print_columns display to use the screen space better

What is new in version R40d:

  • [tg] New test.sh ‘-f' option (same as ‘-C fastbox')
  • [tg] Drop using set -o noglob inside pushd/popd/dirs
  • [tg] Use += more in dot.mkshrc and keep strings shorter
  • [tg] Correct interworking between local and set -A
  • [tg] Fix out-of-bounds memory access on strings of 32 KiB length
  • [tg] MKSH_DISABLE_DEPRECATED (for integrators)
  • [tg, Jilles Tjoelker] test(1) built-in behaves exactly as POSIX says
  • [tg] Move compile-time assertions to Build.sh from misc.c#ifdef DEBUG
  • [tg] Invocation documentation is at the bottom of Build.sh
  • [tg] test.sh: verbosely look for perl(1) interpreter to use
  • [tg] New tests for integers (base 1‥36, base unspecified, base OOB)
  • [tg] Correct error paths for typeset -n global state
  • [tg] Deprecate interpreting "010" as octal number, will go
  • [tg] Improvements re. integer handling; more explicit manpage text
  • [tg] Do not use caddr_t on Linux, so dietlibc stops bitching
  • [tg, Jilles Tjoelker] Catch division/modulo overflow 0x80000000/-1
  • [tg] Emacs mode ^O regression fix when the fetched lines are edited

What is new in version R40c:

  • This version fixes several small bugs in sh compatibility, UTF-8 handling, Emacs mode, and the build system.
  • It includes some additions to the man page as well as portability fixes for Openstep, Interix, and Hurd and a new port to MSYS.

What is new in version R40b:

  • This version fixes several obscure ways the shell could crash the tty, freeze, or refuse to start.
  • The tab completion user experience was improved to allow ^Cing out of cat.
  • The setenv function was added to the default ~/.mkshrc file.
  • The documentation better explains that echo is not portable and which startup files are read.
  • Manpage legibility was improved.
  • The new "global" special built-in command was added, doing the same as "typeset" ("local") except making every touched parameter local to the function even if it existed before.
  • Compiler/linker errors are caught earlier.
  • Some compiler warnings were fixed.

What is new in version R40:

  • cat and sleep were added as builtins.
  • The Android, FreeMiNT, and Haiku platforms are now supported.
  • Many interactive improvements were made.
  • The behavior was aligned with POSIX/SUSv4 (parameter expansions, etc).
  • Link time optimization and LLVM Dragonegg are supported.
  • Overly complicated code was replaced with simpler, smaller, faster, and more correct code.
  • Unicode support was synchronized with version 6.0.0 of the standard.
  • A lot of bash/ksh93/zsh extensions are supported: %CONTENT%amp;quot;...", ${PIPESTATUS[*]}, case ;& and ;|, x+=y, x+=(y z), etc.
  • A new recursive parser fixes command substitution.
  • Functions inherit "set -x".
  • The "read" builtin can read (up to) n bytes into an array of words or char, with a timeout.
  • "Here document" handling was improved.

What is new in version R39:

  • Stable update; R40 will become a major update with new features and syntax changes.

What is new in version R38c:

  • [tg] Fix regression tests on OSes insisting on a shebang (Cygwin)
  • [Sean Boudreau] QNX 6.4.2 ed(1) is said to have the bugs fixed
  • [tg] Build.sh bugfixes: -DMKSH_BINSHREDUCED can also be given without -DMKSH_SMALL; allow HAVE_REALPATH=x and HAVE_REVOKE=x in the environment to re-enable these even if -DMKSH_SMALL disables them by default, like mknod already did
  • [tg] -DMKSH_ASSUME_UTF8=0 skips the environment checks, like -DMKSH_ASSUME_UTF8=1, but disables the utf8-mode
  • [tg] Apply some more KNF - style(9) - to the source; clean it up and further optimise for small size
  • [OpenBSD] Fix segfaults caused by missing check for end of input in the tokeniser on "let --" and other input
  • [OpenBSD] Make Vi editing mode ^W behave like Emacs mode's
  • [tg] If no killpg(3) is avaiable, use kill(2) and hope it works
  • [tg] -DMKSH_NO_LIMITS skips trying to build the ulimit code

Similar Software

Tcsh
Tcsh

27 Sep 15

ftp4j
ftp4j

20 Feb 15

asis
asis

20 Feb 15

Comments to MirBSD Korn Shell

Comments not found
Add Comment
Turn on images!