Give % punctuation syntax in fortran modes (bug#8820)

* lisp/progmodes/fortran.el (fortran-mode-syntax-table):
* lisp/progmodes/f90.el (f90-mode-syntax-table):
Set % to punctuation.
(f90-find-tag-default): Remove, no longer needed.
This commit is contained in:
Glenn Morris 2011-06-11 17:57:24 -07:00
parent f0d4059d8c
commit a8955be718
3 changed files with 9 additions and 11 deletions

View file

@ -1,3 +1,10 @@
2011-06-12 Glenn Morris <rgm@gnu.org>
* progmodes/fortran.el (fortran-mode-syntax-table):
* progmodes/f90.el (f90-mode-syntax-table):
Set % to punctuation. (Bug#8820)
(f90-find-tag-default): Remove, no longer needed.
2011-06-12 Daniel Colascione <dan.colascione@gmail.com>
* emacs-lisp/syntax.el (syntax-ppss): Clarify which items are invalid.

View file

@ -629,6 +629,7 @@ Can be overridden by the value of `font-lock-maximum-decoration'.")
(modify-syntax-entry ?= "." table)
(modify-syntax-entry ?* "." table)
(modify-syntax-entry ?/ "." table)
(modify-syntax-entry ?% "." table) ; bug#8820
;; I think that the f95 standard leaves the behavior of \
;; unspecified, but that f2k will require it to be non-special.
;; Use `f90-backslash-not-special' to change.
@ -2199,17 +2200,6 @@ CHANGE-WORD should be one of 'upcase-word, 'downcase-word, 'capitalize-word."
(save-excursion
(nth 1 (f90-beginning-of-subprogram))))
(defun f90-find-tag-default ()
"Function to use for `find-tag-default-function' property in F90 mode."
(let ((tag (find-tag-default)))
(or (and tag
;; See bug#7919. TODO I imagine there are other cases...?
(string-match "%\\([^%]+\\)\\'" tag)
(match-string-no-properties 1 tag))
tag)))
(put 'f90-mode 'find-tag-default-function 'f90-find-tag-default)
(defun f90-backslash-not-special (&optional all)
"Make the backslash character (\\) be non-special in the current buffer.
With optional argument ALL, change the default for all present

View file

@ -600,6 +600,7 @@ Used in the Fortran entry in `hs-special-modes-alist'.")
(modify-syntax-entry ?= "." table)
(modify-syntax-entry ?* "." table)
(modify-syntax-entry ?/ "." table)
(modify-syntax-entry ?% "." table) ; bug#8820
(modify-syntax-entry ?\' "\"" table)
(modify-syntax-entry ?\" "\"" table)
;; Consistent with GNU Fortran's default -- see the manual.