1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-29 07:58:28 +00:00
Commit Graph

83 Commits

Author SHA1 Message Date
Daiki Ueno
d0f3b18fa9 Naming fix for consistency
* lisp/epg-config.el (epg-find-configuration): Rename from
`epg-configuration-find' to be consistent with other epg-* functions.
Change all callers.
2016-02-21 07:57:17 +09:00
Daiki Ueno
e80c2a7b47 Make GnuPG version check robuster
We changed the default gpg program to "gpg2" from "gpg" in the commit
f93d669a16.  However, there are two
maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
series.  Check the actual version of "gpg2" at run time, and properly
divert to "gpg" if necessary.
* lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
(epg-config--program-alist): New variable.
(epg--configurations): New variable.
(epg-configuration-find): New function.
(epg-config--make-gpg-configuration): New function.
(epg-config--make-gpgsm-configuration): New function.
(epg-configuration): Mark as obsolete.
* lisp/epg.el (epg-context): Use `epg-configuration-find'.
2016-02-17 16:47:24 +09:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Paul Eggert
ac16149ba4 Fix docstring quoting problems with ‘ '’
Problem reported by Artur Malabarba in:
http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
Most of these fixes are to documentation; many involve fixing
longstanding quoting glitches that are independent of the
recent substitute-command-keys changes.  The changes to code are:
* lisp/cedet/mode-local.el (mode-local-augment-function-help)
(describe-mode-local-overload):
Substitute docstrings before displaying them.
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
Quote the generated docstring for later substitution.
2015-11-17 15:29:35 -08:00
Daiki Ueno
ddd0eada66 Suppress redundant Pinentry startup messages
* lisp/net/pinentry.el (pinentry-start): Add optional QUIET
argument.
* lisp/epg.el: Declare `pinentry-start'.
(epg--start): Call `pinentry-start' with QUIET argument set.
2015-11-06 10:56:49 +09:00
Paul Eggert
284c470ef7 Backslash cleanup in Elisp source files
This patch should not change behavior.  It typically omits backslashes
where they are redundant (e.g., in the string literal "^\$").
In a few places, insert backslashes where they make regular
expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
"^\\*", which has the same effect as a regular expression.
Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
RCS IDs, as that makes it clearer that the backslash is intended.
2015-09-17 16:09:39 -07:00
Paul Eggert
875a5d0ead Prefer directed to neutral quotes
Prefer directed to neutral quotes in docstings and diagnostics.
In docstrings, escape apostrophes that would otherwise be translated
to curved quotes using the newer, simpler rules.
* admin/unidata/unidata-gen.el (unidata-gen-table):
* lisp/align.el (align-region):
* lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
* lisp/bookmark.el (bookmark-default-annotation-text):
* lisp/calc/calc-aent.el (math-read-if, math-read-factor):
* lisp/calc/calc-lang.el (math-read-giac-subscr)
(math-read-math-subscr):
* lisp/calc/calc-misc.el (report-calc-bug):
* lisp/calc/calc-prog.el (calc-fix-token-name)
(calc-read-parse-table-part):
* lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
* lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
* lisp/dabbrev.el (dabbrev-expand):
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
* lisp/emacs-lisp/elint.el (elint-get-top-forms):
* lisp/emacs-lisp/lisp-mnt.el (lm-verify):
* lisp/emulation/viper-cmd.el (viper-toggle-search-style):
* lisp/erc/erc-button.el (erc-nick-popup):
* lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
* lisp/eshell/em-dirs.el (eshell/cd):
* lisp/eshell/em-glob.el (eshell-glob-regexp):
* lisp/eshell/em-pred.el (eshell-parse-modifiers):
* lisp/eshell/esh-arg.el (eshell-parse-arguments):
* lisp/eshell/esh-opt.el (eshell-show-usage):
* lisp/files-x.el (modify-file-local-variable):
* lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
(filesets-update-pre010505):
* lisp/find-cmd.el (find-generic, find-to-string):
* lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
* lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
(gnus-agent-fetch-headers):
* lisp/gnus/gnus-int.el (gnus-start-news-server):
* lisp/gnus/gnus-registry.el:
(gnus-registry--split-fancy-with-parent-internal):
* lisp/gnus/gnus-score.el (gnus-summary-increase-score):
* lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
* lisp/gnus/gnus-topic.el (gnus-topic-rename):
* lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
* lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
* lisp/gnus/spam.el (spam-check-blackholes):
* lisp/mail/feedmail.el (feedmail-run-the-queue):
* lisp/mpc.el (mpc-playlist-rename):
* lisp/net/ange-ftp.el (ange-ftp-shell-command):
* lisp/net/mairix.el (mairix-widget-create-query):
* lisp/net/tramp-cache.el:
* lisp/obsolete/otodo-mode.el (todo-more-important-p):
* lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
* lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
* lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
* lisp/org/ob-core.el (org-babel-goto-named-src-block)
(org-babel-goto-named-result):
* lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
* lisp/org/ob-ref.el (org-babel-ref-resolve):
* lisp/org/org-agenda.el (org-agenda-prepare):
* lisp/org/org-bibtex.el (org-bibtex-fields):
* lisp/org/org-clock.el (org-clock-notify-once-if-expired)
(org-clock-resolve):
* lisp/org/org-feed.el (org-feed-parse-atom-entry):
* lisp/org/org-habit.el (org-habit-parse-todo):
* lisp/org/org-mouse.el (org-mouse-popup-global-menu)
(org-mouse-context-menu):
* lisp/org/org-table.el (org-table-edit-formulas):
* lisp/org/ox.el (org-export-async-start):
* lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
(dun-rooms, dun-endgame-questions):
* lisp/progmodes/ada-mode.el (ada-goto-matching-start):
* lisp/progmodes/ada-xref.el (ada-find-executable):
* lisp/progmodes/antlr-mode.el (antlr-options-alists):
* lisp/progmodes/flymake.el (flymake-parse-err-lines)
(flymake-start-syntax-check-process):
* lisp/progmodes/python.el (python-define-auxiliary-skeleton):
* lisp/progmodes/sql.el (sql-comint):
* lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
* lisp/server.el (server-get-auth-key):
* lisp/subr.el (version-to-list):
* lisp/textmodes/reftex-ref.el (reftex-label):
* lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
* lisp/vc/ediff-diff.el (ediff-same-contents):
* lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
* test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
Use directed rather than neutral quotes in diagnostics.
2015-08-24 23:57:25 -07:00
Daiki Ueno
2b2eac26c8 epg.el: Make gpgconf output parsing future proof
* lisp/epg.el (epg--start): Count the number of fields in "gpgconf
--list-options" output.
2015-08-18 12:13:36 +09:00
Ivan Andrus
5d72d5d1f4 * epg.el (epg--start): Check that gpgconf can be found before calling it. 2015-07-18 09:06:46 -06:00
Daiki Ueno
bd8b5ac772 epg: Automatically start pinentry server
* epg-config.el (epg-gpgconf-program): New variable.
* epg.el (epg--start): Call `pinentry-start' if
allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
2015-07-16 15:43:03 +09:00
Daiki Ueno
dbc192b4c2 Add pinentry.el for better GnuPG integration
* lisp/pinentry.el: New file.
* etc/NEWS: Add entry about pinentry.el.
* lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.

Fixes: debbugs:20550
2015-06-18 10:22:38 +09:00
Daiki Ueno
ccade56fbe Utilize `make-process' in epg.el
* lisp/epg.el (epg-error-output): Abolish.
(epg-context): New slot `error-buffer'.
(epg--start): Use `make-process' and `make-pipe-process'.
(epg--process-filter): Remove code separating stderr from stdout.
(epg-wait-for-completion): Simplify `error-output' handling.
(epg-reset): Dispose error buffer.
2015-04-12 07:00:41 +09:00
Daiki Ueno
71fdbd770b epg: Fix key generation interface
* epg.el (epg-start-generate-key): Fix typo in "gpg --gen-key"
invocation; make the PARAMETERS documentation clearer.
2015-03-24 16:32:08 +09:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Daiki Ueno
9e8da9d279 epg: Support key editing
* epg.el (epg-context): New slot EDIT-CALLBACK.
(epg--process-filter): Call EDIT-CALLBACK when editing a key.
(epg-reset): Reset EDIT-CALLBACK of the context.
(epg-start-edit-key): New function.
(epg-edit-key): New function.
2014-11-18 16:19:14 +09:00
Daiki Ueno
5c249e2a04 epg: Fix callback argument type check
* epg.el (epg-context-set-passphrase-callback)
(epg-context-set-progress-callback): Check if the CALLBACK
argument is a function, instead of a cons.
2014-11-18 14:54:01 +09:00
Daiki Ueno
135a9f4b5a epg: Adjust to GnuPG 2.1 key listing change
* epg.el (epg--list-keys-1): Ignore fields after the 15th field
(bug#18979).  Reported by Hideki Saito.
2014-11-07 11:31:12 +09:00
Daiki Ueno
f374845f4c epg: Fix the last commit
* epg.el (epg-context): Initialize ERROR-OUTPUT as "" instead of nil.
2014-11-06 12:40:03 +09:00
Daiki Ueno
5e28461482 epg: Collect output lines sent to stderr
* epg.el (epg-context): Add new slot ERROR-OUTPUT.
(epg-error-output): New buffer-local variable.
(epg--start): Initialize epg-error-output.
(epg--process-filter): Record output lines sent to stderr, in
epg-error-output.
(epg-wait-for-completion): Copy epg-error-output to ERROR-OUTPUT
slot of context.
* epa-file.el (epa-file-insert-file-contents): On error, display
output sent to stderr.
(epa-file-write-region): Likewise.
2014-11-05 18:38:37 +09:00
Stefan Monnier
e77628bd58 * lisp/epg.el: Use cl-defstruct.
(epg-make-data-from-file, epg-make-data-from-string, epg-data-file)
(epg-data-string): Define via cl-defstruct.
(epg--gv-nreverse): New macro.
(epg-context--make): New constructor (provided vi cl-defstruct).
(epg-make-context): Rewrite using it.
(epg-context-protocol, epg-context-program)
(epg-context-home-directory, epg-context-armor, epg-context-textmode)
(epg-context-include-certs, epg-context-cipher-algorithm)
(epg-context-digest-algorithm, epg-context-compress-algorithm)
(epg-context-passphrase-callback, epg-context-progress-callback)
(epg-context-signers, epg-context-sig-notations, epg-context-process)
(epg-context-output-file, epg-context-result, epg-context-operation)
(epg-context-pinentry-mode): Define using cl-defstruct.
(epg-context-set-protocol, epg-context-set-program)
(epg-context-set-include-certs, epg-context-set-cipher-algorithm)
(epg-context-set-digest-algorithm)
(epg-context-set-sig-notations, epg-context-set-process)
(epg-context-set-output-file, epg-context-set-result)
(epg-context-set-operation, epg-context-set-pinentry-mode)
(epg-context-set-compress-algorithm): Remove.  Use setf instead.
(epg-context-set-armor, epg-context-set-textmode)
(epg-context-set-signers): Redefine using setf
and declare as obsolete.
(epg-context-set-passphrase-callback)
(epg-context-set-progress-callback): Use setf.
(epg-signature-notations): Rename from epg-sig-notations.
(epg-make-signature, epg-signature-status, epg-signature-key-id)
(epg-signature-validity, epg-signature-fingerprint)
(epg-signature-creation-time, epg-signature-expiration-time)
(epg-signature-pubkey-algorithm, epg-signature-digest-algorithm)
(epg-signature-class, epg-signature-version): Define vi cl-defstruct.
(epg-signature-set-status, epg-signature-set-key-id)
(epg-signature-set-validity, epg-signature-set-fingerprint)
(epg-signature-set-creation-time, epg-signature-set-expiration-time)
(epg-signature-set-pubkey-algorithm)
(epg-signature-set-digest-algorithm, epg-signature-set-class)
(epg-signature-set-version, epg-signature-set-notations): Remove.
Use setf instead.
(epg-make-new-signature, epg-new-signature-type)
(epg-new-signature-pubkey-algorithm)
(epg-new-signature-digest-algorithm, epg-new-signature-class)
(epg-new-signature-creation-time, epg-new-signature-fingerprint):
Define using cl-defstruct.
(epg-make-key, epg-key-owner-trust, epg-key-sub-key-list)
(epg-key-user-id-list): Define using cl-defstruct.
(epg-key-set-sub-key-list, epg-key-set-user-id-list): Remove.
Use setf instead.
(epg-make-sub-key, epg-sub-key-validity, epg-sub-key-capability)
(epg-sub-key-secret-p, epg-sub-key-algorithm, epg-sub-key-length)
(epg-sub-key-id, epg-sub-key-creation-time)
(epg-sub-key-expiration-time, epg-sub-key-fingerprint): Define using
cl-defstruct.
(epg-sub-key-set-fingerprint): Remove.  Use setf instead.
(epg-make-user-id, epg-user-id-validity, epg-user-id-string)
(epg-user-id-signature-list): Define using cl-defstruct.
(epg-user-id-set-signature-list): Remove.  Use setf instead.
(epg-make-key-signature, epg-key-signature-validity)
(epg-key-signature-pubkey-algorithm, epg-key-signature-key-id)
(epg-key-signature-creation-time, epg-key-signature-expiration-time)
(epg-key-signature-user-id, epg-key-signature-class)
(epg-key-signature-exportable-p): Define using cl-defstruct.
(epg-make-sig-notation, epg-sig-notation-name)
(epg-sig-notation-value, epg-sig-notation-human-readable)
(epg-sig-notation-critical): Define using cl-defstruct.
(epg-sig-notation-set-value): Remove.  Use setf instead.
(epg-make-import-status, epg-import-status-fingerprint)
(epg-import-status-reason, epg-import-status-new)
(epg-import-status-user-id, epg-import-status-signature)
(epg-import-status-sub-key, epg-import-status-secret): Define using
cl-defstruct.
(epg-make-import-result, epg-import-result-considered)
(epg-import-result-no-user-id, epg-import-result-imported)
(epg-import-result-imported-rsa, epg-import-result-unchanged)
(epg-import-result-new-user-ids, epg-import-result-new-sub-keys)
(epg-import-result-new-signatures, epg-import-result-new-revocations)
(epg-import-result-secret-read, epg-import-result-secret-imported)
(epg-import-result-secret-unchanged, epg-import-result-not-imported)
(epg-import-result-imports): Define using cl-defstruct.

* lisp/emacs-lisp/package.el: Require EPG during macroexpansion.
(package--check-signature, package-import-keyring): Use setf instead of
epg-context-set-home-directory.
2014-10-23 17:38:56 -04:00
Glenn Morris
d63d883a97 Add with-file-modes macro, and use it
* lisp/subr.el (with-file-modes): New macro.

* lisp/printing.el (pr-save-file-modes):
* lisp/eshell/esh-util.el (eshell-with-file-modes): Make obsolete.

* lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
Add with-file-modes.

* lisp/doc-view.el (doc-view-make-safe-dir):
* lisp/epg.el (epg--start):
* lisp/files.el (locate-user-emacs-file, make-temp-file)
(backup-buffer-copy, move-file-to-trash):
* printing.el (pr-despool-print, pr-call-process, pr-text2ps):
* eshell/esh-util.el (eshell-with-private-file-modes)
(eshell-make-private-directory):
* lisp/net/browse-url.el (browse-url-mosaic):
* lisp/obsolete/mailpost.el (post-mail-send-it):
* lisp/obsolete/pgg-pgp.el (pgg-pgp-verify-region):
* lisp/obsolete/pgg-pgp5.el (pgg-pgp5-verify-region):
* lisp/url/url-util.el (url-make-private-file):
Use with-file-modes.

* doc/lispref/files.texi (Changing Files): Mention with-file-modes.

* etc/NEWS: Mention this.
2014-05-14 10:15:15 -07:00
Paul Eggert
d5081c1ed8 Spelling fixes.
* calc/calc-yank.el (calc-edit-mode, calc-edit-cancel):
* emacs-lisp/debug.el (cancel-debug-on-entry):
* epg.el (epg-error-to-string):
* files.el (recover-file):
* lpr.el (lpr-buffer, print-buffer, lpr-region, print-region):
* mail/emacsbug.el (report-emacs-bug-hook):
* mail/sendmail.el (mail-recover):
* ses.el (ses-yank-resize):
* term/ns-win.el (ns-print-buffer):
Spelling fixes in diagnostics, mostly for "canceled" with one L.
* epg.el (epg-key-capability-alist): Rename from misspelled version.
All uses changed.
* obsolete/xesam.el (xesam-all-fields): Fix misspelled field name.
2014-01-05 22:25:30 -08:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Daiki Ueno
15a1e936a0 epg: doc improvement for verify functions
* epg.el (epg-verify-file): Add a comment saying that it does not
notify verification error as a return value nor a signal.
(epg-verify-string): Ditto.
2013-10-03 10:29:17 +09:00
Stefan Monnier
86cf732991 * lisp/abbrev.el (edit-abbrevs-mode): Use define-derived-mode.
(edit-abbrevs-mode-map): Rename from edit-abbrevs-map.

* lisp/epa.el (epa--encode-coding-string, epa--decode-coding-string)
(epa--select-safe-coding-system, epa--derived-mode-p): Make it obvious
that it's defined.
(epa-key-list-mode, epa-key-mode, epa-info-mode):
Use define-derived-mode.

* lisp/epg.el (epg-start-encrypt): Minor CSE simplification.
2013-09-06 11:37:01 -04:00
Stefan Monnier
b58969f781 * lisp/epg.el (epg--process-filter): Use with-current-buffer, save-excursion
and dynamic let binding.
2013-08-28 15:28:30 -04:00
Stefan Monnier
54bd972f15 * lisp/subr.el (define-error): New function.
* doc/lispref/control.texi (Signaling Errors): Refer to define-error.
(Error Symbols): Add `define-error'.
* doc/lispref/errors.texi (Standard Errors): Don't refer to `error-conditions'.
* lisp/progmodes/ada-xref.el (ada-error-file-not-found): Rename from
error-file-not-found and define with define-error.
* lisp/emacs-lisp/cl-lib.el (cl-assertion-failed): Move here from subr.el
and define with define-error.
* lisp/userlock.el (file-locked, file-supersession):
* lisp/simple.el (mark-inactive):
* lisp/progmodes/js.el (js-moz-bad-rpc, js-js-error):
* lisp/progmodes/ada-mode.el (ada-mode-errors):
* lisp/play/life.el (life-extinct):
* lisp/nxml/xsd-regexp.el (xsdre-invalid-regexp, xsdre-parse-error):
* lisp/nxml/xmltok.el (xmltok-markup-declaration-parse-error):
* lisp/nxml/rng-util.el (rng-error):
* lisp/nxml/rng-uri.el (rng-uri-error):
* lisp/nxml/rng-match.el (rng-compile-error):
* lisp/nxml/rng-cmpct.el (rng-c-incorrect-schema):
* lisp/nxml/nxml-util.el (nxml-error, nxml-file-parse-error):
* lisp/nxml/nxml-rap.el (nxml-scan-error):
* lisp/nxml/nxml-outln.el (nxml-outline-error):
* lisp/net/soap-client.el (soap-error):
* lisp/net/gnutls.el (gnutls-error):
* lisp/net/ange-ftp.el (ftp-error):
* lisp/mpc.el (mpc-proc-error):
* lisp/json.el (json-error, json-readtable-error, json-unknown-keyword)
(json-number-format, json-string-escape, json-string-format)
(json-key-format, json-object-format):
* lisp/jka-compr.el (compression-error):
* lisp/international/quail.el (quail-error):
* lisp/international/kkc.el (kkc-error):
* lisp/emacs-lisp/ert.el (ert-test-failed):
* lisp/calc/calc.el (calc-error, inexact-result, math-overflow)
(math-underflow):
* lisp/bookmark.el (bookmark-error-no-filename):
* lisp/epg.el (epg-error): Define with define-error.
2013-08-09 17:22:44 -04:00
Dmitry Antipov
12b4c0ea03 Do not call to `selected-frame' where it is assumed by default.
Affected functions are `raise-frame', `redraw-frame',
`frame-first-window', `frame-terminal' and `delete-frame'.
* lisp/calendar/appt.el (appt-disp-window):
* lisp/epg.el (epg-wait-for-completion):
* lisp/follow.el (follow-delete-other-windows-and-split)
(follow-avoid-tail-recenter):
* lisp/international/mule.el (set-terminal-coding-system):
* lisp/mail/rmail.el (rmail-mail-return):
* lisp/net/newst-plainview.el (newsticker--buffer-set-uptodate):
* lisp/progmodes/f90.el (f90-add-imenu-menu):
* lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-toggle):
* lisp/server.el (server-switch-buffer):
* lisp/simple.el (delete-completion-window):
* lisp/talk.el (talk):
* lisp/term/xterm.el (terminal-init-xterm-modify-other-keys)
(xterm-turn-on-modify-other-keys, xterm-remove-modify-other-keys):
* lisp/vc/ediff-util.el (ediff-status-info, ediff-show-diff-output):
* lisp/vc/ediff.el (ediff-documentation): Related users changed.
* lisp/frame.el (selected-terminal): Remove the leftover.
2013-08-05 14:35:55 +04:00
Daiki Ueno
18eb4bca3e epg.el: Add context option home-directory' and program'.
* epg.el (epg-make-context): Check if PROTOCOL is valid; embed the
file name of gpg executable.
(epg-context-program): New function.
(epg-context-home-directory): New function.
(epg-context-set-program): New function.
(epg-context-set-home-directory): New function.
(epg--start): Use `epg-context-program' instead of
'epg-gpg-program'.
(epg--list-keys-1): Likewise.
2013-06-24 16:07:08 +09:00
Daiki Ueno
38cc0210f3 epg.el: support pinentry mode added in GnuPG 2.1
* epg.el (epg-context-pinentry-mode): New function.
(epg-context-set-pinentry-mode): New function.
(epg--start): Pass --pinentry-mode option to gpg command.
2013-04-22 13:53:05 +09:00
Daiki Ueno
1bd71e9fe1 * epg.el: Silence byte-compiler warnings. 2013-01-05 07:54:08 +09:00
Daiki Ueno
00cd4c1cbd * epg.el (epg--start): Don't call "tty" program on W32 platforms. 2013-01-05 07:51:52 +09:00
Daiki Ueno
c2cf1829dd * epg.el (epg--start): Ignore errors when /dev/fd/0 does not exist. 2013-01-04 08:56:51 +09:00
Paul Eggert
0877d0dc24 Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.ca 2013-01-02 08:13:04 -08:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Andreas Schwab
361828b5db * epg.el (epg--start): Modify process-environment locally. 2012-12-28 10:49:59 +01:00
Daiki Ueno
23bd348c3f epg: Support pinentry-curses 2012-12-28 12:51:20 +09:00
Daiki Ueno
f1c9aabc18 Move photo ID display code from epg.el to gnus/mml2015.el.
2012-12-26  Daiki Ueno  <ueno@gnu.org>
* mml2015.el (mml2015-epg-signature-to-string): New function.
(mml2015-epg-verify-result-to-string): New function.
(mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-verify)
(mml2015-epg-clear-verify): Use mml2015-epg-verify-result-to-string
instead of epg-verify-result-to-string.
(epg-signature-key-id, epg-signature-to-string): Autoload.
(epg-verify-result-to-string): Remove autoload.

2012-12-25  Adam Sjøgren  <asjo@koldfront.dk>
* mml2015.el (mml2015-epg-key-image): New function, to retrieve photo
ID image from GPG public key.
(mml2015-epg-key-image-to-string): New function.
2012-12-26 13:20:21 +09:00
Adam Sjøgren
23dab7dca6 Display images from gpg signatures
* epg.el (epg-signature-to-string): Use new functions
epg-key-image, epg-key-image-to-string to find and display image
from key.
2012-12-25 23:49:35 +01:00
Daiki Ueno
3eb0509259 * epg.el (epg-error): Set `error-message' property. 2012-12-21 16:35:02 +09:00
Daiki Ueno
c660916409 * epg.el (epg--start): Print GPG_AGENT_INFO in the debug buffer. 2012-12-21 16:21:35 +09:00
Chong Yidong
59f7af816e Use declare forms, where possible, to mark obsolete functions.
* lisp/allout.el (allout-passphrase-hint-string): Likewise.
(allout-init): Use a declare form to mark obsolete.

