summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
...
* | * ses.el (macroexp): add require for this package, so that functionVincent Belaïche2014-10-252-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ses--cell gets macroexp-quote. (ses--cell): makes formula a macroexp-quote of value when formula is nil. The rationale of this changr is to allow in the future shorter SES files, e.g. we could have only `(ses-cell A1 1.0)' instead of `(ses-cell A1 1.0 1.0 nil REFLIST)'. In such a case reference list REFLIST would be re-computed after load --- thus trading off load time against file size. * emacs-lisp/package.el (package--alist-to-plist-args): use macroexp-quote instead of a lambda expression which has the same content as macroexp-quote. (macroexp): add require for this package, so that function `package--alist-to-plist-args' gets macroexp-quote. * emacs-lisp/macroexp.el (macroexp-quote): new defun.
* | * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Define an internal predicateStefan Monnier2014-10-231-48/+54
| | | | | | | | | | | | even if :predicate was nil, for the benefit of typep. Record the name of the predicate for typep's use. (cl--make-type-test): Use pcase. Obey new cl-deftype-satisfies property.
* | * lisp/epg.el: Use cl-defstruct.Stefan Monnier2014-10-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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.
* | * lisp/emacs-lisp/bytecomp.el (byte-compile--use-old-handlers): Change default.Stefan Monnier2014-10-231-1/+1
| |
* | * lisp/select.el: Use lexical-binding.Stefan Monnier2014-10-221-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (gui-set-selection): Provide an implementation for non-GUI frames. * lisp/term/x-win.el: Use lexical-binding. (x-clipboard-yank): Fix up missed renamings. * lisp/term/w32-win.el (libgif-version, libjpeg-version): Silence compiler. (w32--set-selection): Fix up var names. * lisp/term/pc-win.el: Use lexical-binding. (w16-selection-exists-p): Silence compiler warning. (w16-selection-owner-p): Fix up missed renamings. * lisp/emacs-lisp/bytecomp.el (byte-compile-form): Remove left-over debug. * lisp/frame.el (frame-notice-user-settings): Fix excessive quoting. Fixes: debbugs:18791
* | Merge from emacs-24; up to 2014-07-28T06:28:15Z!dmantipov@yandex.ruGlenn Morris2014-10-201-5/+6
|\|
| * Restore temporarily reverted bytecomp changeStefan Monnier2014-10-201-5/+6
| | | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-arg case. Fixes: debbugs:18767
| * Temporarily revert previous bytecomp changeGlenn Morris2014-10-201-6/+5
| |
| * * lisp/emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-argStefan Monnier2014-10-191-5/+6
| | | | | | | | | | | | case. Fixes: debbugs:18767
* | * lisp/emacs-lisp/eieio: A bit more cleanup, removing compat code.Stefan Monnier2014-10-183-71/+18
| | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/eieio-core.el (eieio-compiled-function-arglist): Remove. (eieio--with-scoped-class): Use `declare'. (eieio-defclass): Remove compatibility code. (no-method-definition, no-next-method, inconsistent-class-hierarchy) (invalid-slot-type, unbound-slot, invalid-slot-name): Use define-error. * lisp/emacs-lisp/eieio-opt.el (eieio-lambda-arglist): Remove. Use help-function-arglist instead.
* | * lisp/emacs-lisp/eieio-base.el: Use lexical-binding and cl-lib.Stefan Monnier2014-10-174-123/+78
| | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/eieio-core.el: Use lexical-binding and cl-lib. (list-of): New type. (eieio--typep): Remove. (eieio-perform-slot-validation): Use cl-typep instead. * lisp/emacs-lisp/eieio.el: Use lexical-binding drop non-GV fallback. (defclass, defgeneric, defmethod): Add doc-string position. (with-slots): Require cl-lib. * lisp/emacs-lisp/cl-macs.el (cl--make-type-test): Avoid ((lambda ..) ..).
* | * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Enable by default.Stefan Monnier2014-10-151-9/+8
| | | | | | | | | | | | | | Remove incorrect handling of eldoc-print-after-edit. (eldoc-message-commands, eldoc-last-data): Use defvar. * lisp/loadup.el (emacs-lisp/eldoc): Load it. * src/lisp.mk (lisp): Add emacs-lisp/eldoc.elc.
* | Merge from emacs-24; up to 2014-07-27T09:41:59Z!ttn@gnu.orgGlenn Morris2014-10-141-1/+4
|\|
| * * lisp/emacs-lisp/lisp.el (lisp--local-variables-1): Handle `quote'.Stefan Monnier2014-10-141-0/+1
| | | | | | | | | | | | Backported. Fixes: debbugs:18688
| * Fix display of R2L entries in tabulated-list-mode.Eli Zaretskii2014-10-141-1/+4
| | | | | | | | | | | | | | lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Force bidi-paragraph-direction to 'left-to-right'. This fixes buffer-menu display when the first buffer happens to start with R2L letter.
| * Tweak previous authors.el changeGlenn Morris2014-10-131-2/+2
| |
| * Small authors.el updatesGlenn Morris2014-10-131-4/+31
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/authors.el (authors-aliases, authors-fixed-case) (authors-obsolete-files-regexps): Additions. (authors-no-scan-regexps): New constant. (authors-no-scan-file-p): New function. (authors): Respect authors-no-scan-file-p.
* | Enhance terpri to allow conditionally output a newlineLeo Liu2014-10-091-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/streams.texi (Output Functions): Document new argument ENSURE to terpri. * doc/misc/cl.texi (Porting Common Lisp): Remove parse-integer. * lisp/emacs-lisp/cl-extra.el (cl-fresh-line): New function. * src/keymap.c (describe_vector_princ): * src/keyboard.c (Fcommand_error_default_function): Adapt to change to Fterpri. * src/print.c (printchar_stdout_last): Declare. (printchar): Record the last char written to stdout. (Fterpri): Add optional argument ENSURE. * test/automated/print-tests.el: New file. (terpri): Tests for terpri. (Bug#18652)
* | Merge from emacs-24Stefan Monnier2014-10-021-1/+4
|\|
| * * package.el (package-import-keyring): Create gnupg directory private.Glenn Morris2014-10-011-1/+7
| | | | | | | | See bug#17625#155.
* | Consolidate x-select-text.Stefan Monnier2014-10-011-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/frame.el (gui-method, gui-method-define, gui-method-declare) (gui-call): New macros. (gui-method--name): New function. (frame-creation-function-alist): Use gui-method-declare. (make-frame): Use gui-method. * lisp/select.el (gui-select-enable-clipboard): Rename from x-select-enable-clipboard and move here. (x-select-enable-clipboard): Define as obsolete alias. (gui-last-selected-text): New var, to replace x-last-selected-text. (gui-select-text): New GUI method. (gui-select-text): New function. (x-select-text): Define as obsolete alias. * lisp/term/common-win.el (x-select-enable-clipboard, x-select-text): Move to select.el. * lisp/simple.el (interprogram-cut-function): Change default to x-select-text. (interprogram-paste-function): Change default to `ignore'. * lisp/w32-common-fns.el (interprogram-cut-function): Don't modify. * lisp/term/x-win.el (interprogram-cut-function): Don't modify. (gui-select-text): Add method for x. * lisp/term/w32-win.el (gui-select-text): Add method for w32. * lisp/term/pc-win.el (x-last-selected-text): Remove, use gui-last-selected-text instead. (msdos-initialize-window-system): Don't set interprogram-cut-function. (gui-select-text): Add method for pc. * lisp/term/ns-win.el (ns-last-selected-text): Remove, use gui-last-selected-text instead. (gui-select-text): Add method for ns. (x-setup-function-keys): Don't change interprogram-cut-function. * lisp/loadup.el ("startup"): Load after "frame". * lisp/subr.el (package--builtin-versions, package--description-file): Move from startup.el. * lisp/startup.el (package--builtin-versions, package--description-file): Move to subr.el. (handle-args-function-alist, window-system-initialization-alist): Use gui-method-declare. (command-line): Use gui-method. * src/xselect.c (selection-converter-alist): Fix docstring.
* | * lisp/subr.el (alist-get): New accessor.Stefan Monnier2014-10-011-16/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/gv.el (alist-get): Provide expander. * lisp/winner.el (winner-remember): * lisp/tempo.el (tempo-use-tag-list): * lisp/progmodes/gud.el (minor-mode-map-alist): * lisp/international/mule-cmds.el (define-char-code-property): * lisp/frameset.el (frameset-filter-params): * lisp/files.el (dir-locals-set-class-variables): * lisp/register.el (get-register, set-register): * lisp/calc/calc-yank.el (calc-set-register): Use it. * lisp/ps-print.el (ps-get, ps-put, ps-del): Mark as obsolete. * lisp/tooltip.el (tooltip-set-param): Mark as obsolete. (tooltip-show): Use alist-get instead. * lisp/ses.el (ses--alist-get): Remove. Use alist-get instead. * admin/unidata/unidata-gen.el (unidata-gen-table-word-list): Use alist-get and cl-incf.
* | Merge from emacs-24Stefan Monnier2014-09-301-7/+9
|\|
| * * lisp/emacs-lisp/package.el (package-check-signature): Default to nil ifStefan Monnier2014-09-271-7/+9
| | | | | | | | | | | | GPG is not available. (package-refresh-contents): Don't mess with the keyring if we won't check the signatures anyway.
* | Rename 24.5 to 25.1Stefan Monnier2014-09-292-2/+2
| | | | | | | | Except where we expect to backport the corresponding change.
* | Font-lock `cl-flet*', too.Thien-Thi Nguyen2014-09-281-1/+1
| | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-2): Add "flet*" to intermediate var `cl-lib-kw'.
* | * lisp/subr.el (track-mouse): New macro.Stefan Monnier2014-09-272-16/+0
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form): Remove track-mouse case. * lisp/emacs-lisp/bytecomp.el (byte-compile-track-mouse): Remove. * src/keyboard.c (track-mouse): Rename to internal--track-mouse. Make it into a function and change arg to be a function.
* | * lisp/emacs-lisp/eldoc.el (eldoc-mode): Fix thinko.Leo Liu2014-09-271-1/+1
| | | | | | | | * lisp/progmodes/elisp-mode.el (elisp--eldoc-last-data): Use defvar.
* | * lisp/emacs-lisp/pcase.el (pcase--split-match, pcase--app-subst-match):Stefan Monnier2014-09-271-4/+6
| | | | | | | | | | | | Handle the case where `match' is :pcase--succeed or :pcase--fail. Fixes: debbugs:18554
* | Introduce global-eldoc-mode. Move Elisp-specific code to elisp-mode.el.Stefan Monnier2014-09-263-1250/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): New minor mode. (eldoc-schedule-timer): Obey it. (eldoc-documentation-function): Default to nil. (eldoc-mode): Don't enable if eldoc-documentation-function is not set. (eldoc-documentation-function-default, eldoc-get-fnsym-args-string) (eldoc-highlight-function-argument, eldoc-get-var-docstring) (eldoc-last-data-store, eldoc-docstring-first-line) (eldoc-docstring-format-sym-doc, eldoc-fnsym-in-current-sexp) (eldoc-beginning-of-sexp, eldoc-current-symbol) (eldoc-function-argstring): Move to elisp-mode.el. (eldoc-symbol-function): Remove, unused. * lisp/progmodes/elisp-mode.el: New file. Rename all "eldoc-*" to "elisp--*". (elisp-completion-at-point): Rename from lisp-completion-at-point. (elisp--preceding-sexp): Rename from preceding-sexp. * lisp/loadup.el: Load new file progmodes/elisp-mode. * lisp/ielm.el (inferior-emacs-lisp-mode): Set eldoc-documentation-function. * lisp/emacs-lisp/lisp.el (lisp--local-variables-1, lisp--local-variables) (lisp--local-variables-completion-table, lisp--expect-function-p) (lisp--form-quoted-p, lisp--company-doc-buffer) (lisp--company-doc-string, lisp--company-location) (lisp-completion-at-point): Move to elisp-mode.el. * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): New syntax-table, extracted from emacs-lisp-mode-syntax-table. (emacs-lisp-mode-abbrev-table, emacs-lisp-mode-syntax-table): Move to elisp-mode.el. (lisp-imenu-generic-expression): Add comments to document what comes from which Lisp dialect. (emacs-lisp-mode-map, emacs-lisp-byte-compile) (emacs-lisp-byte-compile-and-load, emacs-lisp-mode-hook) (emacs-lisp-mode, emacs-list-byte-code-comment-re) (emacs-lisp-byte-code-comment) (emacs-lisp-byte-code-syntax-propertize, emacs-lisp-byte-code-mode) (lisp-interaction-mode-map, lisp-interaction-mode) (eval-print-last-sexp, last-sexp-setup-props) (last-sexp-toggle-display, prin1-char, preceding-sexp) (eval-last-sexp-1, eval-last-sexp-print-value) (eval-last-sexp-fake-value, eval-sexp-add-defvars, eval-last-sexp) (eval-defun-1, eval-defun-2, eval-defun): Move to elisp-mode.el. * src/lisp.mk (lisp): Add elisp-mode.elc.
* | * emacs-lisp/cl-extra.el (cl-parse-integer): Fix last change.Leo Liu2014-09-261-1/+2
| |
* | Add cl-parse-integer based on parse-integerLeo Liu2014-09-262-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/misc/cl.texi (Predicates on Numbers): Document cl-digit-char-p. (Numerical Functions): Document cl-parse-integer. * lisp/calendar/parse-time.el (parse-time-digits): Remove. (digit-char-p, parse-integer) Moved to cl-lib.el. (parse-time-tokenize, parse-time-rules, parse-time-string): Use cl-parse-integer. * lisp/emacs-lisp/cl-extra.el (cl-parse-integer): New function. * lisp/emacs-lisp/cl-lib.el (cl-digit-char-table): New var. (cl-digit-char-p): New function. * test/automated/cl-lib.el (cl-digit-char-p, cl-parse-integer): New tests. Fixes: debbugs:18557
* | * lisp/emacs-lisp/pcase.el: Allow (F . ARGS) in `app' patterns.Stefan Monnier2014-09-221-49/+47
| | | | | | | | | | | | (pcase--funcall, pcase--eval): New functions. (pcase--u1): Use them for guard, pred, let, and app. (\`): Use the new feature to generate better code for vector patterns.
* | * lisp/emacs-lisp/pcase.el: Use pcase-defmacro to handle backquote.Stefan Monnier2014-09-221-147/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (pcase--upat): Remove. (pcase--macroexpand): Don't hardcode handling of `. (pcase--split-consp, pcase--split-vector): Remove. (pcase--split-equal): Disregard ` since it's expanded away. (pcase--split-member): Optimize for quote rather than for `. (pcase--split-pred): Optimize for quote rather than for `. (pcase--u1): Remove handling of ` (and of `or' and `and'). Quote non-selfquoting values when passing them to `eq'. Drop `app's let-binding if the variable is not used. (pcase--q1): Remove. (`): Define as a pattern macro.
* | * lisp/emacs-lisp/pcase.el (pcase--match): New smart-constructor function.Stefan Monnier2014-09-221-70/+56
| | | | | | | | | | | | | | | | | | | | | | (pcase--expand pcase--q1, pcase--app-subst-match): Use it. (pcase--macroexpand): Handle self-quoting patterns here, expand them to quote patterns. (pcase--split-match): Don't hoist or/and here any more. (pcase--split-equal): Optimize quote patterns as well as ` patterns. (pcase--flip): New helper macro. (pcase--u1): Optimize the memq case directly. Don't handle neither self-quoting nor and/or patterns any more.
* | * lisp/emacs-lisp/pcase.el (pcase-defmacro): New macro.Stefan Monnier2014-09-221-1/+26
| | | | | | | | | | (pcase--macroexpand): New function. (pcase--expand): Use it.
* | Add support for `quote' and `app'.Stefan Monnier2014-09-221-1/+60
| | | | | | | | | | | | | | * lisp/emacs-lisp/pcase.el (pcase--app-subst-match, pcase--app-subst-rest): New optimization functions. (pcase--u1): Add support for `quote' and `app'. (pcase): Document them in the docstring.
* | * lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Don't add fundoc usageStefan Monnier2014-09-221-2/+5
| | | | | | | | for functions with no arguments.
* | * lisp/emacs-lisp/lisp.el (lisp-completion-at-point): Don't useDmitry Gutov2014-09-191-12/+7
| | | | | | | | | | `lisp--local-variables-completion-table' in the `lisp--form-quoted-p' case.
* | Fix bug#18265Dmitry Gutov2014-09-191-1/+3
| | | | | | | | | | | | | | * lisp/emacs-lisp/lisp.el (lisp-completion-at-point): Only calculate `table-etc' when `end' is non-nil. (lisp-completion-at-point): Move `end' back if it's after quote. If in comment or string, only complete when after backquote.
* | * lisp/emacs-lisp/lisp.el (lisp-completion-at-point): Only calculateDmitry Gutov2014-09-191-98/+99
| | | | | | | | `table-etc' when `end' is non-nil.
* | Make lisp-completion-at-point more discerningDmitry Gutov2014-09-191-12/+71
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/lisp.el (lisp--expect-function-p) (lisp--form-quoted-p): New functions. (lisp-completion-at-point): Use them to see if we're completing a variable reference, a function name, or just any symbol. http://lists.gnu.org/archive/html/emacs-devel/2014-02/msg00229.html
* | * emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): AddLeo Liu2014-09-142-4/+16
| | | | | | | | | | | | | | | | | | | | pcase-exhaustive. * emacs-lisp/pcase.el (pcase--dontwarn-upats): New var. (pcase--expand): Use it. (pcase-exhaustive): New macro. Fixes: debbugs:16567
* | Spelling fixes.Paul Eggert2014-09-112-5/+5
| | | | | | | | | | | | | | * lisp/ses.el (ses-file-format-extend-parameter-list): Rename from ses-file-format-extend-paramter-list. All uses changed. * lisp/gnus-cloud.el (gnus-cloud-parse-version-1): Fix misspelling of ":delete".
* | Add vector qpattern to pcaseLeo Liu2014-09-061-7/+48
| | | | | | | | | | | | | | | | | | | | | | * doc/lispref/control.texi (Pattern matching case statement): Document vector qpattern. * etc/NEWS: Mention vector qpattern for pcase. (Bug#18327). * lisp/emacs-lisp/pcase.el (pcase): Doc fix. (pcase--split-vector): New function. (pcase--q1): Support vector qpattern. (Bug#18327)
* | * lisp/emacs-lisp/eldoc.el (eldoc-function-argstring): Don't stripStefan Monnier2014-09-041-33/+35
| | | | | | | | | | | | | | | | | | terminating paren. (eldoc-last-data-store): Return cached data. (eldoc-get-var-docstring): Avoid setq. (eldoc-get-fnsym-args-string): Clarify data flow. Fixes: debbugs:18352
* | * lisp/emacs-lisp/eldoc.el (eldoc-highlight-function-argument): Handle theThierry Volpiatto2014-09-041-16/+56
| | | | | | | | | | | | | | case where we're currently providing part of the &rest arg after some &key args, as in define-ibuffer-op. Fixes: debbugs:18048
* | Merge from emacs-24; up to 2014-07-04T02:28:54Z!dmantipov@yandex.ruGlenn Morris2014-09-021-22/+16
|\|
| * * lisp/emacs-lisp/package.el (package-generate-description-file):Stefan Monnier2014-09-021-9/+15
| | | | | | | | | | | | | | | | | | | | | | Properly quote the arguments. Change second arg. (package--alist-to-plist-args): Rename from package--alist-to-plist and quote the elements. (package--make-autoloads-and-stuff): Fix the test for pre-existence of the *-pkg.el file. Adjust to new calling convention of package-generate-description-file. Fixes: debbugs:18332
| * * emacs-lisp/authors.el (authors-aliases): Addition.Michael Albinus2014-08-271-0/+1
| |