75 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
{%- let section = "# =============================================================================\n#" -%}
 | 
						|
{%- let not_configured = "# -- not configured --" -%}
 | 
						|
 | 
						|
{%- let pwd_cmd -%}
 | 
						|
{%- if resolve_symlinks -%}
 | 
						|
{%- let pwd_cmd = "pwd -P" -%}
 | 
						|
{%- else -%}
 | 
						|
{%- let pwd_cmd = "pwd -L" -%}
 | 
						|
{%- endif -%}
 | 
						|
 | 
						|
{{ section }}
 | 
						|
# Hook configuration for zoxide.
 | 
						|
#
 | 
						|
{%- if hook != InitHook::None %}
 | 
						|
 | 
						|
# Hook to add new entries to the database.
 | 
						|
{%- if hook == InitHook::Prompt %}
 | 
						|
alias __zoxide_hook 'zoxide add -- "`{{ pwd_cmd }}`"'
 | 
						|
 | 
						|
{%- else if hook == InitHook::Pwd %}
 | 
						|
set __zoxide_pwd_old = `{{ pwd_cmd }}`
 | 
						|
alias __zoxide_hook 'set __zoxide_pwd_tmp = "`{{ pwd_cmd }}`"; test "$__zoxide_pwd_tmp" != "$__zoxide_pwd_old" && zoxide add -- "$__zoxide_pwd_tmp"; set __zoxide_pwd_old = "$__zoxide_pwd_tmp"'
 | 
						|
{%- endif %}
 | 
						|
 | 
						|
# Initialize hook.
 | 
						|
alias precmd ';__zoxide_hook'
 | 
						|
 | 
						|
{%- endif %}
 | 
						|
 | 
						|
{{ section }}
 | 
						|
# When using zoxide with --no-cmd, alias these internal functions as desired.
 | 
						|
#
 | 
						|
 | 
						|
# Jump to a directory using only keywords.
 | 
						|
alias __zoxide_z 'set __zoxide_args = (\!*)\
 | 
						|
if ("$#__zoxide_args" == 0) then\
 | 
						|
    cd ~\
 | 
						|
else\
 | 
						|
    if ("$#__zoxide_args" == 1 && "$__zoxide_args[1]" == "-") then\
 | 
						|
        cd -\
 | 
						|
    else if ("$#__zoxide_args" == 1 && -d "$__zoxide_args[1]") then\
 | 
						|
        cd "$__zoxide_args[1]"\
 | 
						|
    else\
 | 
						|
        set __zoxide_pwd = `{{ pwd_cmd }}`\
 | 
						|
        set __zoxide_result = "`zoxide query --exclude '"'"'$__zoxide_pwd'"'"' -- $__zoxide_args`" && cd "$__zoxide_result"\
 | 
						|
    endif\
 | 
						|
endif'
 | 
						|
 | 
						|
# Jump to a directory using interactive search.
 | 
						|
alias __zoxide_zi 'set __zoxide_args = (\!*)\
 | 
						|
set __zoxide_pwd = `{{ pwd_cmd }}`\
 | 
						|
set __zoxide_result = "`zoxide query --exclude '"'"'$__zoxide_pwd'"'"' --interactive -- $__zoxide_args`" && cd "$__zoxide_result"'
 | 
						|
 | 
						|
{{ section }}
 | 
						|
# Commands for zoxide. Disable these using --no-cmd.
 | 
						|
#
 | 
						|
 | 
						|
{%- match cmd %}
 | 
						|
{%- when Some with (cmd) %}
 | 
						|
 | 
						|
alias {{cmd}} __zoxide_z
 | 
						|
alias {{cmd}}i __zoxide_zi
 | 
						|
 | 
						|
{%- when None %}
 | 
						|
 | 
						|
{{ not_configured }}
 | 
						|
 | 
						|
{%- endmatch %}
 | 
						|
 | 
						|
{{ section }}
 | 
						|
# To initialize zoxide, add this to your shell configuration file (usually ~/.tcshrc):
 | 
						|
#
 | 
						|
#     zoxide init tcsh > ~/.zoxide.tcsh
 | 
						|
#     source ~/.zoxide.tcsh
 |