aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Morris2011-06-11 17:57:24 -0700
committerGlenn Morris2011-06-11 17:57:24 -0700
commita8955be718cb1263f7c3bb5987204bfbae85b806 (patch)
tree8de8c50af66427a12f42b0a5a53735994e22e686
parentf0d4059d8cc11c15b92e6bc816ee8e9cea841355 (diff)
downloademacs-a8955be718cb1263f7c3bb5987204bfbae85b806.tar.gz
emacs-a8955be718cb1263f7c3bb5987204bfbae85b806.zip
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.
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/progmodes/f90.el12
-rw-r--r--lisp/progmodes/fortran.el1
3 files changed, 9 insertions, 11 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 8d5f1517572..c14655699e7 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
12011-06-12 Glenn Morris <rgm@gnu.org>
2
3 * progmodes/fortran.el (fortran-mode-syntax-table):
4 * progmodes/f90.el (f90-mode-syntax-table):
5 Set % to punctuation. (Bug#8820)
6 (f90-find-tag-default): Remove, no longer needed.
7
12011-06-12 Daniel Colascione <dan.colascione@gmail.com> 82011-06-12 Daniel Colascione <dan.colascione@gmail.com>
2 9
3 * emacs-lisp/syntax.el (syntax-ppss): Clarify which items are invalid. 10 * emacs-lisp/syntax.el (syntax-ppss): Clarify which items are invalid.
diff --git a/lisp/progmodes/f90.el b/lisp/progmodes/f90.el
index 28f5d329fd5..849b9c0c3f7 100644
--- a/lisp/progmodes/f90.el
+++ b/lisp/progmodes/f90.el
@@ -629,6 +629,7 @@ Can be overridden by the value of `font-lock-maximum-decoration'.")
629 (modify-syntax-entry ?= "." table) 629 (modify-syntax-entry ?= "." table)
630 (modify-syntax-entry ?* "." table) 630 (modify-syntax-entry ?* "." table)
631 (modify-syntax-entry ?/ "." table) 631 (modify-syntax-entry ?/ "." table)
632 (modify-syntax-entry ?% "." table) ; bug#8820
632 ;; I think that the f95 standard leaves the behavior of \ 633 ;; I think that the f95 standard leaves the behavior of \
633 ;; unspecified, but that f2k will require it to be non-special. 634 ;; unspecified, but that f2k will require it to be non-special.
634 ;; Use `f90-backslash-not-special' to change. 635 ;; Use `f90-backslash-not-special' to change.
@@ -2199,17 +2200,6 @@ CHANGE-WORD should be one of 'upcase-word, 'downcase-word, 'capitalize-word."
2199 (save-excursion 2200 (save-excursion
2200 (nth 1 (f90-beginning-of-subprogram)))) 2201 (nth 1 (f90-beginning-of-subprogram))))
2201 2202
2202(defun f90-find-tag-default ()
2203 "Function to use for `find-tag-default-function' property in F90 mode."
2204 (let ((tag (find-tag-default)))
2205 (or (and tag
2206 ;; See bug#7919. TODO I imagine there are other cases...?
2207 (string-match "%\\([^%]+\\)\\'" tag)
2208 (match-string-no-properties 1 tag))
2209 tag)))
2210
2211(put 'f90-mode 'find-tag-default-function 'f90-find-tag-default)
2212
2213(defun f90-backslash-not-special (&optional all) 2203(defun f90-backslash-not-special (&optional all)
2214 "Make the backslash character (\\) be non-special in the current buffer. 2204 "Make the backslash character (\\) be non-special in the current buffer.
2215With optional argument ALL, change the default for all present 2205With optional argument ALL, change the default for all present
diff --git a/lisp/progmodes/fortran.el b/lisp/progmodes/fortran.el
index f03d2013467..d30b9673d09 100644
--- a/lisp/progmodes/fortran.el
+++ b/lisp/progmodes/fortran.el
@@ -600,6 +600,7 @@ Used in the Fortran entry in `hs-special-modes-alist'.")
600 (modify-syntax-entry ?= "." table) 600 (modify-syntax-entry ?= "." table)
601 (modify-syntax-entry ?* "." table) 601 (modify-syntax-entry ?* "." table)
602 (modify-syntax-entry ?/ "." table) 602 (modify-syntax-entry ?/ "." table)
603 (modify-syntax-entry ?% "." table) ; bug#8820
603 (modify-syntax-entry ?\' "\"" table) 604 (modify-syntax-entry ?\' "\"" table)
604 (modify-syntax-entry ?\" "\"" table) 605 (modify-syntax-entry ?\" "\"" table)
605 ;; Consistent with GNU Fortran's default -- see the manual. 606 ;; Consistent with GNU Fortran's default -- see the manual.