Commit graph

3752 commits

Author SHA1 Message Date
Stefan Monnier
c46c57b096 * lisp/emacs-lisp/cl-extra.el (cl-getf): Return the proper value in
the setter.

Fixes: debbugs:14387
2013-05-14 22:00:07 -04:00
Yann Hodique
469bfed936 * lisp/emacs-lisp/tabulated-list.el: Set a version number.
* lisp/emacs-lisp/package.el: Explicitly depend on a tabulated-list version.

Fixes: debbugs:14137
2013-05-14 00:35:21 -07:00
Glenn Morris
0060ac73c0 * lisp/emacs-lisp/autoload.el (generated-autoload-load-name): Doc fix. 2013-05-11 16:58:36 -07:00
Glenn Morris
36f84c3728 Make some files provide features
* dos-vars.el, emacs-lisp/cl-indent.el, emulation/tpu-extras.el:
Provide features.
2013-05-11 16:41:52 -07:00
Glenn Morris
f20def1f2e Fix some declarations
* lisp/faces.el (internal-face-x-get-resource):
* lisp/frame.el (ns-display-monitor-attributes-list):
* lisp/calc/calc-aent.el (math-to-radians-2):
* lisp/cedet/ede/locate.el (cedet-cscope-version-check)
(cedet-cscope-support-for-directory):
* lisp/cedet/semantic/grammar.el (semantic-grammar-wy--install-parser):
* lisp/emacs-lisp/package.el (tar-header-name, tar-header-link-type):
Fix declarations.
2013-05-10 19:27:28 -07:00
Glenn Morris
99fb275649 More custom :type fixes
* lisp/lpr.el (lpr-headers-switches):
* lisp/emacs-lisp/testcover.el (testcover-compose-functions):
* lisp/cedet/ede/project-am.el (project-am-compile-project-command): Fix :type.

* lisp/progmodes/sql.el (sql-login-params): Fix and improve :type.
2013-05-10 19:21:29 -07:00
Glenn Morris
f79362a7a0 Auto-commit of loaddefs files. 2013-05-10 06:21:19 -04:00
Glenn Morris
d5837773e0 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix. 2013-05-09 22:01:12 -04:00
Glenn Morris
a931698afd Fix a bunch of custom types (thank you cus-test.el)
* lisp/bookmark.el (bookmark-search-delay):
* lisp/cus-start.el (vertical-centering-font-regexp):
* lisp/ps-mule.el (ps-mule-font-info-database-default):
* lisp/ps-print.el (ps-default-fg, ps-default-bg):
* lisp/type-break.el (type-break-good-break-interval):
* lisp/whitespace.el (whitespace-indentation-regexp)
(whitespace-space-after-tab-regexp):
* lisp/emacs-lisp/testcover.el (testcover-1value-functions)
(testcover-noreturn-functions, testcover-progn-functions)
(testcover-prog1-functions):
* lisp/emulation/viper-init.el (viper-emacs-state-cursor-color):
* lisp/erc/erc-desktop-notifications.el (erc-notifications-icon):
* lisp/eshell/em-glob.el (eshell-glob-translate-alist):
* lisp/gnus/gnus-art.el (gnus-article-date-headers, gnus-blocked-images):
* lisp/gnus/gnus-async.el (gnus-async-post-fetch-function):
* lisp/gnus/gnus-gravatar.el (gnus-gravatar-size, gnus-gravatar-properties):
* lisp/gnus/gnus-html.el (gnus-html-image-cache-ttl):
* lisp/gnus/gnus-notifications.el (gnus-notifications-timeout):
* lisp/gnus/gnus-picon.el (gnus-picon-properties):
* lisp/gnus/gnus-util.el (gnus-completion-styles):
* lisp/gnus/gnus.el (gnus-other-frame-resume-function):
* lisp/gnus/message.el (message-user-organization-file)
(message-cite-reply-position):
* lisp/gnus/nnir.el (nnir-summary-line-format)
(nnir-retrieve-headers-override-function):
* lisp/gnus/shr-color.el (shr-color-visible-luminance-min):
* lisp/gnus/shr.el (shr-blocked-images):
* lisp/gnus/spam-report.el (spam-report-resend-to):
* lisp/gnus/spam.el (spam-summary-exit-behavior):
* lisp/mh-e/mh-e.el (mh-sortm-args, mh-default-folder-for-message-function):
* lisp/play/tetris.el (tetris-tty-colors):
* lisp/progmodes/cpp.el (cpp-face-default-list):
* lisp/progmodes/flymake.el (flymake-allowed-file-name-masks):
* lisp/progmodes/idlw-help.el (idlwave-help-browser-generic-program)
(idlwave-help-browser-generic-args):
* lisp/progmodes/make-mode.el (makefile-special-targets-list):
* lisp/progmodes/python.el (python-shell-virtualenv-path):
* lisp/progmodes/verilog-mode.el (verilog-active-low-regexp)
(verilog-auto-input-ignore-regexp, verilog-auto-inout-ignore-regexp)
(verilog-auto-output-ignore-regexp, verilog-auto-tieoff-ignore-regexp)
(verilog-auto-unused-ignore-regexp, verilog-typedef-regexp):
* lisp/textmodes/reftex-vars.el (reftex-format-label-function):
* lisp/textmodes/remember.el (remember-diary-file):
Fix custom types.

