Show the status of the GPG signing key for your project!
You can also also unlock the key by clicking the status bar element. :D
Or unlock the key through command palette.
This extension will show the status of GPG signing key in status bar if your local
.git/config
or any other default .gitconfig
configuration file (e.g. ~/.gitconfig
):
- has set
commit.gpgSign
astrue
for git, and - has set
user.signingKey
with GPG key ID for git
If the above conditions are both satisfied, there will be an indicator for your current signing key, together with a cute icon to tell whether the key is unlocked or not.
When you click the indicator, you will be prompted for passphrase to unlock the key.
Since VS Code 1.53, the
SecretStorage
API
is introduced to provide a secure and persistent storage for secrets.
With this API, this extension can maintain passphrase cache for user.
You can enable the gpgIndicator.enablePassphraseCache
option to opt-in, if so
your passphrase will be cached in the secret storage once you unlock your key.
After that, your key will be unlocked automatically whenever this extension is enabled.
You can list or delete your cached passphrase by command anytime. When you disable the passphrase-cache option, the whole cache will be cleared.
- Linux environment (It's not been tested on other platform)
- GPG tool chain (
gpg
,gpg-agent
,gpg-connect-agent
) above 2.1
Submit a issue if you found any problem.
And please leave a comment in review page if you like this extension!! 😸
gpgIndicator.statusRefreshInterval
- The interval of background key status refresh loop, in seconds. Default to
30
.
- The interval of background key status refresh loop, in seconds. Default to
gpgIndicator.outputLogLevel
- The log level for extension log output. Default to
"info"
.
- The log level for extension log output. Default to
gpgIndicator.enablePassphraseCache
- Specifies whether to store your passphrase or not. Default to
false
.
- Specifies whether to store your passphrase or not. Default to
gpgIndicator.statusStyle
- Specifies how to show the current key in the status bar. Default to
"userId"
(Example:0123456789ABCDEF - Example User <[email protected]>
).
- Specifies how to show the current key in the status bar. Default to
See issue page on GitHub if interested.
The key ID of the signing key can be retrieved by the command
gpg --list-keys --keyid-format long
.
Locate the key with singing capability (the S
flag in square brackets),
and the key ID is the hex string after the algorithm identifier.
wdhongtw
kitos9112
altjx
AnnAngela
mptr
Fix a bug which breaks the passphrase cache function.
Minor adjustment about config ID and message wording.
Adopt SecreteStore
API to store passphrase for key, if user enabled the feature.
And add more format for key in status bar.
Also i18n/l10n and untrusted workspace is supported.
Allow trailing exclamation mark in signing key ID in Git configuration file.
Fix bug for passphrases which contain %
character and some file system path.
Finally, remove the dependency of the binary tool, expect
. :D
Support multi-root workspace and let user adjust status refresh interval.
Unlock key through command palette directly (by MatthewCash), and minor bug fix.
Fix some dependency issues
Fix packaging issue which breaks version 0.3.3
Enhance the message of error of lacking expect
tool
Remove the limitation of scope of Git configuration values.
Add message for unlock action and fix security issue.
Design and add icon for this package.
User can unlock the key by clicking the status bar element.
Initial release. User can check the status of project signing key.