about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDoug Kearns <dkearns@users.sourceforge.net>2003-08-16 09:22:11 +0000
committerDoug Kearns <dkearns@users.sourceforge.net>2003-08-16 09:22:11 +0000
commit62d4b9f9d83d755e1b50226636a927da32badc15 (patch)
treebbcb796585f12276e1c5fd17794686c1697a42eb
parente65a8115208b95cb19c6fc55550ede5c3b82634d (diff)
downloadzsh-62d4b9f9d83d755e1b50226636a927da32badc15.tar.gz
zsh-62d4b9f9d83d755e1b50226636a927da32badc15.tar.xz
zsh-62d4b9f9d83d755e1b50226636a927da32badc15.zip
18944: update ruby completion for version 1.8.0
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Unix/Command/_ruby60
2 files changed, 35 insertions, 30 deletions
diff --git a/ChangeLog b/ChangeLog
index fb0f3b7fa..781cd0306 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-08-16  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
+
+	* 18944: Completion/Unix/Command/_ruby: update ruby completion for
+	version 1.8.0 and add descriptions for -T matches
+
 2003-08-11  Peter Stephenson  <pws@csr.com>
 
 	* 18941: Src/hist.c, Src/input.c: Alias text could end up in
diff --git a/Completion/Unix/Command/_ruby b/Completion/Unix/Command/_ruby
index cc55e4da7..d6df7dfd2 100644
--- a/Completion/Unix/Command/_ruby
+++ b/Completion/Unix/Command/_ruby
@@ -1,45 +1,45 @@
 #compdef ruby
 
-# http://www.ruby-lang.org/
+# ruby 1.8.0 (2003-08-14) [i686-linux]
 
-local expl curcontext="$curcontext" line state
+local expl curcontext="$curcontext" line state ret=1
 typeset -A opt_args
 local dirs
 
 _arguments -C -s -S \
-  '(1 * -)--version[print version]' \
-  '-c[syntax check]' \
-  '-w[verbose mode without printing version message at the beginning]' \
-  '(-d --debug)'{-d,--debug}'[debug mode]' \
+  '-0-[specify record separator]:input record separator in octal (default\: \0):' \
+  '-a[autosplit mode with -n or -p (splits $_ into $F)]' \
+  '-c[check syntax only]' \
+  '-C+[cd to directory, before executing your script]:directory:_files -/' \
+  '(-d --debug)'{-d,--debug}'[set debugging flags (set $DEBUG to true)]' \
+  "(1)*-e+[one line of script (several -e's allowed, omit program file)]:one line of script:" \
+  '-F-[split() pattern for autosplit (-a)]:input field separator:' \
+  '-i-[edit ARGV files in place (make backup if extension supplied)]:suffix for in-place-edit mode:(.bak)' \
+  '*-I+[specify $LOAD_PATH directory (may be used more than once)]:library directory:_files -/' \
+  '-K-[specifies KANJI (Japanese) code-set]:KANJI encoding:((e\:EUC-JP s\:Shift_JIS u\:UTF-8 N\:None))' \
+  "-l[assume 'while gets(); ... end' loop around your script]" \
+  "(-p)-n[assume 'while gets(); ... end' loop around your script]" \
+  '(-n)-p[assume loop like -n but print line also like sed]' \
+  '*-r+[require the library, before executing your script]:library name:->library' \
+  '-s[enable some switch parsing for switches after script name]' \
+  '-S[look for the script using PATH environment variable]' \
+  '-T-[turn on tainting checks]:taint level (default\: 0):((0\:strings\ from\ streams/environment/ARGV\ are\ tainted 1\:no\ dangerous\ operation\ by\ tainted\ value 2\:process/file\ operations\ prohibited 3\:all\ generated\ objects\ are\ tainted 4\:no\ global\ \(non-tainted\)\ variable\ modification/no\ direct\ output))' \
+  '(-v --verbose)'{-v,--verbose}'[print version number, then turn on verbose mode]' \
+  '-w[turn warnings on for your script]' \
+  '-W-[set warning level]:warning level (default\: 2):((0\:silent 1\:medium 2\:verbose))' \
+  '(-y --yydebug)'{-y,--yydebug}'[enable yacc debugging in the parser]' \
+  '-x-[strip off text before #!ruby line and perhaps cd to directory]:directory:_files -/' \
+  '(1 * -)--copyright[print the copyright]' \
   '(1 * -)'{-h,--help}'[print help message]' \
-  '-l[automatic line-ending processing]' \
-  '(-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' \
-  '-S[search ruby script in PATH]' \
-  '(-v --verbose)'{-v,--verbose}'[verbose mode]' \
-  '-x-[embedded script]:directory:_files -/' \
-  '-C+[chdir]:directory:_files -/' \
-  '(-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 * -)--version[print the version]' \
   '(-)1:script file:_files -g \*.rb' \
-  '*:script argument:_files' && return 0
+  '*:script argument:_files' && ret=0
 
 case $state in
   library)
-    dirs=($(_call_program directories $words[1] -e 'print\ \$:.join\(\"\\n\"\)'))
-    _wanted directories expl library \
-      _path_files -W dirs && return 0
+    dirs=($(_call_program directories $words[1] -e 'puts\ \$:'))
+    _wanted directories expl library _path_files -W dirs && ret=0
   ;;
 esac
 
-return 1
+return ret