1
0
mirror of https://github.com/wting/autojump synced 2026-03-02 03:49:26 +00:00

(Running pre-commit) Use Yelp-style indentation.

This commit is contained in:
William Ting
2017-07-19 23:17:11 -07:00
parent 0e4d15ace6
commit a0719f488e
8 changed files with 372 additions and 226 deletions

View File

@@ -78,11 +78,13 @@ def set_defaults():
data_home = os.path.join(
os.path.expanduser('~'),
'Library',
'autojump')
'autojump',
)
elif is_windows():
data_home = os.path.join(
os.getenv('APPDATA'),
'autojump')
'autojump',
)
else:
data_home = os.getenv(
'XDG_DATA_HOME',
@@ -90,7 +92,9 @@ def set_defaults():
os.path.expanduser('~'),
'.local',
'share',
'autojump'))
'autojump',
),
)
config['data_path'] = os.path.join(data_home, 'autojump.txt')
config['backup_path'] = os.path.join(data_home, 'autojump.txt.bak')
@@ -101,33 +105,42 @@ def set_defaults():
def parse_arguments():
parser = ArgumentParser(
description='Automatically jump to directory passed as an argument.',
epilog='Please see autojump(1) man pages for full documentation.')
epilog='Please see autojump(1) man pages for full documentation.',
)
parser.add_argument(
'directory', metavar='DIRECTORY', nargs='*', default='',
help='directory to jump to')
help='directory to jump to',
)
parser.add_argument(
'-a', '--add', metavar='DIRECTORY',
help='add path')
help='add path',
)
parser.add_argument(
'-i', '--increase', metavar='WEIGHT', nargs='?', type=int,
const=10, default=False,
help='increase current directory weight')
help='increase current directory weight',
)
parser.add_argument(
'-d', '--decrease', metavar='WEIGHT', nargs='?', type=int,
const=15, default=False,
help='decrease current directory weight')
help='decrease current directory weight',
)
parser.add_argument(
'--complete', action='store_true', default=False,
help='used for tab completion')
help='used for tab completion',
)
parser.add_argument(
'--purge', action='store_true', default=False,
help='remove non-existent paths from database')
help='remove non-existent paths from database',
)
parser.add_argument(
'-s', '--stat', action='store_true', default=False,
help='show database entries and their key weights')
help='show database entries and their key weights',
)
parser.add_argument(
'-v', '--version', action='version', version='%(prog)s v' +
VERSION, help='show version information')
VERSION, help='show version information',
)
return parser.parse_args()
@@ -187,14 +200,17 @@ def find_matches(entries, needles, check_entries=True):
data = sorted(
entries,
key=attrgetter('weight', 'path'),
reverse=True)
reverse=True,
)
return ifilter(
lambda entry: not is_cwd(entry) and path_exists(entry),
chain(
match_consecutive(needles, data, ignore_case),
match_fuzzy(needles, data, ignore_case),
match_anywhere(needles, data, ignore_case)))
match_anywhere(needles, data, ignore_case),
),
)
def handle_tab_completion(needle, entries):
@@ -206,24 +222,33 @@ def handle_tab_completion(needle, entries):
get_ith_path = lambda i, iterable: last(take(i, iterable)).path
print_local(get_ith_path(
tab_index,
find_matches(entries, [tab_needle], check_entries=False)))
find_matches(entries, [tab_needle], check_entries=False),
))
elif tab_needle:
# found partial tab completion entry
print_tab_menu(
tab_needle,
take(TAB_ENTRIES_COUNT, find_matches(
entries,
[tab_needle],
check_entries=False)),
TAB_SEPARATOR)
take(
TAB_ENTRIES_COUNT, find_matches(
entries,
[tab_needle],
check_entries=False,
),
),
TAB_SEPARATOR,
)
else:
print_tab_menu(
needle,
take(TAB_ENTRIES_COUNT, find_matches(
entries,
[needle],
check_entries=False)),
TAB_SEPARATOR)
take(
TAB_ENTRIES_COUNT, find_matches(
entries,
[needle],
check_entries=False,
),
),
TAB_SEPARATOR,
)
def purge_missing_paths(entries):
@@ -242,7 +267,8 @@ def print_stats(data, data_path):
try:
print_local(
'%.2f:\t current directory weight' % data.get(os.getcwdu(), 0))
'%.2f:\t current directory weight' % data.get(os.getcwdu(), 0),
)
except OSError:
# current directory no longer exists
pass
@@ -265,7 +291,8 @@ def main(args): # noqa
elif args.complete:
handle_tab_completion(
needle=first(chain(sanitize(args.directory), [''])),
entries=entriefy(load(config)))
entries=entriefy(load(config)),
)
elif args.decrease:
data, entry = decrease_path(load(config), get_pwd(), args.decrease)
save(config, data)
@@ -287,7 +314,8 @@ def main(args): # noqa
print_local(first(chain(
imap(attrgetter('path'), find_matches(entries, [''])),
# always return a path to calling shell functions
['.'])))
['.'],
)))
else:
entries = entriefy(load(config))
needles = sanitize(args.directory)
@@ -306,12 +334,15 @@ def main(args): # noqa
print_local(
get_ith_path(
tab_index,
find_matches(entries, [tab_needle])))
find_matches(entries, [tab_needle]),
),
)
else:
print_local(first(chain(
imap(attrgetter('path'), find_matches(entries, needles)),
# always return a path to calling shell functions
['.'])))
['.'],
)))
return 0