1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-05-18 19:06:18 -07:00
Commit graph

22981 commits

Author SHA1 Message Date
Glenn Morris
f78ee6afc0 Merge from emacs-24; up to 2012-11-09T14:45:15Z!dmantipov@yandex.ru 2012-11-12 18:25:59 -08:00
Stefan Monnier
f8705f6e31 * lisp/emacs-lisp/gv.el (gv-define-simple-setter): One more fix.
Fixes: debbugs:12871
2012-11-12 16:31:15 -05:00
Stefan Monnier
231d8498eb * lisp/emacs-lisp/nadvice.el: New package.
* lisp/subr.el (special-form-p): New function.
* lisp/emacs-lisp/elp.el: Use lexical-binding and advice-add.
(elp-all-instrumented-list): Remove var.
(elp-not-profilable): Remove elp-wrapper.
(elp-profilable-p): Use autoloadp and special-form-p.
(elp--advice-name): New const.
(elp-instrument-function): Use advice-add.
(elp--instrumented-p): New predicate.
(elp-restore-function): Use advice-remove.
(elp-restore-all, elp-reset-all): Use mapatoms.
(elp-set-master): Use elp--instrumented-p.
(elp--make-wrapper): Rename from elp-wrapper, return a function
suitable for advice-add.  Use cl-inf.
(elp-results): Use mapatoms+elp--instrumented-p.
* lisp/emacs-lisp/debug.el: Use lexical-binding and advice-add.
(debug-function-list): Remove var.
(debug): Rename arg, and then let-bind it explicitly inside.
(debugger-setup-buffer): Rename arg.
(debugger-setup-buffer): Adjust counts to new debug-on-entry setup.
(debugger-frame-number): Adjust to new debug-on-entry setup.
(debug--implement-debug-on-entry): Rename from
implement-debug-on-entry, add argument.
(debugger-special-form-p): Remove, use special-form-p instead.
(debug-on-entry): Use advice-add.
(debug--function-list): New function.
(cancel-debug-on-entry): Use it, along with advice-remove.
(debug-arglist, debug-convert-byte-code, debug-on-entry-1): Remove.
(debugger-list-functions): Use debug--function-list instead of
debug-function-list.
* lisp/emacs-lisp/advice.el (ad-save-real-definition): Remove, unused.
(ad-special-form-p): Remove, use special-form-p instead.
(ad-set-advice-info): Use add-function and remove-function.
(ad--defalias-fset): Adjust accordingly.
* test/automated/advice-tests.el: New tests.
2012-11-12 15:43:43 -05:00
Wolfgang Jenkner
9db94175de lisp/ansi-color.el (ansi-color-apply-sequence): Implement SGR codes 39 and 49.
This fixes bug#12792.  Also, treat unimplemented parameters as 0,
thereby restoring the behavior of revisions prior to 2012-08-15T03:33:55Z!monnier@iro.umontreal.ca.
2012-11-12 18:12:33 +01:00
Fabián Ezequiel Gallina
2e6625b527 Fix end-of-defun misbehavior.
* progmodes/python.el (python-nav-beginning-of-defun): Rename from
python-beginning-of-defun-function.  Handle nested defuns
correctly.
(python-nav-end-of-defun): Rename from
python-end-of-defun-function.  Ensure forward movement.
(python-info-current-defun): Reimplemented to work as intended
with new fixed python-nav-{end,beginning}-of-defun.  Stop scanning
parent defuns as soon as possible.
2012-11-12 10:26:50 -03:00
Glenn Morris
24c38527d1 Document flymake fringe bitmaps
* doc/misc/flymake.texi (Customizable variables)
(Highlighting erroneous lines): Mention flymake-error-bitmap,
flymake-warning-bitmap, and flymake-fringe-indicator-position.

* lisp/progmodes/flymake.el (flymake-error-bitmap)
(flymake-warning-bitmap, flymake-fringe-indicator-position): Doc fixes.
(flymake-error-bitmap, flymake-warning-bitmap): Fix :types.

