1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-24 14:30:43 -08:00
Commit graph

2718 commits

Author SHA1 Message Date
Stefan Monnier
b879a6e297 Fix and improve last syntax-propertize patch
* lisp/emacs-lisp/syntax.el (syntax-propertize-precompile-rules): New macro.
(syntax-propertize-rules): Add var-ref case.  Fix offset computation
when adding surrounding \(..\).

* lisp/progmodes/fortran.el (fortran--font-lock-syntactic-keywords): Remove.
(fortran-make-syntax-propertize-function): New function; replaces
fortran-font-lock-syntactic-keywords.
(fortran-mode): Use it.
(fortran-line-length): Use it.  Improve interactive spec.

* lisp/progmodes/js.el (js-mode): Fix last change (bug#7054).

* lisp/textmodes/tex-mode.el (tex-syntax-propertize-rules)
(latex-syntax-propertize-rules): New consts; replace
tex-font-lock-syntactic-keywords.
(tex-env-mark, latex-env-before-change): New functions.
(latex-electric-env-pair-mode): New minor mode.
(tex-font-lock-verb): Change arguments; do move point.
(tex-font-lock-syntactic-face-function): Adjust to new verbatim
representation as a form of comment.
(tex-font-lock-keywords-1): Remove workaround, now unneeded.
(doctex-syntax-propertize-rules): New const; replaces
doctex-font-lock-syntactic-keywords.
(tex-common-initialization, doctex-mode): Use syntax-propertize-rules.
2010-09-18 02:35:00 +02:00
Eli Zaretskii
375a0f6552 Revert 2010-09-13T10:14:52Z!bob@gnu.org by Bob Chassel. 2010-09-13 16:42:33 +02:00
Robert J. Chassell
ed9a2f6896 10-09-13 2010-09-13 10:14:52 +00:00
Stefan Monnier
cf38dd4298 New syntax-propertize functionality.
* lisp/font-lock.el (font-lock-syntactic-keywords): Make obsolete.
(font-lock-fontify-syntactic-keywords-region): Move handling of
font-lock-syntactically-fontified to...
(font-lock-default-fontify-region): ...here.
Let syntax-propertize-function take precedence.
(font-lock-fontify-syntactically-region): Cal syntax-propertize.

* lisp/emacs-lisp/regexp-opt.el (regexp-opt-depth): Skip named groups.

* lisp/emacs-lisp/syntax.el (syntax-propertize-function)
(syntax-propertize-chunk-size, syntax-propertize--done)
(syntax-propertize-extend-region-functions): New vars.
(syntax-propertize-wholelines, syntax-propertize-multiline)
(syntax-propertize--shift-groups, syntax-propertize-via-font-lock)
(syntax-propertize): New functions.
(syntax-propertize-rules): New macro.
(syntax-ppss-flush-cache): Set syntax-propertize--done.
(syntax-ppss): Call syntax-propertize.

* lisp/progmodes/ada-mode.el (ada-set-syntax-table-properties)
(ada-after-change-function, ada-initialize-syntax-table-properties)
(ada-handle-syntax-table-properties): Only define when
syntax-propertize is not available.
(ada-mode): Use syntax-propertize-function.

* lisp/progmodes/autoconf.el (autoconf-mode):
Use syntax-propertize-function.
(autoconf-font-lock-syntactic-keywords): Remove.

* lisp/progmodes/cfengine.el (cfengine-mode):
Use syntax-propertize-function.
(cfengine-font-lock-syntactic-keywords): Remove.

* lisp/progmodes/cperl-mode.el (cperl-mode): Use syntax-propertize-function.

* lisp/progmodes/fortran.el (fortran-mode): Use syntax-propertize-function.
(fortran--font-lock-syntactic-keywords): New var.
(fortran-line-length): Update syntax-propertize-function and
fortran--font-lock-syntactic-keywords.

* lisp/progmodes/gud.el (gdb-script-syntax-propertize-function): New var;
replaces gdb-script-font-lock-syntactic-keywords.
(gdb-script-mode): Use it.

* lisp/progmodes/js.el (js--regexp-literal): Define while compiling.
(js-syntax-propertize-function): New var; replaces
js-font-lock-syntactic-keywords.
(js-mode): Use it.

* lisp/progmodes/make-mode.el (makefile-syntax-propertize-function):
New var; replaces makefile-font-lock-syntactic-keywords.
(makefile-mode): Use it.
(makefile-imake-mode): Adjust.

* lisp/progmodes/mixal-mode.el (mixal-syntax-propertize-function): New var;
replaces mixal-font-lock-syntactic-keywords.
(mixal-mode): Use it.

* lisp/progmodes/octave-mod.el (octave-syntax-propertize-sqs): New function
to replace octave-font-lock-close-quotes.
(octave-syntax-propertize-function): New function to replace
octave-font-lock-syntactic-keywords.
(octave-mode): Use it.

* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): New fun to
replace perl-font-lock-syntactic-keywords.
(perl-syntax-propertize-special-constructs): New fun to replace
perl-font-lock-special-syntactic-constructs.
(perl-font-lock-syntactic-face-function): New fun.
(perl-mode): Use it.

* lisp/progmodes/python.el (python-syntax-propertize-function): New var to
replace python-font-lock-syntactic-keywords.
(python-mode): Use it.
(python-quote-syntax): Simplify and adjust to new use.

* lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
Define while compiling.
(ruby-here-doc-end-re, ruby-here-doc-beg-match)
(ruby-font-lock-syntactic-keywords, ruby-comment-beg-syntax)
(syntax-ppss, ruby-in-ppss-context-p, ruby-in-here-doc-p)
(ruby-here-doc-find-end, ruby-here-doc-beg-syntax)
(ruby-here-doc-end-syntax): Only define when
syntax-propertize is not available.
(ruby-syntax-propertize-function, ruby-syntax-propertize-heredoc):
New functions.
(ruby-in-ppss-context-p): Update to new syntax of heredocs.
(electric-indent-chars): Silence bytecompiler.
(ruby-mode): Use prog-mode, syntax-propertize-function, and
electric-indent-chars.

* lisp/progmodes/sh-script.el (sh-st-symbol): Remove.
(sh-font-lock-close-heredoc, sh-font-lock-open-heredoc): Add eol arg.
(sh-font-lock-flush-syntax-ppss-cache, sh-font-lock-here-doc): Remove.
(sh-font-lock-quoted-subshell): Assume we've already matched $(.
(sh-font-lock-paren): Set syntax-multiline.
(sh-font-lock-syntactic-keywords): Remove.
(sh-syntax-propertize-function): New function to replace it.
(sh-mode): Use it.

* lisp/progmodes/simula.el (simula-syntax-propertize-function): New var to
replace simula-font-lock-syntactic-keywords.
(simula-mode): Use it.

* lisp/progmodes/tcl.el (tcl-syntax-propertize-function): New var to
replace tcl-font-lock-syntactic-keywords.
(tcl-mode): Use it.

* lisp/progmodes/vhdl-mode.el (vhdl-mode): Use syntax-propertize-function
if available.
(vhdl-fontify-buffer): Adjust.

* lisp/textmodes/bibtex.el (bibtex-mode): Use syntax-propertize-function.

* lisp/textmodes/reftex.el (font-lock-syntactic-keywords): Don't declare
since we don't use it.

* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize-function): New var to
replace sgml-font-lock-syntactic-keywords.
(sgml-mode): Use it.

* lisp/textmodes/tex-mode.el (tex-common-initialization, doctex-mode):
Use syntax-propertize-function.

* lisp/textmodes/texinfo.el (texinfo-syntax-propertize-function): New fun
to replace texinfo-font-lock-syntactic-keywords.
(texinfo-mode): Use it.

* test/indent/octave.m: Remove some `fixindent' not needed any more.
2010-09-11 01:13:42 +02:00
Agustín Martín
36f7d36669 ispell.el: Improve comments. XEmacs compatibility changes.
* textmodes/ispell.el (ispell-init-process): Improve comments.
  XEmacs compatibility changes regarding (add-hook) 'local option
  and (set-process-query-on-exit-flag).
2010-09-10 13:20:51 +02:00
Agustín Martín
73b4d51a0a textmodes/ispell.el (ispell-valid-dictionary-list): Simplify logic. 2010-09-08 16:54:00 +02:00
Agustín Martín
308e764f26 Make sure original ispell arg list is initialized in (ispell-start-process).
* textmodes/ispell.el (ispell-start-process): Make sure original
  arg list is properly initialized (Bug#6993, Bug#6994).
2010-09-07 20:01:23 +02:00
Chong Yidong
1099930585 Merge changes from emacs-23 branch. 2010-09-06 12:38:03 -04:00
Stefan Monnier
5abf15563a Avoid global recursive calls to kill-buffer-hooks, and fit into 80 cols.
* lisp/textmodes/ispell.el (ispell-process-buffer-name): Remove.
(ispell-start-process): Avoid setq and simplify logic.
(ispell-init-process): Setup kill-buffer-hook locally when needed.
(kill-buffer-hook): Don't use it globally with code that uses
expand-file-name since that may call kill-buffer via
code_conversion_restore.
2010-09-04 20:47:29 +02:00
Agustín Martín
567efba906 ispell.el: better `default-directory' and kill-ispell-on-exit handling
* textmodes/ispell.el (ispell-init-process): Use "~/" as
 `default-directory' unless using Ispell per-directory personal
 dictionaries and not in a mini-buffer under XEmacs.
 (kill-buffer-hook): Do not kill ispell process on exit when
 `ispell-process-directory' is "~/". (Bug#6143)
