diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | Completion/Unix/Command/_ruby | 40 |
2 files changed, 24 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog index 80c7356f0..5b5f1098f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2003-03-06 Doug Kearns <djkea2@mugca.its.monash.edu.au> + + * 18314: Completion/Unix/Command/_ruby: allow -I, -r, -e and script + arguments to be given multiple times; complete -T with the legal taint + levels; complete with *.rb instead of all files + 2003-03-05 Peter Stephenson <pws@csr.com> * 18318: Src/Zle/zle_params.c: memory leak in PREDISPLAY and diff --git a/Completion/Unix/Command/_ruby b/Completion/Unix/Command/_ruby index b079253ee..cc55e4da7 100644 --- a/Completion/Unix/Command/_ruby +++ b/Completion/Unix/Command/_ruby @@ -1,49 +1,45 @@ #compdef ruby -# completion function for Ruby. # http://www.ruby-lang.org/ local expl curcontext="$curcontext" line state typeset -A opt_args local dirs -_arguments -C -s \ - '--version[print version]' \ +_arguments -C -s -S \ + '(1 * -)--version[print version]' \ '-c[syntax check]' \ '-w[verbose mode without printing version message at the beginning]' \ - '(-d)--debug[debug mode]' \ - '(--debug)-d[debug mode]' \ - '(-h)--help[print help message]' \ - '(--help)-h[print help message]' \ + '(-d --debug)'{-d,--debug}'[debug mode]' \ + '(1 * -)'{-h,--help}'[print help message]' \ '-l[automatic line-ending processing]' \ - '-p[loop and print]' \ - '-n[loop]' \ + '(-n)-p[loop and print]' \ + '(-p)-n[loop]' \ '-a[auto-split mode]' \ '-s[switch parsing]' \ '-0-[input record separator]:input record separator in octal:' \ '-K-[specifies KANJI (Japanese) encoding]:KANJI encoding:((e\:EUC-JP s\:Shift_JIS u\:UTF-8 N\:None))' \ '-F-[input field separator]:input field separator:' \ '-i-[in-place-edit mode]:suffix for in-place-edit mode:(.bak)' \ - '-I+[library directory]:library directory:_files -/' \ - '-r+[require library]:library name:->library' \ + '*-I+[library directory]:library directory:_files -/' \ + '*-r+[require library]:library name:->library' \ '-S[search ruby script in PATH]' \ - '(--verbose)-v[verbose mode]' \ - '(-v)--verbose[verbose mode]' \ + '(-v --verbose)'{-v,--verbose}'[verbose mode]' \ '-x-[embedded script]:directory:_files -/' \ '-C+[chdir]:directory:_files -/' \ - '(--yydebug)-y[compiler debug mode]' \ - '(-y)--yydebug[compiler debug mode]' \ - '--copyright[copyright notice]' \ - '-T-[taint check]:taint level:' \ - '(1)-e+[ruby command]:ruby command:' \ - ':script file:_files' \ - ':script argument:_files' && return 0 + '(-y --yydebug)'{-y,--yydebug}'[compiler debug mode]' \ + '(1 * -)--copyright[copyright notice]' \ + '-T-[taint check]:taint level:({0..4})' \ + '(1)*-e+[ruby command]:ruby command:' \ + '(-)1:script file:_files -g \*.rb' \ + '*:script argument:_files' && return 0 case $state in library) dirs=($(_call_program directories $words[1] -e 'print\ \$:.join\(\"\\n\"\)')) _wanted directories expl library \ - _path_files -W dirs + _path_files -W dirs && return 0 ;; esac - + +return 1 |