mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-07 11:41:16 +02:00
Nikolai Weibull: 25828: new rm completion
unposted: note some new features in NEWS
This commit is contained in:
parent
7e86f2da31
commit
612cec047f
4 changed files with 58 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2008-10-08 Peter Stephenson <pws@csr.com>
|
||||||
|
|
||||||
|
* Nikolai Weibull: 25828: Completion/Unix/Command/_rm,
|
||||||
|
Completion/Unix/Command/.distfiles: new completion.
|
||||||
|
|
||||||
|
* unposted: NEWS: note some new features.
|
||||||
|
|
||||||
2008-10-07 Clint Adams <clint@zsh.org>
|
2008-10-07 Clint Adams <clint@zsh.org>
|
||||||
|
|
||||||
* 25823: Functions/Misc/run-help: bring up zshcontrib man page if
|
* 25823: Functions/Misc/run-help: bring up zshcontrib man page if
|
||||||
|
|
|
@ -164,6 +164,7 @@ _rcs
|
||||||
_renice
|
_renice
|
||||||
_ri
|
_ri
|
||||||
_rlogin
|
_rlogin
|
||||||
|
_rm
|
||||||
_rrdtool
|
_rrdtool
|
||||||
_rsync
|
_rsync
|
||||||
_rubber
|
_rubber
|
||||||
|
|
41
Completion/Unix/Command/_rm
Normal file
41
Completion/Unix/Command/_rm
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
#compdef rm
|
||||||
|
|
||||||
|
declare -a opts args
|
||||||
|
args=(
|
||||||
|
'(-f --force)'{-f,--force}'[ignore nonexistent files, never prompt]'
|
||||||
|
'(-I --interactive)-i[prompt before every removal]'
|
||||||
|
'(-r -R --recursive)'{-r,-R,--recursive}'[remove directories and their contents recursively]'
|
||||||
|
'*:files:->file'
|
||||||
|
)
|
||||||
|
if _pick_variant gnu=gnu unix --help; then
|
||||||
|
opts+=(-S)
|
||||||
|
args+=(
|
||||||
|
'(-i --interactive)-I[prompt when removing many files]'
|
||||||
|
'(-i -I)--interactive=-[prompt under given condition (defaulting to always)]::when:((once\:"prompt when removing many files"
|
||||||
|
always\:"prompt before every removal"))'
|
||||||
|
'--one-file-system[stay within filesystems of files given as arguments]'
|
||||||
|
'( --preserve-root)--no-preserve-root[do not treat / specially]'
|
||||||
|
'(--no-preserve-root )--preserve-root[do not remove / (default)]'
|
||||||
|
'(-v --verbose)'{-v,--verbose}'[explain what is being done]'
|
||||||
|
'(- *)--help[display help message and exit]'
|
||||||
|
'(- *)--version[output version information and exit]'
|
||||||
|
)
|
||||||
|
else
|
||||||
|
args=(${args:#*--(force|recursive)\[*})
|
||||||
|
fi
|
||||||
|
|
||||||
|
local curcontext=$curcontext state line ret=1
|
||||||
|
declare -A opt_args
|
||||||
|
|
||||||
|
_arguments -C $opts \
|
||||||
|
$args && ret=0
|
||||||
|
|
||||||
|
case $state in
|
||||||
|
(file)
|
||||||
|
declare -a ignored
|
||||||
|
ignored=(${line//(#m)[\[\]()\\*?#<>~\^]/\\$MATCH})
|
||||||
|
_path_files -F ignored && ret=0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
return $ret
|
10
NEWS
10
NEWS
|
@ -11,12 +11,20 @@ The option COMBINING_CHARS has been added. When it is set, the
|
||||||
line editor assumes the terminal is capable of displaying zero-width
|
line editor assumes the terminal is capable of displaying zero-width
|
||||||
combining characters (typically accents) correctly as modifications
|
combining characters (typically accents) correctly as modifications
|
||||||
to the base character, and will act accordingly. Note it is not set
|
to the base character, and will act accordingly. Note it is not set
|
||||||
by default owing to vagaries of terminals.
|
by default owing to vagaries of terminals. The system is reported
|
||||||
|
to work on MacOS, where this is particularly important as accented
|
||||||
|
characters in file names are stored in their decomposed form (i.e.
|
||||||
|
with base and combining characters).
|
||||||
|
|
||||||
The option HIST_FCNTL_LOCK has been added to provide locking of history
|
The option HIST_FCNTL_LOCK has been added to provide locking of history
|
||||||
files using the system call fcntl(). On recent NFS implementations this
|
files using the system call fcntl(). On recent NFS implementations this
|
||||||
may provide better reliability.
|
may provide better reliability.
|
||||||
|
|
||||||
|
The syntax ~[...] provides a dynamic form of directory naming,
|
||||||
|
supplementing the existing static ~name syntax. A user-defined shell
|
||||||
|
function, zsh_directory_name, is used to handle both expansion of names to
|
||||||
|
directories and contraction of directories to names.
|
||||||
|
|
||||||
Patterns can now be used in incremental searches with the new widgets
|
Patterns can now be used in incremental searches with the new widgets
|
||||||
history-incremental-pattern-search-backward and
|
history-incremental-pattern-search-backward and
|
||||||
history-incremental-pattern-search-forward. These are not bound to
|
history-incremental-pattern-search-forward. These are not bound to
|
||||||
|
|
Loading…
Reference in a new issue