summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
* * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)Glenn Morris2015-05-011-0/+7
| | | | (help-fns--signature): Declare.
* * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.Glenn Morris2015-05-011-0/+3
|
* ; Add class name to error messagePrzemysław Wojnowski2015-05-011-1/+1
| | | | | * lisp/emacs-lisp/eieio-core.el (eieio-oref): Add class name to error message to ease finding offending code.
* * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.Glenn Morris2015-05-011-1/+1
|
* * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"Artur Malabarba2015-05-011-44/+19
| | | | | | | This reverts commit 9a7ddde977378cb5276a81476ae458889c403267. This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d. With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'". (Bug#20445).
* * lisp/emacs-lisp/ert.el (ert--special-operator-p):Glenn Morris2015-04-301-1/+1
| | | | Update for 2015-02-08 change to indirect-function.
* Silence some compilation warningsGlenn Morris2015-04-301-0/+2
| | | | | | | | | | * lisp/emacs-lisp/check-declare.el (compilation-forget-errors): * lisp/emulation/cua-base.el (delete-active-region): * lisp/net/net-utils.el (w32-get-console-output-codepage): * lisp/term/ns-win.el (ns-own-selection-internal) (ns-disown-selection-internal, ns-selection-owner-p) (ns-selection-exists-p, ns-get-selection): Declare for compiler..
* Function declaration updates prompted by 'make check-declare'Glenn Morris2015-04-301-1/+1
| | | | | | | | | | | | | | | | | * lisp/emacs-lisp/package.el (lm-homepage): * lisp/gnus/gnus-util.el (iswitchb-read-buffer): * lisp/gnus/mm-decode.el (libxml-parse-html-region): * lisp/gnus/mml.el (libxml-parse-html-region): * lisp/gnus/nnrss.el (libxml-parse-html-region): * lisp/net/eww.el (libxml-parse-html-region): * lisp/net/shr.el (libxml-parse-html-region): * lisp/vc/vc-bzr.el (vc-annotate-convert-time): * lisp/vc/vc-cvs.el (vc-annotate-convert-time): * lisp/vc/vc-git.el (vc-annotate-convert-time): * lisp/vc/vc-hg.el (vc-annotate-convert-time): * lisp/vc/vc-mtn.el (vc-annotate-convert-time): * lisp/vc/vc-rcs.el (vc-annotate-convert-time): Update declaration.
* * lisp/emacs-lisp/package.el: Some speed optimizations on menu refreshArtur Malabarba2015-04-302-31/+39
| | | | | | | | | | (package-menu--print-info): Obsolete. (package-menu--print-info-simple): New function. (package-menu--refresh): Use it, simplify code, and improve performance. * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry): Tiny performance improvement.
* * lisp/emacs-lisp/package.el (package--message): inhibit-messageArtur Malabarba2015-04-301-4/+3
|
* * lisp/emacs-lisp/package.el: Use pushnew for downloads in progressArtur Malabarba2015-04-301-3/+3
| | | | | | (package--download-and-read-archives): Use pushnew instead of append. If something terrible happened during a previous download, simply refreshing should now make things work again.
* * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'Artur Malabarba2015-04-291-3/+2
| | | | | (byte-compile--message): Use `inhibit-message' instead of hiding the previous message with (message nil).
* * lisp/emacs-lisp/package.el: Fix priority-hiding corner caseArtur Malabarba2015-04-281-29/+40
| | | | | | | (package-menu--refresh): Delegate obsolete-hiding to `package--remove-hidden'. (package--remove-hidden): Disregard high-priority package if it is older than the installed one.
* * lisp/emacs-lisp/package.el: Skip space and comments in init fileArtur Malabarba2015-04-281-0/+5
| | | | | | (package--ensure-init-file): Insert snippet at first non-whitespace non-comments line. Respects local-vars at the top of the file.
* Bump version of seq.el to 1.5Nicolas Petton2015-04-271-4/+2
| | | | | * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value from seq-doseq. Bump version number of seq.el.
* * lisp/emacs-lisp/package.el: Small improvementsArtur Malabarba2015-04-271-2/+3
| | | | | | (package--with-work-buffer-async): More informative error. (package-install-user-selected-packages): Rename to `package-install-selected-packages'.
* * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix lastStefan Monnier2015-04-271-2/+8
| | | | | * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change. (eieio--class-make): Remove leftover `tag'.
* * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.Stefan Monnier2015-04-271-6/+6
|
* lisp/emacs-lisp/package.el: Move variables to silence byte-compilerStefan Monnier2015-04-261-24/+12
| | | | Remove redundant ":group 'package".
* * lisp/emacs-lisp/package.el (package-all-keywords): Don't cacheArtur Malabarba2015-04-251-10/+4
| | | | (package--all-keywords): Deleted variable.
* Spelling fixesPaul Eggert2015-04-241-1/+1
|
* * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.Nicolas Petton2015-04-241-2/+2
|
* * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the codeStefan Monnier2015-04-241-17/+17
| | | | | | | (seq-doseq): Fix out-of-scope binding. Don't call `seq-length at every iteration. Reduce `if's from 3 to 2 per iteration. (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
* * lisp/emacs-lisp/package.el: Hide lower-priority packages in menuArtur Malabarba2015-04-221-4/+59
| | | | | | | | | (package-menu-hide-low-priority): New variable, see its doc. (package-archive-priorities): Update doc. (package-desc-priority): New function. (package-desc-priority-version): Use it. (package--remove-hidden): New function. (package-menu--refresh): Use it.
* * lisp/emacs-lisp/package.el: Implement displaying obsolete packagesArtur Malabarba2015-04-221-14/+36
| | | | | | | | | | | | | | (package-menu--hide-obsolete): New variable. (package--remove-hidden): Use it. (package-menu-hide-obsolete): New interactive function to toggle the variable. (package--quick-help-keys): Document it. (package-menu-async): Add :version tag. (package-menu-mode-map): Bind package-menu-hide-obsolete. (package-desc-status): Indicate non-installed obsolete packages as avail-obso. (package-menu-mark-install): Allow installation of avail-obso. (package-menu--status-predicate): Sort avail-obso with available.
* Fix byte-compiler warnings about looking-back.Stefan Monnier2015-04-203-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/log-view.el (log-view-end-of-defun-1): * lisp/textmodes/tex-mode.el (latex-forward-sexp-1): * lisp/textmodes/reftex-ref.el (reftex-goto-label): * lisp/textmodes/bibtex.el (bibtex-insert-kill): * lisp/progmodes/sh-script.el (sh--maybe-here-document): * lisp/progmodes/ruby-mode.el (ruby-end-of-defun): * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p): * lisp/org/org.el (org-insert-heading, org-sort-entries): * lisp/org/org-mouse.el (org-mouse-end-headline) (org-mouse-context-menu): * lisp/org/org-clock.el (org-clock-cancel): * lisp/man.el (Man-default-man-entry): * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text) (rmail-ensure-blank-line): * lisp/mail/footnote.el (Footnote-delete-footnote): * lisp/mail/emacsbug.el (report-emacs-bug): * lisp/info.el (Info-follow-reference, Info-fontify-node): * lisp/info-look.el (info-lookup-guess-custom-symbol): * lisp/help-fns.el (help-fns--key-bindings): * lisp/files.el (hack-local-variables): * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete) (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file) (viper-complete-filename-or-exit): * lisp/emulation/viper-cmd.el (viper-backward-indent): * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent): * lisp/emacs-lisp/elint.el (elint-get-top-forms): * lisp/cus-edit.el (custom-face-edit-value-create): * lisp/calendar/todo-mode.el (todo-set-item-priority) (todo-filter-items-1, todo-convert-legacy-files) (todo-prefix-overlays): Add explicit second arg to looking-back.
* * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywordsArtur Malabarba2015-04-201-6/+19
| | | | | | | | (package-menu-filter): Accept a list of keywords. (package--all-keywords): New variable to cache known keywords. (package-all-keywords): Populate it if necessary. (package-refresh-contents): Reset it.
* * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywordsArtur Malabarba2015-04-201-6/+8
| | | | | | | | (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx" as special keywords which match agains package archive and status respectively. * etc/NEWS: Document it.
* Assume package archive-contents are UTF8-encodedSteve Purcell2015-04-191-1/+2
| | | | | | | | | | * lisp/emacs-lisp/package.el (package--read-archive-file): Set `coding-system-for-read' explicitly to 'utf-8 when reading the downloaded and cached archive-contents files, so that non-ASCII characters in package descriptions are displayed correctly in the `list-packages' menu. (Bug#20231) Co-authored-by: Steve Purcell <steve@sanityinc.com>
* * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.Nicolas Petton2015-04-181-2/+2
|
* '[:graph:]' now excludes whitespace, not just ' 'Paul Eggert2015-04-151-2/+2
| | | | | | | | | * doc/lispref/searching.texi (Char Classes): * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:] sans whitespace (not sans space). * src/character.c (graphicp): Exclude all Unicode whitespace chars, not just space. * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
* Move some Elisp-specific code from lisp-mode.el to elisp-mode.elStefan Monnier2015-04-151-15/+1
| | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers): Move to elisp-mode.el. (lisp-mode-variables): (Re)move elisp-specific settings. * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed from lisp-mode-variables. (elisp--font-lock-flush-elisp-buffers): New function, moved from lisp-mode.el.
* * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):Stefan Monnier2015-04-151-8/+9
| | | | Avoid pathological slowdown at top-level in large file.
* Define cl-concatenate as an alias to seq-concatenateNicolas Petton2015-04-151-6/+2
| | | | | * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated code by making cl-concatenate an alias to seq-concatenate.
* Make [:graph:] act like [:print:] sans spacePaul Eggert2015-04-151-4/+4
| | | | | | | | | | | | | | | | | | In POSIX [[:print:]] is equivalent to [ [:graph:]], so change [:graph:] so that it matches everything that [:print:] does, except for space. * doc/lispref/searching.texi (Char Classes): * etc/NEWS: * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:] sans ' '. * src/character.c, src/character.h (graphicp): New function. * src/regex.c (ISGRAPH) [emacs]: Use it. (BIT_GRAPH): New macro. (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH. (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]: Return BIT_GRAPH for RECC_GRAPH. (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH, and ISPRINT if BIT_PRINT.
* * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--classStefan Monnier2015-04-141-20/+1
| | | | (eieio--class-p): Remove, provided by cl-defstruct.
* Add seq-intersection and seq-difference to the seq libraryNicolas Petton2015-04-151-1/+28
| | | | | | | | | | | * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New functions. * test/automated/seq-tests.el: Add tests for seq-intersection and seq-difference. * doc/lispref/sequences.texi: Add documentation for seq-intersection and seq-difference.
* * eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internalsStefan Monnier2015-04-141-1/+1
|
* package--ensure-init-file: widen requires save-restrictionSam Steingold2015-04-141-3/+4
|
* Make [:print:] support non-ASCII characters correctlyEli Zaretskii2015-04-141-6/+6
| | | | | | | | | | | | | | | | * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters. (BIT_PRINT): New bit mask. (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT. * src/character.c (printablep): New function. * src/character.h (printablep): Add prototype. * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior of 'print', 'alnum', and 'alphabetic'. * doc/lispref/searching.texi (Char Classes): Document the new behavior of [:print:]. * etc/NEWS: Mention the new behavior of [:print:].
* package--ensure-init-file: widen before looking for "(package-initialize)"Sam Steingold2015-04-131-0/+1
|
* * lisp/emacs-lisp/package.el: Fix package--ensure-init-fileArtur Malabarba2015-04-131-1/+3
|
* * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstringsArtur Malabarba2015-04-131-1/+5
| | | | | | | | | Adding a string after a constructor's argument list will use that string as the constructor function docstring. If this string is absent but the struct itself was given a docstring, use that as the constructor's docstring. Fixes (bug#17284).
* Deprecate `intangible' and `point-entered' propertiesStefan Monnier2015-04-131-0/+180
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/cursor-sensor.el: New file. * lisp/simple.el (pre-redisplay-functions): New hook. (redisplay--pre-redisplay-functions): New function. (pre-redisplay-function): Use it. (minibuffer-avoid-prompt): Mark obsolete. (redisplay--update-region-highlight): Adapt it to work as a function on pre-redisplay-functions. * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun. (minibuffer-prompt-properties): Use it. Use cursor-intangible rather than point-entered to make the prompt intangible. * lisp/forms.el: Move `provide' calls to the end. (forms-mode): Don't use `run-hooks' on a local var. (forms--make-format, forms--make-format-elt-using-text-properties): Use cursor-intangible rather than `intangible'. (forms-mode): Enable cursor-intangible-mode. * lisp/isearch.el (isearch-mode): Use defvar-local. (cursor-sensor-inhibit): Declare. (isearch-mode): Set cursor-sensor-inhibit. (isearch-done): Set it back. (isearch-open-overlay-temporary, isearch-open-necessary-overlays) (isearch-close-unnecessary-overlays): Don't bother with `intangible' any more. * lisp/ses.el (ses-localvars): Remove `mode-line-process'. (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer): Add Edebug spec. (ses-goto-print, ses-print-cell, ses-adjust-print-width) (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind inhibit-point-motion-hooks any more. (ses--cell-at-pos, ses--curcell): New functions, extracted from ses-set-curcell. (ses-set-curcell): Use them. (ses-print-cell, ses-setup): Use cursor-intangible instead of `intangible'. Make sure cursor-intangible isn't sticky at BOB. (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all): Use ses--cell-at-pos. (ses--mode-line-process, ses--cursor-sensor-highlight): New functions, extracted from ses-command-hook. Make them work with multiple windows displaying the same buffer. (ses-mode): Use them via mode-line-process and pre-redisplay-functions. Enable cursor-intangible-mode. (ses-command-hook): Remove cell highlight and mode-line update code. (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column): Update for new name of text-property holding the cell name. (ses-rename-cell): Don't mess with mode-line-process. * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new cursor-sensor-functions property instead of point-entered. (erc-insert-timestamp-right, erc-format-timestamp): Use cursor-intangible rather than `intangible'. (erc-munge-invisibility-spec): Use add-to-invisibility-spec and remove-from-invisibility-spec. Enable cursor-intangible-mode and cursor-sensor-mode if needed. (erc-echo-timestamp): Adapt to calling convention of cursor-sensor-functions. (erc-insert-timestamp-right): Remove unused vars `current-window' and `indent'. * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare. (gnus-update-group-mark-positions): Remove unused `topic' var. (gnus-group-insert-group-line): Remove unused var `header'. (gnus-group--setup-tool-bar-update): New function. (gnus-group-insert-group-line): Use it. (gnus-group-update-eval-form): Declare local dynamically-bound variables. (gnus-group-unsubscribe-group): Use \` and \' to match string bounds. * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic) (gnus-group-prepare-topics, gnus-topic-update-topic) (gnus-topic-change-level, gnus-topic-catchup-articles) (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent): Use inhibit-read-only. (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update. (gnus-topic-mode): Use define-minor-mode and derived-mode-p. * lisp/textmodes/reftex-index.el (reftex-display-index): Use cursor-intangible-mode if available. (reftex-index-post-command-hook): Check cursor-intangible. * lisp/textmodes/reftex-toc.el (reftex-toc): Use cursor-intangible-mode if available. (reftex-toc-recenter, reftex-toc-post-command-hook): Check cursor-intangible. * lisp/textmodes/sgml-mode.el: Use lexical-binding. (sgml-tag): Use cursor-sensor-functions instead of point-entered. (sgml-tags-invisible): Use with-silent-modifications and inhibit-read-only. Enable cursor-sensor-mode. (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to calling convention of cursor-sensor-functions. * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook) (table-point-entered-cell-hook, table-point-left-cell-hook): Don't autoload. (table-cell-entered-state): Remove var. (table--put-cell-point-entered/left-property) (table--remove-cell-properties): Use cursor-sensor-functions rather than point-entered/left. (table--point-entered/left-cell-function): Merge table--point-entered-cell-function and table--point-left-cell-function and adjust to calling convention of cursor-sensor-functions.
* * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.Stefan Monnier2015-04-131-0/+1
|
* * lisp/emacs-lisp/package.el: Improve transaction y-or-n promptArtur Malabarba2015-04-121-8/+8
| | | | | (package-menu--prompt-transaction-p): Prompt for "Delete" first, "Upgrade" last, and use capitalized instead of all-caps.
* * lisp/emacs-lisp/package.el: Completely silence async operationsArtur Malabarba2015-04-121-24/+34
| | | | | | | | | | | | | | (package--make-autoloads-and-stuff): Silence autoloads. (package--save-selected-packages): New function, silences `customize-save-variable'. (package--user-selected-p, package-install-from-buffer) (package-delete, package-install): Use it. (package-install-from-archive) (package-menu--perform-transaction): Silence. (package-menu-execute): Feedback when operation starts.
* Use delay-mode-hooks when visiting the init-fileArtur Malabarba2015-04-121-1/+3
| | | | | | | * lisp/emacs-lisp/package.el (package--ensure-init-file): delay-mode-hooks * lisp/cus-edit.el (custom-save-all): delay-mode-hooks
* Support debug declarations in pcase macrosJohan Bockgård2015-04-123-11/+29
| | | | | | | | | | | * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec. (pcase-UPAT): Use it. Remove "`". (pcase--edebug-match-macro): New function. (pcase-defmacro): Support debug declarations. * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>: * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
* pcase.el: Edebug support for `app' and vector patternsJohan Bockgård2015-04-121-5/+10
| | | | | | * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec. (pcase-UPAT): Use it. Support `app' patterns. (pcase-QPAT): Support vector patterns.