* etc/NEWS: Related markup.
2012-11-12 00:42:27 -08:00
Dmitry Gutov
d1e1e53dec * lisp/progmodes/ruby-mode.el (ruby-move-to-block): When moving
backward, always stop at indentation.  Reverts the change from
2012-08-12T22:06:56Z!monnier@iro.umontreal.ca.

Fixes: debbugs:12851
2012-11-12 05:11:06 +04:00
Glenn Morris
a1d3e07e28 Add ibuffer-filter-by-derived-mode to ibuffer menu and doc
* lisp/ibuffer.el (ibuffer-mode-map, ibuffer-mode):
Add ibuffer-filter-by-derived-mode.

* etc/NEWS: Related markup.
2012-11-10 18:22:26 -08:00
Glenn Morris
84acf32850 Fix ibuffer menu typo
* lisp/ibuffer.el (ibuffer-mode-map): Don't have two menu items with
the same name shadowing each other.
2012-11-10 18:18:14 -08:00
Glenn Morris
38785e75a2 * lisp/window.el (with-temp-buffer-window): Doc tweak. 2012-11-10 17:47:56 -08:00
Glenn Morris
57fc0fee5f Document debugger-bury-or-kill
* doc/lispref/debugging.texi (Using Debugger): Mention debugger-bury-or-kill.

* lisp/emacs-lisp/debug.el (debugger-bury-or-kill): Doc tweak.

* etc/NEWS: Related edit.
2012-11-10 17:16:25 -08:00
Glenn Morris
6ba6a3e51f Fix more custom :versions
* lisp/help.el (temp-buffer-max-height):
* lisp/window.el (fit-frame-to-buffer, fit-frame-to-buffer-bottom-margin):
Fix :version.
2012-11-10 16:43:54 -08:00
Glenn Morris
68146aa5ab * lisp/emacs-lisp/debug.el (debugger-bury-or-kill): Fix :version. 2012-11-10 16:40:37 -08:00
Glenn Morris
714cebd1b1 Remove report-emacs-bug-query-existing-bugs (use debbugs from GNU ELPA instead)
* lisp/mail/emacsbug.el (report-emacs-bug-tracker-url)
(report-emacs-bug-bug-alist, report-emacs-bug-choice-widget)
(report-emacs-bug-create-existing-bugs-buffer)
(report-emacs-bug-parse-query-results)
(report-emacs-bug-query-existing-bugs): Remove.

Fixes: debbugs:7449
2012-11-10 15:19:43 -08:00
Glenn Morris
6baf66d53b Merge from emacs-24; up to 2012-11-08T14:54:03Z!monnier@iro.umontreal.ca 2012-11-10 15:13:33 -08:00
Leo Liu
e4e4688922 Backport: * lisp/ido.el (ido-set-matches-1): Fix split-string args to
avoid performance issue.

Fixes: debbugs:12796
2012-11-10 22:55:09 +08:00
Glenn Morris
bf67dafaf5 Make term-default-fg-color, term-default-bg-color obsolete
* lisp/term.el (term-default-fg-color, term-default-bg-color):
Make obsolete, rather than just saying "deprecated" in the doc.
2012-11-09 20:48:44 -05:00
Glenn Morris
19e0987902 Face names should not end in -face (term-face)
* lisp/term.el (term): Rename from `term-face'.
(term-current-face, ansi-term-color-vector)
(term-default-fg-color, term-default-bg-color, term-ansi-reset):
Update all users.

* doc/emacs/misc.texi (Terminal emulator): Rename `term-face' to `term'.

* etc/NEWS: Related edit.
2012-11-09 20:40:48 -05:00
Leo Liu
05a859c1bd * lisp/ido.el (ido-set-matches-1): Improve flex matching performance by
removing backtracking in the regexp (suggested by Stefan).

