1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-22 16:01:04 -08:00
Commit graph

61568 commits

Author SHA1 Message Date
Leo Liu
d4e355b45d * emacs-lisp/cl-macs.el (cl-macrolet): Simplify last change. 2014-06-06 07:08:59 +08:00
Katsumi Yamaoka
dd97cafcf2 lisp/gnus/gnus-art.el (gnus-mime-buttonize-attachments-in-header): Improve criterion that finds parts to display 2014-06-05 22:43:36 +00:00
Leo Liu
14781f7f44 * emacs-lisp/cl-macs.el (cl-macrolet): Avoid excessive progn's. 2014-06-06 01:08:18 +08:00
Michal Nazarewicz
03d7d160c3 tildify.el: Rewrite `tildify-region' and co., add foreach function.
* lisp/textmodes/tildify.el (tildify-foreach-region-outside-env): New
function which calls a callback on portions of the buffer that are
outside of ignored environments.
(tildify-build-regexp): Remove function since it is now
incorporated in `tildify-foreach-region-outside-env' where it is
optimised and simplified by the use of `mapconcat'.
(tildify-tildify): Return number of substitutions made so that…
(tildify-count): …can be removed.
(tildify-find-env): Accept a new PAIRS argument which was
previously looked up in `tildify-ignored-environments-alist' each
time the function was called.  With this change, the lookup is
performed only once in `tildify-foreach-region-outside-env'.
(tildify-region): Greatly simplify the function since now most of
the work is done by `tildify-foreach-region-outside-env'.
(tildify-mode-alist): Simplify slightly by avoiding if and setq
and instead using or.