* lisp/cedet/semantic/db-find.el (semanticdb-find-throttle-custom-list):
Fix value.

* lisp/gnus/gnus-salt.el (gnus-selected-tree-face): Fix default.
2013-05-08 21:40:20 -04:00
Juanma Barranquero
5cb15713d8 Silence byte-compiler warnings.
* lisp/emacs-lisp/bytecomp.el (byte-compile-insert-header):
* lisp/faces.el (crm-separator): Silence byte-compiler.
* lisp/progmodes/gud.el (gdb-speedbar-auto-raise, gud-tooltip-mode)
  (tool-bar-map): Remove unneeded defvars.
2013-05-08 17:06:28 +02:00
Stefan Monnier
ee6cff9923 * lisp/emacs-lisp/trace.el (trace--display-buffer): New function.
(trace-make-advice): Use it.
2013-05-06 18:33:24 -04:00
Juri Linkov
32985194f2 * lisp/emacs-lisp/lisp-mode.el (eval-defun-2): Doc fix.
(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
2013-05-06 23:23:40 +03:00
Stefan Monnier
c67c08396a * lisp/emacs-lisp/nadvice.el (advice--member-p): Return the advice if found.
(advice--add-function): Refresh the advice if already present.

Fixes: debbugs:14317
2013-05-06 11:27:11 -04:00
Stefan Monnier
4fac34cee9 * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
Add current dir to the load-path.
(package-generate-autoloads): Don't rely on autoload-ensure-default-file.
2013-04-27 09:32:53 -04:00
Stefan Monnier
140ef50c04 * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Disable undo.
Fixes: debbugs:14274
2013-04-26 10:47:07 -04:00
Glenn Morris
af80458d7e Merge from emacs-24; up to 2012-12-27T08:21:08Z!rgm@gnu.org 2013-04-26 00:34:54 -07:00
Glenn Morris
e6ea1f6c9b list-load-path-shadows simplification
* lisp/emacs-lisp/shadow.el (list-load-path-shadows):
No longer necessary to check for duplicate simple.el, since
2012-07-07 change to init_lread to not include installation lisp
directories in load-path when running uninstalled.

Fixes: debbugs:14270
2013-04-26 00:25:45 -07:00
Stefan Monnier
ced3fc5d2f * lisp/progmodes/octave-mod.el (octave-smie-forward-token): Only emit
semi-colons if the line is not otherwise empty.
* lisp/emacs-lisp/smie.el (smie-indent--hanging-p): Don't burp at EOB.
(smie-indent-keyword): Improve the check to ensure that the next
comment is really on the same line.
(smie-indent-comment): Don't align with a subsequent closer (or eob).

Fixes: debbugs:14218
2013-04-24 23:25:34 -04:00
Erik Charlebois
70203c2ec1 * lisp/emacs-lisp/syntax.el (syntax-propertize-multiline):
Use `syntax-multiline' text property consistently instead of
`font-lock-multiline'..

Fixes: debbugs:14237
2013-04-22 10:11:37 -04:00
Glenn Morris
a6d63d97cd No longer include timestamp in header of .elc files
This removes needless differences between files compiled at different
times or by different people, or from sources in different locations.
Ref: http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00187.html

* lisp/emacs-lisp/bytecomp.el (byte-compile-insert-header):
No longer include timestamp etc information.

* etc/NEWS: Mention this.
2013-04-20 12:48:04 -07:00
Stefan Monnier
bcd7a0a4c5 Use add/remove-function to manipulate process-filters.
* lisp/emacs-lisp/nadvice.el (advice--where-alist): Add :override.
(remove-function): Autoload.

* lisp/comint.el (comint-redirect-original-filter-function): Remove.
(comint-redirect-cleanup, comint-redirect-send-command-to-process):
* lisp/vc/vc-cvs.el (vc-cvs-annotate-process-filter,vc-cvs-annotate-command):
* lisp/progmodes/octave-inf.el (inferior-octave-send-list-and-digest):
* lisp/progmodes/prolog.el (prolog-consult-compile):
* lisp/progmodes/gdb-mi.el (gdb, gdb--check-interpreter):
Use add/remove-function instead.
* lisp/progmodes/gud.el (gud-tooltip-original-filter): Remove.
(gud-tooltip-process-output, gud-tooltip-tips):
Use add/remove-function instead.
* lisp/progmodes/xscheme.el (xscheme-previous-process-state): Remove.
(scheme-interaction-mode, exit-scheme-interaction-mode):
Use add/remove-function instead.

* lisp/vc/vc-dispatcher.el: Use lexical-binding.
(vc--process-sentinel): Rename from vc-process-sentinel.
Change last arg to be the code to run.  Don't use vc-previous-sentinel
and vc-sentinel-commands any more.
(vc-exec-after): Allow code to be a function.  Use add/remove-function.
(compilation-error-regexp-alist, view-old-buffer-read-only): Declare.
2013-04-20 12:24:04 -04:00
Stefan Monnier
d36ed1c8e7 * lisp/subr.el (with-wrapper-hook): Declare obsolete.
* lisp/simple.el (filter-buffer-substring-function): New hook.
(filter-buffer-substring): Use it.
(filter-buffer-substring-functions): Mark obsolete.
* lisp/minibuffer.el (completion-in-region-function): New hook.
(completion-in-region): Use it.
(completion-in-region-functions): Mark obsolete.
* lisp/mail/mailabbrev.el (mail-abbrevs-setup): Use abbrev-expand-function.
* lisp/abbrev.el (abbrev-expand-function): New hook.
(expand-abbrev): Use it.
(abbrev-expand-functions): Mark obsolete.
* lisp/emacs-lisp/nadvice.el (advice--where-alist): Add :filter-args
and :filter-return.
* lisp/org/org-agenda.el (org-agenda-mode):
* lisp/org/org-indent.el (org-indent-mode): Use the `local' arg of
add-hook/remove-hook.
2013-04-17 20:12:33 -04:00
Stefan Monnier
dd8791e96f * lisp/emacs-lisp/lisp.el (lisp-completion-at-point): Provide specialized
completion tables when completing error conditions and
`declare' arguments.
(lisp-complete-symbol, field-complete): Mark as obsolete.
(check-parens): Unmatched parens are user errors.
* lisp/minibuffer.el (minibuffer-completion-contents): Mark as obsolete.
2013-04-17 16:52:02 -04:00
Stefan Monnier
36c0a3016e * lisp/emacs-lisp/nadvice.el (add-function): Default simple vars to their
global bindings.
2013-04-15 22:10:16 -04:00
Stefan Monnier
dabefae5be * lisp/emacs-lisp/nadvice.el: Properly test names when adding advice.
(advice--member-p): New arg `name'.
(advice--add-function, advice-member-p): Use it.

Fixes: debbugs:14202
2013-04-15 11:06:51 -04:00
Stefan Monnier
830aed4d5e * lisp/emacs-lisp/trace.el (trace-values): New function. 2013-04-13 21:02:29 -04:00
Stefan Monnier
78ce603d02 * src/keyboard.c (timer_start_idle): Call internal-timer-start-idle instead
of marking the idle timers directly.
* lisp/emacs-lisp/timer.el (timer--check): New function.
(timer--time, timer-set-function, timer-event-handler): Use it.
(timer-set-idle-time): Simplify.
(timer--activate): CSE.
(timer-event-handler): Give more info in error message.
(internal-timer-start-idle): New function, moved from C.
2013-04-10 09:31:35 -04:00
Stefan Monnier
6fcdab68b3 * lisp/emacs-lisp/edebug.el (edebug-mode): Fix typo.
Fixes: debbugs:14144
2013-04-07 22:21:59 -04:00
Stefan Monnier
8acdeb7104 * lisp/emacs-lisp/timer.el (timer-event-handler): Don't retrigger a canceled
timer.

Fixes: debbugs:14156
2013-04-07 22:08:45 -04:00
Stefan Monnier
285c8184af * emacs-lisp/ert.el: Fix paren typo. 2013-04-07 16:42:11 -04:00
Nic Ferrier
e3e7b504b2 * lisp/emacs-lisp/ert.el (should, should-not, should-error): Add edebug
declaration.
2013-04-07 14:56:28 -04:00
Stefan Monnier
134abf1fae * lisp/emacs-lisp/package.el (package-compute-transaction): Fix last fix.
Suggested by Donald Curtis <dcurtis@coe.edu>.

Fixes: debbugs:14082
2013-04-05 14:46:59 -04:00
Stefan Monnier
b208ebc6e7 * lisp/emacs-lisp/package.el (package-compute-transaction): Fix ordering
when a package is required several times.

Fixes: debbugs:14082
2013-04-03 22:46:38 -04:00
Yann Hodique
397703b4ab * lisp/emacs-lisp/package.el (package-pinned-packages): New var.
(package--add-to-archive-contents): Obey it.

Fixes: debbugs:14118
2013-04-03 21:51:33 -04:00
Paul Eggert
b9edfa5c63 Spelling fixes. 2013-04-01 00:58:04 -07:00
Roland Winkler
a77e2924c9 emacs-lisp/crm.el (completing-read-multiple): Doc fix. 2013-03-31 10:19:19 -05:00
Stefan Monnier
17c781d1e6 * lisp/emacs-lisp/edebug.el (edebug-mode): Make it a minor mode.
(edebug--recursive-edit): Use it.
(edebug-kill-buffer): Don't let-bind kill-buffer-hook.
(edebug-temp-display-freq-count): Don't let-bind buffer-read-only.
2013-03-28 12:33:06 -04:00
Leo Liu
7b0e2f853f * lisp/files.el (kill-buffer-hook): Doc fix.
* lisp/emacs-lisp/edebug.el (edebug-mode): Make sure edebug-kill-buffer
is the last entry in kill-buffer-hook.

* lisp/nxml/rng-valid.el (rng-validate-while-idle)
(rng-validate-quick-while-idle): Guard against deleted buffer.

Fixes: debbugs:13999
2013-03-24 14:42:25 +08:00
Dmitry Gutov
bde73d2720 * lisp/emacs-lisp/lisp-mode.el (emacs-lisp-docstring-fill-column): Make
it safe-local.
2013-03-24 02:04:40 +04:00
David Engster
b886708cc6 Merge with CEDET upstream (rev. 8499). 2013-03-22 20:31:15 +01:00
David Engster
e8cc7880c3 Merge with CEDET upstream (rev. 8499).
lisp/

* eieio/eieio-datadebug.el (data-debug/eieio-insert-slots):
  Inhibit read only while inserting objects.

lisp/cedet/

* semantic.el (navigate-menu): Yank Tag :enable. Make sure
`senator-tag-ring' is bound.
(semantic-parse-region-default): Stop reversing the output of
parse-whole-stream.
(semantic-repeat-parse-whole-stream): Append returned tags
differently, so they come out in the right order.

* semantic/sb.el (semantic-sb-filter-tags-of-class): New option.
(semantic-sb-fetch-tag-table): Filter tags being bucketed to exclude
tags belonging to above filtered classes.

* semantic/find.el (semantic-filter-tags-by-class): New function.

* semantic/tag-ls.el (semantic-tag-similar-p-default): Add
short-circuit in case tag1 and 2 are identical.

* semantic/analyze/fcn.el
(semantic-analyze-dereference-metatype-stack): Use
`semantic-tag-similar-p' instead of 'eq' when comparing two tags
during metatype evaluation in case they are the same, but not the same
node. (Tweaked patch from Tomasz Gajewski) (Tiny change)

* semantic/db-find.el (semanticdb-partial-synchronize): Fix require to
semantic/db-typecache to be correct.
(semanticdb-find-tags-external-children-of-type): Make this a brutish
search by default.

* semantic/sort.el (semantic-tag-external-member-children-default):
When calling `semanticdb-find-tags-external-children-of-type', pass in
the input tag as the place to start searching for externally defined
methods.

* semantic/db-file.el (semanticdb-default-save-directory): Doc
fix: Add ref to default value.

* semantic/complete.el (semantic-complete-post-command-hook): When
detecting if cursor is outside completion area, do so if cursor moves
before start of overlay, or the original starting location of the
overlay (i.e., if user deletes past beginning of the overlay region).
(semantic-complete-inline-tag-engine): Initialize original start of
`semantic-complete-inline-overlay'.

* semantic/bovine/c.el (semantic-c-describe-environment): Update some
section titles.  Test semanticdb table before printing it.
(semantic-c-reset-preprocessor-symbol-map): Update
`semantic-lex-spp-macro-symbol-obarray' outside the loop over all the
files contributing to its value.
(semantic-c-describe-environment): If there is an EDE project but no
spp symbols from it, say so.

* srecode/args.el (srecode-semantic-handle-:project): New argument
handler. Provide variable values if not in an EDE project.

* srecode/srt-mode.el (srecode-template-mode): Fix typo on srecode
name.

* srecode/cpp.el (srecode-semantic-handle-:c): Replace all characters
in FILENAME_SYMBOL that aren't valid CPP symbol chars.

* srecode/map.el (srecode-map-validate-file-for-mode): Force semantic
to load if it is not active in the template being added to the map.

* srecode/srt.el: Add local variables for setting the autoload file
name.
(srecode-semantic-handle-:srt): New autoload cookie

* ede.el (ede-apply-preprocessor-map): Apply map to
`semantic-lex-spp-project-macro-symbol-obarray' instead of the system
one. Add require for semantic.

* ede/proj-elisp.el (ede-update-version-in-source): In case a file has
both a version variable and a Version: comment, always use
`call-next-method'.

* ede/cpp-root.el (ede-set-project-variables): Deleted.
`ede-preprocessor-map' does the job this function was attempting to do
with :spp-table.
(ede-preprocessor-map): Update file tests to provide better messages.
Do not try to get symbols from a file that is the file in the current
buffer.

* ede/base.el (ede-project-placeholder): Add more documentation to
:file slot.
(ede-load-cache): Use `insert-file-contents' instead of
`find-file-noselect' in order to avoid activating other tools.

* semantic/bovine/c.el (semantic-get-local-variables): Also add a new
variable 'this' if we are in an inline member function.  For detecting
this, we check overlays at point if there is a class spanning the
current function.  Also, the variable 'this' has to be a pointer.

* semantic/bovine/gcc.el (semantic-gcc-setup): Fail gracefully when
querying g++ for defines returns an error.

* srecode/srt-mode.el:
* srecode/compile.el:
* semantic/elp.el:
* semantic/db-el.el:
* semantic/complete.el:
* ede.el:
* cogre.el:
* srecode/table.el:
* srecode/mode.el:
* srecode/insert.el:
* srecode/compile.el:
* semantic/decorate/include.el:
* semantic/db.el:
* semantic/adebug.el:
* ede/auto.el:
* srecode/dictionary.el:
* semantic/ede-grammar.el:
* semantic/db.el:
* semantic/db-find.el:
* semantic/db-file.el:
* semantic/complete.el:
* semantic/bovine/c.el:
* semantic/analyze.el:
* ede/util.el:
* ede/proj.el:
* ede/proj-elisp.el:
* ede/pconf.el:
* ede/locate.el:
* ede.el: Adapt to EIEIO namespace cleanup: Rename `object-name' to
`eieio-object-name', `object-set-name-string' to
`eieio-object-set-name-string', `object-class' to
`eieio-object-class', `class-parent' to `eieio-class-parent',
`class-parents' to `eieio-class-parents', `class-children' to
`eieio-class-children', `object-name-string' to
`eieio-object-name-string', `object-class-fast' to
`eieio--object-class'. Also replace direct access with new accessor
functions.

* ede/cpp-root.el (ede-project-autoload, initialize-instance): Fix EDE
file symbol to match rename.  Fix ede-cpp-root symbol to include
-project in name.

* cedet-files.el (cedet-files-list-recursively): New function.
Recursively find files whose names are matching to given regex

* ede.el (ede-current-project): Rewrite to avoid imperative style.

* ede/files.el (ede-find-file): Simplify code.

* ede/base.el (ede-normalize-file/directory): Add function to
normalize :file or :directory slots if they are missing.

* ede/cpp-root.el (ede-cpp-root-project): Add compile-command slot.
(project-compile-project): Compiles project using value specified in
:compule-command slot or in compile-command local variable.  Value of
slot or local variable could be string or function that receives
project and should return string that will be invoked as command.
(project-compile-target): Invokes compilation of whole project

* ede/files.el (ede-find-project-root): New function to find root of
project that contains specific file.
(ede-files-find-existing): New function which checks presence of given
directory in the list of registered projects.

etc/

* srecode/ede-autoconf.srt: Change Copyright to FSF.
(ede-empty): Change AC_INIT to use PROJECT_NAME, and PROJECT_VERSION.

* srecode/ede-make.srt (ede-empty): Add a dependency on :project.  Add
header comment specifying the project's relative path.

* srecode/c.srt (header_guard): Upcase the filename symbol.

* srecode/java.srt (empty-main): New.
(class-tag): Decapitalize class.
2013-03-21 23:11:03 +01:00
Leo Liu
33cef733e0 Make sure eldoc can be turned off properly.
* emacs-lisp/eldoc.el (eldoc-schedule-timer): Conditionalize on
eldoc-mode.
(eldoc-display-message-p): Revert last change.
(eldoc-display-message-no-interference-p)
(eldoc-print-current-symbol-info): Tweak.
2013-03-18 17:16:15 +08:00
Leo Liu
69489f1dd6 * simple.el (eval-expression-minibuffer-setup-hook): New hook.
(eval-expression): Run it.

Extend eldoc to display info in the mode-line. 
* emacs-lisp/eldoc.el (eldoc-post-insert-mode): New minor mode.
(eldoc-mode-line-string): New variable.
(eldoc-minibuffer-message): New function.
(eldoc-message-function): New variable.
(eldoc-message): Use it.
(eldoc-display-message-p)
(eldoc-display-message-no-interference-p): Support
eldoc-post-insert-mode.

Fixes: debbugs:13978
2013-03-17 23:00:37 +08:00
Roland Winkler
9c44569ea2 completing-read-multiple: Ignore empty strings in the list of return values 2013-03-17 05:33:57 -05:00
Stefan Monnier
78be8b6465 Merge from emacs-24 2013-03-16 18:08:22 -04:00
Stefan Monnier
efe8bf5d9b * lisp/emacs-lisp/smie.el (smie-auto-fill): Don't inf-loop if there's no
token before point.

Fixes: debbugs:13942
2013-03-14 10:48:03 -04:00
Stefan Monnier
e7f7cb1aa3 * lisp/emacs-lisp/byte-run.el (defun-declarations-alist): Don't use
backquotes for `obsolete'.

Fixes: debbugs:13929
2013-03-12 22:19:31 -04:00
Stefan Monnier
17f323276b * lisp/emacs-lisp/byte-run.el (dont-compile): Declare obsolete.
(with-no-warnings): Use `declare'.
2013-03-10 17:40:55 -04:00
Bastien Guerry
8725b74640 Fix typo in comment (bug#13851).
Thanks to Reuben Thomas for reporting this.
2013-03-02 08:19:10 +01:00
Stefan Monnier
9f70f91e94 * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Tweak logic.
(easy-mmode-set-keymap-parents): Use make-composed-keymap.
2013-02-25 20:50:45 -05:00