From 220a8da7aa0fea9db25cab336281216b44f0677d Mon Sep 17 00:00:00 2001 From: Joel Schaerer Date: Thu, 19 Feb 2009 22:09:59 +0100 Subject: [PATCH] fixes for ubuntu --- autojump.bash | 17 +++++++++++++++++ autojump.sh | 18 +++--------------- install.sh | 5 +++-- 3 files changed, 23 insertions(+), 17 deletions(-) create mode 100644 autojump.bash diff --git a/autojump.bash b/autojump.bash new file mode 100644 index 0000000..2d4a5e0 --- /dev/null +++ b/autojump.bash @@ -0,0 +1,17 @@ +#This shell snippet sets the prompt command and the necessary aliases +#Only excecute if the shell is bash and it is interactive +if [ $SHELL = "/bin/bash" ] && [ -n "$PS1" ]; then + _autojump() + { + local cur + COMPREPLY=() + unset COMP_WORDS[0] #remove "j" from the array + cur=${COMP_WORDS[*]} + IFS=$'\n' read -d '' -a COMPREPLY < <(autojump --completion "$cur") + return 0 + } + complete -F _autojump j + export PROMPT_COMMAND='autojump -a "$(pwd -P)"' + alias jumpstat="autojump --stat" + function j { new_path="$(autojump $@)";if [ -n "$new_path" ]; then echo -e "\\033[31m${new_path}\\033[0m"; echo; cd "$new_path";fi } +fi diff --git a/autojump.sh b/autojump.sh index 2d4a5e0..d6cfbe1 100755 --- a/autojump.sh +++ b/autojump.sh @@ -1,17 +1,5 @@ -#This shell snippet sets the prompt command and the necessary aliases -#Only excecute if the shell is bash and it is interactive +#Source autojump.bashrc only if we're on bash, as it is +#not compatible with other shells if [ $SHELL = "/bin/bash" ] && [ -n "$PS1" ]; then - _autojump() - { - local cur - COMPREPLY=() - unset COMP_WORDS[0] #remove "j" from the array - cur=${COMP_WORDS[*]} - IFS=$'\n' read -d '' -a COMPREPLY < <(autojump --completion "$cur") - return 0 - } - complete -F _autojump j - export PROMPT_COMMAND='autojump -a "$(pwd -P)"' - alias jumpstat="autojump --stat" - function j { new_path="$(autojump $@)";if [ -n "$new_path" ]; then echo -e "\\033[31m${new_path}\\033[0m"; echo; cd "$new_path";fi } + source /etc/profile.d/autojump.bash fi diff --git a/install.sh b/install.sh index 6047213..c8c8fa8 100755 --- a/install.sh +++ b/install.sh @@ -1,6 +1,7 @@ sudo cp autojump /usr/bin/ sudo cp autojump.1 /usr/share/man/man1/ if [ -d "/etc/profile.d" ]; then + sudo cp autojump.bash /etc/profile.d/ sudo cp autojump.sh /etc/profile.d/ echo "Remember to add the line" echo " source /etc/profile" @@ -13,11 +14,11 @@ else if [ $ans = "y" -o $ans = "Y" -o $ans = "yes" -o $ans = "Yes" ]; then echo "" >> ~/.bashrc echo "#autojump" >> ~/.bashrc - cat autojump.sh >> ~/.bashrc + cat autojump.bash >> ~/.bashrc else echo "Then you need to put autojump.sh, or the code from it, somewhere where it will get read. Good luck!" fi else echo "Then you need to put autojump.sh, or the code from it, somewhere where it will get read. Good luck!" fi -fi \ No newline at end of file +fi