* lisp/calendar/calendar.el (calendar-version):
* lisp/calendar/icalendar.el (icalendar-extract-ical-from-buffer)
(icalendar-convert-diary-to-ical):
* lisp/cus-edit.el (custom-mode):
* lisp/ansi-color.el (ansi-color-unfontify-region):
* lisp/international/latin1-disp.el (latin1-char-displayable-p):
* lisp/progmodes/cwarn.el (turn-on-cwarn-mode):
* lisp/progmodes/which-func.el (which-func-update-1): Use
define-obsolete-function-alias.

* lisp/bookmark.el (bookmark-jump-noselect): Use a declare form to mark
this function obsolete.

* lisp/calendar/cal-x.el (calendar-two-frame-setup)
(calendar-only-one-frame-setup, calendar-one-frame-setup):
* lisp/calendar/calendar.el (american-calendar, european-calendar)
(calendar-for-loop):
* lisp/comint.el (comint-dynamic-simple-complete)
(comint-dynamic-complete-as-filename, comint-unquote-filename):
* lisp/desktop.el (desktop-load-default):
* lisp/dired-x.el (dired-omit-here-always)
(dired-hack-local-variables, dired-default-directory):
* lisp/emacs-lisp/derived.el (derived-mode-class):
* lisp/emacs-lisp/timer.el (timer-set-time-with-usecs):
* lisp/emacs-lock.el (toggle-emacs-lock):
* lisp/epa.el (epa-display-verify-result):
* lisp/epg.el (epg-sign-keys, epg-start-sign-keys)
(epg-passphrase-callback-function):
* lisp/eshell/esh-util.el (eshell-for):
* lisp/eshell/eshell.el (eshell-remove-from-window-buffer-names)
(eshell-add-to-window-buffer-names):
* lisp/files.el (locate-file-completion):
* lisp/imenu.el (imenu-example--create-c-index)
(imenu-example--create-lisp-index)
(imenu-example--lisp-extract-index-name)
(imenu-example--name-and-position):
* lisp/international/mule-cmds.el (princ-list):
* lisp/international/mule-diag.el (decode-codepage-char):
* lisp/international/mule-util.el (detect-coding-with-priority):
* lisp/iswitchb.el (iswitchb-read-buffer):
* lisp/mail/mailalias.el (mail-complete):
* lisp/mail/sendmail.el (mail-sent-via):
* lisp/mouse.el (mouse-popup-menubar-stuff, mouse-popup-menubar)
(mouse-major-mode-menu):
* lisp/password-cache.el (password-read-and-add):
* lisp/pcomplete.el (pcomplete-parse-comint-arguments):
* lisp/progmodes/sh-script.el (sh-maybe-here-document):
* lisp/replace.el (query-replace-regexp-eval):
* lisp/savehist.el (savehist-load):
* lisp/simple.el (choose-completion-delete-max-match):
* lisp/term.el (term-dynamic-simple-complete):
* lisp/vc/ediff-init.el (ediff-check-version):
* lisp/vc/ediff-wind.el (ediff-choose-window-setup-function-automatically):
* lisp/vc/vc.el (vc-diff-switches-list):
* lisp/view.el (view-return-to-alist-update): Likewise.

