A major-mode to manage your password-store (pass) keychain. The keychain entries are displayed in a directory-like structure.
Canonical repository: https://gitea.petton.fr/nico/pass
Use melpa.
This library depends on password-store.el
and password-store-otp.el
.
M-x pass
The following keybindings are available:
i
: Insert a new entry (With a prefix argument, generate the password)n
: Go to the next entryp
: Go to the previous entryM-n
: Go to the next directoryM-p
: Go to the previous directoryk
: Remove the entry at pointw
: Copy password of the entry at point to the kill ringb
: Copy username of the entry at point to the kill ringu
: Copy url of the entry at point to the kill ringf
: Copy a given secret field of the entry at point to the kill ringU
: Browse to the url of the entry at point with the default web browsers
: Trigger iSearchr
: Rename the entry at point?
: Helpg
: Update the password-store bufferRET
orv
: Go to the entry at pointj
: Jump to a given entryq
: Quit pass
Some applications/extensions rely on a password store structure that exposes the username as the entry name, i.e:
example.com/
john@doe.com
If pass-username-fallback-on-filename
is non-nil, the copy username
command will still try to find a password
field within the entry but
fallback to the entry name if the field isn't found. In the example
above, john@doe.com
will be used in place (unless the entry does
contain a password
field).
If pass-suppress-confirmations
is non-nil, yes-or-no confirmations for sensitive
operations like editing or removing a password will not occur.
If you have the pass-otp
extension
installed, you will be able to use the following keybindings as well:
o i
: Insert an OTP key URI in a new entry (as inpass otp insert
)o a
: Append an OTP key URI to an existing entry (as inpass otp append
)*o s
: Take a screenshot of an OTP QR Code and have its related URI be appended to an existing entryo o
: Copy OTP token for entry at point (as inpass otp -c
)o u
: Copy OTP key URI for entry at point (as inpass otp uri -c
)
* o a
works exactly as pass otp append
, in the sense that it will only
"append" a URI to an entry if said entry does not have a URI already. pass otp append
will not add several OTP key URIs to the same entry, but it will
substitute the existing OTP key URI with a new one in each call. For more
information, please refer to pass-otp
documentation.
pass
entry files are displayed in buffers that run under
pass-view-mode
. This major mode provides some features:
- It will mask the password line automatically, you can hit
C-c C-c
to unmask it. - You can hit
C-c C-w
to copy your password to your clipbard. - In case of having OTP information in an entry, the buffer will display a header line with the OTP token and remaining seconds until expiration.
- You can hit
C-c C-o
to copy the OTP token to your clipboard. - You can hit
C-c C-q
to display the QR Code for the OTP URI in the entry.
Users of this package may also be interested in functionality provided by other Emacs packages dealing with pass:
- password-store: password store (pass) support;
- auth-password-store: integrate Emacs' auth-source with password-store;
- helm-pass: helm interface for pass.
Yes, please do! See CONTRIBUTING for guidelines.
See LICENSE. Copyright (c) 2015-2023 Nicolas Petton & Damien Cassou.