68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| # Load plugin scripts
 | |
| plugin-load() { source ~/.config/zsh/$1/$1.plugin.zsh }
 | |
| plugin-load zsh-syntax-highlighting
 | |
| plugin-load zsh-history-substring-search
 | |
| 
 | |
| # Disable sound
 | |
| unsetopt BEEP
 | |
| 
 | |
| # Remove duplicates from history
 | |
| setopt HIST_IGNORE_ALL_DUPS
 | |
| setopt HIST_REDUCE_BLANKS
 | |
| setopt HIST_SAVE_NO_DUPS
 | |
| 
 | |
| # Enable multi-terminal history
 | |
| setopt INC_APPEND_HISTORY
 | |
| 
 | |
| # Enable % escape expansion and substitution in the prompt
 | |
| setopt PROMPT_PERCENT
 | |
| setopt PROMPT_SUBST
 | |
| 
 | |
| # Disable '<Ctrl>D' to logout
 | |
| setopt IGNORE_EOF
 | |
| 
 | |
| # Enable comments in the prompt
 | |
| setopt INTERACTIVE_COMMENTS
 | |
| 
 | |
| # Initialize completions
 | |
| autoload -U compinit
 | |
| compinit
 | |
| 
 | |
| # Enable prompt themes
 | |
| autoload -Uz promptinit
 | |
| promptinit
 | |
| prompt fresh
 | |
| 
 | |
| # Enable vi mode
 | |
| bindkey -v
 | |
| 
 | |
| # Enable yank whole line with 'yy' and yank end of line with 'Y'
 | |
| bindkey -M vicmd 'yy' vi-yank-whole-line
 | |
| bindkey -M vicmd 'Y' vi-yank-eol
 | |
| 
 | |
| # Enable undo with 'u' and redo with 'U'
 | |
| bindkey -M vicmd 'u' undo
 | |
| bindkey -M vicmd 'U' redo
 | |
| 
 | |
| # Enable substring history search with 'j' and 'k'
 | |
| bindkey -M vicmd 'k' history-substring-search-up
 | |
| bindkey -M vicmd 'j' history-substring-search-down
 | |
| 
 | |
| # Replace '<Esc>h' with 'K' to view help
 | |
| bindkey -r '^[h'
 | |
| bindkey -M vicmd 'K' run-help
 | |
| 
 | |
| # Disable Ex mode with ':'
 | |
| bindkey -rM vicmd ':'
 | |
| 
 | |
| # Use editor to edit command line with '<Ctrl>V'
 | |
| autoload -U edit-command-line
 | |
| zle -N edit-command-line
 | |
| bindkey -M vicmd '^V' edit-command-line
 | |
| 
 | |
| # Disable tty flow control, allows vim to use '<Ctrl>S'
 | |
| stty -ixon
 | |
| 
 | |
| # Remove duplicates from PATH
 | |
| typeset -U PATH
 |