* lisp/iswitchb.el (iswitchb-read-buffer): Move code of
iswitchb-define-mode-map here, and delete that obsolete function.

* lisp/subr.el (eval-next-after-load, makehash, insert-string)
(assoc-ignore-representation, assoc-ignore-case): Use declare to
mark obsolete.
(mode-line-inverse-video): Variable deleted.

* lisp/emacs-lisp/byte-run.el (make-obsolete): Doc fix; emphasize that
this applies to functions.

* lisp/erc/erc.el (erc-send-command): Use define-obsolete-function-alias.

* lisp/international/mule-util.el (string-to-sequence): Remove.

* lisp/net/newst-backend.el (newsticker-cache-filename):
* lisp/net/newst-treeview.el (newsticker-groups-filename): Fix
incorrect obsolescence declaration.

* lisp/net/snmp-mode.el (snmp-font-lock-keywords-3): Don't use obsolete
font-lock-reference-face.

* lisp/url/url-parse.el (url-recreate-url-attributes):
* lisp/url/url-util.el (url-generate-unique-filename): Use declare to mark
obsolete.

* src/xdisp.c (mode_line_inverse_video): Delete obsolete variable.
2012-09-25 12:13:02 +08:00
Paul Eggert
9e5788aaef Fix race condition in epg.el compat code.
* lisp/epg.el (epg--make-temp-file): Avoid permission race condition
when running on old Emacs versions.

