fzf not for ls

pull/29/head
deadc0de6 2 years ago
parent 94f419b025
commit 3d13218486

@ -39,8 +39,8 @@ USAGE = f"""
Usage:
{NAME} ls [--catalog=<path>] [--format=<fmt>] [-aBCrVSs] [<path>]
{NAME} find [--catalog=<path>] [--format=<fmt>] [-aBCbdVsP] [--path=<path>] [<term>]
{NAME} tree [--catalog=<path>] [-aBCVSs] [<path>]
{NAME} index [--catalog=<path>] [--meta=<meta>...] [-aBCcfnV] <name> <path>
{NAME} tree [--catalog=<path>] [-aBCVSs] [<path>]
{NAME} update [--catalog=<path>] [-aBCcfnV] [--lpath=<path>] <name> <path>
{NAME} rm [--catalog=<path>] [-BCfV] <storage>
{NAME} rename [--catalog=<path>] [-BCfV] <storage> <name>
@ -152,9 +152,13 @@ def cmd_ls(args, noder, top):
path += SEPARATOR
if not path.endswith(WILD):
path += WILD
fmt = args['--format']
if fmt.startswith('fzf'):
raise Exception('fzf is not supported in ls')
found = noder.walk(top, path,
rec=args['--recursive'],
fmt=args['--format'],
fmt=fmt,
raw=args['--raw-size'])
if not found:
path = args['<path>']
@ -308,24 +312,28 @@ def main():
catalog.set_metanode(meta)
# parse command
if args['index']:
cmd_index(args, noder, catalog, top)
if args['update']:
cmd_update(args, noder, catalog, top)
elif args['find']:
cmd_find(args, noder, top)
elif args['tree']:
cmd_tree(args, noder, top)
elif args['ls']:
cmd_ls(args, noder, top)
elif args['rm']:
cmd_rm(args, noder, catalog, top)
elif args['graph']:
cmd_graph(args, noder, top)
elif args['rename']:
cmd_rename(args, catalog, top)
elif args['edit']:
cmd_edit(args, noder, catalog, top)
try:
if args['index']:
cmd_index(args, noder, catalog, top)
if args['update']:
cmd_update(args, noder, catalog, top)
elif args['find']:
cmd_find(args, noder, top)
elif args['tree']:
cmd_tree(args, noder, top)
elif args['ls']:
cmd_ls(args, noder, top)
elif args['rm']:
cmd_rm(args, noder, catalog, top)
elif args['graph']:
cmd_graph(args, noder, top)
elif args['rename']:
cmd_rename(args, catalog, top)
elif args['edit']:
cmd_edit(args, noder, catalog, top)
except Exception as exc:
Logger.out_err('ERROR ' + str(exc))
return False
return True

@ -529,6 +529,7 @@ class Noder:
@fmt: output format
@raw: raw size output
"""
## TODO error with fzf
self._debug(f'searching for \"{key}\"')
if not key:
# nothing to search for
@ -603,7 +604,7 @@ class Noder:
def walk(self, top, path, rec=False, fmt='native',
raw=False):
"""
walk the tree for ls based on names
walk the tree for "ls" based on names
@top: start node
@rec: recursive walk
@fmt: output format
@ -614,6 +615,7 @@ class Noder:
resolv = anytree.resolver.Resolver('name')
found = []
try:
# resolve the path in the tree
found = resolv.glob(top, path)
if len(found) < 1:
# nothing found

@ -14,7 +14,7 @@ from catcli.logger import Logger
class Walker:
"""a filesystem walker"""
MAXLINE = 80 - 15
MAXLINELEN = 80 - 15
def __init__(self, noder, usehash=True, debug=False,
logpath=None):
@ -166,8 +166,8 @@ class Walker:
# clean
Logger.progr(' ' * 80)
return
if len(string) > self.MAXLINE:
string = string[:self.MAXLINE] + '...'
if len(string) > self.MAXLINELEN:
string = string[:self.MAXLINELEN] + '...'
Logger.progr(f'indexing: {string:80}')
def _log2file(self, string):

Loading…
Cancel
Save