#zdep modules
### vim:ft=zsh:foldmethod=marker
###
### Frank Terbeck <ft@bewatermyfriend.org>
### Last-Modified: Mon Mar 10 21:48:58 2008
###
### URI: <http://ft.bewatermyfriend.org/comp/zsh.html>
###
### zsh options
###
### setopt option comment
### initialization options {{{
setopt no_all_export ### automagically export defined variables; not recommended
setopt rcs ### after /etc/zshenv, all rc files are sourced as supposed.
if zis_316 "atleast" ; then
setopt no_global_rcs ### i don't care if global RCs are run; my config is fairly complete.
fi
if zis_317 "atleast" ; then
setopt no_global_export ### export will not be local to functions with this one; don't rely on it.
fi
### }}}
### {in,out}put options {{{
setopt clobber ### allow '>' to truncate, and '>>' to create files
setopt correct ### try to correct the spelling of commands
setopt no_correct_all ### try to correct every word; this can be dangerous with some commands (e.g. mv)
setopt flow_control ### flowcontrol (usually) ^S ^Q
setopt hash_cmds ### hash executed commands
setopt hash_dirs ### hash dirs of executed commands
setopt no_ignoreeof ### ignore ^D
setopt no_interactive_comments ### allow comments in interactive shells
setopt no_path_dirs ### eg. '/usr/bin/' is in your $path, and there is a command
### '/usr/bin/X11/xinit' you can start it by 'X11/xinit'
setopt no_print_exit_value ### if a command returns non-zero, tell the user
### i got a solution for this in my prompt, so i don't need it.
### using the format $'...', where a backslashed single quote can be used.
setopt no_rm_star_silent ### do not query the user before execing 'rm *' or 'rm path/*'
setopt short_loops ### allow short loop forms
setopt no_sun_keyboard_hack ### if a line ends with a backquote, and there are an odd number of
### backquotes on the line, ignore the trailing backquote. this is useful
### on some keyboards where the return key is too small, and the backquote
### key lies annoyingly close to it. _hehe_
setopt no_mail_warning ### print warning if a mail file has been accessed since the shell last checked.
if zis_314 "atleast" ; then
setopt no_print_eight_bit ### print eight bit characters literally in completion lists, etc.
### not needed if your system returns correct values
setopt no_rm_star_wait ### like 'rm_star_silent' but wait ten seconds instead of querying
fi
if zis_317 "atleast" ; then
setopt no_dvorak ### 'correct{,_all}' expect errors that would happen on dvorak keyboards.
fi
if zis_40 "atleast" ; then
setopt aliases ### expand aliases; you probably want this
fi
### }}}
### expansion+globbing options {{{
setopt bad_pattern ### if a pattern or glob is badly formed, print out an error
setopt brace_ccl ### echo {abc.}file :: .file afile bfile cfile
setopt no_csh_nullglob ### only report an error if _all_ globs for a command fail
setopt equals ### the mighty =command expansion :)
setopt extended_glob ### the force is strong with this one...
setopt glob ### abso-freakin-lutely
setopt no_glob_assign ### if set, allow 'name=*' and 'name=(*)';
### since the latter is more clear, i'm unsetting this option
setopt no_glob_dots ### don't require a leading dot for matching "hidden" files
setopt no_glob_subst ### foo="*"; print $foo; will print all files; not for me, thanks
setopt no_ignore_braces ### do not perform brace expansion;
setopt no_magic_equal_subst ### do expansions on everything the looks like an 'name=express' assignment.
setopt no_mark_dirs ### append '/' to dirnames generated by globbing
setopt nomatch ### print an error if a glob didn't return a result
setopt no_nullglob ### is a glob does not return matches, remove the glob from the
### argumentlist instead of reporting an error
setopt no_numeric_glob_sort ### sort filenames numerically rather than lexicographically, if possible.
setopt rc_expand_param ### array expansions of the form `foo${xx}bar', where the parameter
### 'xx' is set to (a b c), are substituted with `fooabar foobbar foocbar'
### instead of the default `fooa b cbar'.
setopt no_sh_glob ### make globbing more 'sh-like'; please, no!
setopt unset ### treat unset parameters as if they were empty when substituting.
if zis_314 "atleast" ; then
setopt bare_glob_qual ### treat trailing set of parentheses as a qualifier list
setopt no_ksh_glob ### a [\+\*@\?\!] that precedes a pair of parentheses affects globbing.
fi
if zis_42 "atleast" ; then
setopt case_glob ### make globbing case sensitive
fi
### }}}
### history options {{{
setopt append_history ### when exiting, append history entries to $HISTFILE, rather
### than replacing the old file; this is the default
setopt bang_hist ### enable '!' history expansion
setopt no_extended_history ### additional info in $HISTFILE
setopt no_hist_allow_clobber ### add '|' to output redirections in the history.
setopt no_hist_beep ### beep? beep yourself!eleven!!
setopt hist_ignore_dups ### don't add entered command to history, if it's a dup of the previous event.
setopt no_hist_ignore_space ### if the commandline starts with a whitespace, don't add it to history
setopt no_hist_no_store ### dont add 'history' command (fc -l) to the history
if zis_306 "atleast" ; then
setopt no_hist_reduce_blanks ### remove unneeded blanks from commands in history
setopt no_hist_verify ### bullet-proof history-expansion
fi
if zis_314 "atleast" ; then
setopt no_hist_no_functions ### don't add functions to history
fi
if zis_316 "atleast" ; then
setopt no_hist_expire_dups_first ### if the internal history needs to be trimmed, throw away dups first
setopt hist_find_no_dups ### when using history don't find dups, even if they are not contiguous.
setopt hist_ignore_all_dups ### if the entered command is a dup, remove the old one from history.
setopt hist_save_no_dups ### don't write dups to $HISTFILE
setopt no_inc_append_history ### append every single command to $HISTFILE immediately after hitting ENTER.
setopt no_share_history ### always import new commands from $HISTFILE (see 'inc_append_history')
fi
if zis_43 "atleast" ; then
setopt hist_save_by_copy ### when saving history: DATA => $HISTFILE.new; mv $HISTFILE.new $HISTFILE
### you normally don't unset this one.
fi
### }}}
### completion options {{{
setopt always_last_prompt ### if zsh prints out a list (eg. on an ambiguous completion), it reuses
### the old prompt instead of printing a new one underneath the list;
### this breaks menucompletion if turned off
setopt no_always_to_end ### if a completion is performed with the cursor within a word, and a full
### completion is inserted, the cursor is moved to the end of the word;
### that is, the cursor is moved to the end of the word if either a
### single match is inserted or menu completion is performed;
### worthless if 'complete_in_word' is off
setopt auto_list ### autom. list choices on ambiguous completion
setopt auto_menu ### use menucompletion after the 2nd consecutive completion request;
### overwritten by 'menu_complete'
setopt no_auto_name_dirs ### any parameter that is set to the absolute name of a directory
### immediately becomes a name for that directory; otherwise the
### parameter must be used is the ~parameter form.
setopt no_auto_param_keys ### intelligently remove automatically inserted characters when completing
setopt auto_param_slash ### when completing a directory name add a slash instead of a space
setopt auto_remove_slash ### intelligently remove the trailing slash from a completed directory
setopt complete_aliases ### don't expand aliases _before_ completion has finished
setopt complete_in_word ### if unset the cursor is set to the end of the word if completion is started
setopt list_ambiguous ### complete as much of a completion until it gets ambiguous.
setopt no_list_beep ### how about --- NO!
setopt list_types ### identify filetype by a trailing marker in completion lists
setopt no_menu_complete ### always use menu completion
setopt no_glob_complete ### enable globbing in completions;
### cycle through globbing matches in a menu (do not insert them right away).
setopt hash_list_all ### force entire path of a completion to be hashed
setopt no_rec_exact ### in completion, recognize exact matches even if they are ambiguous.
if zis_316 "atleast" ; then
setopt no_bashautolist ### automatically list choices when a completion function is
### called twice in succession
fi
if zis_317 "atleast" ; then
setopt no_list_packed ### try to make completion lists smaller (but ugly)
setopt no_list_rows_first ### lay out matches in completion lists horizontally
fi
### }}}
### shell emulation options {{{
setopt no_bsd_echo ### make builtin 'echo' compatible to BSD's 'echo'
setopt no_csh_junkie_history ### i don't get this one :-/
setopt no_csh_junkie_loops ### this enables some history shortcuts, that csh users might be used to
setopt no_csh_junkie_quotes ### change the way "" and '' work to match csh
setopt no_ksh_arrays ### emulate ksh array handling
setopt no_ksh_option_print ### changes the output of setopt without arguments
setopt no_posix_builtins ### when set, the command 'builtin' can be used to execute shell builtins
setopt no_sh_file_expansion ### perform filename expansion (e.g., ~ expansion) before parameter expansion,
### command substitution, arithmetic expansion and brace expansion. if this
### option is unset, it is performed after brace expansion, so things
### like `~$USERNAME' and `~{pfalstad,rc}' will work.
setopt no_sh_option_letters ### try to interpret single-letter options to set{,opt} like ksh would.
setopt no_sh_word_split ### sh-style wordsplitting; not for me.
if zis_31 "atleast" ; then
setopt no_ksh_autoload ### emulate ksh function autoloading
fi
if zis_317 "atleast" ; then
setopt no_sh_nullcmd ### use ':' instead of $NULLCMD and $READNULLCMD
setopt no_csh_nullcmd ### ignore $NULLCMD and $READNULLCMD; redirection without command will fail.
fi
if zis_402 "atleast" ; then
setopt no_ksh_typeset ### alters the typeset commands to match ksh's behaviour
fi
if zis_421 "atleast" ; then
setopt no_traps_async ### handle signals and run traps immediately
fi
### }}}
### script+function options {{{
setopt no_err_exit ### if set, execute ZERR trap and exit if a command returns non-zero
setopt exec ### yes, _do_ run the commands i enter.
setopt function_arg_zero ### set ${0} to the function/script name
setopt local_options ### shell options are to be restored after returning from a shell function
setopt multios ### enable multiple redirections
setopt no_verbose ### print shell input lines as they are read.
setopt no_xtrace ### same as 'set -x'
if zis_316 "atleast" ; then
setopt no_local_traps ### similar to 'local_options', but works on traps
fi
if zis_317 "atleast" ; then
setopt octal_zeroes ### print octal values the '0741' way
fi
if zis_40 "atleast" ; then
setopt c_bases ### output hex-numbers in '0x1F' format (see 'octal_zeroes')
fi
if zis_422 "atleast" ; then
setopt eval_lineno ### linenumbers of expressions in 'eval' are tracked seperately
fi
if zis_41 "atleast" ; then
setopt no_err_return ### similar to 'err_exit' but a 'return' would be executed rather than an 'exit'
setopt no_typeset_silent ### if this is unset, executing any of the 'typeset' family of commands
### with no options and a list of parameters that have no values to be
### assigned but already exist will display the value of the parameter.
### if the option is set, they will only be shown when parameters are
### selected with the '-m' option. the option '-p' is available whether
### or not the option is set.
fi
if zis_43 "atleast" ; then
setopt warn_create_global ### print a warning when creating a global parameter by an assignment
### in a function
fi
### }}}
### chdir options {{{
setopt no_autocd ### if a directoryname is entered like a command, and there is no command
### of that name; the 'cd' command is executed for that directory
setopt auto_pushd ### make cd push the old directory to the dirstack
setopt no_cdable_vars ### if cd would fail, because the arg is not a dir, try to expand the
### argument as if it was called the ~expression way
setopt chase_links ### _just_don't_lie_to_me_
setopt pushd_ignore_dups ### don't push dups on the dirstack
setopt pushd_minus ### Exchanges the meanings of `+' and `-' when used with a number to
### specify a directory in the stack.
setopt no_pushd_silent ### do not print the dirstack after popd/pushd
setopt no_pushd_to_home ### make 'pushd' with no argument, act like 'pushd ${HOME}'
if zis_316 "atleast" ; then
setopt chase_dots ### _just_don't_lie_to_me_
fi
### }}}
### job control options {{{
setopt no_auto_resume ### if you've got a simple command suspened, say 'mutt',
### and you forgot that you have already got a mutt running and try
### to start another mutt, the old running mutt is resumed, rather
### than starting a new process
setopt no_bg_nice ### run background jobs at lower priority
setopt no_hup ### send SIGHUP to background processes on exit.
setopt long_list_jobs ### list jobs in the long format by default
setopt monitor ### allow job control; _absolutely_yes_
setopt notify ### report status of background jobs immediately
if zis_317 "atleast" ; then
setopt check_jobs ### report status of bg-jobs if exiting a shell with job control enabled
fi
if zis_41 "atleast" ; then
setopt no_auto_continue ### if set, stopped jobs are disowned and restarted immediately;
### i don't see, why you would want this.
fi
### }}}
### prompt options {{{
setopt no_prompt_cr ### print '\r' before printing the prompt.
setopt prompt_subst ### turn on various expansions in prompts
if zis_314 "atleast" ; then
setopt no_prompt_bang ### if set, '!' is treated specially in prompt expansion.
setopt prompt_percent ### if set, '%' is treated specially in prompt expansion.
fi
if zis_41 "atleast" ; then
setopt transient_rprompt ### remove any right prompt from display when accepting a command line.
### this may be useful with terminals with other cut/paste methods.
fi
if zis_43 "atleast" ; then
setopt no_prompt_sp ### attempt to preserve partial lines (no effect if 'prompt_cr' is unset).
fi
### }}}
### line editor options {{{
setopt no_beep ### beep on error in zle; hell _no_!
setopt no_overstrike ### start zle in overstrike mode
setopt no_single_line_zle ### switch of multiline editing; who would want this?
setopt zle ### use the zsh-line-editor
if zis_41 "atleast" ; then
setopt no_vi ### bindkey -v equivalent
setopt emacs ### bindkey -e equivalent
fi
### }}}
### state options {{{
setopt no_privileged ### turn on privileged mode.
setopt no_rc_quotes ### allow the character sequence _''_ to signify a single quote
### within singly quoted strings. note this does not apply in quoted strings
if zis_31 "atleast" ; then
setopt no_restricted ### turn on restricted mode.
fi
if zis_316 "atleast" ; then
setopt no_single_command ### make the shell exit after the first command from stdin
fi
### the following options are just included for completeness
### you don't have to set these, they are normally set
### to the right value automatically.
#setopt no_login ### set state to "login shell"
#setopt shin_stdin ### commands are being read from the standard input. commands are read
# ### from standard input if no command is specified with '-c' and no
# ### file of commands is specified. if SHIN_STDIN is set explicitly on
# ### the command line, any argument that would otherwise have been
# ### taken as a file to run will instead be treated as a normal
# ### positional parameter. note that setting or unsetting this option
# ### on the command line does not necessarily affect the state the option
# ### will have while the shell is running - that is purely an indicator
# ### of whether on not commands are actually being read from standard
# ### input. the value of this option cannot be changed anywhere other
# ### than the command line.
#setopt interactive ### this is an interactive shell.
### }}}