mirror of
https://github.com/wting/autojump
synced 2024-10-27 20:34:07 +00:00
Add Fish support.
This commit is contained in:
parent
3e6f115ed8
commit
701e454dd6
86
bin/autojump.fish
Normal file
86
bin/autojump.fish
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
complete -x -c j -a '(autojump --bash --complete (commandline -t))'
|
||||||
|
|
||||||
|
switch "$XDG_DATA_HOME"
|
||||||
|
case "*$USER*"
|
||||||
|
set -x AUTOJUMP_DATA_DIR "$XDG_DATA_HOME/autojump"
|
||||||
|
case '*'
|
||||||
|
set -x AUTOJUMP_DATA_DIR ~/.local/share/autojump
|
||||||
|
end
|
||||||
|
|
||||||
|
if not test -d $AUTOJUMP_DATA_DIR
|
||||||
|
mkdir $AUTOJUMP_DATA_DIR
|
||||||
|
end
|
||||||
|
|
||||||
|
# local installation
|
||||||
|
if test -d ~/.autojump
|
||||||
|
export PATH ~/.autojump/bin $PATH
|
||||||
|
end
|
||||||
|
|
||||||
|
set -x AUTOJUMP_HOME $HOME
|
||||||
|
|
||||||
|
function __aj_err
|
||||||
|
echo $argv 1>&2; false
|
||||||
|
end
|
||||||
|
|
||||||
|
function __aj_not_found
|
||||||
|
__aj_err "autojump: directory '"$argv"' not found"
|
||||||
|
__aj_err "Try `autojump --help` for more information."
|
||||||
|
end
|
||||||
|
|
||||||
|
function __aj_add --on-variable PWD
|
||||||
|
status --is-command-substitution; and return
|
||||||
|
autojump -a (pwd) >/dev/null ^$AUTOJUMP_DATA_DIR/autojump_errors
|
||||||
|
end
|
||||||
|
|
||||||
|
function j
|
||||||
|
switch "$argv"
|
||||||
|
case '-*' '--*'
|
||||||
|
autojump $argv
|
||||||
|
case '*'
|
||||||
|
set -l new_path (autojump $argv)
|
||||||
|
if test -d "$new_path"
|
||||||
|
set_color red
|
||||||
|
echo $new_path
|
||||||
|
set_color normal
|
||||||
|
cd $new_path
|
||||||
|
else
|
||||||
|
__aj_not_found $argv
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function jc
|
||||||
|
switch "$argv"
|
||||||
|
case '-*'
|
||||||
|
j $argv
|
||||||
|
case '*'
|
||||||
|
j (pwd) $argv
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function jo
|
||||||
|
if test -z (autojump $argv)
|
||||||
|
__aj_not_found $argv
|
||||||
|
else
|
||||||
|
switch (sh -c 'echo ${OSTYPE}')
|
||||||
|
case linux-gnu
|
||||||
|
xdg-open (autojump $argv)
|
||||||
|
case 'darwin*'
|
||||||
|
open (autojump $argv)
|
||||||
|
case cygwin
|
||||||
|
cygstart "" (cygpath -w -a (pwd))
|
||||||
|
case '*'
|
||||||
|
__aj_error "Unknown operating system."
|
||||||
|
end
|
||||||
|
echo end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function jco
|
||||||
|
switch "$argv"
|
||||||
|
case '-*'
|
||||||
|
j $argv
|
||||||
|
case '*'
|
||||||
|
jo (pwd) $argv
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue
Block a user