You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							54 lines
						
					
					
						
							1.1 KiB
						
					
					
				
			
		
		
	
	
							54 lines
						
					
					
						
							1.1 KiB
						
					
					
				| # Copy this file into /usr/share/zsh/site-functions/ | |
| # and add 'autoload n-functions` to .zshrc | |
| # | |
| # This function allows to choose a function for edition with vared | |
| # | |
| # Uses n-list | |
|  | |
| emulate -L zsh | |
|  | |
| setopt extendedglob | |
| zmodload zsh/curses | |
| zmodload zsh/parameter | |
|  | |
| local IFS=" | |
| " | |
|  | |
| unset NLIST_COLORING_PATTERN | |
|  | |
| [ -f ~/.config/znt/n-list.conf ] && builtin source ~/.config/znt/n-list.conf | |
| [ -f ~/.config/znt/n-functions.conf ] && builtin source ~/.config/znt/n-functions.conf | |
|  | |
| local list | |
| local selected | |
|  | |
| NLIST_REMEMBER_STATE=0 | |
|  | |
| list=( "${(@k)functions}" ) | |
| list=( "${(@M)list:#(#i)*$1*}" ) | |
|  | |
| local NLIST_GREP_STRING="$1" | |
|  | |
| if [ "$#list" -eq 0 ]; then | |
|     echo "No matching functions" | |
|     return 1 | |
| fi | |
|  | |
| list=( "${(@i)list}" ) | |
| n-list "$list[@]" | |
|  | |
| if [ "$REPLY" -gt 0 ]; then | |
|     selected="$reply[REPLY]" | |
|     if [ "$feditor" = "zed" ]; then | |
|         echo "Editing \`$selected' (ESC ZZ or Ctrl-x-w to finish):" | |
|         autoload zed | |
|         print -rs "zed -f -- \"$selected\"" | |
|         zed -f -- "$selected" | |
|     else | |
|         echo "Editing \`$selected':" | |
|         print -rs "vared functions\\[$selected\\]" | |
|         vared functions\[$selected\] | |
|     fi | |
| fi | |
|  | |
| # vim: set filetype=zsh:
 | |
| 
 |