Package: keepassxc-full
Version: 2.7.10+dfsg1-1
Severity: wishlist
Tags: patch
X-Debbugs-Cc: [email protected]
Dear Maintainer,
These files I have built from scratch should be installed to the listed files.
Not sure where else to suggest this feature though.
-- /usr/share/zsh/vendor-completions/_keepassxc
#compdef keepassxc
_arguments \
{-h,--help}'[Displays help on commandline options.]' \
--help-all'[Displays help including Qt specific options.]' \
{-v,--version}'[Displays version information.]' \
--config'[path to a custom config file]':'<config>':_files \
--localconfig'[path to a custom local config file]':'<localconfig>':_files \
--lock'[lock all open databases]' \
--keyfile'[key file of the database]':'<keyfile>':_files \
--pw-stdin'[read password of the database from stdin]' \
--debug-info'[Displays debugging information.]' \
--allow-screencapture'[allows screenshots and app recording
(Windows/macOS)]' \
--minimized'[start minimized to the system tray]' \
'*:filename(s):_files'
-- end /usr/share/zsh/vendor-completions/_keepassxc
-- /usr/share/zsh/vendor-completions/_keepassxc-cli
#compdef keepassxc-cli
# Greatest reference ever:
https://zsh.sourceforge.io/Doc/Release/Completion-System.html#Completion-System
# This is wizardry
# Credits to _aptitude for showing usage of _describe
local curcontext="$curcontext" state lstate line
typeset -A opt_args
local -a subcmds
subcmds=(add':Add a new entry to a database.'
analyze':Analyze passwords for weaknesses and problems.'
'attachment-export:Export an attachment of an entry.'
'attachment-import:Imports an attachment to an entry.'
'attachment-rm:Remove an attachment of an entry.'
"clip:Copy an entry's attribute to the clipboard."
close':Close the currently opened database.'
'db-create:Create a new database.'
'db-edit:Edit a database.'
"db-info:Show a database's information."
diceware':Generate a new random diceware passphrase.'
edit':Edit an entry.'
estimate':Estimate the entropy of a password.'
exit:'Exits interactive mode. Synonymous with quit. (Invalid subcommand)'
export':Exports the content of a database to standard output in the
specified format.'
generate':Generate a new random password.'
help':Display command help.'
import':Import the contents of an XML database.'
ls':List database entries.'
merge':Merge two databases.'
mkdir':Adds a new group to a database.'
mv':Moves an entry to a new group.'
open':Open a database.'
quit':Exits interactive mode. Synonymous with exit. (Invalid subcommand)'
rm':Remove an entry from the database.'
rmdir':Removes a group from a database.'
search':Find entries quickly.'
show":Show an entry's information.")
_arguments -C -S \
'(- 1 *)'--debug-info'[Displays debugging information.]' \
'(- 1 *)'{-h,--help}'[Displays help on commandline options.]' \
'(- 1 *)'--help-all'[Displays help including Qt specific options.]' \
'(- 1 *)'{-v,--version}'[Displays version information.]' \
': :->cmds' \
'*:: :->args'
case "$state" in
cmds)
_describe -t commands 'keepassxc-cli [options] command' subcmds
;;
args)
case $line[1] in
add)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-u --username)'{-u,--username}'[Username for the
entry.]:<username>' \
--url'[URL for the entry.]:<URL>:_urls' \
--notes'[Notes for the entry.]:<Notes>' \
'(-p --password-prompt)'{-p,--password-prompt}"[Prompt for the
entry's password.]" \
'(-g --generate)'{-g,--generate}"[Generate a password the entry.]" \
'(-L --length)'{-L,--length}"[Length of the generated
password]:<length>:_numbers" \
'(-l --lower)'{-l,--lower}"[Use lowercase characters]" \
'(-U --upper)'{-U,--upper}"[Use uppercase characters]" \
'(-n --numeric)'{-n,--numeric}"[Use numbers]" \
'(-s --special)'{-s,--special}"[Use special characters]" \
'(-e --extended)'{-e,--extended}"[Use extended ASCII]" \
'(-x --exclude)'{-x,--exclude}"[Exclude character set]:<chars>" \
--exclude-similar"[Exclude similar looking characters]" \
--every-group"[Include characters from every selected group]" \
'(-c --custom)'{-c,--custom}"[Use custom character set]:<chars>" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>'
;;
analyze)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-H --hibp)'{-H,--hibp}'[Check if any passwords have been publicly
leaked. FILENAME must be the path of a file listing SHA-1 hashes of leaked
passwords in HIBP format, as available from
https://haveibeenpwned.com/Passwords.]:<FILENAME>:_files' \
--okon'[Path to okon-cli to search a formatted HIBP
file.]:<okon-cli>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files'
;;
attachment-export)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
--stdout"[Output attachment's content to the standard output
instead of <export_file>.]" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>' \
':<attachment_name>' \
':<export_file>:_files'
;;
attachment-import)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
"(-f --force){-f,--force}[Overwrite existing attachments.]" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>:_files' \
':<attachment_name>' \
':<import_file>:_files'
;;
attachment-rm)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
"(-f --force)"{-f,--force}"[Overwrite existing attachments.]" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>' \
':<name>'
;;
clip)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-a --attribute)'{-a,--attribute}'[Copy the given attribute to the
clipboard. Defaults to "password" if not specified.]:<attr>' \
'(-t --totp)'{-t,--totp}'[Copy the current TOTP to the clipboard
(equivalent to "-a totp").]' \
'(-b --best-match)'{-b,--best-match}"[Must match only one entry,
otherwise a list of possible matches is shown.]" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>:_files' \
'::<timeout>:_numbers'
;;
# close command in keepassxc-cli takes no arguments, not even --help
close)
_message "no arguments"
;;
db-create)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
--set-key-file'[Set the key file for the database.]:<path>:_files' \
-k'[Set the key file for the database. This option is deprecated,
use --set-key-file instead.]:<path>:_files' \
'(-p --set-password)'{-p,--set-password}'[Copy the current TOTP to
the clipboard (equivalent to "-a totp").]' \
'(-t --decryption-time)'{-t,--decryption-time}"[Must match only one
entry, otherwise a list of possible matches is shown.]:<time>:_numbers" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files'
;;
db-edit)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
--set-key-file'[Set the key file for the database.]:<path>:_files' \
'(-p --set-password)'{-p,--set-password}'[Set a password for the
database.]' \
--unset-key-file'[Unset the key file for the database.]' \
--unset-password'[Unset the password for the database.]' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files'
;;
db-info)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files'
;;
diceware)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-W --words)'{-W,--words}'[Word count for the diceware
passphrase.]:<count>:_numbers' \
'(-w --word-list)'{-w,--word-list}'[Wordlist for the diceware
generator. [Default: EFF English\]]:<path>:_files' \
'(-h --help)'{-h,--help}"[Display this help.]"
;;
edit)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-u --username)'{-u,--username}'[Username for the
entry.]:<username>' \
--url'[URL for the entry.]:<URL>:_urls' \
--notes'[Notes for the entry.]:<Notes>' \
'(-p --password-prompt)'{-p,--password-prompt}"[Prompt for the
entry's password.]" \
'(-t --title)'{-t,--title}'[Title for the entry.]:<title>' \
'(-g --generate)'{-g,--generate}"[Generate a password the entry.]" \
'(-L --length)'{-L,--length}"[Length of the generated
password]:<length>:_numbers" \
'(-l --lower)'{-l,--lower}"[Use lowercase characters]" \
'(-U --upper)'{-U,--upper}"[Use uppercase characters]" \
'(-n --numeric)'{-n,--numeric}"[Use numbers]" \
'(-s --special)'{-s,--special}"[Use special characters]" \
'(-e --extended)'{-e,--extended}"[Use extended ASCII]" \
'(-x --exclude)'{-x,--exclude}"[Exclude character set]:<chars>" \
--exclude-similar"[Exclude similar looking characters]" \
--every-group"[Include characters from every selected group]" \
'(-c --custom)'{-c,--custom}"[Use custom character set]:<chars>" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>'
;;
estimate)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-a --advanced)'{-a,--advanced}'[Perform advanced analysis on the
password.]' \
'(-h --help)'{-h,--help}"[Display this help.]" \
'::<password>'
;;
exit)
_message "invalid subcommand"
;;
export)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-f --format)'{-f,--format}"[Format to use when exporting.
Available choices are 'xml', 'csv' or 'html'. Defaults to
'xml'.]:<xml|csv|html>:(xml csv html)" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files'
;;
generate)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-L --length)'{-L,--length}"[Length of the generated
password]:<length>:_numbers" \
'(-l --lower)'{-l,--lower}"[Use lowercase characters]" \
'(-U --upper)'{-U,--upper}"[Use uppercase characters]" \
'(-n --numeric)'{-n,--numeric}"[Use numbers]" \
'(-s --special)'{-s,--special}"[Use special characters]" \
'(-e --extended)'{-e,--extended}"[Use extended ASCII]" \
'(-x --exclude)'{-x,--exclude}"[Exclude character set]:<chars>" \
--exclude-similar"[Exclude similar looking characters]" \
--every-group"[Include characters from every selected group]" \
'(-c --custom)'{-c,--custom}"[Use custom character set]:<chars>" \
'(-h --help)'{-h,--help}"[Display this help.]"
;;
help)
_arguments -C -S "1:: :->cmds"
case $state in
cmds)
_describe -t commands 'keepassxc-cli help [command]' subcmds
;;
esac
;;
import)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
--set-key-file'[Set the key file for the database.]:<path>:_files' \
-k'[Set the key file for the database. This option is deprecated,
use --set-key-file instead.]:<path>:_files' \
'(-p --set-password)'{-p,--set-password}'[Copy the current TOTP to
the clipboard (equivalent to "-a totp").]' \
'(-t --decryption-time)'{-t,--decryption-time}"[Must match only one
entry, otherwise a list of possible matches is shown.]:<time>:_numbers" \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<xml>:_files' \
':<database>:_files'
;;
ls)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-R --recursive)'{-R,--recursive}'[Recursively list the elements
of the group.]' \
'(-f --flatten)'{-f,--flatten}'[Flattens the output to single
lines.]' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
'::<group>'
;;
merge)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-s --same-credentials)'{-s,--same-credentials}'[Use the same
credentials for both database files.]' \
--key-file-from'[Key file of the database to merge
from.]:<path>:_files' \
--no-password-from'[Deactivate password key for the database to
merge from.]' \
'(-d --dry-run)'{-d,--dry-run}'[Only print the changes detected by
the merge operation.]' \
--yubikey-from'[Yubikey slot for the second database.]:<slot>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<database2>:_files'
;;
mkdir)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<group>'
;;
mv)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>' \
':<group>'
;;
open)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files'
;;
quit)
_message "invalid subcommand"
;;
rmdir)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<group>'
;;
rm)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>'
;;
search)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<term>'
;;
show)
_arguments -C -S \
'(-q --quiet)'{-q,--quiet}'[Silence password prompt and other
secondary outputs.]' \
'(-k --key-file)'{-k,--key-file}'[Key file of the
database.]:<path>:_files' \
--no-password'[Deactivate password key for the database.]' \
'(-y --yubikey)'{-y,--yubikey}'[Yubikey slot and optional serial
used to access the database (e.g., 1:7370001).]:<slot[\:serial]>' \
'(-t --totp)'{-t,--totp}"[Show the entry's current TOTP.]" \
'*'{-a,--attributes}'[Names of the attributes to show. This option
can be specified more than once, with each attribute shown one-per-line in the
given order. If no attributes are specified, a summary of the default
attributes is given.]:<attribute>' \
'(-s --show-protected)'{-s,--show-protected}'[Show the protected
attributes in clear text.]' \
--all'[Show all the attributes of the entry.]' \
--show-attachments'[Show the attachments of the entry.]' \
'(-h --help)'{-h,--help}"[Display this help.]" \
':<database>:_files' \
':<entry>'
;;
*)
_message "???"
;;
esac
;;
esac
-- end /usr/share/zsh/vendor-completions/_keepassxc-cli
-- System Information:
Debian Release: unstable
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 6.16-rc7-amd64 (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_USER
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages keepassxc-full depends on:
ii libargon2-1 0~20190702+dfsg-4+b2
ii libbotan-2-19 2.19.5+dfsg-4
ii libc6 2.41-11
ii libgcc-s1 15.1.0-10
ii libminizip1t64 1:1.3.dfsg+really1.3.1-1+b1
ii libpcsclite1 2.3.3-1
ii libqrencode4 4.1.1-2
ii libqt5concurrent5t64 5.15.17+dfsg-1
ii libqt5core5t64 5.15.17+dfsg-1
ii libqt5dbus5t64 5.15.17+dfsg-1
ii libqt5gui5t64 5.15.17+dfsg-1
ii libqt5network5t64 5.15.17+dfsg-1
ii libqt5svg5 5.15.17-1
ii libqt5widgets5t64 5.15.17+dfsg-1
ii libqt5x11extras5 5.15.17-1
ii libreadline8t64 8.3-1
ii libstdc++6 15.1.0-10
ii libusb-1.0-0 2:1.0.29-1
ii libx11-6 2:1.8.12-1
ii libxtst6 2:1.2.5-1
ii libzxcvbn0 2.5+dfsg-2+b2
ii zlib1g 1:1.3.dfsg+really1.3.1-1+b1
Versions of packages keepassxc-full recommends:
ii fonts-font-awesome 5.0.10+really4.7.0~dfsg-4.1
Versions of packages keepassxc-full suggests:
ii webext-keepassxc-browser 1.9.7+repack1-1
ii xclip 0.13-4
-- no debconf information