mirror of
				https://github.com/wting/autojump
				synced 2025-06-13 12:54:07 +00:00 
			
		
		
		
	created local install for z-shell
This commit is contained in:
		
							parent
							
								
									db4ad6f049
								
							
						
					
					
						commit
						7085d8c5b4
					
				
							
								
								
									
										128
									
								
								install.zsh
									
									
									
									
									
								
							
							
						
						
									
										128
									
								
								install.zsh
									
									
									
									
									
								
							@ -20,17 +20,24 @@ function show_help {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
prefix=/usr
 | 
			
		||||
local_install=false
 | 
			
		||||
 | 
			
		||||
#command line parsing
 | 
			
		||||
while true; do
 | 
			
		||||
    case "$1" in
 | 
			
		||||
      -h|--help|-\?) show_help; exit 0;;
 | 
			
		||||
      -p|--prefix) if [ $# -gt 1 ]; then
 | 
			
		||||
            prefix=$2; shift 2
 | 
			
		||||
          else 
 | 
			
		||||
            echo "--prefix or -p require an argument" 1>&2
 | 
			
		||||
            exit 1
 | 
			
		||||
          fi ;;
 | 
			
		||||
	  -l|--local);
 | 
			
		||||
	 	local_install=true
 | 
			
		||||
	 	prefix=~/.autojump
 | 
			
		||||
		shift
 | 
			
		||||
		;;
 | 
			
		||||
      -p|--prefix)
 | 
			
		||||
	 	if [ $# -gt 1 ]; then
 | 
			
		||||
			prefix=$2; shift 2
 | 
			
		||||
		else
 | 
			
		||||
			echo "--prefix or -p require an argument" 1>&2
 | 
			
		||||
			exit 1
 | 
			
		||||
		fi ;;
 | 
			
		||||
      --) shift; break;;
 | 
			
		||||
      -*) echo "invalid option: $1" 1>&2; show_help; exit 1;;
 | 
			
		||||
      *)  break;;
 | 
			
		||||
@ -42,53 +49,72 @@ echo "Installing main files to ${prefix} ..."
 | 
			
		||||
# add git revision to autojump
 | 
			
		||||
./git-version.sh
 | 
			
		||||
 | 
			
		||||
sudo mkdir -p ${prefix}/share/autojump/
 | 
			
		||||
sudo mkdir -p ${prefix}/bin/
 | 
			
		||||
sudo mkdir -p ${prefix}/share/man/man1/
 | 
			
		||||
sudo cp icon.png ${prefix}/share/autojump/
 | 
			
		||||
sudo cp jumpapplet ${prefix}/bin/
 | 
			
		||||
sudo cp autojump ${prefix}/bin/
 | 
			
		||||
sudo cp autojump.1 ${prefix}/share/man/man1/
 | 
			
		||||
mkdir -p ${prefix}/share/autojump/
 | 
			
		||||
mkdir -p ${prefix}/bin/
 | 
			
		||||
mkdir -p ${prefix}/share/man/man1/
 | 
			
		||||
cp icon.png ${prefix}/share/autojump/
 | 
			
		||||
cp jumpapplet ${prefix}/bin/
 | 
			
		||||
cp autojump ${prefix}/bin/
 | 
			
		||||
cp autojump.1 ${prefix}/share/man/man1/
 | 
			
		||||
 | 
			
		||||
# autocompletion file in the first directory of the FPATH variable
 | 
			
		||||
fail=true
 | 
			
		||||
for f in $fpath
 | 
			
		||||
do
 | 
			
		||||
    sudo cp _j $f && fail=false && break
 | 
			
		||||
done
 | 
			
		||||
if $fail
 | 
			
		||||
then
 | 
			
		||||
    echo "Couldn't find a place to put the autocompletion file :-("
 | 
			
		||||
    echo "Still trying to install the rest of autojump..."
 | 
			
		||||
else
 | 
			
		||||
    echo "Installed autocompletion file to $f"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if [ -d "/etc/profile.d" ]; then
 | 
			
		||||
    sudo cp autojump.zsh /etc/profile.d/
 | 
			
		||||
    sudo cp autojump.sh /etc/profile.d/
 | 
			
		||||
    echo "Remember to add the line" 
 | 
			
		||||
    echo "    source /etc/profile.d/autojump.zsh"
 | 
			
		||||
    echo "or"
 | 
			
		||||
    echo "    source /etc/profile"
 | 
			
		||||
    echo "to your ~/.zshrc if it's not there already"
 | 
			
		||||
    echo
 | 
			
		||||
    echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
 | 
			
		||||
