mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-11-04 07:21:06 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			921 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			921 B
		
	
	
	
		
			Text
		
	
	
	
	
	
# This function lists options with the no's in front removed for
 | 
						|
# improved comprehension, i.e. `norcs off' becomes `rcs on'.
 | 
						|
# The format is otherwise like that with `kshoptionprint' set,
 | 
						|
# i.e. you can see all options whether on or off.
 | 
						|
# It can take a list of option names or parts thereof to search for
 | 
						|
# via egrep.
 | 
						|
#
 | 
						|
# Written by Sweth Chandramouli with hacks by Bart Schaefer.
 | 
						|
 | 
						|
listalloptions () {
 | 
						|
   emulate -R zsh
 | 
						|
   builtin setopt localoptions kshoptionprint
 | 
						|
   local OPT_NAME OPT_PAIR OPT_VALUE
 | 
						|
   for OPT_PAIR in "${(f)$(builtin setopt)}" ; do
 | 
						|
      OPT_VALUE=${OPT_PAIR##* }
 | 
						|
      OPT_NAME=${OPT_PAIR%% *}
 | 
						|
      if [[ ${OPT_NAME#no} != ${OPT_NAME} ]] ; then
 | 
						|
         OPT_VALUE=${(L)${${OPT_VALUE:s/on/OFF}:s/off/on}} &&
 | 
						|
            OPT_NAME=${OPT_NAME#no};
 | 
						|
      fi;
 | 
						|
      echo ${(r:21:)OPT_NAME} ${OPT_VALUE}
 | 
						|
   done
 | 
						|
}
 | 
						|
 | 
						|
if [[ -n $@ ]]; then
 | 
						|
    listalloptions | egrep "${(j.|.)@}"
 | 
						|
else
 | 
						|
    listalloptions
 | 
						|
fi
 |