Fixes: debbugs:12796
2012-11-10 09:28:22 +08:00
Stefan Monnier
32e5c58ca9 Provide new `defalias-fset-function' symbol property.
* src/lisp.h (AUTOLOADP): New macro.
* src/eval.c (Fautoload): Don't attach to loadhist, call Fdefalias instead.
* src/data.c (Ffset): Remove special ad-advice-info handling.
(Fdefalias): Handle autoload definitions and new Qdefalias_fset_function.
(Fsubr_arity): CSE.
(Finteractive_form): Simplify.
(Fquo): Don't insist on having at least 2 arguments.
(Qdefalias_fset_function): New var.
* lisp/emacs-lisp/advice.el (ad-set-advice-info): Set defalias-fset-function.
(ad--defalias-fset): New function.
(ad-safe-fset): Remove.
(ad-make-freeze-definition): Use cl-letf*.
2012-11-09 17:20:47 -05:00
Stefan Monnier
da03ef8a9d * lisp/subr.el (dolist): Don't bind VAR in RESULT. 2012-11-09 15:45:10 -05:00
Stefan Monnier
6858633a9c * lisp/emacs-lisp/advice.el: Miscellaneous cleanup. Use lexical-binding.
(fset, documentation): Don't save real def since we don't advise.
(ad-do-advised-functions): Remove problematic `result-form'.
(ad-safe-fset): `ad-real-fset' => `fset'.
(ad-read-advised-function): Don't assume that ad-do-advised-functions
uses CL's dolist internally.
(ad-arglist): Remove unused arg `name'.
(ad-docstring, ad-make-advised-docstring):
`ad-real-documentation' => `documentation'.
(warning-suppress-types): Declare.
(ad-set-arguments): Simple CSE.
(ad-recover-normality): Sanity check.
2012-11-09 15:41:03 -05:00
Stefan Monnier
f5925cd9f5 * lisp/emacs-lisp/bytecomp.el (byte-compile-out-toplevel): Don't turn
(funcall '(lambda ..) ..) into ((lambda ..) ..).
2012-11-09 10:56:51 -05:00
Jan Djärv
d743088dc2 * server.el (server-create-window-system-frame): Improved comment. 2012-11-09 07:28:27 +01:00
Vincent Belaïche
93a66b3a3d * ses.el: Use hash map for getting named cells coordinates.
symbol to coordinate mapping is made by symbol property
 `ses-cell'. This means that the same mapping is done for all SES
 sheets. That is good enough for cells with standard A1 names, but
 not for named cell. So a hash map is added for those
 latter.
 (defconst ses-localvars): added local variable ses--named-cell-hashmap
 (ses-sym-rowcol): Use hashmap for named cell.
 (ses-is-cell-sym-p): New defun.
 (ses-decode-cell-symbol): New defun.
 (ses-create-cell-variable): Add cell to hashmap when name is not A1-like.
 (ses-rename-cell): Check that cell new name is not already in
 spreadsheet with the use of ses-is-cell-sym-p
 (ses-rename-cell): Use hash map for named cells, but accept also
 renaming back to A1-like.
2012-11-09 06:48:05 +01:00
Stefan Monnier
57618ecf33 New property dynamic-docstring-function for docstrings.
* src/doc.c (Fdocumentation): Handle new property
dynamic-docstring-function to replace the old ad-advice-info.
* lisp/emacs-lisp/advice.el: Use new dynamic docstrings.
(ad-make-advised-definition-docstring, ad-advised-definition-p):
Use dynamic-docstring-function instead of ad-advice-info.
(ad--make-advised-docstring): New function extracted from
ad-make-advised-docstring.
(ad-make-advised-docstring): Use it.
* lisp/progmodes/sql.el (sql--make-help-docstring): New function, extracted
from sql-help.
(sql-help): Use it with dynamic-docstring-function.
2012-11-08 23:10:16 -05:00
Stefan Monnier
67dd8ad119 * lisp/env.el (env--substitute-vars-regexp): Don't use rx (for bootstrap). 2012-11-08 20:31:54 -05:00
Stefan Monnier
d41706aa7a * lisp/files.el (hack-one-local-variable--obsolete): New function.
(hack-one-local-variable): Use it for obsolete settings.
2012-11-08 14:50:08 -05:00
Stefan Monnier
85e5541248 * lisp/subr.el (locate-user-emacs-file): If both old and new name exist, use
the new name.
2012-11-08 14:45:58 -05:00
Stefan Monnier
be883b34f2 * lisp/progmodes/js.el: Prefer advice to cl-letf's sneaky rebinding.
(c-forward-sws, c-backward-sws, c-beginning-of-macro): Advise.
(js--filling-paragraph): New var.
(js-c-fill-paragraph): Bind it instead of letf-ing the functions.
2012-11-08 14:44:52 -05:00
Jan Djärv
531bdce69d * server.el (server-create-window-system-frame): Handle Nextstep
specially.

Fixes: debbugs:12780
2012-11-08 20:25:39 +01:00
Glenn Morris
fedb154e30 Make report-emacs-bug-query-existing-bugs obsolete (bug#7449)
* lisp/mail/emacsbug.el (report-emacs-bug-query-existing-bugs):
Unautoload, and make obsolete.
2012-11-08 13:35:08 -05:00
Chong Yidong
9d9e48d904 Rewrite and rename diff-delete-trailing-whitespace.
* lisp/vc/diff-mode.el (diff-delete-trailing-whitespace): Rewrite, and
rename from diff-remove-trailing-whitespace (Bug#12831).

* files.texi (Diff Mode): Doc fixes for
diff-delete-trailing-whitespace.
2012-11-09 01:31:53 +08:00
Julien Danjou
cabc040aea Add Rakefile in auto-mode-list for ruby-mode
* progmodes/ruby-mode.el (auto-mode-alist): Add Rakefile in
  `auto-mode-alist' (Bug#12835).
2012-11-08 17:37:34 +01:00
Stefan Monnier
79b3e37656 * lisp/progmodes/perl-mode.el (perl-prettify-symbols): New defcustom.
(perl--prettify-symbols-alist): New const.
(perl--font-lock-compose-symbol, perl--font-lock-symbols-keywords): New funs.
(perl-font-lock-keywords-2): Use them.
(perl-electric-noindent-p): New function.
(perl-mode): Use it to set up electric-indent-mode.
(perl-electric-terminator, perl-indent-command): Mark obsolete.
(perl-mode-map): Remove bindings for them.
(perl-imenu-generic-expression, perl-outline-level):
Match functions&packages in column>0.
2012-11-08 10:35:32 -05:00
Stefan Monnier
3b11e6ac60 * lisp/env.el (env--substitute-vars-regexp): New const.
(substitute-env-vars): Use it.  Add `only-defined' arg.
* lisp/net/tramp.el (tramp-replace-environment-variables): Use it.
2012-11-08 10:10:08 -05:00
Stefan Monnier
32170f7ff2 * lisp/emacs-lisp/advice.el: Require `cl-lib' at run-time to fix
miscompilation of trace.el.
2012-11-08 09:36:47 -05:00
Stefan Monnier
784c1a7b3a * lisp/emacs-lisp/gv.el (gv-ref, gv-deref): New function and macro. 2012-11-08 09:21:21 -05:00
Stefan Monnier
d14bb752ea * lisp/emacs-lisp/gv.el (gv-ref, gv-deref): New function and macro. 2012-11-08 08:34:06 -05:00
Glenn Morris
26f596760d Document diff-remove-trailing-whitespace
* doc/emacs/files.texi (Diff Mode): Trailing whitespace updates.

* lisp/vc/diff-mode.el (diff-remove-trailing-whitespace): Doc fix.

* etc/NEWS: Related markup.
2012-11-08 00:14:23 -08:00
Stefan Monnier
4162672227 * lisp/emacs-lisp/gv.el (gv-define-simple-setter): Fix last change.
Fixes: debbugs:12812
2012-11-07 20:24:14 -05:00
Chong Yidong
7d806bfec9 Fix and docfix for the minibuffer-eldef-shorten-default feature.
* lisp/minibuf-eldef.el (minibuffer-eldef-shorten-default): Convert to
a defcustom with an appropriate :set function.
(minibuffer-default--in-prompt-regexps): New function.

* doc/emacs/mini.texi (Basic Minibuffer): New node.  Document
minibuffer-electric-default-mode.

* doc/emacs/display.texi (Visual Line Mode): Fix index entry.
2012-11-08 04:43:38 +08:00
Michael Albinus
499a0f7a98 * notifications.el (notifications-get-server-information-method):
New defconst.
(notifications-get-capabilities): Fix docstring.
(notifications-get-server-information): New defun.
2012-11-07 17:55:39 +01:00
Glenn Morris
031b2ea7f5 More cl-lib and gv doc updates
* lisp/emacs-lisp/cl.el (define-setf-expander, defsetf)
(define-modify-macro): Doc fixes.

* doc/misc/cl.texi (Obsolete Setf Customization):
Give defsetf gv.el replacements.

* etc/NEWS: Related edit.
2012-11-07 00:56:16 -08:00
Glenn Morris
2ee1d59f5b Small doc updates for generalized variables
* lisp/emacs-lisp/gv.el (gv-letplace): Fix doc typo.
(gv-define-simple-setter): Update doc of `fix-return'.

* doc/lispref/variables.texi (Adding Generalized Variables):
Update description of FIX-RETURN expansion.

* doc/misc/cl.texi (Obsolete Setf Customization):
Revert defsetf example to the more correct let rather than prog1.
2012-11-06 20:37:07 -08:00
Stefan Monnier
b715ed4447 * lisp/emacs-lisp/gv.el (gv-define-simple-setter): Don't evaluate `val'
twice when `fix-return' is set.

Fixes: debbugs:12813
2012-11-06 22:39:33 -05:00
Stefan Monnier
d57c286eea * lisp/emacs-lisp/cl.el (defsetf): Pass the third arg to
gv-define-simple-setter.

Fixes: debbugs:12812
2012-11-06 22:14:27 -05:00
Agustín Martín
056cb3a1fc ispell.el (ispell-region): Do not prefix sent string by comment in autoconf mode
This commit changes some of the `in-comment' ocurrences to more specific
 `add-comment', set only if comment prefix is to be added.
    
 When in comment, old code prefixed string by comment string to let ispell
 know this is part of a comment string.
    
 This is only supported in some modes. In particular, this is not supported in
 autoconf mode where adding the comment string messes everything up because
 ispell tries to spellcheck the `dnl' string header causing misalignments in
 some cases (debbugs.gnu.org: #12768).
2012-11-06 17:33:56 +01:00
Agustín Martín
b159a1fd9b textmodes/ispell.el: Experimental support for support debugging.
* (ispell-create-debug-buffer): Create a `ispell-debug-buffer' debug
   buffer for ispell.
 * (ispell-print-if-debug): New function to print stuff to 
   `ispell-debug-buffer' if debugging is enabled.
 * (ispell-region, ispell-process-line): Use `ispell-print-if-debug' to
   show some debugging info.
 * (ispell-buffer-with-debug): New function that creates a debugging
   buffer and calls `ispell-buffer' with debugging enabled.  This is also 
   en example of a possible way to use this system.
2012-11-06 17:22:09 +01:00
Agustín Martín
f0704a9a28 ispell.el (ispell-region): Standard re-indent for better readability. 2012-11-06 17:04:42 +01:00