386BSD 0.1 development
[unix-history] / usr / othersrc / public / zsh-2.2 / FEATURES
CommitLineData
b0add2bd
WJ
1very close to ksh/sh grammar, with csh additions
2most features of ksh, bash, and tcsh
375 builtins, 73 options, 144 key bindings
4short for loops, ex: for i (*.c) echo $i
5select
6shell functions
7conditional expressions (test builtin, [ ... ], and ksh-style [[ ... ]])
8global aliases (may be expanded anywhere on the line)
9directory stack access with =num
10process substitution (vi =(cmd) edits the output of cmd)
11generalized pipes (ls foo >>(cmd1) 2>>(cmd2) pipes stdout to cmd1
12 and stderr to cmd2)
13arithmetic expressions
14advanced globbing:
15 ls **/file searches recursively for "file" in subdirectories
16 ls file<20-> matches file20, file30, file100, etc.
17 ls *.(c|pro) matches *.c and *.pro
18 ls *(R) matches only world-readable files
19 ls *.c~lex.c matches all .c files except lex.c
20null command shorthands:
21 "< file" is same as "more <file"
22 "> file" is same as "cat >file"
23 ">> file" is same as "cat >>file"
24ksh-style coprocesses
25automatic file stream teeing (ls >foo >bar puts output in two places)
26chpwd() function run every time you change directory (useful for
27 updating the status line)
28job control
29csh-style history
30full vi line editing, including "c2w" and "y$" and such things
31full emacs line editing
32incremental history search
33magic-space history
34spelling correction
35array parameters
36$HOSTTYPE, $LINENO, $RANDOM, $SECONDS, $cdpath, $COLUMNS, $fignore,
37 $HISTCHARS, $mailpath
38with autocd option, typing a directory name by itself is the same as
39 typing "cd dirname"
40menu completion: pressing TAB repeatedly cycles through the possible matches
41incremental path hashing
42automatic process time reporting for commands that run over a certain limit
43full tcsh-style prompt substitution
44utmp login/logout reporting
45with histverify option, performing csh-style history expansions causes the
46 input line to be brought up for editing instead of being executed
47with sunkeyboardhack option, accidently typed trailing ` characters
48 are removed from the input line (for those of you with Sun keyboards :-) )
49autoloaded functions (loaded from a file when they are first referenced)
50"cd old new" replaces "old" with "new" in directory string
51generalized argument completion, including:
52 - command name completion
53 - filename and path completion
54 - hostname completion
55 - key binding completion
56 - option completion
57 - variable name completion
58 - user-specified keyword completion
59prompt on right side of screen
60directory stacks
61history datestamps and execution time records
62command scheduling (like at(1), but in the shell's context)
63tty mode freezing
64up to 9 startup files (but you only need 1 or 2)
658-bit clean
66which -a cmd lists all occurences of "cmd" in the path