From f17796e5134a070343272203d985bd64654ec55a Mon Sep 17 00:00:00 2001 From: randogoth Date: Thu, 8 Jun 2023 02:29:14 +0300 Subject: [PATCH] simplified --- .index.yaml | 54 ------------------------------------------------ orvani/cmd.py | 18 ++-------------- orvani/orvani.py | 17 +++++++++------ 3 files changed, 13 insertions(+), 76 deletions(-) delete mode 100644 .index.yaml diff --git a/.index.yaml b/.index.yaml deleted file mode 100644 index f464731..0000000 --- a/.index.yaml +++ /dev/null @@ -1,54 +0,0 @@ -contexts: - frrr: - - ./README.md - python: - - ./TODO.md - test: - - ./test/test.txt -files: - ./README.md: - contexts: - - frrr - projects: - - test2 - - test - ./TODO.md: - contexts: - - python - note: Chawera - projects: - - bokertov - tags: - - frrr - - rusty - ./test/test.txt: - contexts: - - test - note: frrr - projects: - - test - tags: - - faa - - test -note: - Chawera: - - ./TODO.md - frrr: - - ./test/test.txt -projects: - bokertov: - - ./TODO.md - test: - - ./README.md - - ./test/test.txt - test2: - - ./README.md -tags: - faa: - - ./test/test.txt - frrr: - - ./TODO.md - rusty: - - ./TODO.md - test: - - ./test/test.txt diff --git a/orvani/cmd.py b/orvani/cmd.py index 799208c..08d27dd 100644 --- a/orvani/cmd.py +++ b/orvani/cmd.py @@ -74,12 +74,7 @@ def main(): 'copy', 'cp', 'move', 'mv', 'del', 'rm', - 'clear', 'c', - 'listproj', 'lsprj', - 'listcon', 'lsc', - 'listtag', 'lst', 'clean', 'purge', - 'read' ]) p.add_argument("file", nargs="?", type=str, help=SUPPRESS) p.add_argument("context", nargs="*", type=str, help=SUPPRESS) @@ -103,14 +98,8 @@ def main(): if args.file and args.context: orvani.remove(args.file, *args.context) - elif args.command in ['list', 'ls', 'dir', 'l', 'listproj', 'lsprj', 'lp', 'listcon', 'lsc', 'lc', 'listtag', 'lst', 'lt']: + elif args.command in ['list', 'ls', 'dir', 'l']: query = [args.file] + args.context - if args.command in ['listproj', 'lsprj', 'lp'] or args.context_filter == 'project': - args.context_filter = 'projects' - if args.command in ['listcon', 'lsc', 'lc'] or args.context_filter == 'context': - args.context_filter = 'contexts' - if args.command in ['listtag', 'lst', 'lt'] or args.context_filter == 'tag': - args.context_filter = 'tags' if query: r = orvani.list(args.path, args.context_filter, args.exact, args.not_recursive, args.cache, *query) mktable(' '.join(sys.argv[1:]), r) @@ -146,10 +135,7 @@ def main(): elif args.command in ['clean']: if not args.file: args.file = '' - orvani.purge(args.file, args.not_recursive) - - elif args.command in ['read']: - orvani.read_meta() + orvani.clean(args.file, args.not_recursive) if __name__ == '__main__': main() diff --git a/orvani/orvani.py b/orvani/orvani.py index a994d01..53c6866 100644 --- a/orvani/orvani.py +++ b/orvani/orvani.py @@ -198,7 +198,7 @@ class OrvaniTag: else: shutil.move(source, dest, copy_function=shutil.copy2) - def purge(self, path: str='.', recursive=True): + def clean(self, path: str='.', recursive=True): """ Removes context data from folder if files do not exist @@ -225,7 +225,7 @@ class OrvaniTag: if dirs: for dir in dirs: rpath = os.path.join(root, dir) - self.purge(rpath, False) + self.clean(rpath, False) def list(self, path: str='./', filter=None, exact=True, recursive: bool=True, cache: bool=False, *search: str): """ @@ -242,7 +242,7 @@ class OrvaniTag: if path == '': path = './' self.__makeindex(path, recursive, cache) - result = self.__search(search, exact) + result = self.__search(search, filter, exact) return result @@ -362,9 +362,14 @@ class OrvaniTag: haystack = self.INDEX[param].keys() for hay in haystack: for needle in needles: - if needle in hay: - if self.INDEX[param][hay] not in return_dict[param]: - return_dict[param] += self.INDEX[param][hay] + if exact: + if needle == hay: + if self.INDEX[param][hay] not in return_dict[param]: + return_dict[param] += self.INDEX[param][hay] + else: + if needle in hay: + if self.INDEX[param][hay] not in return_dict[param]: + return_dict[param] += self.INDEX[param][hay] if len(search) > 1: result['found'] = list(set(self.__intersect(return_dict))) else: