mirror of
https://github.com/wting/autojump
synced 2024-10-27 20:34:07 +00:00
Don't write destdir into autojump.sh
This commit is contained in:
parent
35858c2c8e
commit
6f28b5a949
@ -19,12 +19,3 @@ if [ "${shell}" = "sh" ]; then
|
|||||||
# check local install
|
# check local install
|
||||||
elif [ -s ~/.autojump/share/autojump/autojump.${shell} ]; then
|
elif [ -s ~/.autojump/share/autojump/autojump.${shell} ]; then
|
||||||
source ~/.autojump/share/autojump/autojump.${shell}
|
source ~/.autojump/share/autojump/autojump.${shell}
|
||||||
|
|
||||||
# check global install
|
|
||||||
elif [ -s ${share_dir}/autojump.${shell} ]; then
|
|
||||||
source ${share_dir}/autojump.${shell}
|
|
||||||
|
|
||||||
# check custom install
|
|
||||||
elif [ -s ${etc_dir}/autojump.${shell} ]; then
|
|
||||||
source ${etc_dir}/autojump.${shell}
|
|
||||||
fi
|
|
||||||
|
38
install.py
38
install.py
@ -9,8 +9,7 @@ import sys
|
|||||||
|
|
||||||
sys.path.append('bin')
|
sys.path.append('bin')
|
||||||
from autojump_argparse import ArgumentParser
|
from autojump_argparse import ArgumentParser
|
||||||
from os.path import join
|
from os.path import join, normpath
|
||||||
from string import Template
|
|
||||||
|
|
||||||
SUPPORTED_SHELLS = ('bash', 'zsh', 'fish', 'tcsh')
|
SUPPORTED_SHELLS = ('bash', 'zsh', 'fish', 'tcsh')
|
||||||
|
|
||||||
@ -31,16 +30,31 @@ def mkdir(path, dryrun=False):
|
|||||||
os.makedirs(path)
|
os.makedirs(path)
|
||||||
|
|
||||||
|
|
||||||
def modify_autojump_sh(etc_dir, share_dir, dryrun=False):
|
def modify_autojump_sh(destdir, etc_dir, share_dir, dryrun=False, custom=False):
|
||||||
"""Append custom installation path to autojump.sh"""
|
"""Append custom installation path to autojump.sh"""
|
||||||
|
|
||||||
autojumpsh = join(etc_dir, 'autojump.sh')
|
autojumpsh = join(etc_dir, 'autojump.sh')
|
||||||
with open(autojumpsh, 'r') as f:
|
|
||||||
content = f.read()
|
# Strip `destdir` from {etc,share}_dir, but make sure they're still absolute
|
||||||
tmpl = Template(content)
|
destdir_length = len(destdir)
|
||||||
new_content = tmpl.safe_substitute(etc_dir=etc_dir, share_dir=share_dir)
|
etc_dir = normpath("/" + etc_dir[destdir_length:])
|
||||||
with open(autojumpsh, 'w') as f:
|
share_dir = normpath("/" + share_dir[destdir_length:])
|
||||||
f.write(new_content)
|
|
||||||
|
custom_install = "\
|
||||||
|
\n# check custom install \
|
||||||
|
\nif [ -s %s/autojump.${shell} ]; then \
|
||||||
|
\n\tsource %s/autojump.${shell} \
|
||||||
|
\nfi\n" % (etc_dir, etc_dir)
|
||||||
|
|
||||||
|
custom_share = "\
|
||||||
|
\n# check global install \
|
||||||
|
\nelif [ -s %s/autojump.${shell} ]; then \
|
||||||
|
\n\tsource %s/autojump.${shell} \
|
||||||
|
\nfi\n" % (share_dir, share_dir)
|
||||||
|
|
||||||
|
with open(autojumpsh, 'a') as f:
|
||||||
|
f.write(custom_share)
|
||||||
|
if custom:
|
||||||
|
f.write(custom_install)
|
||||||
|
|
||||||
|
|
||||||
def modify_autojump_lua(clink_dir, bin_dir, dryrun=False):
|
def modify_autojump_lua(clink_dir, bin_dir, dryrun=False):
|
||||||
@ -208,8 +222,8 @@ def main(args):
|
|||||||
cp('./bin/autojump.zsh', share_dir, args.dryrun)
|
cp('./bin/autojump.zsh', share_dir, args.dryrun)
|
||||||
cp('./bin/_j', zshshare_dir, args.dryrun)
|
cp('./bin/_j', zshshare_dir, args.dryrun)
|
||||||
|
|
||||||
if args.custom_install:
|
modify_autojump_sh(args.destdir, etc_dir, share_dir, args.dryrun,
|
||||||
modify_autojump_sh(etc_dir, share_dir, args.dryrun)
|
args.custom_install)
|
||||||
|
|
||||||
show_post_installation_message(etc_dir, share_dir, bin_dir)
|
show_post_installation_message(etc_dir, share_dir, bin_dir)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user