feat(users/multi/home): add readline configuration and nix-shell handling to bashrc.
This adds my standard inputrc to my home-manager configuration, via the latter's readline module, and adds nix-shell detection to my bash prompt string. Additionally, nix-shell is wrapped in a shell function, so that entering a nix-shell environment automatically runs bash as a subprocess where appropriate, as the default environment spawned by nix-shell is not to my liking. Change-Id: Id5b1b9415a185ad9920f268c66de32d6ccc0b452 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2146 Reviewed-by: multi <depot@in-addr.xyz> Tested-by: BuildkiteCI
This commit is contained in:
		
							parent
							
								
									f49c86139f
								
							
						
					
					
						commit
						c56f402383
					
				
					 1 changed files with 40 additions and 3 deletions
				
			
		|  | @ -19,16 +19,53 @@ in | ||||||
|     bash = { |     bash = { | ||||||
|       enable = true; |       enable = true; | ||||||
|       initExtra = '' |       initExtra = '' | ||||||
|         bind '"\e[5~":history-search-backward' |         PS1="[\\u@\\h:\\w" | ||||||
|         bind '"\e[6~":history-search-forward' |         if [[ -n "$IN_NIX_SHELL" ]]; then | ||||||
|  |             PS1="$PS1 (nix-shell)]\\\$ " | ||||||
|  |         else | ||||||
|  |             PS1="$PS1]\\\$ " | ||||||
|  |         fi | ||||||
| 
 | 
 | ||||||
|         PS1="[\\u@\\h:\\w]\\\$ " |         nix-shell() { | ||||||
|  |             local comarg=0 | ||||||
|  |             for i in "$@"; do | ||||||
|  |                 [[ "$i" == "--command" ]] && comarg=1 | ||||||
|  |             done | ||||||
|  | 
 | ||||||
|  |             if (( commarg == 0 )); then | ||||||
|  |                 command nix-shell --command bash "$@" | ||||||
|  |             else | ||||||
|  |                 command nix-shell "$@" | ||||||
|  |             fi | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|         _Z_CMD=d |         _Z_CMD=d | ||||||
|         source ~/.z.sh |         source ~/.z.sh | ||||||
|       ''; |       ''; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|  |     readline = { | ||||||
|  |       enable = true; | ||||||
|  |       bindings = { | ||||||
|  |         "\\e[5~" = "history-search-backward"; | ||||||
|  |         "\\e[6~" = "history-search-forward"; | ||||||
|  |         "\\C-w" = "\"\\e\\C-h\""; | ||||||
|  |       }; | ||||||
|  |       includeSystemConfig = false; | ||||||
|  |       variables = { | ||||||
|  |         expand-tilde = true; | ||||||
|  |         colored-stats = true; | ||||||
|  |         page-completions = false; | ||||||
|  |         menu-complete-display-prefix = true; | ||||||
|  |         colored-completion-prefix = true; | ||||||
|  |         completion-query-items = 0; | ||||||
|  |         completion-ignore-case = true; | ||||||
|  |         revert-all-at-newline = true; | ||||||
|  |         show-all-if-ambiguous = true; | ||||||
|  |         skip-completed-text = true; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|     tmux = { |     tmux = { | ||||||
|       enable = true; |       enable = true; | ||||||
|       terminal = "tmux-256color"; |       terminal = "tmux-256color"; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue