aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThien-Thi Nguyen2003-03-10 11:35:43 +0000
committerThien-Thi Nguyen2003-03-10 11:35:43 +0000
commitc676c4e507760a119b497574f5523f804491fb64 (patch)
tree2e9f280594c6850eca8b2de8b7c3221f771bbed8
parentc25c4856f3c0acff9e64dba0a63e3b18551e5b5c (diff)
downloademacs-c676c4e507760a119b497574f5523f804491fb64.tar.gz
emacs-c676c4e507760a119b497574f5523f804491fb64.zip
(scheme-mode-syntax-table): Construct
w/o using `with-syntax-table'.
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/progmodes/scheme.el100
2 files changed, 55 insertions, 50 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index e219f08f00a..d823708aebe 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12003-03-10 Thien-Thi Nguyen <ttn@gnu.org>
2
3 * progmodes/scheme.el (scheme-mode-syntax-table): Construct
4 w/o using `with-syntax-table'.
5
12003-03-10 John Paul Wallington <jpw@gnu.org> 62003-03-10 John Paul Wallington <jpw@gnu.org>
2 7
3 * ebuff-menu.el (electric-buffer-update-highlight): Do nothing 8 * ebuff-menu.el (electric-buffer-update-highlight): Do nothing
diff --git a/lisp/progmodes/scheme.el b/lisp/progmodes/scheme.el
index 7afdbf4cc03..9824f5c3e6c 100644
--- a/lisp/progmodes/scheme.el
+++ b/lisp/progmodes/scheme.el
@@ -56,55 +56,54 @@
56(defvar scheme-mode-syntax-table 56(defvar scheme-mode-syntax-table
57 (let ((st (make-syntax-table)) 57 (let ((st (make-syntax-table))
58 (i 0)) 58 (i 0))
59 (with-syntax-table st 59
60 60 ;; Default is atom-constituent.
61 ;; Default is atom-constituent. 61 (while (< i 256)
62 (while (< i 256) 62 (modify-syntax-entry i "_ " st)
63 (modify-syntax-entry i "_ ") 63 (setq i (1+ i)))
64 (setq i (1+ i))) 64
65 65 ;; Word components.
66 ;; Word components. 66 (setq i ?0)
67 (setq i ?0) 67 (while (<= i ?9)
68 (while (<= i ?9) 68 (modify-syntax-entry i "w " st)
69 (modify-syntax-entry i "w ") 69 (setq i (1+ i)))
70 (setq i (1+ i))) 70 (setq i ?A)
71 (setq i ?A) 71 (while (<= i ?Z)
72 (while (<= i ?Z) 72 (modify-syntax-entry i "w " st)
73 (modify-syntax-entry i "w ") 73 (setq i (1+ i)))
74 (setq i (1+ i))) 74 (setq i ?a)
75 (setq i ?a) 75 (while (<= i ?z)
76 (while (<= i ?z) 76 (modify-syntax-entry i "w " st)
77 (modify-syntax-entry i "w ") 77 (setq i (1+ i)))
78 (setq i (1+ i))) 78
79 79 ;; Whitespace
80 ;; Whitespace 80 (modify-syntax-entry ?\t " " st)
81 (modify-syntax-entry ?\t " ") 81 (modify-syntax-entry ?\n "> " st)
82 (modify-syntax-entry ?\n "> ") 82 (modify-syntax-entry ?\f " " st)
83 (modify-syntax-entry ?\f " ") 83 (modify-syntax-entry ?\r " " st)
84 (modify-syntax-entry ?\r " ") 84 (modify-syntax-entry ? " " st)
85 (modify-syntax-entry ? " ") 85
86 86 ;; These characters are delimiters but otherwise undefined.
87 ;; These characters are delimiters but otherwise undefined. 87 ;; Brackets and braces balance for editing convenience.
88 ;; Brackets and braces balance for editing convenience. 88 (modify-syntax-entry ?\[ "(] " st)
89 (modify-syntax-entry ?\[ "(] ") 89 (modify-syntax-entry ?\] ")[ " st)
90 (modify-syntax-entry ?\] ")[ ") 90 (modify-syntax-entry ?{ "(} " st)
91 (modify-syntax-entry ?{ "(} ") 91 (modify-syntax-entry ?} "){ " st)
92 (modify-syntax-entry ?} "){ ") 92 (modify-syntax-entry ?\| " 23" st)
93 (modify-syntax-entry ?\| " 23") 93
94 94 ;; Other atom delimiters
95 ;; Other atom delimiters 95 (modify-syntax-entry ?\( "() " st)
96 (modify-syntax-entry ?\( "() ") 96 (modify-syntax-entry ?\) ")( " st)
97 (modify-syntax-entry ?\) ")( ") 97 (modify-syntax-entry ?\; "< " st)
98 (modify-syntax-entry ?\; "< ") 98 (modify-syntax-entry ?\" "\" " st)
99 (modify-syntax-entry ?\" "\" ") 99 (modify-syntax-entry ?' " p" st)
100 (modify-syntax-entry ?' " p") 100 (modify-syntax-entry ?` " p" st)
101 (modify-syntax-entry ?` " p") 101
102 102 ;; Special characters
103 ;; Special characters 103 (modify-syntax-entry ?, "_ p" st)
104 (modify-syntax-entry ?, "_ p") 104 (modify-syntax-entry ?@ "_ p" st)
105 (modify-syntax-entry ?@ "_ p") 105 (modify-syntax-entry ?# "_ p14" st)
106 (modify-syntax-entry ?# "_ p14") 106 (modify-syntax-entry ?\\ "\\ " st)
107 (modify-syntax-entry ?\\ "\\ "))
108 st)) 107 st))
109 108
110(defvar scheme-mode-abbrev-table nil) 109(defvar scheme-mode-abbrev-table nil)
@@ -167,7 +166,8 @@
167 '((scheme-font-lock-keywords 166 '((scheme-font-lock-keywords
168 scheme-font-lock-keywords-1 scheme-font-lock-keywords-2) 167 scheme-font-lock-keywords-1 scheme-font-lock-keywords-2)
169 nil t (("+-*/.<>=!?$%_&~^:" . "w")) beginning-of-defun 168 nil t (("+-*/.<>=!?$%_&~^:" . "w")) beginning-of-defun
170 (font-lock-mark-block-function . mark-defun)))) 169 (font-lock-mark-block-function . mark-defun)
170 (font-lock-syntactic-face-function . lisp-font-lock-syntactic-face-function))))
171 171
172(defvar scheme-mode-line-process "") 172(defvar scheme-mode-line-process "")
173 173