Fixes: debbugs:10403
2012-01-14 15:09:15 +08:00
Paul Eggert
cd0cf8aa18 Undo patch for bug#10403; still being reviewed. 2012-01-07 11:58:55 -08:00
Paul Eggert
9a0115abd1 Merge from trunk. 2012-01-07 11:51:13 -08:00
Glenn Morris
acaf905b11 Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
Paul Eggert
dbf17d8b48 * epg.el (epg--make-temp-file): Avoid permission race conditions
when creating temporary directories and files on older Emacs.
2011-12-29 14:08:29 -08:00
Paul Eggert
ee7683ebb7 Spelling fixes. 2011-11-22 23:03:56 -08:00
Juanma Barranquero
0d26e0b62b Fix typos. 2011-11-15 01:54:19 +01:00
Daiki Ueno
0b4946c419 Format GPG errors (bug#9255).
* epg.el (epg--status-KEYEXPIRED, epg--status-KEYREVOKED): Fix typo.
(epg-error-to-string, epg-errors-to-string): New function.
(epg-wait-for-completion): Reverse errors list.
(epg--check-error-for-decrypt, epg-sign-file, epg-sign-string)
(epg-encrypt-file, epg-encrypt-string, epg-export-keys-to-file)
(epg--import-keys-1, epg-receive-keys, epg-delete-keys)
(epg-sign-keys, epg-generate-key-from-file)
(epg-generate-key-from-string): Format errors by using
epg-errors-to-string (bug#9255).
(epg--status-INV_SGNR, epg--status-NO_SGNR): New status handler.
2011-08-08 16:11:25 +09:00