2010-09-02 14:37:29 +02:00
Stefan Monnier
1e05f3876f Update email of Roland Winkler <winkler@gnu.org> 2010-09-02 13:47:15 +02:00
Lars Magne Ingebrigtsen
53080505af Remove arch-tags from all files, since these are no longer needed. 2010-09-02 00:55:51 +00:00
Chong Yidong
61f7096c3b * textmodes/nroff-mode.el (nroff-view): New command.
(nroff-mode-map): Bind it to C-c C-c.
2010-08-31 14:04:26 -04:00
Chong Yidong
bd78fa1d54 Add "Package:" file headers to denote built-in packages. 2010-08-29 12:17:13 -04:00
Kevin Ryde
be7748e70a * textmodes/flyspell.el (flyspell-check-tex-math-command): Doc fix
(Bug#5651).
2010-08-24 16:58:07 -04:00
Stefan Monnier
3311d1c27f * lisp/textmodes/fill.el (justify-current-line): Don't add 1 to nspaces
when justifying.  It seems useless and harmful for ncols=1.

Fixes: debbugs:6738
2010-08-02 12:25:27 +02:00
Agustín Martín
fd5539c6de Improve ispell.el word completion handling.
* ispell.el (ispell-alternate-dictionary): Use file-readable-p.
  Return nil if no word-list is found at default locations.
 (ispell-complete-word-dict): Default to nil.
 (ispell-command-loop): Use 'word-list' when using lookup-words.
 (lookup-words): Use ispell-complete-word-dict or
 ispell-alternate-dictionary.  Check for word-list availability
 and handle errors if needed with better messages (Bug#6539).
 (ispell-complete-word): Use ispell-complete-word-dict or
 ispell-alternate-dictionary.
2010-07-07 12:30:57 +02:00
Agustín Martín
9f446b6ff1 ispell.el (ispell-init-process): Make sure ispell and default directories are expanded. 2010-06-25 10:28:01 +02:00
Agustín Martín
c11a5a9cab Make sure `flyspell-word' checks word after (flyspell-check-previous-highlighted-word) run. 2010-06-25 10:19:11 +02:00
Glenn Morris
6555773f3f Minor simplification.
* lisp/textmodes/texinfmt.el (texinfo-format-region)
(texinfo-raise-lower-sections, texinfo-format-separate-node)
(texinfo-itemize-item, texinfo-multitable-item, texinfo-alias)
(texinfo-format-option, texinfo-noindent):
Use line-beginning-position and line-end-position.
2010-06-22 01:10:26 -07:00
Agustín Martín
26508c03ce ispell.el (ispell-aspell-find-dictionary): Fix regexp for full xx_YY search.
This is needed for languages like Portuguese where there are aspell dicts
for pt_BR and pt_PT, not for plain pt. If we strip country part 
`ispell-aspell-find-dictionary' does not find dicts for portuguese.
2010-06-17 16:44:34 +02:00
Agustín Martín
30d7ac37e5 ispell.el: Fix portuguese casechars/not-casechars for missing 'çÇ'. (bug#6434). 2010-06-16 15:42:59 +02:00
Stefan Monnier
d355a0b791 Replace Lisp calls to delete-backward-char by delete-char.
* bs.el, expand.el, ido.el, image-dired.el, lpr.el, pcomplete.el,
skeleton.el, term.el, time.el, wid-edit.el, woman.el,
calc/calc-graph.el, calc/calc-help.el, calc/calc-incom.el,
calc/calc.el, emacs-cl-extra.el, emacs-cl-loaddefs.el,
emulation/cua-rect.el, emulation/viper-ex.el, eshell/esh-test.el,
eshell/eshell.el, gnus/gnus-uu.el, gnus/nndoc.el, gnus/nnrss.el,
gnus/rfc2047.el, gnus/utf7.el, international/utf-7.el,
language/ethio-util.el, mh-e/mh-alias.el, mh-e/mh-search.el,
net/imap.el, net/rcirc.el, obsolete/complete.el, play/decipher.el,
progmodes/ada-mode.el, progmodes/cc-awk.el, progmodes/dcl-mode.el,
progmodes/ps-mode.el, progmodes/verilog-mode.el,
progmodes/vhdl-mode.el, textmodes/bibtex.el, textmodes/fill.el,
textmodes/reftex-auc.el, textmodes/rst.el, textmodes/sgml-mode.el,
textmodes/table.el, textmodes/texinfmt.el: Replace Lisp calls to
delete-backward-char by calls to delete-char.
2010-05-24 22:11:08 -04:00
Stefan Monnier
171eda5358 Merge from emacs-23 2010-05-24 20:54:13 -04:00
Stefan Monnier
ab0c07c020 * textmodes/fill.el (fill-region): Don't fill past the end.
Fixes: debbugs:6201
2010-05-18 23:51:55 -04:00
Chong Yidong
2ef3c1449c Add TeX open-block and close-block keybindings to SGML, and vice versa.
* textmodes/tex-mode.el (tex-mode-map): Bind C-c C-t to
latex-open-block and C-c / to latex-close-block.

* textmodes/sgml-mode.el (sgml-mode-map): Bind C-c C-o to sgml-tag
and C-c C-e to sgml-close-tag.
2010-05-13 17:52:20 -04:00
Agustín Martín
57ff5d7b96 Do not ispell-kill-ispell over and over when spellchecking minibuffer contents.
* ispell.el (ispell-init-process): Do not kill ispell process 
everytime when spellchecking from the minibuffer (bug#6143).
2010-05-13 12:36:03 +02:00
Stefan Monnier
5b3a105e67 Highlight vendor specific properties.
* textmodes/css-mode.el (css-proprietary-nmstart-re): New var.
(css-proprietary-property): New face.
(css-font-lock-keywords): Use them.
2010-05-07 13:47:56 -04:00
Stefan Monnier
05623156f3 * textmodes/dns-mode.el (auto-mode-alist): Add entry for .zone files.
* files.el (auto-mode-alist): Remove redundant entries.
2010-05-07 10:18:27 -04:00
Stefan Monnier
56eb09046e Use define-minor-mode where applicable.
* mh-show.el (mh-showing-mode): Move function to mh-e.el.
* mh-e.el (mh-showing-mode):
* url-dired.el (url-dired-minor-mode):
* org-table.el (orgtbl-mode):
* view.el (view-mode):
* type-break.el (type-break-query-mode)
(type-break-mode-line-message-mode):
* textmodes/reftex.el (reftex-mode):
* term/vt100.el (vt100-wide-mode):
* tar-mode.el (tar-subfile-mode):
* savehist.el (savehist-mode):
* ibuf-ext.el (ibuffer-auto-mode):
* composite.el (auto-composition-mode):
* progmodes/vhdl-mode.el (vhdl-electric-mode, vhdl-stutter-mode):
Use define-minor-mode.
(vhdl-mode): Use static mode-line format.
(vhdl-mode-line-update): Delete.
(vhdl-create-mode-menu, vhdl-activate-customizations)
(vhdl-hs-minor-mode): Don't bother calling it.
2010-05-02 22:29:46 -04:00
Agustín Martín
681c14d0b4 ispell.el: Kill ispell process when killing its associated buffer.
(ispell-init-process,ispell-kill-ispell,kill-buffer-hook): 
Kill ispell process when killing its associated buffer.
2010-04-27 12:44:44 +02:00
Agustín Martín
7fd689fc4a ispell.el (ispell-init-process): Fix personal dictionary condition in default directory check. 2010-04-27 12:35:00 +02:00
Stefan Monnier
6e104790e7 Merge from emacs-23 2010-04-19 11:07:52 -04:00
Chong Yidong
8afe2ec6f9 Revert 2008-03-03 change (Bug#5821).
* textmodes/tex-mode.el (latex-mode): Revert 2008-03-03 change to
paragraph-separate (Bug#5821).
2010-04-06 11:43:08 -04:00
Stefan Monnier
857387516c Merge from emacs-23 branch 2010-03-30 22:37:57 -04:00
Tomas Abrahamsson
b42da3879c * textmodes/artist.el (artist-mode): Fix typo in docstring. (Bug#5807) 2010-03-30 23:41:01 +02:00
Stefan Monnier
e867cb5d30 Merge from `emacs-23'. 2010-03-24 14:02:56 -04:00
Glenn Morris
4c3a215a93 * textmodes/flyspell.el (sgml-lexical-context): Autoload it. (Bug#5752) 2010-03-22 19:37:11 -07:00
Juanma Barranquero
c8de140b34 Fix typos in docstrings.
* image-dired.el (image-dired-display-thumbs): Fix typo in docstring.
  (image-dired-read-comment): Doc fix.

* json.el (json-object-type, json-array-type, json-key-type, json-false)
  (json-null, json-read-number):
* minibuffer.el (completion-in-region-functions):
* calendar/cal-tex.el (cal-tex-daily-end, cal-tex-number-weeks)
  (cal-tex-cursor-week):
* emacs-lisp/trace.el (trace-function):
* eshell/em-basic.el (eshell/printnl):
* eshell/em-dirs.el (eshell-last-dir-ring, eshell-parse-drive-letter)
  (eshell-read-last-dir-ring, eshell-write-last-dir-ring):
* obsolete/levents.el (allocate-event, event-key, event-object)
  (event-point, event-process, event-timestamp, event-to-character)
  (event-window, event-x, event-x-pixel, event-y, event-y-pixel):
* textmodes/reftex-vars.el (reftex-index-macros-builtin)
  (reftex-section-levels, reftex-auto-recenter-toc, reftex-toc-mode-hook)
  (reftex-cite-punctuation, reftex-search-unrecursed-path-first)
  (reftex-highlight-selection): Fix typos in docstrings.
2010-03-22 17:50:29 +01:00
Glenn Morris
2b1400b9d0 Use faces not variables for font-lock customization in rst.el.
* textmodes/rst.el: (rst-block, rst-external, rst-definition, rst-directive)
(rst-comment, rst-emphasis1, rst-emphasis2, rst-literal, rst-reference):
New faces.
(rst-block-face, rst-external-face, rst-definition-face)
(rst-directive-face, rst-comment-face, rst-emphasis1-face)
(rst-emphasis2-face, rst-literal-face, rst-reference-face):
Make obsolete.
(rst-font-lock-keywords-function): Update for above changes.
2010-03-20 11:17:59 -07:00
Chong Yidong
eba5b4dd16 Reorganize Custom groups.
* cus-edit.el (processes): Remove from development group.
(oop, hypermedia): Delete group.
(net): New group.

* url/url-vars.el (url):
* net/browse-url.el (browse-url):
* net/xesam.el (xesam):
* net/tramp.el (tramp):
* net/goto-addr.el (goto-address):
* net/ange-ftp.el (ange-ftp): Put in net group.

* view.el (view): Remove from editing group.

* uniquify.el (uniquify): Put in files group.

* net/browse-url.el (browse-url):
* ps-print.el (postscript): Put in external group.

* cus-edit.el (outlines):
* textmodes/text-mode.el (text-mode-hook):
* textmodes/table.el (table):
* textmodes/picture.el (picture):
* outline.el (outlines): Put in wp group.

* nxml/nxml-mode.el (nxml): Remove from wp group.

* net/tramp-imap.el (tramp-imap): Put in tramp group.

* mail/metamail.el (metamail): Remove from hypermedia group.

* cus-edit.el (abbrev):
* whitespace.el (whitespace):
* vcursor.el (vcursor):
* reveal.el (reveal):
* hl-line.el (hl-line): Put in convenience group.

* epg-config.el (epg): Put in data group.

* emulation/pc-select.el (pc-select): Put in emulations group.

* calculator.el (calculator): Put in applications group.

* org/org.el (org): Remove from hypermedia group.
2010-03-12 12:47:22 -05:00
Chong Yidong
de3a1fe935 Fix more save-excursion warnings.
* textmodes/reftex-toc.el (reftex-toc-promote-prepare):
* emacs-lisp/elint.el (elint-add-required-env):
* cedet/semantic/db-find.el (semanticdb-find-translate-path-brutish-default):
* cedet/ede/make.el (ede-make-check-version):
* calendar/icalendar.el (icalendar--add-diary-entry):
* calc/calcalg2.el (math-tracing-integral): Use with-current-buffer instead of save-excursion.
2010-02-27 20:22:44 -05:00
Chong Yidong
05bbe066a6 * textmodes/flyspell.el (flyspell-word): Obey the offset specified
by ispell-parse-output (Bug#5575).
2010-02-16 09:23:44 -05:00
Glenn Morris
88fd78aeff Close bug#5562.
* textmodes/tex-mode.el (tex-bibtex-file): Expand the result of
tex-main-file before using it.  (Bug#5562)
2010-02-15 18:42:03 -08:00
Juanma Barranquero
fa5f7c5f63 Fix typos in docstrings.
* outline.el (outline-head-from-level):
* simple.el (with-wrapper-hook):
* cedet/ede.el (ede-run-target, project-delete-target)
  (project-dist-files, ede-name, ede-documentation, ede-parent-project)
  (ede-adebug-project, ede-adebug-project-parent)
  (ede-adebug-project-root):
* emacs-lisp/elint.el (elint-extra-errors, elint-current-buffer)
  (elint-defun, elint-buffer-env, elint-top-form-logged)
  (elint-unbound-variable):
* textmodes/reftex-toc.el (reftex-toc-newhead-from-alist):
2010-02-14 18:28:10 +01:00
Glenn Morris
3602064247 Improve docs of some transposition functions.
* simple.el (transpose-subr): Give it a doc-string.

* textmodes/paragraphs.el (transpose-paragraphs, transpose-sentences):
Doc fixes.
2010-02-13 11:29:25 -08:00
Juanma Barranquero
0e3742470a * textmodes/artist.el (artist-mt): Fix typos in docstring. 2010-02-11 01:02:43 +01:00
Juri Linkov
02ba126764 * textmodes/ispell.el (ispell-message-text-end): Remove final newline
from unidiff to allow function-line after @@.
2010-02-03 00:33:52 +02:00
Chong Yidong
f0bd0ad525 Fix sgml-maybe-name-self (Bug#5380).
* textmodes/sgml-mode.el (sgml-maybe-name-self): No need to
process last-command-event, as it is now decoded first (Bug#5380).
2010-01-21 09:03:10 -05:00
Juanma Barranquero
33972e8014 Fix typos in comments. 2010-01-18 04:58:35 +01:00