![emacs EasyPG 询问使用什么密钥,尽管已经指定了 epa-file-encrypt-to](https://linux22.com/image/1528950/emacs%20EasyPG%20%E8%AF%A2%E9%97%AE%E4%BD%BF%E7%94%A8%E4%BB%80%E4%B9%88%E5%AF%86%E9%92%A5%EF%BC%8C%E5%B0%BD%E7%AE%A1%E5%B7%B2%E7%BB%8F%E6%8C%87%E5%AE%9A%E4%BA%86%20epa-file-encrypt-to.png)
答案1
运行M-x normal-mode
将在尝试保存文件之前立即解析并设置 file-local-variable-prop-line 中的局部变量。运行(setq-local epa-file-encrypt-to '("[email protected]"))
完成后,您应该能够保存而无需提示选择密钥。
答案2
这看起来像是 EPG(MacOS 版 Emacs 26.3 上的 v1.0.0)中的一个错误。
变量的文档epa-file-select-keys
说:
Control whether or not to pop up the key selection dialog.
If t, always asks user to select recipients.
If nil, query user only when ‘epa-file-encrypt-to’ is not set.
If neither t nor nil, doesn’t ask user. In this case, symmetric
encryption is used.
但是,nil
仍然会引发密钥选择的查询,而非t
或非nil
值则保持沉默并.gpg
使用指定的公钥保存文件。这不是我所期望的。
因此,在配置文件中添加以下行可以解决问题,并记住谨慎使用:
(setq epa-file-encrypt-to '("[email protected]"))
(setq epa-file-select-keys 1)
答案3
解决方法如下:
使用以下方式保存文件非-gpg 扩展名(或者根本没有文件扩展名)。
执行“gpg -e文件名“在控制台窗口中。您必须输入密钥规范(电子邮件地址)一次。这应该会创建”文件名.gpg”。不要忘记删除未加密的文件。
之后,您可以在 Emacs 中打开加密文件。它会提示输入密码。保存更改时,将考虑“epa-file-encrypt-to”。