From 38cce57dd7e28ae0c37b43237ca25d2d18f7421d Mon Sep 17 00:00:00 2001 From: Bart Schaefer Date: Fri, 7 Apr 2000 15:01:03 +0000 Subject: 10562, 10581: Complete .src.rpm after rpm --rebuild; note fixed bug; typo. --- ChangeLog | 7 +++++++ Completion/Linux/_rpm | 8 ++++++-- Etc/BUGS | 25 +++++++++++++++++-------- Src/Modules/zpty.c | 2 +- 4 files changed, 31 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 613c98894..627e74b87 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2000-04-07 Bart Schaefer + + * 10581: Etc/BUGS, Src/Modules/zpty.c: Note a fixed bug; typo. + + * Chmouel Boudjnah: 10562: Completion/Linux/_rpm: Complete + only .src.rpm files for "rpm --rebuild". + 2000-04-07 Sven Wischnowsky * 10579: Completion/Base/_arguments, Completion/Base/_values, diff --git a/Completion/Linux/_rpm b/Completion/Linux/_rpm index 9a39773c4..3b027dc09 100644 --- a/Completion/Linux/_rpm +++ b/Completion/Linux/_rpm @@ -70,8 +70,9 @@ _arguments -C -s \ '--erase:*:uninstall:->uninstall' \ -'b+[build mode (spec file)]:build stage:((p\:execute\ \%prep\ stage l\:do\ a\ list\ check c\:execute\ build\ stage i\:execute\ install\ stage b\:build\ a\ binary\ package a\:build\ binary\ and\ source\ packages)):*:build:->build_b' \ -'t+[build mode (tar file)]:build stage:((p\:execute\ \%prep\ stage l\:do\ a\ list\ check c\:execute\ build\ stage i\:execute\ install\ stage b\:build\ a\ binary\ package a\:build\ binary\ and\ source\ packages)):*:build:->build_t' \ - --{rebuild,rmsource,recompile,resign,addsign}':*:RPM package:->package' \ - '-K+[signature check mode]:*:sigcheck:->sigcheck' \ + --{rmsource,recompile,resign,addsign}':*:RPM package:->package' \ + '--rebuild:*:Src RPM files:->package_src' \ + '-K+[signature check mode]:*:sigcheck:->sigcheck' \ '--checksig:*:sigcheck:->sigcheck' \ '--rebuilddb:*:rebuild:->rebuild' && ret=0 @@ -201,6 +202,9 @@ while [[ -n "$state" ]]; do 'prefixes:ftp URL prefix:compadd ftp://' && ret=0 fi ;; + package_src) + _files -g \*.src\(\#i\).rpm + ;& tags) if compset -P '*%*\{'; then _wanted tags expl 'RPM tag' \ diff --git a/Etc/BUGS b/Etc/BUGS index 2a255444f..dd356013a 100644 --- a/Etc/BUGS +++ b/Etc/BUGS @@ -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 an 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". @@ -26,12 +37,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 substitution without quoting. This behaviour is incompatible with sh @@ -39,3 +44,7 @@ and ksh and may be removed in the future. A good fix would be to keep such patterns unchanged if they do not match regardless of the state of the nonomatch and nullglob options. ------------------------------------------------------------------------ +Numeric ranges are still too greedy with using characters; for example, +<1-1000>33 will not match 633 because the 633 matches the range. Some +backtracking will be necessary. (This is believed fixed as of 3.1.6.) +------------------------------------------------------------------------ diff --git a/Src/Modules/zpty.c b/Src/Modules/zpty.c index 26896525c..60cf8fae9 100644 --- a/Src/Modules/zpty.c +++ b/Src/Modules/zpty.c @@ -211,7 +211,7 @@ get_pty(int *master, int *slave) return 0; } -#else /* ! (defined(__SVR4) || defind(sinix)) */ +#else /* ! (defined(__SVR4) || defined(sinix)) */ static int get_pty(int *master, int *slave) -- cgit 1.4.1