Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Completion function for sqsh



Hi,

This is a completion function for sqsh (http://www.sqsh.org/), a nice
replacement for Sybase isql.

Pete

_sqsh

#compdef sqsh

_sybase_server() {
   local interfaces

   if [[ -n "$opt_args[-I]" ]]; then
       interfaces=${(e)~opt_args[-I]:Q}
   elif [[ -n "$opt_args[-y]" ]]; then
       interfaces=${(e)~opt_args[-y]:Q}/interfaces
   else
       interfaces=$SYBASE/interfaces
   fi

   [[ -f $interfaces ]] && compadd ${${(f)"$(<$interfaces)"}:#[[:space:]#]*}
}

_arguments : \
   '-A[Adjust TDS packet size (512)]:packet size (bytes):(512 1024
1536 2048)' \
   '-B[Turn off file buffering on startup]' \
   '-C[Send sql statment to server]:sql' \
   '-D[Change database context on startup]:database' \
   '-E[Replace default editor (vi)]:editor' \
   '-H[Set the client hostname]:reported hostname' \
   '-I[Alternate interfaces file]:interface file:_files' \
   '-J[Client character set]:charset' \
   '*-L[Set the value of a given variable]:variable=value' \
   '-P[Sybase password (NULL)]:password' \
   '-S[Name of Sybase server (\$DSQUERY)]:_sybase_server' \
   '-U[Name of Sybase user]:username' \
   '-X[Enable client password encryption]' \
   '-a[Max. # of errors before abort]:number' \
   '-b[Suppress banner message on startup]' \
   '*-c[Alias for the ''go'' command]:go alias' \
   '-d[Min. severity level to display]:severity level (0-22)' \
   '-e[Echo batch prior to executing]' \
   '-f[Min. severity level for failure]:failure severity' \
   '-h[Disable headers and footers]' \
   '-i[Read input from file]:_files' \
   '-k[Specify alternate keywords file]:_files' \
   '-l[Set debugging level]' \
   '-m[Set display mode (normal)]:display style:(horiz vert bcp html
meta pretty none)' \
   '-n[Set chained transaction mode]:chained transaction mode:(on off)' \
   '-o[Direct all output to file]:_files' \
   '-p[Display performance stats]' \
   '-r[Specify name of .sqshrc]:_files' \
   '-s[Alternate column separator (\t)]:column separator' \
   '-t[Filter batches through program]:filter program:_files -g "*(*)"' \
   '-v[Display current version and exit]' \
   '-w[Adjust result display width]:number' \
   '-y[Override value of $SYBASE]:_directories' \
   '-z[Alternate display language]:language' \



Messages sorted by: Reverse Date, Date, Thread, Author