* tests/automated/tildify-tests.el (tildify-test-find-env-end-re-bug)
(tildify-test-find-env-group-index-bug): Update to support new
signature of the `tildify-foreach-region-outside-env' function.
Namely, it now takes pairs as an argument instead of looking it up in
`tildify-ignored-environments-alist'.
2014-06-05 16:42:07 +02:00
Michal Nazarewicz
df344ab435 tildify.el: Optimise environments regexes
* lisp/textmodes/tildify.el (tildify-ignored-environments-alist):
Each time beginning of an environment to ignore is found,
`tildify-find-env' needs to identify regexp for the ending
of the environment.  This is done by trying all the opening
regexes on matched text in a loop, so to speed that up, this
loop should have fewer things to match, which can be done by
using alternatives in the opening regexes.

Coincidentally, this should make matching of the opening
regexp faster as well thanks to the use of `regexp-opt' and
having common prefix pulled from many regexes.
2014-06-05 16:41:32 +02:00
Michal Nazarewicz
eb54c73a9d tildify.el: Better support for XML
* lisp/textmodes/tildify.el  (tildify-string-alist)
(tildify-ignored-environments-alist): Add `nxml-mode' to the list of
supported modes since `xml-mode' is no longer a thing but just an
alias to the former.  Also include comments and insides of tags in
`tildify-ignored-environments-alist' for XML modes.  Finally, since
XML does not define “ ”[1], use a numeric reference for
a no-break space (namely “ ”)

[1] XML specification defines only a handful of predefined entities.
    The list is at <http://www.w3.org/TR/REC-xml/#sec-predefined-ent>
    and includes only &lt;, &gt;, &amp;, &apos; and &quot; (meaning <,
    >, &, ' and " respectively).  This is in contrast to HTML and even
    XHTML which defined a whole bunch of entities including “&nbsp;”.

* automated/tildify-tests.el (tildify-test--example-html): Add support
for generating XML code, so that…
(tildify-test-xml) …test can be added to check handling of XML
documents.
2014-06-05 16:41:01 +02:00
Michal Nazarewicz
e01e361f93 tildify.el: Improve defcustom's types
* lisp/textmodes/tildify.el (tildify-pattern-alist)
(tildify-string-alist, tildify-ignored-environments-alist):
Add more tags explaining what each value means and replace
“sexp” used in `tildify-ignored-environments-alist' with
a full type declaration.
2014-06-05 16:40:26 +02:00
Michal Nazarewicz
9342feecdd tildify.el: Fix matched group indexes in end-regex building
* lisp/textmodes/tildifi.el (tildify-find-env): When looking for
a start of an ignore-environment, the regex is built by
concatenating regexes of all the environments configured in
`tildify-ignored-environments-alist'.  So for example, the following
list could be used to match TeX's \verb and \verb* commands:

    (("\\\\verb\\(.\\)" . (1))
     ("\\\\verb\\*\\(.\\)" . (1)))

This would result in the following regex being used to find the start
of any of the variants of the \verb command:

    \\\\verb\\(.\\)\\|\\\\verb\\*\\(.\\)

But now, if “\\\\verb\\*\\(.\\)” matches, the first capture group
won't match anything, and thus (match-string 1) will be nil, which
will cause building of the end-matching regex to fail.

Fix this by using capture groups from the time when the opening
regexes are matched individually.

* tests/automated/tildify-tests.el (tildify-test-find-env-group-index-bug):
New test validating fix to the above bug.
2014-06-05 16:39:18 +02:00
Michal Nazarewicz
af9a3b28c0 tildify.el: Fix end-regex building in `tildify-find-env'
* lisp/textmodes/tildify.el (tildify-find-env): The
`tildify-ignored-environments-alist' allows the end-regex
to be provided not as a static string but mix of strings and
indexes of groups matched the begin-regex.  For example, the
“\verb!…!” TeX-command (where “!” is an arbitrary character)
is handled using:

    ("\\\\verb\\*?\\(.\\)" . (1))

In the same way, the following should be supported as well:

    ("open-\\(.\\)" . ("end-" 1))

However the tildify-find-env function fails at

    (concat result
            (if (stringp (setq aux (car expression)))
                 expression  ; BUG: expression is a list
               (regexp-quote (match-string aux))))

where the string part is handled incorrectly.

The most trivial fix would be to replace `expression'
in the true-part of the if-statement with `aux', but
instead, this commit optimises `tildify-find-env' by
changing it to use `mapconcat' rather than open-coded
while-loop.

* tests/automated/tildify-tests.el (tildify-test-find-env-end-re-bug):
New test validating fix to the above bug.
2014-06-05 16:37:45 +02:00
Mario Lang
a1d799c25e * woman.el (woman-mapcan): Remove.
(woman-parse-colon-path): Use cl-mapcan instead.
2014-06-05 15:40:54 +02:00
Katsumi Yamaoka
0d46b5f12c Gnus: fix last change
* gnus-art.el (gnus-article-edit-part): Don't modifiy markers.
(gnus-article-read-summary-keys):
Don't bug out when there is no article in the summary buffer.

* gnus-art.el (gnus-mm-display-part):
* mm-decode.el (mm-shr):
* mm-view.el (mm-inline-text-html-render-with-w3m, mm-inline-text)
(mm-insert-inline): Revert last changes.
2014-06-05 04:31:36 +00:00
Katsumi Yamaoka
343d16e40c Gnus: bugfixes to make `gnus-mime-save-part-and-strip' work again
* gnus-art.el (gnus-mm-display-part):
* mm-decode.el (mm-shr):
* mm-view.el (mm-inline-text-html-render-with-w3m, mm-inline-text)
(mm-insert-inline): Set insertion type of end-marker, not only
start-marker, of undisplayer so as to stay after inserted text.
2014-06-05 01:38:42 +00:00
Rüdiger Sonderfeld
5830a29294 register.el: Add link to Emacs manual in Commentary. 2014-06-03 11:06:18 +02:00
Sam Steingold
cf3c1e2344 Avoid the type error on f10 when lookup-key returns an number.
* lisp/menu-bar.el (lookup-key-ignore-too-long): Extract from...
(popup-menu): ...here.
(menu-bar-open): Use it to avoid an error when `lookup-key'
returns a number.
2014-06-02 15:02:31 -04:00
Michael Albinus
e915914b93 * net/tramp.el (with-tramp-progress-reporter): Remove traces. 2014-06-02 20:36:47 +02:00
Michael Albinus
7973d8d5fa * net/tramp.el (tramp-handle-unhandled-file-name-directory): Return "/". 2014-06-02 17:17:39 +02:00
Michael Albinus
fd9fba8bd3 * net/tramp.el (with-tramp-progress-reporter): Complete previous patch. 2014-06-02 16:17:07 +02:00
Michael Albinus
bcb1a5bacd * net/tramp.el (with-tramp-progress-reporter): Add more traces. 2014-06-02 16:05:35 +02:00
Michael Albinus
1924ea8c29 * net/tramp.el (with-tramp-progress-reporter, tramp-call-process):
Add traces.
2014-06-02 15:51:35 +02:00
Michael Albinus
9acc8834b3 * net/tramp.el (tramp-call-process): Add more traces. 2014-06-02 13:35:40 +02:00
Michael Albinus
c8291a36aa * lisp/net/tramp.el (tramp-call-process): Add traces. 2014-06-02 11:58:50 +02:00
Wilson Snyder
9e158ac805 Sync with upstream verilog-mode revision 3cd8144
* lisp/progmodes/verilog-mode.el (verilog-mode-version): Bump.
(verilog-auto-arg-format): New option, to support newlines in AUTOARG.
(verilog-type-font-keywords): Add nor.
(verilog-batch-execute-func): Force reading of Local Variables.
Fix printing "no changes to be saved" with verilog-batch.
(verilog-auto-arg-ports): Doc fix.
Add verilog-auto-arg-format to support newlines in AUTOARG.
(verilog-auto-arg): Doc fix.
2014-06-01 23:45:11 -07:00
Glenn Morris
f2ea2ac3f5 * Makefile.in (AUTOGEN_VCS): Fix previous fix 2014-06-01 18:10:47 -07:00
Glenn Morris
3fbc3eff37 ChangeLog typo fix 2014-06-01 18:10:07 -07:00
Glenn Morris
299965685e * lisp/Makefile.in (AUTOGEN_VCS): Update for moved tpu-edu.el 2014-06-01 18:09:34 -07:00
Glenn Morris
4982861a08 Make some old emulation modes obsolete
Ref: http://lists.gnu.org/archive/html/emacs-devel/2014-05/msg00502.html

* lisp/emulation/crisp.el, lisp/emulation/tpu-edt.el:
* lisp/emulation/tpu-extras.el, lisp/emulation/tpu-mapper.el:
* lisp/emulation/vi.el, lisp/emulation/vip.el, lisp/emulation/ws-mode.el:
Move to obsolete/.

* doc/emacs/ack.texi (Acknowledgments): Remove some obsolete items.

* doc/emacs/misc.texi (Emulation): Remove section.

* doc/lispintro/emacs-lisp-intro.texi (Autoload): Update loaddefs.el details.

* doc/misc/efaq.texi (Finding a package with particular functionality):
Update example.

* doc/misc/vip.texi: Mention this is obsolete.

* etc/NEWS: Mention this.
2014-06-01 18:02:21 -07:00
Glenn Morris
953e106ac8 Merge from emacs-24; up to 2014-05-29T17:16:00Z!dmantipov@yandex.ru 2014-06-01 17:18:22 -07:00
Eli Zaretskii
082c97e81f Fix bug #17615 with C-g during macro definition.
lisp/simple.el (keyboard-quit): Force update of mode lines, to remove
 the "Def" indicator, if we were defining a macro.
2014-06-01 18:19:14 +03:00
Glenn Morris
bcbee9833a Auto-commit of loaddefs files. 2014-06-01 07:22:53 -04:00
Glenn Morris
ec0f0d2c4b Auto-commit of loaddefs files. 2014-06-01 06:22:49 -04:00
Glenn Morris
a383d0913e * loadup.el (load-prefer-newer): Set non-nil when dumping.
--eval doesn't work (or not early enough) during dumping.
Making load-prefer-newer non-nil by default would be simpler...

Fixes: debbugs:17629
2014-05-31 19:36:40 -07:00
Stefan Monnier
08c0f6266a * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
Obey minibuffer-default.

Fixes: debbugs:17545
2014-05-31 22:24:23 -04:00
Stefan Monnier
ffa8a2db08 * lisp/progmodes/js.el (js-indent-line): Don't mix columns and chars.
Fixes: debbugs:17619
2014-05-31 21:53:04 -04:00
Stefan Monnier
8889b935d1 * lisp/subr.el (set-transient-map): Don't wait for some "nested"
transient-map to finish if we're only supposed to be active for
the next command.

Fixes: debbugs:17642
2014-05-31 16:02:47 -04:00
Leo Liu
e41682ae9c * emacs-lisp/gv.el (window-buffer, window-display-table)
(window-dedicated-p, window-hscroll, window-point, window-start):
Fix gv-expander.

Fixes: debbugs:17630
2014-05-31 23:43:43 +08:00
Stefan Monnier
3a73c34c47 * lisp/mouse.el (mouse-posn-property): Ignore posn-point for mode-line
clicks.

Fixes: debbugs:17633
2014-05-31 08:32:36 -04:00
Glenn Morris
b5d6fe3bf6 * lisp/files.el (locate-dominating-file): Expand file argument.
Fixes: debbugs:17641
2014-05-30 19:27:22 -07:00
Stefan Monnier
b701ac4945 * lisp/subr.el (sit-for): Add comment with a short history. 2014-05-30 22:13:13 -04:00
Stefan Monnier
90cd9b1384 * lisp/leim/quail/latin-pre.el ("latin-2-prefix"): Use ",," rather than ", "
for the single comma, since ", " is *very* common in normal French text.

Fixes: debbugs:17643
2014-05-30 21:01:19 -04:00
Glenn Morris
6423ce2657 * lisp/loadup.el: Treat `command-line-args' more flexibly.
This makes it easier to add --eval ... etc to the command-line without
messing things up due to changed argument numbers.
2014-05-30 19:50:09 -04:00
Alan Mackenzie
9155e80d79 Guard (looking-at "\\s!") from XEmacs.
progmodes/cc-engine.el (c-state-pp-to-literal): add guard form.
2014-05-30 17:06:53 +00:00
Ken Olum
e50e034033 Fix bug #17560 with backward-incompatible API change in rmail-delete-*.
lisp/mail/rmail.el (rmail-delete-forward, rmail-delete-backward): The
 argument COUNT is now optional, to be more backward-compatible.
 Doc fix.

 etc/NEWS: Document the API change.
