125 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
			
		
		
	
	
			125 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
| 
 | |
| #--------------------------------------------------------------------#
 | |
| # Global Configuration Variables                                     #
 | |
| #--------------------------------------------------------------------#
 | |
| 
 | |
| # Color to use when highlighting suggestion
 | |
| # Uses format of `region_highlight`
 | |
| # More info: http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#Zle-Widgets
 | |
| (( ! ${+ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE} )) &&
 | |
| typeset -g ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=8'
 | |
| 
 | |
| # Prefix to use when saving original versions of bound widgets
 | |
| (( ! ${+ZSH_AUTOSUGGEST_ORIGINAL_WIDGET_PREFIX} )) &&
 | |
| typeset -g ZSH_AUTOSUGGEST_ORIGINAL_WIDGET_PREFIX=autosuggest-orig-
 | |
| 
 | |
| # Strategies to use to fetch a suggestion
 | |
| # Will try each strategy in order until a suggestion is returned
 | |
| (( ! ${+ZSH_AUTOSUGGEST_STRATEGY} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_STRATEGY
 | |
| 	ZSH_AUTOSUGGEST_STRATEGY=(history)
 | |
| }
 | |
| 
 | |
| # Widgets that clear the suggestion
 | |
| (( ! ${+ZSH_AUTOSUGGEST_CLEAR_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_CLEAR_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_CLEAR_WIDGETS=(
 | |
| 		history-search-forward
 | |
| 		history-search-backward
 | |
| 		history-beginning-search-forward
 | |
| 		history-beginning-search-backward
 | |
| 		history-beginning-search-forward-end
 | |
| 		history-beginning-search-backward-end
 | |
| 		history-substring-search-up
 | |
| 		history-substring-search-down
 | |
| 		up-line-or-beginning-search
 | |
| 		down-line-or-beginning-search
 | |
| 		up-line-or-history
 | |
| 		down-line-or-history
 | |
| 		accept-line
 | |
| 		copy-earlier-word
 | |
| 	)
 | |
| }
 | |
| 
 | |
| # Widgets that accept the entire suggestion
 | |
| (( ! ${+ZSH_AUTOSUGGEST_ACCEPT_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_ACCEPT_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_ACCEPT_WIDGETS=(
 | |
| 		forward-char
 | |
| 		end-of-line
 | |
| 		vi-forward-char
 | |
| 		vi-end-of-line
 | |
| 		vi-add-eol
 | |
| 	)
 | |
| }
 | |
| 
 | |
| # Widgets that accept the entire suggestion and execute it
 | |
| (( ! ${+ZSH_AUTOSUGGEST_EXECUTE_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_EXECUTE_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_EXECUTE_WIDGETS=(
 | |
| 	)
 | |
| }
 | |
| 
 | |
| # Widgets that accept the suggestion as far as the cursor moves
 | |
| (( ! ${+ZSH_AUTOSUGGEST_PARTIAL_ACCEPT_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_PARTIAL_ACCEPT_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_PARTIAL_ACCEPT_WIDGETS=(
 | |
| 		forward-word
 | |
| 		emacs-forward-word
 | |
| 		vi-forward-word
 | |
| 		vi-forward-word-end
 | |
| 		vi-forward-blank-word
 | |
| 		vi-forward-blank-word-end
 | |
| 		vi-find-next-char
 | |
| 		vi-find-next-char-skip
 | |
| 	)
 | |
| }
 | |
| 
 | |
| # Widgets that should be ignored (globbing supported but must be escaped)
 | |
| (( ! ${+ZSH_AUTOSUGGEST_IGNORE_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_IGNORE_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_IGNORE_WIDGETS=(
 | |
| 		orig-\*
 | |
| 		beep
 | |
| 		run-help
 | |
| 		set-local-history
 | |
| 		which-command
 | |
| 		yank-pop
 | |
| 		zle-\*
 | |
| 	)
 | |
| 	if [[ "${ZSH_VERSION}" < 5.2 ]]; then
 | |
| 		ZSH_AUTOSUGGEST_IGNORE_WIDGETS+=(yank)
 | |
| 	fi
 | |
| }
 | |
| 
 | |
| # Pty name for capturing completions for completion suggestion strategy
 | |
| (( ! ${+ZSH_AUTOSUGGEST_COMPLETIONS_PTY_NAME} )) &&
 | |
| typeset -g ZSH_AUTOSUGGEST_COMPLETIONS_PTY_NAME=zsh_autosuggest_completion_pty
 | |
| 
 | |
| # Widgets that should preserve ZLE_KILL flag
 | |
| (( ! ${+ZSH_AUTOSUGGEST_ZLE_KILL_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_ZLE_KILL_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_ZLE_KILL_WIDGETS=(
 | |
| 		kill-\*
 | |
| 		backward-kill-\*
 | |
| 	)
 | |
| }
 | |
| 
 | |
| # Widgets that should preserve ZLE_YANK flag
 | |
| (( ! ${+ZSH_AUTOSUGGEST_ZLE_YANK_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_ZLE_YANK_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_ZLE_YANK_WIDGETS=(
 | |
| 		bracketed-paste
 | |
| 		vi-put-after
 | |
| 	)
 | |
| }
 | |
| 
 | |
| # Widgets that should preserve ZLE_YANKBEFORE flag
 | |
| (( ! ${+ZSH_AUTOSUGGEST_ZLE_YANKBEFORE_WIDGETS} )) && {
 | |
| 	typeset -ga ZSH_AUTOSUGGEST_ZLE_YANKBEFORE_WIDGETS
 | |
| 	ZSH_AUTOSUGGEST_ZLE_YANKBEFORE_WIDGETS=(
 | |
| 		vi-put-before
 | |
| 		yank
 | |
| 	)
 | |
| }
 |