From 6715bc154ee68617f064cc70b5c8e42f6bfe4b9c Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Tue, 5 Aug 2003 10:17:13 +0000 Subject: fix _cvs quoting bug, new _cdrecord and remove _archie (archie servers are gone) --- ChangeLog | 9 ++++ Completion/Unix/Command/.distfiles | 2 +- Completion/Unix/Command/_archie | 33 ------------ Completion/Unix/Command/_cdrecord | 105 +++++++++++++++++++++++++++++++++++++ Completion/Unix/Command/_cvs | 4 +- 5 files changed, 117 insertions(+), 36 deletions(-) delete mode 100644 Completion/Unix/Command/_archie create mode 100644 Completion/Unix/Command/_cdrecord diff --git a/ChangeLog b/ChangeLog index fad20b510..365ad8129 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2003-08-05 Oliver Kiddle + + * Completion/Unix/Command/_archie: archie servers no longer exist + so remove redundant completion + + * 18928: Completion/Unix/Command/_cdrecord: new cdrecord completion + + * 18927: Completion/Unix/Command/_cvs: fix recent mistake with quoting + 2003-08-05 Peter Stephenson * 18926: Src/Zle/complist.c: fix (without knowing how) insertion diff --git a/Completion/Unix/Command/.distfiles b/Completion/Unix/Command/.distfiles index 92d7553fd..18599156d 100644 --- a/Completion/Unix/Command/.distfiles +++ b/Completion/Unix/Command/.distfiles @@ -2,7 +2,7 @@ DISTFILES_SRC=' .distfiles _a2ps _dvi _gzip _man _rcs _w3m _apachectl _enscript _iconv _mh _rlogin _webbrowser -_archie _fakeroot _imagemagick _mount _sh _wget +_cdrecord _fakeroot _imagemagick _mount _sh _wget _arp _fetchmail _init_d _mutt _slrn _whereis _bison _find _ispell _mysql_utils _socket _whois _bzip2 _finger _java _ncftp _ssh _xargs diff --git a/Completion/Unix/Command/_archie b/Completion/Unix/Command/_archie deleted file mode 100644 index bbcd71766..000000000 --- a/Completion/Unix/Command/_archie +++ /dev/null @@ -1,33 +0,0 @@ -#compdef archie - -local curcontext="$curcontext" state line expl -typeset -A opt_args - -_arguments -C -s \ - '-D+[debug level]:debug level:' \ - '-v[print version]' \ - '-V[verbose mode]' \ - '-O+[specifies offset]:offset:' \ - '-a[list matches as Alex filenames]' \ - '-c[case sensitive substring search]' \ - '-e[exact string match (default)]' \ - '-r[regular expression search]' \ - '-s[case insensitive substring search]' \ - '-l[list one match per line]' \ - '-t[sort inverted by date]' \ - '-m+[specifies maximum number of hits to return (default 95)]:hits to return:' \ - '-o+[specifies file to store results in]:file to store:' \ - '-h+[specifies server host]:server host:->serverhost' \ - '-L[list known servers and current default]' \ - '-N-[specifies query niceness level (0-35765)]:niceness level:' \ - ':string:' && return 0 - -case "$state" in -serverhost) - : ${(A)archie_servers:=${(M)$(_call_program hosts archie -L):#archie.*}} - - _wanted hosts expl 'archie servers' compadd -a archie_servers && return 0 - ;; -esac - -return 1 diff --git a/Completion/Unix/Command/_cdrecord b/Completion/Unix/Command/_cdrecord new file mode 100644 index 000000000..ed0d3fa17 --- /dev/null +++ b/Completion/Unix/Command/_cdrecord @@ -0,0 +1,105 @@ +#compdef cdrecord + +local curcontext="$curcontext" state line +local devices btypes + +_arguments -C \ + '-version[print version information]' \ + '*-d[increase debug level]' \ + \*{-verbose,-v}'[increase verbosity level]' \ + \*{-Verbose,-V}'[increase scsi command transport verbosity level]' \ + '(-silent -s)'{-silent,-s}'[do not print a status report for failed scsi commands]' \ + '-setdropts[set driver specific options and exit]' \ + '-checkdrive[check if a driver for the device is present]' \ + '-prcap[print drive capabilities for MMC compliant drives]' \ + '-inq[do an inquiry for the drive and exit]' \ + '-scanbus[scan the scsi bus and exit]' \ + '-reset[reset the scsi bus with the cdrecorder]' \ + '-overburn[allow writing of more than the official size of a medium]' \ + '-ignsize[ignore the known size of a medium (may cause problems)]' \ + '-useinfo[use .inf files to overwrite audio options]' \ + '-format[format a CD-RW/DVD-RW/DVD+RW disc]' \ + '-load[load the disk and exit]' \ + '-lock[load and lock disc in tray loader]' \ + '-eject[eject the disk after doing the work]' \ + '-dummy[do everything with laser turned off]' \ + '-msinfo[retrieve multi-session info for mkisofs]' \ + '-toc[retrieve and print TOC/PMA data]' \ + '-atip[retrieve and print ATIP data]' \ + '-multi[generate a TOC that allows multi session]' \ + '-fix[fixate a corrupt or unfixated disk]' \ + '-nofix[do not fixate disk after writing tracks]' \ + '-waiti[wait until input is available before opening SCSI]' \ + '-immed[try to use scsi IMMED flag]' \ + '-force[force continuation on some errors]' \ + '-dao[set disk at once mode]' \ + '-raw[set raw writing mode]' \ + '-raw96r[write disk in raw/raw96r mode]' \ + '-raw96p[write disk in raw/raw96p mode]' \ + '-raw16[write disk in raw/raw16 mode]' \ + '-text[write CD-Text from .inf/.cue files]' \ + '*-audio[subsequent tracks are CD-DA audio tracks]' \ + '*-data[subsequent tracks are CD-ROM data mode 1 (default)]' \ + '*-mode2[subsequent tracks are CD-ROM data mode 2]' \ + '*-xa[subsequent tracks are CD-ROM XA mode 2 form 1 - 2048 bytes]' \ + '*-xa1[subsequent tracks are CD-ROM XA mode 2 form 1 - 2056 bytes]' \ + '*-xa2[subsequent tracks are CD-ROM XA mode 2 form 2 - 2324 bytes]' \ + '*-cdi[subsequent tracks are CDI tracks]' \ + '-isosize[use iso9660 file system size for next data track]' \ + '(-nopreemp)-preemp[audio tracks are mastered with 50/15 preemphasis]' \ + '(-preemp)-nopreemp[audio tracks are mastered with no preemphasis (default)]' \ + '-copy[audio tracks have unlimited copy permission]' \ + '-nocopy[audio tracks may only be copied once for personal use]' \ + '-scms[audio tracks will not not have any copy permission at all]' \ + '(-nopad)-pad[pad tracks]' \ + '(-pad)-nopad[do not pad data tracks (default)]' \ + '*-shorttrack[subsequent tracks may be non Red Book if in DAO mode]' \ + '*-noshorttrack[subsequent tracks must be >= 4 seconds]' \ + '-swab[audio data source is byte-swapped (little-endian/Intel)]' \ + '*: :->values' + +if [[ -n $state ]]; then + _tags values files + while _tags; do + if _requested values && (( ! ${#words[2,CURRENT-1]:#(-*|*=*)} )); then + _values -C -s ' ' 'option' \ + 'dev[specify scsi device to use]:device:->device' \ + 'gracetime[set grace time before starting to write]:time (seconds)' \ + 'timeout[set default scsi timeout]:timeout (seconds)' \ + 'debug[specify debug level]:debug level' \ + {kdebug,kd}'[specify kernel debug level]:debug level' \ + 'driver[user supplied driver name]:drive' \ + 'driveropts[a comma separated list of driver specific options]:driver options' \ + 'speed[set speed of drive]:speed' \ + 'blank[blank a CD-RW disc]:blank type:->blank' \ + 'fs[set fifo size]:size' \ + 'tsize[length of valid data in next track]:length' \ + 'padsize[amount of padding for next track]:amount of padding' \ + 'pregap[amount of pre-gap sectors before next track]:amount' \ + 'defpregap[amount of pre-gap sectors for all but first track]:amount' \ + 'mcn[set media catalog number for this CD]:text' \ + 'isrc[set isrc number for the next track]:text' \ + 'index[set the index list for the next track]:list' \ + 'textfile[set the file with CD-Text data]:name:_files -g "*.inf"' \ + 'cuefile[set the file with CDRWIN CUE data]:name:_files -g "*.cue"' && ret=0 + fi + _requested files expl track _files && ret=0 + (( ret )) || break + done + + case $state in + device) + devices=( ${(f)"$(_call_program device cdrecord -scanbus 2>/dev/null \ + |grep '^ '|cut -c2-6,23-|sed 's/ /:/')"} ) + _describe -t devices device devices && return + ;; + blank) + btypes=( + 'help:display list of available blanking types' + ${${${${(f)"$(_call_program blank-types cdrecord blank=help 2>&1)"}[2,-1]}#?}/[[:blank:]]##/:} + ) + _describe -t blank-types 'blanking type' btypes && return + ;; + esac + +fi diff --git a/Completion/Unix/Command/_cvs b/Completion/Unix/Command/_cvs index b687f9874..0643310d1 100644 --- a/Completion/Unix/Command/_cvs +++ b/Completion/Unix/Command/_cvs @@ -238,8 +238,8 @@ _cvs_diff() { "($ofwuc $oss -F --show-function-line=)"{-F+,--show-function-line=}'[show the most recent line matching regex]:regex' \ "($of $ouc $oss)--brief[output only whether files differ]" \ "($of $ouc $oss)"{-e,--ed}'[output an ed script]' \ - "($of $ouc $oss)"{-f,--forward-ed}'[output a reversed ed script]" \ - "($of $ouc $oss)"{-n,--rcs}'[RCS format diff]" \ + "($of $ouc $oss)"{-f,--forward-ed}'[output a reversed ed script]' \ + "($of $ouc $oss)"{-n,--rcs}'[RCS format diff]' \ "($of $ouc)--side-by-side[output in two columns]" \ "($of $ouc)-y[output in two columns]" \ "($ofwy $ouc -W --width)"{-W+,--width=}'[set size of line]:number of characters per line' \ -- cgit 1.4.1