2014-05-30 12:33:43 +03:00
Glenn Morris
ff66db7950 Fix typo in previous 2014-05-29 22:15:29 -07:00
Glenn Morris
ab84733c35 package.el: Fix some version tags
* lisp/emacs-lisp/package.el (package-check-signature)
(package-unsigned-archives): Fix :version.
2014-05-29 22:08:10 -07:00
Reuben Thomas
b4c1ce8a95 Improve non-interactive use of whitespace reporting
whitespace.el (whitespace-report-region): Allow report-if-bogus to take
  the value `never', for non-interactive use.
2014-05-29 23:51:47 +01:00
Reuben Thomas
b0877c4488 Improve documentation for whitespace-report{,-region}
* whitespace.el (whitespace-report-region): Simplify
        documentation.
        (whitespace-report): Refer to whitespace-report-region's
        documentation.

This commit message also covers the previous commit, which was erroneously
committed with the log message "."; sorry.
2014-05-29 23:43:26 +01:00
Reuben Thomas
6ddcaa8f05 . 2014-05-29 23:38:02 +01:00
Stefan Monnier
2f8165f415 * lisp/subr.el (sit-for): Don't run input-methods.
Fixes: debbugs:15614
2014-05-29 12:38:01 -04:00
Stefan Monnier
d41708691f * lisp/subr.el (sit-for): Remove universal-arg dependency. 2014-05-29 11:36:09 -04:00
Stefan Monnier
4d05fe986c * lisp/whitespace.el: Use font-lock-flush. Minimize refontifications.
Side benefit: it works without jit-lock.
(whitespace-point--used): New buffer-local var.
(whitespace-color-on): Initialize it and flush it.  Use font-lock-flush.
(whitespace-color-off): Use font-lock-flush.
(whitespace-point--used, whitespace-point--flush-used): New functions.
(whitespace-trailing-regexp, whitespace-empty-at-bob-regexp)
(whitespace-empty-at-eob-regexp): Use them.
(whitespace-post-command-hook): Rewrite.
2014-05-28 23:54:37 -04:00