summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
* Fix typo in comment (bug#13851).Bastien Guerry2013-03-021-1/+1
| | | | Thanks to Reuben Thomas for reporting this.
* * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Tweak logic.Stefan Monnier2013-02-251-26/+11
| | | | (easy-mmode-set-keymap-parents): Use make-composed-keymap.
* * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use let.Stefan Monnier2013-02-251-4/+2
|
* Implement CLASH_DETECTION for MS-Windows.Eli Zaretskii2013-02-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/filelock.c [WINDOWSNT]: Include w32.h. (MAKE_LOCK_NAME): Don't use 'lock', it clashes with MS runtime function of that name. Up-case the macro arguments. (IS_LOCK_FILE): New macro. (fill_in_lock_file_name): Use IS_LOCK_FILE instead of S_ISLNK. (create_lock_file): New function, with body extracted from lock_file_1. [WINDOWSNT]: Implement lock files by writing a regular file with the lock information as its contents. (read_lock_data): New function, on Posix platforms just calls emacs_readlinkat. [WINDOWSNT]: Read the lock info from the file. (current_lock_owner): Call read_lock_data instead of calling emacs_readlinkat directly. (lock_file) [WINDOWSNT]: Run the file name through dostounix_filename. src/w32proc.c (sys_kill): Support the case of SIG = 0, in which case just check if the process by that PID exists. src/w32.c (sys_open): Don't reset the _O_CREAT flag if _O_EXCL is also present, as doing so will fail to error out if the file already exists. src/makefile.w32-in ($(BLD)/filelock.$(O)): Depend on src/w32.h. nt/inc/ms-w32.h (BOOT_TIME_FILE): Define. nt/config.nt (CLASH_DETECTION): Define to 1. lisp/emacs-lisp/bytecomp.el (byte-recompile-directory): Reject files that match "\`\.#", to avoid compiling lock files, even if they are readable (as they are on MS-Windows). doc/emacs/files.texi (Interlocking): Don't refer to symlinks as the exclusive means of locking files. etc/NEWS: Mention support for lock files on MS-Windows.
* Avoid recursive byte-compile-files fighting over input/output buffersGlenn Morris2013-02-231-3/+18
| | | | | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile-level): New. (byte-compile-file, byte-compile-from-buffer): Use separate input/output buffers for each level of recursive byte-compile-file calls. Fixes: debbugs:13787
* * search.c (find_newline): Return byte position in bytepos.Dmitry Antipov2013-02-201-1/+1
| | | | | | | | | | | | | | Adjust comment. (find_next_newline_no_quit, find_before_next_newline): Add bytepos argument. * lisp.h (find_newline, find_next_newline_no_quit) (find_before_next_newline): Adjust prototypes. * bidi.c (bidi_find_paragraph_start): * editfns.c (Fconstrain_to_field, Fline_end_position): * indent.c (compute_motion, vmotion): * xdisp.c (back_to_previous_line_start, forward_to_next_line_start): (get_visually_first_element, move_it_vertically_backward): Adjust users and avoid calls to CHAR_TO_BYTE where appropriate.
* Make cl-floatp-safe just an alias for floatpGlenn Morris2013-02-192-9/+5
| | | | | | | | | * lisp/emacs-lisp/cl-lib.el (cl-floatp-safe): Make it an alias for floatp. * lisp/emacs-lisp/cl-macs.el (cl--make-type-test) (cl--compiler-macro-assoc): Use floatp rather than cl-floatp-safe. * doc/misc/cl.texi: Remove commented out sections about cl-floatp-safe.
* Cleanup some of EIEIO's namespace.Stefan Monnier2013-02-186-398/+417
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/eieio.el (eieio--define-field-accessors): New macro. Use it to define all the class-* and object-* field accessors (renamed to eieio--class-* and eieio--object-*). Update all uses. (eieio--class-num-slots, eieio--object-num-slots): Rename from class-num-slots and object-num-slots. (eieio--check-type): New macro. (eieio-defclass, eieio-oref, eieio-oref-default, same-class-p) (object-of-class-p, child-of-class-p, object-slots, class-slot-initarg) (eieio-oset, eieio-oset-default, object-assoc, object-assoc-list) (object-assoc-list-safe): Use it. (eieio-defclass): Tighten regexp. (eieio--defmethod): Use `memq'. Signal an error for unknown method kind. Remove unreachable code. (object-class-fast): Declare obsolete. (eieio-class-name, eieio-object-name, eieio-object-set-name-string) (eieio-object-class, eieio-object-class-name, eieio-class-parents) (eieio-class-children, eieio-class-precedence-list, eieio-class-parent): Rename from class-name, object-name, object-set-name-string, object-class, object-class-name, class-parents, class-children, class-precedence-list, class-parent; with obsolete alias. (class-of, class-direct-superclasses, class-direct-subclasses): Declare obsolete. (eieio-defmethod): Use `memq'; remove unreachable code. * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read): * lisp/emacs-lisp/eieio-opt.el (eieio-class-button, eieio-describe-generic) (eieio-browse-tree, eieio-browse): Use eieio--check-type.
* * lisp/emacs-lisp/eldoc.el (eldoc-highlight-function-argument):Michael Heerdegen2013-02-171-1/+2
| | | | | | Use font-lock-keyword-face for macros and special forms. Fixes: debbugs:8345
* 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.
* * emacs-lisp/tabulated-list.el (tabulated-list-print-col):Jonas Bernoulli2013-02-151-1/+3
| | | | | | If col-desc already has help-echo, use it. Fixes: debbugs:13563
* emacs-lisp/easy-mmode.el (define-globalized-minor-mode): When a globalAlan Mackenzie2013-02-151-12/+31
| | | | | | | | minor mode has been enabled, call the minor mode function for a new buffer once only, after the major mode hook, whilst allowing that hook explicitly to disable the minor mode. (MODE-disable-in-buffer): new (generated) function. (disable-MODE): new (generated) buffer local variable.
* Merge from emacs-24; up to 2012-12-19T13:01:16Z!michael.albinus@gmx.dePaul Eggert2013-02-141-7/+8
|\
| * * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix re setf.Glenn Morris2013-02-141-7/+8
| |
* | * lisp/emacs-lisp/package.el (package--initialized): Move before first use.Stefan Monnier2013-02-131-2/+2
| |
* | * emacs-lisp/package.el (package-menu-execute): Doc fix.Glenn Morris2013-02-121-1/+2
| |
* | * package.el (package-menu-execute): Add optional noquery argument (tiny change)Yves Baumes2013-02-121-5/+9
| | | | | | | | Fixes: debbugs:13625
* | Remove all references to buffer-file-type and related features.Eli Zaretskii2013-02-091-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/xdisp.c (decode_mode_spec): Remove handling of %t. lisp/net/ange-ftp.el (ange-ftp-insert-file-contents): Don't reference buffer-file-type. lisp/mail/feedmail.el (feedmail-force-binary-write): Doc fix. (feedmail-run-the-queue, feedmail-dump-message-to-queue) (feedmail-send-it-immediately): Don't bind buffer-file-type, bind coding-system-for-write instead. lisp/jka-compr.el (jka-compr-write-region): Don't bind buffer-file-type. lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't bind buffer-file-type. lisp/files.el (file-name-buffer-file-type-alist): Remove defvar. (insert-file-contents-literally): Remove reference to file-name-buffer-file-type-alist. lisp/dos-w32.el (file-name-buffer-file-type-alist): Deprecate and make-obsolete. (find-buffer-file-type-match, find-buffer-file-type): Remove. (find-buffer-file-type-coding-system): Remove references to find-buffer-file-type-match, find-buffer-file-type, and buffer-file-type. Don't put find-buffer-file-type-coding-system into file-coding-system-alist. (find-file-binary, find-file-text): Bind coding-system-for-read instead of file-name-buffer-file-type-alist. lisp/erc/erc-dcc.el (erc-dcc-get-file): Don't reference buffer-file-type. doc/emacs/msdog.texi (Text and Binary): Delete the description of file-name-buffer-file-type-alist. doc/lispref/modes.texi (%-Constructs): Remove the description of %t. doc/lispref/nonascii.texi (MS-DOS File Types): Delete node. Fixes: debbugs:12989
* | * lisp/emacs-lisp/byte-run.el (eval-when-compile, eval-and-compile):Stefan Monnier2013-02-081-5/+5
| | | | | | | | | | | | Eval body right away, now that we do eager macroexpansion. Fixes: debbugs:13605
* | * emacs-lisp/package.el (describe-package-1): Tell what archive is used toNicolas Richard2013-02-061-3/+6
| | | | | | | | | | | | install the package. Patch by Nicolas Richard.
* | ert--explain-format-atom fix for non-charactersGlenn Morris2013-02-031-1/+2
| | | | | | | | | | | | | | * lisp/emacs-lisp/ert.el (ert--explain-format-atom): Don't try to print non-characters as characters. Fixes: debbugs:13543
* | Merge from emacs-24; up to 2012-12-13T09:45:54Z!lekktu@gmail.comGlenn Morris2013-02-011-2/+2
|\|
| * Sync CEDET and EIEIO version numbers with upstream.David Engster2013-01-311-2/+2
| |
* | Merge from emacs-24; up to 2012-12-12T22:29:54Z!yamaoka@jpl.orgGlenn Morris2013-01-301-0/+1
|\|
| * * lisp/emacs-lisp/cl.el (cl-set-getf): Add compatibility alias.Stefan Monnier2013-01-261-0/+1
| |
* | 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.
* | * lisp/emacs-lisp/trace.el (trace--read-args): Use a closure and an honestStefan Monnier2013-01-161-3/+3
| | | | | | | | call to `eval' rather than a backquoted lambda.
* | * lisp/emacs-lisp/advice.el (ad-preactivate-advice): Adjust the cleanup toStefan Monnier2013-01-152-13/+11
| | | | | | | | | | | | | | | | the use of nadvice.el. * lisp/emacs-lisp/nadvice.el (advice--tweak): Make it possible for `tweak' to return an explicit nil. (advice--remove-function): Change accordingly. * test/automated/advice-tests.el: Split up. Add advice-test-preactivate.
* | * lisp/jit-lock.el (jit-lock-debug-mode): New minor mode.Stefan Monnier2013-01-121-2/+2
| | | | | | | | | | | | | | | | | | (jit-lock--debug-fontifying): New var. (jit-lock--debug-fontify): New function. * lisp/subr.el (condition-case-unless-debug): Don't prevent catching the error, just let the debbugger run. * lisp/emacs-lisp/timer.el (timer-event-handler): Don't prevent debugging timer code and don't drop errors silently.
* | Disambiguate function and variable references in docstrings.Aaron S. Hawley2013-01-111-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/comint.el (comint-history-isearch-message): Fix ambiguous doc string cross-reference(s). * lisp/ffap.el (ffap-string-at-point-region, ffap-next) (ffap-string-at-point, ffap-string-around) (ffap-copy-string-as-kill, ffap-highlight-overlay) (ffap-literally): Fix ambiguous doc string cross-reference(s). * lisp/font-lock.el (font-lock-keywords-alist) (font-lock-removed-keywords-alist): Fix ambiguous doc string cross-reference(s). * lisp/help-mode.el (help-xref-symbol-regexp): Add "call" as a hint for a cross-reference to a function. * lisp/info.el (Info-find-emacs-command-nodes): Fix ambiguous doc string cross-reference(s). * lisp/isearch.el (isearch-message-function, isearch-fail-pos): Fix ambiguous doc string cross-reference(s). * lisp/misearch.el (multi-isearch-next-buffer-function): Fix ambiguous doc string cross-reference(s). * lisp/newcomment.el (comment-box): Fix ambiguous doc string cross-reference(s). * lisp/printing.el (pr-txt-printer-alist, pr-ps-printer-alist) (pr-setting-database): Fix ambiguous doc string cross-reference(s). * lisp/ps-print.el (ps-even-or-odd-pages, ps-spool-buffer-with-faces) (ps-n-up-filling-database): Fix ambiguous doc string cross-reference(s). * lisp/server.el (server-buffer, server-log): Fix ambiguous doc string cross-reference(s). * lisp/simple.el (newline, delete-backward-char, delete-forward-char) (minibuffer-history-isearch-message, kill-line, track-eol) (temporary-goal-column): Fix ambiguous doc string cross-reference(s). * lisp/whitespace.el (whitespace-point) (whitespace-font-lock-refontify, whitespace-bob-marker) (whitespace-eob-marker): Fix ambiguous doc string cross-reference(s). * lisp/calc/calc.el (calc-highlight-selections-with-faces) (calc-dispatch): Fix ambiguous doc string cross-reference(s). * lisp/emacs-lisp/edebug.el (edebug-read, edebug-eval-defun): Fix ambiguous doc string cross-reference(s). * lisp/gnus/gnus-start.el (gnus-check-new-newsgroups): Fix ambiguous doc string cross-reference(s). * lisp/gnus/gnus-sum.el (gnus-summary-newsgroup-prefix): Fix ambiguous doc string cross-reference(s). * lisp/international/mule.el (add-to-coding-system-list): Fix ambiguous doc string cross-reference(s). * lisp/progmodes/cc-fonts.el (c-font-lock-keywords-3) (c++-font-lock-keywords-3, objc-font-lock-keywords-3) (java-font-lock-keywords-3, idl-font-lock-keywords-3) (pike-font-lock-keywords-3): Fix ambiguous doc string cross-reference(s). * lisp/progmodes/compile.el (compile): Fix ambiguous doc string cross-reference(s). * lisp/progmodes/etags.el (tags-table-files) (tags-table-files-function, tags-included-tables-function): Fix ambiguous doc string cross-reference(s). * lisp/progmodes/gdb-mi.el (gdb, gdb-setup-windows) (gdb-restore-windows): Fix ambiguous doc string cross-reference(s). * lisp/textmodes/flyspell.el (flyspell-mark-duplications-flag) (flyspell-default-deplacement-commands): Fix ambiguous doc string cross-reference(s). * lisp/textmodes/ispell.el (ispell-accept-output): Fix ambiguous doc string cross-reference(s). * lisp/textmodes/sgml-mode.el (html-tag-help): Fix ambiguous doc string cross-reference(s). * lisp/vc/compare-w.el (compare-ignore-whitespace) (compare-ignore-case, compare-windows-dehighlight): Fix ambiguous doc string cross-reference(s). * lisp/vc/diff.el (diff): Fix ambiguous doc string cross-reference(s). * src/insdel.c (Fcombine_after_change_execute, syms_of_insdel): Fix ambiguous doc string cross-reference(s). * src/keyboard.c (Fcommand_execute, syms_of_keyboard): Fix ambiguous doc string cross-reference(s). * src/window.c (Fwindow_point, syms_of_window): Fix ambiguous doc string cross-reference(s). Fixes: debbugs:12686
* | *** empty log message ***Stefan Monnier2013-01-111-10/+4
| |
* | Use point-max-marker and point-min-marker here and there.Dmitry Antipov2013-01-111-1/+1
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/ert.el (ert-run-test): Use point-max-marker. * lisp/erc/erc-dcc.el (erc-dcc-chat-setup): Likewise. * lisp/gnus/gnus-async.el (gnus-async-article-callback): Likewise. * lisp/erc/erc-dcc.el (erc-dcc-send-file): Use point-min-marker. * lisp/gnus/gnus-art.el (gnus-mime-display-security): Use point-min-marker and point-max-marker.
* | Merge from emacs-24Stefan Monnier2013-01-091-1/+15
|\|
| * authors.el tiny updatesGlenn Morris2013-01-091-1/+15
| | | | | | | | | | | | * lisp/emacs-lisp/authors.el (authors-ignored-files) (authors-valid-file-names, authors-renamed-files-alist): Add some more entries.
* | * lisp/emacs-lisp/crm.el: Allow any regexp for separators.Roland Winkler2013-01-091-30/+29
| | | | | | | | | | | | | | (crm-default-separator): All spaces around the default comma separator. (crm--completion-command): New macro. (crm-completion-help, crm-complete, crm-complete-word): Use it. (crm-complete-and-exit): Handle non-single-char separators.
* | Merge from emacs-24; up to 2012-12-08T12:11:29Z!eliz@gnu.orgGlenn Morris2013-01-091-2/+6
|\|
| * * emacs-lisp/trace.el (trace-function, trace-function-background): Doc fix.Glenn Morris2013-01-081-2/+6
| |
* | Remove some obsolete trace.el commentaryGlenn Morris2013-01-081-16/+0
| |
* | * lisp/emacs-lisp/pcase.el (pcase--split-equal): Also take advantage ifStefan Monnier2013-01-081-14/+15
| | | | | | | | the predicate returns nil.
* | * lisp/emacs-lisp/nadvice.el (advice--tweak): New function.Stefan Monnier2013-01-082-25/+22
| | | | | | | | | | (advice--remove-function, advice--subst-main): Use it. * lisp/emacs-lisp/advice.el: Update commentary.
* | * lisp/emacs-lisp/advice.el (ad-activate-advised-definition): Refresh theStefan Monnier2013-01-071-4/+9
| | | | | | | | advice list when the interactive-spec of ad-Advice-* changes.
* | Merge from emacs-24; up to 2012-12-06T07:33:20Z!rgm@gnu.orgGlenn Morris2013-01-021-1/+7
|\|
| * defun fix for cl declarations + interactive formsGlenn Morris2013-01-021-1/+7
| | | | | | | | | | | | | | * lisp/emacs-lisp/byte-run.el (defun): Place cl declarations after any interactive spec. Fixes: debbugs:13265
* | Update copyright dates to 2013.Paul Eggert2013-01-021-1/+1
| |
* | Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.caPaul Eggert2013-01-0274-109/+126
|\|
| * Auto-commit of loaddefs files.Glenn Morris2013-01-011-3/+3
| |
| * Update copyright notices for 2013.Paul Eggert2013-01-0173-78/+88
| |