summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/lisp-mode.el
Commit message (Collapse)AuthorAgeFilesLines
...
* Replace refs to obsolete alias `turn-on-eldoc-mode' with `eldoc-mode'Glenn Morris2014-01-291-2/+2
| | | | | | | | | | | * lisp/hexl.el (hexl-mode-hook): * lisp/ielm.el (ielm-mode-hook): * lisp/emacs-lisp/lisp-mode.el (emacs-lisp-mode-hook) (lisp-interaction-mode-hook): * lisp/progmodes/cfengine.e (cfengine3-documentation-function): Replace obsolete alias `turn-on-eldoc-mode' with `eldoc-mode'. * lisp/emacs-lisp/eldoc.el: Same in commentary.
* Doc fixes related to zero prefix argument of eval-expression etcGlenn Morris2014-01-221-11/+14
| | | | | * emacs-lisp/lisp-mode.el (eval-print-last-sexp, eval-last-sexp): * simple.el (eval-expression): Doc fixes.
* * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Don't bother withStefan Monnier2014-01-031-1/+1
| | | | | | syntax-begin-function. Fixes: debbugs:16247
* Update copyright year to 2014 by running admin/update-copyright.Paul Eggert2014-01-011-1/+1
|
* Revert unnecessary earlier changeGlenn Morris2013-12-271-4/+3
|
* * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Unbreak bootstrap.Glenn Morris2013-12-271-3/+4
|
* Make Electric Pair mode smarter/more useful:João Távora2013-12-261-1/+7
| | | | | | | | | | | | | | | | * lisp/electric.el: Pairing/skipping helps preserve balance. Autobackspacing behaviour. Opens extra newlines between pairs. Skip whitespace before closing delimiters. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Use new features. * test/automated/electric-tests.lisp: New file. * doc/emacs/programs.texi: Describe new features. * lisp/simple.el: Pass non-nil interactive arg to newline call inside newline-and-indent.
* * lisp/simple.el (eval-expression-print-format): Don't check forJuri Linkov2013-12-191-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | command names and the last command. Always display additional formats of the integer result in the echo area, and insert them to the current buffer only with a zero prefix arg. Display character when char-displayable-p is non-nil. (eval-expression): With a zero prefix arg, set `print-length' and `print-level' to nil, and insert the integer values from `eval-expression-print-format' at the end. Doc fix. * lisp/emacs-lisp/lisp-mode.el (eval-print-last-sexp): Add arg `eval-last-sexp-arg-internal'. Doc fix. (eval-last-sexp-1): Pass arg `eval-last-sexp-arg-internal' to `eval-last-sexp-print-value'. Doc fix. (eval-last-sexp-print-value): Add arg `eval-last-sexp-arg-internal'. Set `print-length' and `print-level' to nil when arg is zero. (eval-last-sexp): Doc fix. (eval-defun-2): Print the integer values from `eval-expression-print-format' at the end. * lisp/emacs-lisp/edebug.el (edebug-eval-defun): Print the integer values from `eval-expression-print-format' at the end. * lisp/ielm.el (ielm-eval-input): Print the integer values from `eval-expression-print-format' at the end. Fixes: debbugs:12985
* * lisp/progmodes/python.el (python-mode): Remove incorrect text from docstring.Bozhidar Batsov2013-11-051-10/+3
| | | | | | | * lisp/progmodes/scheme.el (scheme-mode): Remove incorrect text from docstring. * lisp/progmodes/prolog.el (prolog-mode): Remove incorrect text from docstring. * lisp/emacs-lisp/lisp-mode.el (lisp-mode, lisp-interaction-mode, emacs-lisp-mode): Remove incorrect text from docstring.
* * lisp/emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-2): Fix cut&paste.Helmut Eller2013-10-241-4/+2
| | | | Fixes: debbugs:15699
* * lisp/emacs-lisp/lisp-mode.el: Font-lock cl-lib constructs.Stefan Monnier2013-10-081-5/+245
| | | | | | | | | | (lisp-el-font-lock-keywords, lisp-el-font-lock-keywords-1) (lisp-el-font-lock-keywords-2, lisp-cl-font-lock-keywords) (lisp-cl-font-lock-keywords-1, lisp-cl-font-lock-keywords-2): New constants. (lisp-mode-variables): New `elisp' argument. (emacs-lisp-mode): Use it. * lisp/font-lock.el (lisp-font-lock-keywords, lisp-font-lock-keywords-1) (lisp-font-lock-keywords-2): Move to lisp-mode.el.
* * lisp/emacs-lisp/lisp-mode.el (eval-defun-2): Simplify, using lexical-binding.Stefan Monnier2013-10-071-22/+20
|
* lisp/*.el: Silence lexical-binding warnings.Juanma Barranquero2013-08-091-7/+7
|
* lisp/emacs-lisp/lisp-mode.el: Support cl-def* expressions in imenu.Juanma Barranquero2013-08-021-2/+5
|
* Convert symbol prettification into minor mode and global minor mode.Juanma Barranquero2013-06-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | * etc/NEWS: Document new Prettify Symbols mode. * lisp/progmodes/prog-mode.el (prettify-symbols-alist): Rename from `prog-prettify-symbols', and make a local defvar instead of defcustom. (prettify-symbols--keywords): Rename from `prog-prettify-symbols-alist' and make a local defvar. (prettify-symbols--compose-symbol): Rename from `prog--prettify-font-lock-compose-symbol'. (prettify-symbols--make-keywords): Rename from `prog-prettify-font-lock-symbols-keywords' and simplify. (prog-prettify-install): Remove. (prettify-symbols-mode): New minor mode, based on `prog-prettify-install'. (turn-on-prettify-symbols-mode): New function. (global-prettify-symbols-mode): New globalized minor mode. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): * lisp/progmodes/cfengine.el (cfengine3-mode): * lisp/progmodes/perl-mode.el (perl-mode): Don't call `prog-prettify-install'; set `prettify-symbols-alist' instead.
* Add coding cookie to lisp/emacs-lisp/lisp-mode.el.Eli Zaretskii2013-06-151-1/+1
|
* lisp-mode font-lock fox for bug#14574Glenn Morris2013-06-111-2/+2
| | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Prettify after setting font-lock-defaults.
* Introduce and use prog-prettify-install.Ted Zlatanov2013-06-051-18/+4
|
* Symbol prettify in prog-mode; added to perl-mode, cfengine3-mode, and ↵Ted Zlatanov2013-06-051-2/+21
| | | | emacs-lisp-mode.
* * lisp/emacs-lisp/lisp-mode.el (eval-sexp-add-defvars): Expand macrosStefan Monnier2013-06-031-0/+1
| | | | | | eagerly. Fixes: debbugs:14422
* * lisp/emacs-lisp/lisp-mode.el (lisp-mode-shared-map): Inherit fromStefan Monnier2013-05-291-0/+1
| | | | prog-mode-map.
* * lisp/emacs-lisp/lisp-mode.el (eval-defun-2): Doc fix. Juri Linkov2013-05-061-7/+6
| | | | | | | | (eval-defun-2, eval-defun, eval-last-sexp, eval-last-sexp-1): Doc fix. (emacs-lisp-mode-map): Replace "minibuffer" with "echo area" in the help string. (Bug#12985) Fixes: debbugs:14344
* * lisp/emacs-lisp/lisp-mode.el (emacs-lisp-docstring-fill-column): MakeDmitry Gutov2013-03-241-0/+2
| | | | it safe-local.
* Don't use font-lock-syntax-table in lisp modes.Stefan Monnier2013-02-171-8/+4
| | | | | | | | * lisp/font-lock.el (lisp-font-lock-keywords-1, lisp-font-lock-keywords-2): Don't assume all identifier chars have syntax word. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Remove bar-not-symbol. Adjust callers. (lisp-mode-variables): Don't set a font-lock-syntax-table.
* Fixes: debbugs:13556Andreas Schwab2013-01-261-4/+8
| | | | | | * emacs-lisp/lisp-mode.el (lisp-mode-variables): Add optional parameter BAR-NOT-SYMBOL to control syntax of | for font-lock. (lisp-mode): Pass t for it.
* * lisp-mode.el (emacs-lisp-mode-map): Add native profiler menu entries.Glenn Morris2013-01-191-0/+16
|
* Merge from emacs-24; up to 2012-12-11T09:51:12Z!dmantipov@yandex.ruGlenn Morris2013-01-191-1/+1
|\
| * Doc fixes related to "(declare (indent symbol))" (bug#13450)Glenn Morris2013-01-151-1/+1
| | | | | | | | | | | | | | * doc/lispref/macros.texi (Indenting Macros): Fix order of an indent symbol's arguments. * lisp/emacs-lisp/lisp-mode.el (lisp-indent-function): Doc fix.
* | Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.caPaul Eggert2013-01-021-1/+1
|\|
| * Update copyright notices for 2013.Paul Eggert2013-01-011-1/+1
| |
* | Make eval-defun on a pre-defined defcustom call any :set functionGlenn Morris2012-12-081-13/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (eval-defun-1): Doc fix. Respect a defcustom's :set function, if appropriate. (eval-defun): Doc fix. * doc/lispref/customize.texi (Variable Definitions): Mention eval-defun on a defcustom calls the :set function when appropriate. * etc/NEWS: Mention this. Fixes: debbugs:109
* | Fix last change.Chong Yidong2012-12-011-22/+23
| | | | | | | | | | | | | | | | * emacs-lisp/lisp-mode.el (lisp-current-defun-name): * progmodes/m4-mode.el (m4-current-defun-name): * progmodes/perl-mode.el (perl-current-defun-name): * textmodes/tex-mode.el (tex-current-defun-name): * textmodes/texinfo.el (texinfo-current-defun-name): Use save-excursion.
* | Modularize add-log-current-defun.Chong Yidong2012-12-011-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by Jari Aalto. * lisp/emacs-lisp/lisp-mode.el (lisp-current-defun-name): New. (lisp-mode-variables): Use it. * lisp/progmodes/cc-mode.el (c-common-init): * lisp/progmodes/cperl-mode.el (cperl-mode): Set a value for add-log-current-defun-function. * lisp/progmodes/m4-mode.el (m4-current-defun-name): New function. (m4-mode): Use it. * lisp/progmodes/perl-mode.el (perl-current-defun-name): New. (perl-mode): Use it. * lisp/progmodes/scheme.el (scheme-mode-variables, dsssl-mode): Use lisp-current-defun-name. * lisp/textmodes/tex-mode.el (tex-current-defun-name): New. (tex-common-initialization): Use it. * lisp/textmodes/texinfo.el (texinfo-current-defun-name): New. (texinfo-mode): Use it. * lisp/vc/add-log.el (add-log-current-defun-function): Doc fix. (add-log-current-defun): Move mode-specific code to other files. (add-log-lisp-like-modes, add-log-c-like-modes) (add-log-tex-like-modes): Variables deleted. Fixes: debbugs:2224
* | Convert several major modes to setq-local.Chong Yidong2012-12-011-32/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * emacs-lisp/lisp-mode.el (lisp-mode-variables, lisp-mode): * progmodes/autoconf.el (autoconf-mode): * progmodes/js.el (js-mode): * progmodes/make-mode.el (makefile-mode, makefile-makepp-mode) (makefile-bsdmake-mode, makefile-imake-mode, makefile-browse): * progmodes/perl-mode.el (perl-mode): * progmodes/sh-script.el (sh-mode, sh-set-shell): * textmodes/css-mode.el (css-mode): * textmodes/sgml-mode.el (html-mode, sgml-mode) (sgml-tags-invisible, sgml-guess-indent): * textmodes/tex-mode.el (tex-common-initialization) (latex-complete-bibtex-keys, tex-shell, tex-main-file) (doctex-mode, plain-tex-mode, latex-mode): * textmodes/texinfo.el (texinfo-mode): Use setq-local.
* | Revamp face-spec-set to be more analogous to setq for faces.Chong Yidong2012-11-251-15/+2
|/ | | | | | | | | | | | | | | | | | | | | | | * lisp/faces.el (face-spec-set): Change the third arg to specify whether this function is being called via defface, customize, or a third party. Set the appropriate symbol properties. Clear the override spec if setting via Custom. Initialize face if necessary. (face-spec-recalc): Allow theme faces to completely replace the defface spec, in the same way as custom faces (Bug#8454). * lisp/cus-edit.el (custom-face-set, custom-face-mark-to-save) (custom-face-reset-saved, custom-face-mark-to-reset-standard): Simplify by using the new arg to face-spec-set. * lisp/cus-face.el (custom-declare-face): Move face initialization to face-spec-set. (custom-theme-set-faces): Don't initialize the face name here, as that is now done in face-spec-set. * lisp/emacs-lisp/lisp-mode.el (eval-defun-1): When evaluating defface, reset face-override-spec too, and use custom-declare-face. Fixes: debbugs:4988
* New emacs-lisp-byte-code-mode; misc minor changes.Stefan Monnier2012-09-091-16/+61
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (emacs-list-byte-code-comment-re): New var. (emacs-lisp-byte-code-comment) (emacs-lisp-byte-code-syntax-propertize, emacs-lisp-byte-code-mode): New functions. (eval-sexp-add-defvars): Don't skip defvars in column >0. (eval-defun-2): Remove bogus interactive spec. (lisp-indent-line): Remove redundant whole-exp code, now done in indent-according-to-mode. (save-match-data): Remove redundant indent data. * lisp/emacs-lisp/benchmark.el (benchmark-run, benchmark-run-compiled): Use `declare'. * lisp/gnus/qp.el (quoted-printable-decode-region): Inline+CSE+strength-reduction.
* * lisp/emacs-lisp/cl.el (cl-map-keymap-recursively, cl-map-intervals)Stefan Monnier2012-08-081-3/+6
| | | | | | (cl-map-extents): Add compatibility aliases. Fixes: debbugs:12135
* * emacs-lisp/lisp-mode.el (eval-defun-1): Handle standard value ofAndreas Schwab2012-08-071-1/+3
| | | | a defcustom that is quoted with backquote.
* In Imenu, don't show defvars with no second argument.Chong Yidong2012-08-051-1/+6
| | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Don't show defvars which have no second argument. * lisp/imenu.el (imenu-generic-expression): Move documentation here from imenu--generic-function. (imenu--generic-function): Refer to imenu-generic-expression. Fixes: debbugs:8638
* Autoload more carefully from Lisp. Follow aliases for function properties.Stefan Monnier2012-07-251-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/subr.el (autoloadp): New function. (symbol-file): Use it. (function-get): New function. * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Use function-get and autoload-do-load. * lisp/emacs-lisp/lisp-mode.el (lisp-font-lock-syntactic-face-function) (lisp-indent-function): * lisp/emacs-lisp/gv.el (gv-get): * lisp/emacs-lisp/edebug.el (get-edebug-spec, edebug-basic-spec): * lisp/emacs-lisp/byte-opt.el (byte-optimize-form): * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn): * lisp/emacs-lisp/autoload.el (make-autoload, autoload-print-form): Use function-get. * lisp/emacs-lisp/cl.el: Don't propagate function properties any more. * src/eval.c (Fautoload_do_load): Rename from do_autoload, export to Lisp, add argument, tune behavior, and adjust all callers. * lisp/speedbar.el (speedbar-add-localized-speedbar-support): * lisp/emacs-lisp/disass.el (disassemble-internal): * lisp/desktop.el (desktop-load-file): * lisp/help-fns.el (help-function-arglist, find-lisp-object-file-name) (describe-function-1): * lisp/emacs-lisp/find-func.el (find-function-noselect): * lisp/emacs-lisp/elp.el (elp-instrument-function): * lisp/emacs-lisp/advice.el (ad-has-proper-definition): * lisp/apropos.el (apropos-safe-documentation, apropos-macrop): * lisp/emacs-lisp/debug.el (debug-on-entry): * lisp/emacs-lisp/cl-macs.el (cl-compiler-macroexpand): * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): * lisp/calc/calc.el (name): Use autoloadp & autoload-do-load.
* Get rid of all the manual purecopy calls in menu-bar definitions.Stefan Monnier2012-06-271-127/+129
| | | | | | | | | | | | * lisp/loadup.el (purify-flag): Pre-grow the hash-table to reduce the memory use. * lisp/bindings.el (bindings--define-key): New function. * lisp/vc/vc-hooks.el, lisp/replace.el, lisp/menu-bar.el: * lisp/international/mule-cmds.el, lisp/emacs-lisp/lisp-mode.el: * lisp/buff-menu.el, lisp/bookmark.el: * bindings.el: Use it to purecopy define-key bindings. * src/fns.c (maybe_resize_hash_table): Output message when growing the purify-hashtable.
* * lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C.Stefan Monnier2012-05-291-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (macro-declaration-function): Move var from C code. (macro-declaration-function): Define function with defalias. * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): * lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form): * lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Don't handle defun/defmacro any more. * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-signature): Provide fallback for unknown arglist. (byte-compile-arglist-warn): Change calling convention. (byte-compile-output-file-form): Move print-vars binding. (byte-compile-output-docform): Simplify accordingly. (byte-compile-file-form-defun, byte-compile-file-form-defmacro) (byte-compile-defmacro-declaration): Remove. (byte-compile-file-form-defmumble): Generalize to defalias. (byte-compile-output-as-comment): Return byte-positions. Simplify callers accordingly. (byte-compile-lambda): Use `assert'. (byte-compile-defun, byte-compile-defmacro): Remove. (byte-compile-file-form-defalias): Use byte-compile-file-form-defmumble. (byte-compile-defalias-warn): Remove. * src/eval.c (Fdefun, Fdefmacro, Vmacro_declaration_function): Move to byte-run.el. (Fautoload): Do the hash-doc more carefully. * src/data.c (Fdefalias): Purify definition, except for keymaps. (Qdefun): Move from eval.c. * src/lisp.h (Qdefun): Remove. * src/lread.c (read1): Tiny simplification. * lib-src/make-docfile.c: Improve comment style. (search_lisp_doc_at_eol): New function. (scan_lisp_file): Use it.
* * lisp/emacs-lisp/lisp-mode.el (eval-defun-2): Use `eval-sexp-add-defvars'Juri Linkov2012-05-271-2/+2
| | | | | | | | | | after the `eval-defun-1' specialcaseing like in `edebug-eval-defun'. * lisp/emacs-lisp/edebug.el (edebug-eval-defun): Set `face-documentation' like in `eval-defun-1'. Fixes: debbugs:10181
* Use `declare' in `lambda' and mis minor changes.Stefan Monnier2012-05-261-2/+0
| | | | | | | | * lisp/subr.el (lambda): Use declare. * lisp/emacs-lisp/lisp-mode.el (lambda): * lisp/emacs-lisp/edebug.el (lambda): Move properties to its definition. * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unhook-expire-days): * lisp/gnus/gnus-demon.el (gnus-demon-init): Don't bother with type-of.
* * lisp/emacs-lisp/lisp-mode.el (doc-string-elt): Move those properties toStefan Monnier2012-05-171-20/+0
| | | | | | | | | | | | | | their respective macro declarations. * lisp/skeleton.el (define-skeleton): * lisp/progmodes/compile.el (define-compilation-mode): * lisp/ibuf-macs.el (define-ibuffer-sorter, define-ibuffer-op) (define-ibuffer-filter): * lisp/emacs-lisp/generic.el (define-generic-mode): * lisp/emacs-lisp/easy-mmode.el (define-minor-mode) (define-globalized-minor-mode): * lisp/emacs-lisp/cl-macs.el (defun*, defmacro*, defstruct, deftype): * lisp/emacs-lisp/byte-run.el (defsubst): * lisp/custom.el (deftheme): Add doc-string metadata.
* Make Emacs Lisp mode use emacs-lisp-mode-abbrev-table.Chong Yidong2012-01-291-3/+9
| | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (emacs-lisp-mode-abbrev-table): Define and use in Emacs Lisp mode. (lisp-mode-abbrev-table): Add doc. (lisp-mode-variables): Don't set local-abbrev-table. (lisp-interaction-mode): Use emacs-lisp-mode-abbrev-table. Fixes: debbugs:9360
* Add 2012 to FSF copyright years for Emacs filesGlenn Morris2012-01-051-1/+1
|
* * lisp/emacs-lisp/lisp-mode.el (defmethod): Add doc-string-elt.Stefan Monnier2011-12-081-0/+1
| | | | Fixes: debbugs:10244
* Spelling fixes.Paul Eggert2011-11-191-1/+1
|
* Capitalize non-function content words in menu item strings.Juri Linkov2011-09-181-3/+3
| | | | | | | | | | | | | | | | | | | * lisp/buff-menu.el (Buffer-menu-mode-map): * lisp/dired.el (dired-mode-map): * lisp/emacs-lisp/lisp-mode.el (emacs-lisp-mode-map) (lisp-interaction-mode-map): * lisp/emacs-lisp/package.el (package-menu-mode-map): * lisp/epa.el (epa-key-list-mode-map): * lisp/menu-bar.el (menu-bar-showhide-tool-bar-menu) (menu-bar-options-menu): * lisp/outline.el (outline-mode-menu-bar-map): * lisp/vc/vc-bzr.el (vc-bzr-shelve-menu-map, vc-bzr-extra-menu-map): * lisp/vc/vc-dir.el (vc-dir-menu-map): * lisp/vc/vc-git.el (vc-git-stash-menu-map, vc-git-extra-menu-map): Capitalize non-function content words in menu item strings. * lisp/dired.el (dired-mode-map): Add menu item for `image-dired-dired-toggle-marked-thumbs'.