From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4311 invoked from network); 8 Jul 1999 13:21:08 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 8 Jul 1999 13:21:08 -0000 Received: (qmail 5652 invoked by alias); 8 Jul 1999 13:21:02 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 7042 Received: (qmail 5644 invoked from network); 8 Jul 1999 13:20:58 -0000 Message-Id: <9907081252.AA33474@ibmth.df.unipi.it> To: zsh-workers@sunsite.auc.dk (Zsh hackers list) Subject: PATCH: pws-25: doc and administrative text changes Date: Thu, 08 Jul 1999 14:52:13 +0200 From: Peter Stephenson This alters some administrative files, in particular NEWS, CONTRIBUTORS and BUGS (which is still severely out of date), which you can look at to see if I've missed anything. There are also some documentation changes, partly because I was looking for and failed to find something I remember thinking was wrong in the parameter stuff. Mostly these are uninteresting, but the changes to mod_complist.yo are more detailed. I discovered that you could bind (e.g.) .accept-line instead of accept-line in the menuselect keymap to do a real accept-line, leaving the current completion; and on my keyboard I need to bind ^M, not ^J, to alter the return key: if it's known when the difference occurs, that can be mentioned. One administrative file I haven't changed is the PGP public keyring that Zefram introduced. That's because pgp 5 seems to be a botched upgrade where you can't specify alternative keyrings, while not all of the keys in Etc/pubring.pgp can be handled by pgp 2. If I can find a non-botched way of handling this I'll start adding public keys again. But the pgp fad in email seems to have died down for the time being. (You can tell real postings from me because they all contain at least one entirely deliberate mistake.) --- Etc/BUGS.doc Wed Oct 28 22:22:53 1998 +++ Etc/BUGS Thu Jul 8 14:34:43 1999 @@ -2,9 +2,20 @@ KNOWN BUGS IN ZSH ----------------- +On some terminals, display of lines with exactly 80 characters is +problematic. zsh assumes that the terminal does not print and extra +newline in this case, but some terminals (e.g. aixterm) do. ------------------------------------------------------------------------ -Completion has a habit of doing the wrong thing after a -backslash/newline. +When interrupting code like the following with ^C: + while true; do + sh -c '...' + done +if the `sh' is executing, zsh does not know that the sh received a ^C and +continues with the next iteration. This happens for any program which +handles the interrupt, then exits after tidying up; it does not happen for +zsh, which exits directly from the signal handler. The workaround is to +use ^Z which forks the shell and makes the loop a separate job, then kill +the suspended loop. ------------------------------------------------------------------------ If you suspend "man", zle seems to get into cooked mode. It works ok for plain "less". @@ -25,12 +36,6 @@ Then if you suspend % foo less something from zsh/bash, zle/readline gets into cooked mode. ------------------------------------------------------------------------- -% zsh -c 'cat a_long_file | less ; :' -can be interrupted with ^C. The prompt comes back and less is orphaned. -If you go to the end of the file with less and cat terminates, ^C -will not terminate less. The `; :' after less forces zsh to fork before -executing less. ------------------------------------------------------------------------ The pattern %?* matches names beginning with %? instead of names with at least two characters beginning with %. This is a hack to allow %?foo job --- Etc/CONTRIBUTORS.doc Wed Oct 28 22:11:36 1998 +++ Etc/CONTRIBUTORS Thu Jul 8 13:25:43 1999 @@ -4,8 +4,8 @@ Zsh was originally written by Paul Falstad . Zsh is now maintained by the members of the zsh-workers mailing list -. The development is currently coordinated -by Andrew Main (Zefram) . +. The development is currently coordinated +by Peter Stephenson . This file credits only the major contributors to the current release. See the ChangeLog files for a complete list of people who have submitted @@ -14,6 +14,40 @@ to be currently accurate. If you feel that you or someone else have been unfairly omitted from this list please mail the current maintainer at . + +Version 3.1.6 +------------- + +* Sven Wishnowsky : completion code, + major rewrite and enhancements, including matching control, completion + widgets and function system, complist module; zle code additions; job + control code changes; parameters code changes; parameter module; + additional autoloading code; general code changes for extra efficiency; + subscripting and ordering of globbing lists. + +* Peter Stephenson : zftp and mapfile modules and + zf* functions; local parameters and typeset changes; changes in autoconf + system; case-independent and approximate pattern matching; various + options; a few completion modules; some zle changes; FAQ. + +* Bart Schaefer : associative array + implementation; other parameter changes; keeping track of missing + patches; function autoloading changes. + +* Wayne Davison : History code novelties and improvements + with new options. + +* Geoff Wing : Zle display code fixes, mailing + list and patch archive. + +* Zoltán Hidvégi : AIX dynamic loading code. + +* Matt Armstrong: cygwin configuration changes. + +Other improvements, bug fixes and design suggestions from all the above +plus Andrej Borsenkow, Oliver Kiddle, Tanaka Akira, Naoki Wakamatsu, Tatuso +Furukawa, Ville Herva, Will Day, Lehti Rahmi, Larry P. Schrof, Helmut +Jarausch, Phil Pennock, Wilfredo Sanchez, Bruce Stephens. Version 3.0 ----------- --- Etc/NEWS.doc Wed Oct 28 22:20:00 1998 +++ Etc/NEWS Thu Jul 8 14:26:13 1999 @@ -2,6 +2,92 @@ CHANGES FROM PREVIOUS VERSIONS OF ZSH ------------------------------------- +New features in zsh version 3.1.6 (beta version) +------------------------------------------------ + +New completion system via shell functions; massive degree of +programmability and configurability: + - ready-made function suite to use, see zshcompsys(1) + - approximate completion and spelling correction via completion + - control over matching for case-independence, partial word completion, etc. + - menu selection: choose a completion by moving the cursor + - coloured completion lists + +Other editing changes: + - enhancements to function/editing interface: new parameters, numeric + arguments, string argument passing, reading keys from widgets. + - the old history-search-{back,for}ward behaviour and bindings have + returned (up to minor details). + - BASH_AUTO_LIST option to show completion list only on second key press. + - the ZBEEP parameter gives a string to output instead of beeping, + allowing you to have a visual bell. + +History changes: new options HIST_NO_FUNCTIONS, HIST_EXPIRE_DUPS_FIRST, +HIST_FIND_NO_DUPS, HIST_IGNORE_ALL_DUPS, INC_APPEND_HISTORY, +HIST_SAVE_NO_DUPS, SHARE_HISTORY, allow better control of when history is +read and written and how duplicates are handled. + +Associative arrays plus enhanced parameter substitutions to retrieve keys +and values. + +Globbing changes: + - Case-insensitive and approximate globbing. + - Ordering and indexing of globbing matches, e.g. *(om[1]) picks + most recently modified file. + +New loadable modules: + - zftp, plus associated function suite, for turning your zsh session + into an FTP session too + - parameter, for examining and altering shell hash tables via an + associative array interface. + - mapfile, for reading and writing external files via an associative + array interface. + +Debugging and prompt enhancements: + - LINENO is now very much more useful in scripts and functions and has + corresponding prompt escape %i + - $PS4 can contain %i as well as %N for script or function names + (default PS4 changed), also %_ for current shell structure executing; + - Prompt truncation %<...< is now more flexible: it applies to a + whole section of the prompt, not just one escape. You need to put + %<< after the truncated escape to get the old behaviour. + - %20(l.yes.no) in prompts prints yes if at least 20 characters have + been output, else no (e.g. for outputting extra newlines). + +Parameter and expansion changes + - typeset -t MYPATH mypath creates tied path/PATH variables + - typeset -g allows operations on parameters without making them local + - New expansions + - ${(t)param} prints type information for $param + - ${(P)param} treats value of $param as the name of a param to + substitute + - ${foo:q} can quote replaced parameter text from expansion + - ${foo/old/new} substitution, like bash; also (S) flag for shortest + match + - $foo[(b.2.i)bar] starts searching $foo for bar starting at 2nd match + - more logical behaviour of nested parameters, now properly documented + - quote only nested expansion, e.g. ${(f)"$()( -- Peter Stephenson Tel: +39 050 844536 WWW: http://www.ifh.de/~pws/ Dipartimento di Fisica, Via Buonarroti 2, 56127 Pisa, Italy