have it be automatically included by bsd.pkg.mk if USE_PKGINSTALL is set
to "YES". This enforces the requirement that bsd.pkg.install.mk be
included at the end of a package Makefile. Idea suggested by Julio M.
Merino Vidal <jmmv at menta.net>.
Changes from 20020922 (other than bug fixes) are:
* The code to display compound objects was rewritten to make it easier
for runtime extensions to reuse this code.
* A change was made to allow runtime builtins to be notified when a
signal is received so that cleanup can be performed.
* User applications can now trap the ALRM signal. Previously, the ALRM
signal was used internally and could not be used by applications.
as this isn't really the real Korn shell, and "pdksh" is a more accurate
name for it. Also don't use buildlink2 so that this shell may be used to
bootstrap buildlink2.
PD-ksh is a mostly complete AT&T ksh look-alike. Work is mostly
finished to make it fully compatible with both POSIX and AT&T ksh
(when the two don't conflict). Since pdksh is free and compiles
and runs on most common unix systems, it is very useful in creating
a consistent user interface across multiple machines.
Here are some of them, excerpted from NEWS:
- New code to handle multibyte characters.
- `select' was changed to be more ksh-compatible
- There is now a bindable edit-and-execute-command readline command,
like the vi-mode `v' command, bound to C-xC-e in emacs mode.
- The shell now performs arithmetic in the largest integer size the
machine supports (intmax_t), instead of long.
- There is a new configuration option `--enable-mem-scramble', controls
bash malloc behavior of writing garbage characters into memory at
allocation and free time.
- The `complete' and `compgen' builtins now have a new `-s/-A service'
option to complete on names from /etc/services.
- `read' has a new `-u fd' option to read from a specified file descriptor.
- The expansion of $LINENO inside a shell function is only relative to the
function start if the shell is interactive -- if the shell is running a
script, $LINENO expands to the line number in the script. This is as
POSIX-2001 requires.
- The bash debugger in examples/bashdb has been modified to work with the
new DEBUG trap semantics, the command set has been made more gdb-like,
and the changes to $LINENO make debugging functions work better. Code
from Gary Vaughan.
- New [n]<&word- and [n]>&word- redirections from ksh93 -- move fds (dup
and close).
- The `echo' builtin now accepts \0xxx (zero to three octal digits following
the `0') in addition to \xxx (one to three octal digits) for SUSv3/XPG6/
POSIX.1-2001 compliance.
- Added support for DESTDIR installation root prefix, so you can do a
`make install DESTDIR=bash-root' and do easier binary packaging.
- New `-A group/-g' option to complete and compgen; does group name
completion.
- The ksh-like `ERR' trap has been added. The `ERR' trap will be run
whenever the shell would have exited if the -e option were enabled.
It is not inherited by shell functions.
- configure has a new `--enable-largefile' option, like other GNU utilities.
- `for' loops now allow empty word lists after `in', like the latest POSIX
drafts require.
- The builtin `ulimit' now takes two new non-numeric arguments: `hard',
meaning the current hard limit, and `soft', meaning the current soft
limit, in addition to `unlimited'
Also, there is a "New unwind-protect implementation from Paul
Eggert", which I believe obviates the need for two sparc64-related
patches.
shells/mudsh.
Is there any reason why a shell (or command line) cannot be as
tolerant or as intelligent as a text adventure game like Zork, or a
MUD (Multi User Dungeon)? Is there any reason why a shell cannot work
like such a game? ("Go North", etc.)
Actually, the answer is no and this is a perl implementation to prove it.
Have fun, and don't get eaten by a Grue!
KSH-93 is the most recent version of the KornShell Language described
in "The KornShell Command and Programming Language," by Morris
Bolsky and David Korn of AT&T Bell Laboratories. The KornShell is
a shell programming language, which is upward compatible with "sh"
(the Bourne Shell), and is intended to conform to the IEEE P1003.2/ISO
9945.2 Shell and Utilities standard. KSH-93 provides an enhanced
programming environment in addition to the major command-entry
features of the BSD shell "csh". With KSH-93, medium-sized programming
tasks can be performed at shell-level without a significant loss
in performance. In addition, "sh" scripts can be run on KSH-93
without modification.
as shells/osh.
Osh is a re-implementation of the old and obsolete shell version,
which was in standard use up to UNIX 6th Edition and was supplied
as osh with UNIX 7th Edition. Its command language is a sparse
subset of those of modern shells and is mostly common both to sh(1)
and csh(1).
This pkgsrc entry is based on the FreeBSD ports entry for osh.
Bugfix release. Some added completion functions: e.g. rsync,
mozilla, some bash builtin functions.
From Geoff C. Wing, gcw at primenet dot com dot au in pkg/17946.