#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'