else
 | 
			
		||||
    echo "Your distribution does not have a /etc/profile.d directory, the default that we install one of the scripts to. Would you like us to copy it into your ~/.zshrc file to make it work? (If you have done this once before, delete the old version before doing it again.) [y/n]"
 | 
			
		||||
    read ans
 | 
			
		||||
    if [ ${#ans} -gt 0 ]; then
 | 
			
		||||
	if [ $ans = "y" -o $ans = "Y" -o $ans = "yes" -o $ans = "Yes" ]; then
 | 
			
		||||
	    echo "" >> ~/.zshrc
 | 
			
		||||
	    echo "#autojump" >> ~/.zshrc
 | 
			
		||||
	    cat autojump.zsh >> ~/.zshrc
 | 
			
		||||
            echo "Done!"
 | 
			
		||||
            echo
 | 
			
		||||
            echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
 | 
			
		||||
if ( ! ${local_install} ); then
 | 
			
		||||
	fail=true
 | 
			
		||||
	for f in $fpath
 | 
			
		||||
	do
 | 
			
		||||
		sudo cp _j $f && fail=false && break
 | 
			
		||||
	done
 | 
			
		||||
	if $fail
 | 
			
		||||
	then
 | 
			
		||||
		echo "Couldn't find a place to put the autocompletion file :-("
 | 
			
		||||
		echo "Still trying to install the rest of autojump..."
 | 
			
		||||
	else
 | 
			
		||||
	    echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
 | 
			
		||||
		echo "Installed autocompletion file to $f"
 | 
			
		||||
	fi
 | 
			
		||||
    else
 | 
			
		||||
    	    echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
	if [ -d "/etc/profile.d" ]; then
 | 
			
		||||
		sudo cp autojump.zsh /etc/profile.d/
 | 
			
		||||
		sudo cp autojump.sh /etc/profile.d/
 | 
			
		||||
		echo "Remember to add the line"
 | 
			
		||||
		echo "    source /etc/profile.d/autojump.zsh"
 | 
			
		||||
		echo "or"
 | 
			
		||||
		echo "    source /etc/profile"
 | 
			
		||||
		echo "to your ~/.zshrc if it's not there already"
 | 
			
		||||
		echo
 | 
			
		||||
		echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
 | 
			
		||||
	else
 | 
			
		||||
		echo "Your distribution does not have a /etc/profile.d directory, the default that we install one of the scripts to. Would you like us to copy it into your ~/.zshrc file to make it work? (If you have done this once before, delete the old version before doing it again.) [y/n]"
 | 
			
		||||
		read ans
 | 
			
		||||
		if [ ${#ans} -gt 0 ]; then
 | 
			
		||||
		if [ $ans = "y" -o $ans = "Y" -o $ans = "yes" -o $ans = "Yes" ]; then
 | 
			
		||||
			echo "" >> ~/.zshrc
 | 
			
		||||
			echo "#autojump" >> ~/.zshrc
 | 
			
		||||
			cat autojump.zsh >> ~/.zshrc
 | 
			
		||||
				echo "Done!"
 | 
			
		||||
				echo
 | 
			
		||||
				echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
 | 
			
		||||
		else
 | 
			
		||||
			echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
 | 
			
		||||
		fi
 | 
			
		||||
		else
 | 
			
		||||
			echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
 | 
			
		||||
		fi
 | 
			
		||||
	fi
 | 
			
		||||
else
 | 
			
		||||
	mkdir -p ${prefix}/functions/
 | 
			
		||||
	cp _j ${prefix}/functions/
 | 
			
		||||
 | 
			
		||||
	mkdir -p ${prefix}/etc/profile.d/
 | 
			
		||||
	cp autojump.zsh ${prefix}/etc/profile.d/
 | 
			
		||||
	cp autojump.sh ${prefix}/etc/profile.d/
 | 
			
		||||
 | 
			
		||||
	echo "Add the following lines to your ~/.zshrc:"
 | 
			
		||||
	echo
 | 
			
		||||
	echo "    path=(${prefix}/bin \${path})"
 | 
			
		||||
	echo "    fpath=(${prefix}/functions \${fpath})"
 | 
			
		||||
	echo "    source ${prefix}/etc/profile.d/autojump.zsh"
 | 
			
		||||
	echo
 | 
			
		||||
	echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
 | 
			
		||||
	echo
 | 
			
		||||
	echo "To remove autojump, delete the ${prefix} directory and relevant lines from ~/.zshrc."
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user