Complete only those having different versions and merge into nvcmp

This commit is contained in:
Felix Yan 2020-09-01 20:33:41 +08:00
parent 465b9ee4dd
commit 042217eee2
No known key found for this signature in database
GPG key ID: 786C63F330D7CB92
3 changed files with 9 additions and 15 deletions

View file

@ -64,6 +64,8 @@ def take() -> None:
def cmp() -> None:
parser = argparse.ArgumentParser(description='compare version records of nvchecker')
core.add_common_arguments(parser)
parser.add_argument('-q', '--quiet', action='store_true',
help="Quiet mode, output only the names.")
args = parser.parse_args()
if core.process_common_arguments(args):
return
@ -84,14 +86,7 @@ def cmp() -> None:
for name, newver in sorted(newvers.items()):
oldver = oldvers.get(name, None)
if oldver != newver:
print('%s %s -> %s' % (name, oldver, newver))
def completion() -> None:
parser = argparse.ArgumentParser(description='helper script to generate completion for nvchecker')
core.add_common_arguments(parser)
args = parser.parse_args()
if core.process_common_arguments(args):
return
entries = core.load_file(args.file, use_keymanager=False)[0]
print(" ".join(entries))
if args.quiet:
print(name)
else:
print('%s %s -> %s' % (name, oldver, newver))

View file

@ -5,10 +5,10 @@ _nvtake() {
local cur _nvchecker_conf_mtime
_init_completion || return
_nvchecker_conf_mtime=$(stat -c %Y $HOME/.config/nvchecker/nvchecker.toml)
_nvchecker_conf_mtime="$(stat -c %Y $HOME/.config/nvchecker/*)"
if [ -z "$_nvtake_completion_cache" -o "$_nvchecker_conf_mtime" != "$_nvchecker_conf_mtime_cached" ]; then
_nvtake_completion_cache="$(nvcompletion)"
_nvchecker_conf_mtime_cached=$_nvchecker_conf_mtime
_nvtake_completion_cache="$(nvcmp -q)"
_nvchecker_conf_mtime_cached="$_nvchecker_conf_mtime"
fi
COMPREPLY=( $(compgen -W "$_nvtake_completion_cache" -- "$cur") )

View file

@ -36,7 +36,6 @@ setup(
'nvchecker = nvchecker.__main__:main',
'nvtake = nvchecker.tools:take',
'nvcmp = nvchecker.tools:cmp',
'nvcompletion = nvchecker.tools:completion',
],
},
scripts=['scripts/nvchecker-ini2toml'],