Commit graph

2934 commits

Author SHA1 Message Date
Fabián Ezequiel Gallina
35e1f9d9fc Merge from origin/emacs-24
a5f38fa Fix ChangeLog typo
c6400e1 Fix composition of characters from Syriac and Arabis scripts.
7e9dfde python.el: Fix message when sending region.
800260c python.el: Cleanup temp files even with eval errors.
ed65b91 Fix for previous commit
2dd5163 python.el: Handle file encoding for shell.
7aa506e Spelling fixes
4cd6d77 * automated/tramp-tests.el (tramp-test17-insert-directory): Do not expect a given order of "." and "..".
a41d07b Fix rendering of composed caharacters on the mode line.  (Bug#19435)
b70977c Small doc markup fixes
73c050c * doc/lispref/modes.texi (Defining Minor Modes, SMIE Lexer): Markup fixes.
1783e6c ChangeLog fix
c741b1b TUTORIAL.es: Improve style consistency
f89efea TUTORIAL.es: spelling fixes
0d48826 Avoid compiler warning.

Conflicts:
	doc/lispref/ChangeLog
	doc/lispref/control.texi
	etc/ChangeLog
	lisp/ChangeLog
	src/ChangeLog
	test/ChangeLog
2014-12-27 13:31:20 -03:00
Fabián Ezequiel Gallina
3a12f2ed99 Merge from origin/emacs-24
2616307 * net/tramp-sh.el (tramp-send-command-and-read): New optional arg MARKER. (tramp-get-remote-path): Use it.
c773edc * net/tramp-gw.el (tramp-gw-open-connection): Suppress traces in wrong debug buffer. (tramp-gw-open-connection): Set process coding system 'binary. (tramp-gw-open-network-stream): Handle HTTP error 403.
8032fc1 * .gitignore: Ignore /conftest*.
fb420e7 * lisp/subr.el (sit-for): Tweak docstring.
061db13 Fix vc-git-dir-status-files WRT up-to-date vs edited
bb57c94 Consider electric-pair-mode in tex-mode.
7b94572 * test/automated/flymake/warnpred/test.pl: Tweak earlier change.
59c218f ChangeLog fix
db2a768 * test/automated/flymake/warnpred/test.pl: Tweak format
d9005dd src/gnutls.c (gnutls_init): Fix deprecation warning from GCC.

Conflicts:
	ChangeLog
	lisp/ChangeLog
	src/ChangeLog
	test/ChangeLog
2014-12-27 13:15:55 -03:00
Paul Eggert
7aa506eed8 Spelling fixes 2014-12-25 18:08:47 -08:00
Martin Rudalics
164cdfbf9e In ispell-command-loop' don't use next-window'.
* textmodes/ispell.el (ispell-command-loop): Don't use
`next-window'.
2014-12-19 18:59:54 +01:00
Martin Rudalics
655a6f35df Fix ispell window handling.
* textmodes/ispell.el (ispell-command-loop): Suppress horizontal
scroll bar on ispell's windows.  Don't count window lines and
don't deal with dedicated windows.
(ispell-show-choices, ispell-help): Let `ispell-display-buffer'
do the window handling.
(ispell-adjusted-window-height, ispell-overlay-window): Remove.
(ispell-display-buffer): New function to reuse, create and fit
window to ispell's buffers. (Bug#3413)
2014-12-18 18:53:48 +01:00
Joao Tavora
bb57c94d5f Consider electric-pair-mode in tex-mode.
Fixes: debbugs:19356

* lisp/textmodes/tex-mode.el (tex-insert-quote): Consider and respect
`electric-pair-mode'.

* test/automated/electric-tests.el (autowrapping-7): New test for
tex-mode's autowrapping.
(electric-pair-test-for): Call the actual key-binding
interactively.
2014-12-14 11:22:46 +00:00
Paul Eggert
0cce3623b1 Merge branch 'emacs-24'. 2014-11-28 23:07:16 -08:00
Leonard Randall
b66511f768 Backport regexp stack overflow fix from emacs-24.
* textmodes/reftex-parse.el (reftex-using-biblatex-p): Make search
for comment lines non-greedy and stopping at newlines to fix stack
overflows with large files. [Backport]

Signed-off-by: Tassilo Horn <tsdh@gnu.org>
2014-11-27 09:38:21 +01:00
Sam Steingold
41a1fd3638 Pass -utf8 to tidy.
* lisp/textmodes/sgml-mode.el (sgml-validate-command): Pass -utf8 to tidy.
2014-11-26 14:38:35 -05:00
Michael Albinus
4de28b1a76 * textmodes/makeinfo.el (makeinfo-buffer): Make it work also for
remote `buffer-file-name'.
2014-11-23 11:49:31 +01:00
Paul Eggert
342bc0e04b .gitignore cleanup.
* .gitignore: Merge contents of subsidiary files and organize the
result so as to avoid duplication.  Remove no-longer needed entries.
* admin/charsets/.gitignore, admin/unidata/.gitignore:
* doc/lispintro/.gitignore, etc/.gitignore, leim/.gitignore:
* leim/ja-dic/.gitignore, lib-src/.gitignore, lisp/.gitignore:
* lisp/calc/.gitignore, lisp/calendar/.gitignore:
* lisp/cedet/.gitignore, lisp/emulation/.gitignore:
* lisp/erc/.gitignore, lisp/eshell/.gitignore, lisp/gnus/.gitignore:
* lisp/international/.gitignore, lisp/language/.gitignore:
* lisp/leim/.gitignore, lisp/leim/quail/.gitignore:
* lisp/mail/.gitignore, lisp/mh-e/.gitignore, lisp/net/.gitignore:
* lisp/nxml/.gitignore, lisp/obsolete/.gitignore:
* lisp/play/.gitignore, lisp/progmodes/.gitignore:
* lisp/term/.gitignore, lisp/textmodes/.gitignore:
* lisp/url/.gitignore, nt/.gitignore, src/.gitignore:
Remove; no longer needed.
2014-11-17 17:58:28 -08:00
Michal Nazarewicz
1901029f6b tildify.el: introduce a `tildify-foreach-region-function' variable
* textmodes/tildify.el (tildify-foreach-region-function): New
variable specifying a function determining portions of buffer that
should be tildified.  It allows major modes to create a filtering
function more elaborate than a set of regular expressions.
Initialised to `tildify--deprecated-ignore-evironments' by default
to handle now deprecated `tildify-ignored-environments-alist'
variable.
(tildify--foreach-region): A new function that takes
`tildify-foreach-region-function' into account and calls callback
for regions of the buffer that should be tildified.
(tildify-foreach-ignore-environments): A new function which can be
partially applied and used as `tildify-foreach-region-function'.
(tildify-ignored-environments-alist, tildify--pick-alist-entry):
Mark as obsolete.
(tildify--find-env): Rename from `tildify-find-env' and mark as
obsolete.
(tildify--deprecated-ignore-evironments): New function,
immediately marked as obsolete, used to handle deprecated
`tildify-ignored-environments-alist'.

* textmodes/tex-mode.el (tex-common-initialization): Set
`tildify-foreach-region-function' variable in all variants of TeX
mode since `tildify-ignored-environments-alist' variable is now
empty by default.

* nxml/nxml-mode.el (nxml-mode): Ditto in `nxml-mode'.

* textmodes/sgml-mode.el (sgml-mode): Ditto in `sgml-mode'.
2014-11-18 00:49:11 +01:00
Michal Nazarewicz
d5ec102b7a tildify.el: introduce a `tildify-pattern' variable
* textmodes/tildify.el (tildify-pattern): New variable for
defining tildifying pattern.  Being a buffer-local variable it is
much easier to handle than `tildify-pattern-alist' that has been
used so far.  It also works better with derived modes.
(tildify-pattern-alist): Mark as obsolete.
2014-11-18 00:48:04 +01:00
Michal Nazarewicz
b810409007 tildify.el: introduce a `tildify-space-string' variable
* textmodes/tildify.el (tildify-space-string): New variable for
specifying representation of a hard space -- a no-break space by
default.  Being a buffer-local variable it is much easier to
handle than `tildify-string-alist' that has been used so far.  It
also works better with derived modes.
(tildify-string-alist): Mark as obsolete.

* textmodes/tex-mode.el (tex-common-initialization): Set
`tildify-space-string' variable in all variants of TeX mode since
`tildify-string-alist' is now empty by default.

* nxml/nxml-mode.el (nxml-mode): Ditto in `nxml-mode'.  If
encoding supports it use no-break space instead of character
entity; this changes previous default which used a numeric
reference.

* textmodes/sgml-mode.el (sgml-mode): ditto in `sgml-mode'.  If
encoding does not support no-break space, use numeric reference;
this changes previous default which used named entity (“&nbsp;”)
in HTML mode.
2014-11-18 00:46:50 +01:00
Paul Eggert
123ddec7f8 Simplify use of current-time and friends.
* doc/misc/org.texi (Dynamic blocks):
* lisp/allout-widgets.el (allout-widgets-hook-error-handler):
* lisp/calendar/appt.el (appt-display-message):
* lisp/calendar/icalendar.el (icalendar--convert-float-to-ical):
* lisp/calendar/timeclock.el (timeclock-in, timeclock-when-to-leave)
(timeclock-last-period, timeclock-day-base):
* lisp/eshell/em-ls.el (eshell-ls-file):
* lisp/eshell/esh-util.el (eshell-parse-ange-ls):
* lisp/generic-x.el (named-database-print-serial):
* lisp/net/newst-backend.el (newsticker--get-news-by-url-callback)
(newsticker-get-news, newsticker--sentinel-work)
(newsticker--image-get, newsticker--image-sentinel):
* lisp/net/tramp-sh.el (tramp-get-remote-touch):
* lisp/progmodes/opascal.el (opascal-debug-log):
* lisp/textmodes/remember.el (remember-mail-date)
(remember-store-in-files):
* lisp/vc/vc-annotate.el (vc-annotate-display-autoscale)
(vc-default-annotate-current-time):
* lisp/vc/vc-bzr.el (vc-bzr-shelve-snapshot):
* lisp/vc/vc-cvs.el (vc-cvs-annotate-current-time):
* lisp/vc/vc-rcs.el (vc-rcs-annotate-current-time):
* lisp/url/url-util.el (url-get-normalized-date):
* lisp/erc/erc-backend.el (TOPIC):
* lisp/gnus/gnus-delay.el (gnus-delay-article):
* lisp/gnus/gnus-sum.el (gnus-summary-read-document):
* lisp/gnus/gnus-util.el (gnus-seconds-today, gnus-seconds-month):
* lisp/gnus/message.el (message-make-expires-date):
* lisp/org/org-archive.el (org-archive-subtree)
(org-archive-to-archive-sibling):
* lisp/org/org-clock.el (org-resolve-clocks, org-clock-get-sum-start)
(org-clock-special-range):
* lisp/org/org-timer.el (org-timer-seconds):
* lisp/org/org.el (org-read-date-analyze, org-get-cursor-date):
* lisp/org/ox-html.el (org-html-format-spec):
* lisp/org/ox-icalendar.el (org-icalendar--vtodo):
Omit unnecessary call to current-time.
* lisp/calendar/time-date.el (time-to-seconds) [!float-time]:
* lisp/calendar/timeclock.el (timeclock-time-to-date):
* lisp/vc/vc-annotate.el (vc-annotate-convert-time):
Use current time if arg is nil, to be compatible with float-time.
(time-date--day-in-year): New function, with most of the guts of
the old time-to-day-in-year.
(time-to-day-in-year): Use it.
(time-to-days): Use it, to avoid decoding the same time stamp twice.
* lisp/calendar/timeclock.el (timeclock-update-mode-line):
* lisp/cedet/srecode/args.el (srecode-semantic-handle-:time):
* lisp/gnus/gnus-util.el (gnus-seconds-year):
* lisp/org/org.el (org-get-cursor-date):
Don't call current-time twice to get the current time stamp,
as this can lead to inconsistent results.
* lisp/completion.el (cmpl-hours-since-origin):
* lisp/erc/erc.el (erc-emacs-time-to-erc-time):
* lisp/ido.el (ido-time-stamp):
* lisp/vc/vc-annotate.el (vc-annotate-convert-time):
Simplify by using float-time.
* lisp/completion.el (save-completions-to-file):
* lisp/url/url-cache.el (url-cache-prune-cache):
Rename local var to avoid confusion.
* lisp/gnus/gnus-util.el (gnus-float-time):
* lisp/net/rcirc.el (rcirc-float-time):
* lisp/org/org-compat.el (org-float-time):
Simplify to an alias because time-to-seconds now behaves like float-time
with respect to nil arg.
* lisp/subr.el (progress-reporter-do-update):
Don't call float-time unless needed.
* lisp/erc/erc.el (erc-current-time): Simplify by using erc-emacs-time-to-erc-time.
* lisp/org/org-clock.el (org-clock-get-table-data): Omit unnecessary, lossy
conversion from floating point to Emacs time and back.
(org-resolve-clocks): Prefer two-argument floor.
2014-10-28 18:42:51 -07:00
Stefan Monnier
bc0e9e47b6 * lisp/textmodes/css-mode.el (scss-mode): New major-mode.
(css-mode-syntax-table): Use d style comment, to ease the scss case.
(css-ident-re): Allow things like @-moz-keyframes.
(scss--hash-re): New const.
(css--font-lock-keywords): New function, extracted from
css-font-lock-keywords.
(css-font-lock-keywords): Use it.
(scss-mode-syntax-table, scss-font-lock-keywords): New vars.
(scss-smie--not-interpolation-p): New function.
(css-smie--forward-token, css-smie--backward-token): Use it.
(css-mode): Remove left-over code.
* test/indent/scss-mode.scss: New file.
* test/indent/css-mode.css: Add a few uneventful examples.
2014-10-20 12:36:34 -04:00
Michal Nazarewicz
e31f014c0f tildify.el (tildify--pick-alist-entry): rename from tildify-mode-alist
tildify-mode-alist does not really describe what the functino does so
rename it to tildify--pick-alist-entry.  This also makes it clear that
the function is an internal one.
2014-10-17 09:20:51 +02:00
Glenn Morris
3f65970414 Remove calendar code obsolete since at least version 23.1
* lisp/calendar/cal-bahai.el (calendar-absolute-from-bahai)
(calendar-print-bahai-date, calendar-bahai-prompt-for-date)
(calendar-goto-bahai-date, list-bahai-diary-entries)
(mark-bahai-calendar-date-pattern, mark-bahai-diary-entries)
(insert-bahai-diary-entry, insert-monthly-bahai-diary-entry)
(insert-yearly-bahai-diary-entry):
* lisp/calendar/cal-china.el (chinese-calendar-time-zone)
(chinese-calendar-location-name)
(chinese-calendar-daylight-time-offset)
(chinese-calendar-standard-time-zone-name)
(chinese-calendar-daylight-time-zone-name)
(chinese-calendar-daylight-savings-starts)
(chinese-calendar-daylight-savings-ends)
(chinese-calendar-daylight-savings-starts-time)
(chinese-calendar-daylight-savings-ends-time)
(chinese-calendar-celestial-stem)
(chinese-calendar-terrestrial-branch)
(calendar-absolute-from-chinese, calendar-print-chinese-date)
(calendar-goto-chinese-date):
* lisp/calendar/cal-coptic.el (calendar-absolute-from-coptic)
(calendar-print-coptic-date, coptic-prompt-for-date)
(calendar-goto-coptic-date, calendar-absolute-from-ethiopic)
(calendar-print-ethiopic-date, calendar-goto-ethiopic-date):
* lisp/calendar/cal-french.el (calendar-absolute-from-french)
(calendar-print-french-date, calendar-goto-french-date):
* lisp/calendar/cal-hebrew.el (diary-sabbath-candles-minutes)
(calendar-absolute-from-hebrew, calendar-print-hebrew-date)
(hebrew-calendar-yahrzeit, calendar-goto-hebrew-date)
(holiday-rosh-hashanah-etc, holiday-hanukkah)
(holiday-passover-etc, holiday-tisha-b-av-etc)
(list-hebrew-diary-entries, mark-hebrew-calendar-date-pattern)
(mark-hebrew-diary-entries, insert-hebrew-diary-entry)
(insert-monthly-hebrew-diary-entry)
(insert-yearly-hebrew-diary-entry, list-yahrzeit-dates)
(diary-omer, diary-yahrzeit, diary-rosh-hodesh, diary-parasha)
(diary-sabbath-candles):
* lisp/calendar/cal-islam.el (calendar-absolute-from-islamic)
(calendar-print-islamic-date, calendar-goto-islamic-date)
(list-islamic-diary-entries, mark-islamic-calendar-date-pattern)
(mark-islamic-diary-entries, insert-islamic-diary-entry)
(insert-monthly-islamic-diary-entry)
(insert-yearly-islamic-diary-entry):
* lisp/calendar/cal-iso.el (calendar-absolute-from-iso)
(calendar-print-iso-date, calendar-iso-read-args)
(calendar-goto-iso-date, calendar-goto-iso-week):
* lisp/calendar/cal-julian.el (calendar-absolute-from-julian)
(calendar-print-julian-date, calendar-goto-julian-date)
(calendar-absolute-from-astro, calendar-print-astro-day-number)
(calendar-goto-astro-day-number):
* lisp/calendar/cal-mayan.el (calendar-print-mayan-date)
(calendar-next-haab-date, calendar-previous-haab-date)
(calendar-next-tzolkin-date, calendar-previous-tzolkin-date)
(calendar-next-calendar-round-date)
(calendar-previous-calendar-round-date)
(calendar-absolute-from-mayan-long-count)
(calendar-goto-mayan-long-count-date):
* lisp/calendar/cal-move.el (scroll-calendar-left)
(scroll-calendar-right, scroll-calendar-left-three-months)
(scroll-calendar-right-three-months):
* lisp/calendar/cal-persia.el (calendar-absolute-from-persian)
(calendar-print-persian-date, persian-prompt-for-date)
(calendar-goto-persian-date):
* lisp/calendar/cal-x.el (calendar-after-frame-setup-hooks):
* lisp/calendar/calendar.el (view-diary-entries-initially)
(mark-diary-entries-in-calendar, calendar-today-face)
(diary-face, holiday-face, view-calendar-holidays-initially)
(mark-holidays-in-calendar, initial-calendar-window-hook)
(today-visible-calendar-hook, today-invisible-calendar-hook)
(hebrew-diary-entry-symbol, islamic-diary-entry-symbol)
(bahai-diary-entry-symbol, american-date-diary-pattern)
(european-date-diary-pattern, european-calendar-display-form)
(american-calendar-display-form, holidays-in-diary-buffer)
(all-hebrew-calendar-holidays, all-christian-calendar-holidays)
(all-islamic-calendar-holidays, all-bahai-calendar-holidays)
(fancy-diary-buffer, increment-calendar-month)
(extract-calendar-month, extract-calendar-day)
(extract-calendar-year, exit-calendar, calendar-date-is-legal-p)
(mark-visible-calendar-date, calendar-version):
* lisp/calendar/diary-lib.el (diary-button-face, sexp-diary-entry-symbol)
(diary-display-hook, list-diary-entries-hook)
(mark-diary-entries-hook, nongregorian-diary-listing-hook)
(nongregorian-diary-marking-hook, print-diary-entries-hook)
(abbreviated-calendar-year, number-of-diary-entries)
(view-other-diary-entries, add-to-diary-list)
(include-other-diary-files, simple-diary-display)
(fancy-diary-display, print-diary-entries, mark-diary-entries)
(mark-sexp-diary-entries, mark-included-diary-files)
(mark-calendar-days-named, mark-calendar-month)
(mark-calendar-date-pattern, sort-diary-entries)
(list-sexp-diary-entries, make-diary-entry, insert-diary-entry)
(insert-weekly-diary-entry, insert-monthly-diary-entry)
(insert-yearly-diary-entry, insert-anniversary-diary-entry)
(insert-block-diary-entry, insert-cyclic-diary-entry)
(fancy-diary-font-lock-keywords, fancy-diary-display-mode):
* lisp/calendar/holidays.el (general-holidays, oriental-holidays)
(local-holidays, other-holidays, hebrew-holidays)
(christian-holidays, islamic-holidays, bahai-holidays)
(solar-holidays, list-calendar-holidays)
(check-calendar-holidays, mark-calendar-holidays)
(filter-visible-calendar-holidays):
* lisp/calendar/lunar.el (calendar-phases-of-moon, phases-of-moon)
(diary-phases-of-moon): Remove obsolete aliases.

* lisp/calendar/cal-menu.el (cal-menu-load-hook): Remove obsolete hook.
* calendar/cal-x.el (calendar-one-frame-setup)
(calendar-only-one-frame-setup, calendar-two-frame-setup):
Remove obsolete functions.
(cal-x-load-hook): Remove obsolete hook.

* calendar/calendar.el (european-calendar-style): Remove obsolete variable.
(calendar-date-style): No longer consult european-calendar-style.

* calendar/calendar.el (european-calendar, american-calendar):
Remove obsolete commands.

* calendar/calendar.el (calendar-for-loop): Remove obsolete macro.

* calendar/diary-lib.el (diary-face): Remove obsolete variable.
(diary-font-lock-date-forms, diary-fancy-font-lock-keywords):
Use the face `diary' instead of the variable `diary-face'.

* calendar/holidays.el (hebrew-holidays-1, hebrew-holidays-2)
(hebrew-holidays-3, hebrew-holidays-4): Remove obsolete variables.

* lisp/calendar/icalendar.el (icalendar--date-style): Remove function.
Replace all uses with calendar-date-style.

* lisp/textmodes/remember.el (calendar-date-style): Declare.
(remember-diary-convert-entry):
No longer consult european-calendar-style.

* test/automated/icalendar-tests.el (icalendar--calendar-style):
Remove test, no longer relevant.
2014-10-05 19:02:04 -07:00
Stefan Monnier
cbdc06f3be Rename 24.5 to 25.1
Except where we expect to backport the corresponding change.
2014-09-29 14:14:08 -04:00
Glenn Morris
057ba71703 Auto-commit of loaddefs files. 2014-09-21 06:22:38 -04:00
Tassilo Horn
09973863ea Use font-lock-face property; derive from special-mode
* lisp/textmodes/reftex-sel.el (reftex-select-label-mode)
(reftex-select-bib-mode, reftex-insert-docstruct): Derive modes
from special-mode (instead of fundamental-mode) and propertize
with font-lock-face instead of just face.

* lisp/textmodes/reftex-toc.el (reftex-toc-mode, reftex-toc): Ditto.

Fixes: debbugs:18496
2014-09-21 11:34:02 +02:00
Paul Eggert
0f2ed59206 Spelling fixes.
* lisp/ses.el (ses-file-format-extend-parameter-list): Rename from
ses-file-format-extend-paramter-list.  All uses changed.
* lisp/gnus-cloud.el (gnus-cloud-parse-version-1): Fix misspelling
of ":delete".
2014-09-11 12:44:25 -07:00
Sam Steingold
2beb60dc10 New custom variable `tex-print-file-extension' to help users who use PDF instead of DVI.
* lisp/textmodes/tex-mode.el (tex-print-file-extension): New user
option.
(tex-print): Use it instead of the hard-coded string.
2014-09-05 15:07:52 -04:00
Eli Zaretskii
8ab2588c9d Fix a bug in texinfo-make-menu.
lisp/textmodes/texnfo-upd.el (texinfo-specific-section-type): Don't
 recognize a Top node if there are other sectioning commands
 earlier in the Texinfo file.  This fixes a bug in
 texinfo-make-menu and avoids inflooping in
 texinfo-all-menus-update when they are invoked on texinfo.texi.
2014-08-21 18:07:13 +03:00
Sam Steingold
70276d32c7 Set sgml-validate-command based on validator existence
* lisp/textmodes/sgml-mode.el (sgml-validate-command): Set depending on
the presence of known validators (tidy, (o)nsgmls).
2014-08-11 16:15:59 -04:00
Glenn Morris
da41ffdd08 Merge from emacs-24; up to 2014-06-26T06:55:15Z!rgm@gnu.org 2014-07-28 05:39:09 -04:00
Andreas Schwab
fb2e15326d Fixes: debbugs:18117
* textmodes/tex-mode.el (tex-font-lock-verb): Doc fix.
2014-07-27 13:38:59 +02:00
Glenn Morris
9ac6d28ab8 Merge from emacs-24; up to 2014-06-11T19:33:14Z!rgm@gnu.org 2014-06-25 23:55:15 -07:00
Leo Liu
83d208a5dd Fix a few packages to work with nil tab-stop-list
* indent.el (indent-accumulate-tab-stops): New function.

* textmodes/picture.el (picture-set-tab-stops):
* ruler-mode.el (ruler-mode-mouse-add-tab-stop)
(ruler-mode-ruler): Fix to work with nil tab-stop-list.

* progmodes/asm-mode.el (asm-calculate-indentation): Use
indent-next-tab-stop.
2014-06-26 07:53:37 +08:00
Glenn Morris
9a214b9800 Auto-commit of loaddefs files. 2014-06-25 06:17:41 -04:00
Leonard Randall
5132f910f3 Make search in reftex-using-biblatex-p non-greedy.
* textmodes/reftex-parse.el (reftex-using-biblatex-p): Make search
for comment lines non-greedy and stopping at newlines to fix stack
overflows with large files.
2014-06-24 21:39:22 +02:00
Mario Lang
33848c48a5 "the the", "from from" and "and and". 2014-06-23 01:12:17 +02:00
Dmitry Antipov
9c3883b47d * lisp/electric.el (electric-layout-post-self-insert-function):
* lisp/emacs-lisp/ert.el (ert--insert-infos):
* lisp/obsolete/vi.el (vi-set-mark):
* lisp/term.el (term-handle-scroll):
* lisp/textmodes/bibtex.el (bibtex-fill-field, bibtex-fill-entry):
* lisp/gnus/gnus-sum.el (gnus-summary-edit-article-done):
* lisp/org/org-mouse.el (org-mouse-do-remotely):
* lisp/wid-edit.el (widget-editable-list-value-create): Prefer
point-marker to copy-marker of point.
* lisp/ob-core.el (org-babel-insert-result): Prefer point-min-marker
and point-max-marker.
2014-06-22 09:43:58 +04:00
Glenn Morris
c400516ab1 Merge from emacs-24; up to 2014-06-06T02:22:40Z!monnier@iro.umontreal.ca 2014-06-21 12:45:59 -07:00
Eli Zaretskii
58b9840b35 Fix bug #17801 with extraneous newlines after inserting markup in Texinfo mode.
lisp/textmodes/texinfo.el (texinfo-mode): Set skeleton-end-newline
 locally to nil.
 (texinfo-insert-block, texinfo-insert-@end)
 (texinfo-insert-@example, texinfo-insert-@quotation): Adjust to
 local setting of skeleton-end-newline by adding an explicit \n to
 the skeletons where appropriate.
2014-06-20 11:47:10 +03: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 “&nbsp;”[1], use a numeric reference for
a no-break space (namely “&#160;”)

[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
Stefan Monnier
6711a21f11 * lisp/font-lock.el (font-lock-flush, font-lock-ensure): New functions.
(font-lock-fontify-buffer): Mark interactive-only.
(font-lock-multiline, font-lock-fontified, font-lock-set-defaults):
Make buffer-local.
(font-lock-specified-p): Remove redundant boundp check.
(font-lock-flush-function, font-lock-ensure-function): New vars.
(font-lock-turn-on-thing-lock): Set them.
(font-lock-default-fontify-buffer): Obey font-lock-dont-widen.
(font-lock-after-change-function): Make `old-len' optional.
(font-lock-set-defaults): Remove redundant `set' of font-lock-defaults.
Call font-lock-flush, just in case.
* lisp/progmodes/verilog-mode.el (verilog-preprocess): Disable workaround in
recent Emacsen.
* lisp/progmodes/vera-mode.el (vera-fontify-buffer): Declare obsolete.
(vera-mode-map, vera-mode-menu): Remove bindings to it.
* lisp/progmodes/idlw-help.el (idlwave-help-fontify): Use font-lock-ensure
and with-syntax-table.
* lisp/textmodes/conf-mode.el (conf-quote-normal):
* lisp/progmodes/sh-script.el (sh-set-shell):
* lisp/progmodes/prog-mode.el (prettify-symbols-mode):
* lisp/progmodes/f90.el (f90-font-lock-n):
* lisp/progmodes/cwarn.el (cwarn-mode):
* lisp/nxml/nxml-mode.el (nxml-toggle-char-ref-extra-display):
* lisp/progmodes/compile.el (compilation-setup, compilation--unsetup):
* lisp/hi-lock.el (hi-lock-mode, hi-lock-unface-buffer)
(hi-lock-set-pattern, hi-lock-set-file-patterns): Use font-lock-flush.
* lisp/mail/rmail.el (rmail-variables): Set font-lock-dont-widen instead of
font-lock-fontify-buffer-function and
font-lock-unfontify-buffer-function.
(rmail-unfontify-buffer-function, rmail-fontify-message):
Use with-silent-modifications.
* lisp/htmlfontify.el (hfy-force-fontification): Use jit-lock-fontify-now
and font-lock-ensure.
* lisp/bs.el (bs-show-in-buffer): Use font-lock-ensure.
* lisp/gnus/mm-view.el (mm-display-inline-fontify): Use font-lock-ensure.
* lisp/gnus/gnus-cite.el (gnus-message-citation-mode): Use font-lock-flush.
* lisp/org/org-compat.el (org-font-lock-ensure): New function.
* lisp/org/ox-odt.el (org-odt-do-format-code):
* lisp/org/ox-html.el (org-html-fontify-code):
* lisp/org/org.el (org-fontify-like-in-org-mode):
* lisp/org/org-src.el (org-src-font-lock-fontify-block):
* lisp/org/org-clock.el (org-clock-get-clocktable): Use it.
* lisp/org/ox-org.el (org-org-publish-to-org): Use it.  Avoid using find-file
from Elisp.
* test/automated/ruby-mode-tests.el (ruby-assert-face): Use font-lock-ensure.
(ruby-interpolation-keeps-non-quote-syntax): Use syntax-propertize.
2014-05-28 23:45:29 -04:00
Michal Nazarewicz
fc21a7de3a * test/automated/tildify-tests.el: New file.
* lisp/textmodes/tildify.el (tildify-buffer, tildify-region):
Add dont-ask option.

Fixes: debbugs:17547
2014-05-27 21:00:44 -04:00
Glenn Morris
cae9b33def Auto-commit of loaddefs files. 2014-05-26 06:21:18 -04:00
Tassilo Horn
5e26d9849a Improve reftex-format-special
* lisp/textmodes/reftex-ref.el (reftex-format-special): Make it work
also for AMS Math's \eqref macro.
2014-05-25 19:40:54 +02:00
Glenn Morris
1d75432d5c Use file-accessible-directory-p in some more places
* lisp/files.el (file-expand-wildcards):
* lisp/man.el (Man-support-local-filenames):
* lisp/printing.el (pr-i-directory, pr-interface-directory):
* lisp/progmodes/grep.el (lgrep, rgrep):
* lisp/textmodes/ispell.el (ispell-call-process)
(ispell-call-process-region, ispell-start-process)
(ispell-init-process):
* lisp/mh-e/mh-e.el (mh-variants):
Use file-accessible-directory-p.
2014-05-09 00:02:00 -07:00
Glenn Morris
3ea33e3215 Auto-commit of loaddefs files. 2014-05-04 21:08:54 -04:00
Paul Eggert
3e9fa60a5c Merge from emacs-24; up to 2014-05-04T21:18:30Z!eggert@cs.ucla.edu 2014-05-04 12:37:56 -07:00
Glenn Morris
d136f18462 Doc fixes
* doc/misc/autotype.texi (Skeleton Language):
* doc/misc/message.texi (Header Commands):
* lisp/allout-widgets.el (allout-widgets-tally)
(allout-decorate-item-guides):
* lisp/menu-bar.el (menu-bar-positive-p):
* lisp/minibuffer.el (completion-pcm-complete-word-inserts-delimiters):
* lisp/cedet/ede.el (ede-project-directories, ede-check-project-directory):
* lisp/cedet/semantic/ia-sb.el (semantic-ia-sb-show-doc):
* lisp/cedet/semantic/tag.el (semantic-tag-in-buffer-p):
* lisp/cedet/semantic/bovine/c.el (semantic-tag-abstract-p):
* lisp/gnus/gnus-registry.el (gnus-registry-install-p): Doc fix.
* lisp/progmodes/gdb-mi.el (gdbmi-same-start, gdbmi-is-number):
* lisp/progmodes/js.el (js--inside-param-list-p)
(js--inside-dojo-class-list-p, js--forward-destructuring-spec):
* lisp/progmodes/prolog.el (region-exists-p):
* lisp/progmodes/verilog-mode.el (verilog-scan-cache-ok-p):
* lisp/textmodes/reftex-parse.el (reftex-using-biblatex-p):
* lisp/url/url-parse.el (url-generic-parse-url):
* src/floatfns.c (Fisnan):
* src/profiler.c (Fprofiler_cpu_running_p):
Doc fixes (replace `iff').

Fixes: debbugs:17309
2014-05-01 19:55:25 -04:00
Juanma Barranquero
09b911adf4 Merge from emacs-24; up to 2014-05-01T10:21:17Z!rgm@gnu.org 2014-04-30 21:54:52 +02:00