]> gitweb.factorcode.org Git - factor.git/commitdiff
FUEL: ensures fuel-listener-mode and factor-mode has the same syntax table
authorBjörn Lindqvist <bjourne@gmail.com>
Wed, 5 Jul 2017 22:33:22 +0000 (00:33 +0200)
committerBjörn Lindqvist <bjourne@gmail.com>
Wed, 5 Jul 2017 22:34:11 +0000 (00:34 +0200)
misc/fuel/factor-mode.el
misc/fuel/fuel-base.el
misc/fuel/fuel-listener.el

index 1c3b0e01588b83798dea595c33aabbf3478763f2..52374c3fc786b34a826a42de64f3b8573a1c0b25 100644 (file)
@@ -704,43 +704,7 @@ With prefix, non-existing files will be created."
 \f
 ;;; factor-mode:
 
-;; I think it is correct to put almost all punctuation characters in
-;; the word class because Factor words can be made up of almost
-;; anything. Otherwise you get incredibly annoying regexps.
-(defvar factor-mode-syntax-table
-  (let ((table (make-syntax-table prog-mode-syntax-table)))
-    (modify-syntax-entry ?\" "\"" table)
-    (modify-syntax-entry ?# "_" table)
-    (modify-syntax-entry ?! "_" table)
-    (modify-syntax-entry ?\n ">   " table)
-    (modify-syntax-entry ?$ "_" table)
-    (modify-syntax-entry ?@ "_" table)
-    (modify-syntax-entry ?? "_" table)
-    (modify-syntax-entry ?_ "_" table)
-    (modify-syntax-entry ?: "_" table)
-    (modify-syntax-entry ?< "_" table)
-    (modify-syntax-entry ?> "_" table)
-    (modify-syntax-entry ?. "_" table)
-    (modify-syntax-entry ?, "_" table)
-    (modify-syntax-entry ?& "_" table)
-    (modify-syntax-entry ?| "_" table)
-    (modify-syntax-entry ?% "_" table)
-    (modify-syntax-entry ?= "_" table)
-    (modify-syntax-entry ?/ "_" table)
-    (modify-syntax-entry ?+ "_" table)
-    (modify-syntax-entry ?* "_" table)
-    (modify-syntax-entry ?- "_" table)
-    (modify-syntax-entry ?\; "_" table)
-    (modify-syntax-entry ?\' "_" table)
-    (modify-syntax-entry ?^ "_" table)
-    (modify-syntax-entry ?~ "_" table)
-    (modify-syntax-entry ?\( "()" table)
-    (modify-syntax-entry ?\) ")(" table)
-    (modify-syntax-entry ?\{ "(}" table)
-    (modify-syntax-entry ?\} "){" table)
-    (modify-syntax-entry ?\[ "(]" table)
-    (modify-syntax-entry ?\] ")[" table)
-    table))
+(defvar factor-mode-syntax-table (fuel-syntax-table))
 
 (defun factor-setup-buffer-font-lock ()
   (setq-local comment-start "! ")
index 841f5869f336e5348314a8a30aa9026b1ccf8513..8044b11102282df713949053e74a3b872ed84f7a 100644 (file)
       (save-buffer buffer))
     (cons file buffer)))
 
-\f
+;; I think it is correct to put almost all punctuation characters in
+;; the word class because Factor words can be made up of almost
+;; anything. Otherwise you get incredibly annoying regexps.
+(defun fuel-syntax-table ()
+    (let ((table (make-syntax-table prog-mode-syntax-table)))
+    (modify-syntax-entry ?\" "\"" table)
+    (modify-syntax-entry ?# "_" table)
+    (modify-syntax-entry ?! "_" table)
+    (modify-syntax-entry ?\n ">   " table)
+    (modify-syntax-entry ?$ "_" table)
+    (modify-syntax-entry ?@ "_" table)
+    (modify-syntax-entry ?? "_" table)
+    (modify-syntax-entry ?_ "_" table)
+    (modify-syntax-entry ?: "_" table)
+    (modify-syntax-entry ?< "_" table)
+    (modify-syntax-entry ?> "_" table)
+    (modify-syntax-entry ?. "_" table)
+    (modify-syntax-entry ?, "_" table)
+    (modify-syntax-entry ?& "_" table)
+    (modify-syntax-entry ?| "_" table)
+    (modify-syntax-entry ?% "_" table)
+    (modify-syntax-entry ?= "_" table)
+    (modify-syntax-entry ?/ "_" table)
+    (modify-syntax-entry ?+ "_" table)
+    (modify-syntax-entry ?* "_" table)
+    (modify-syntax-entry ?- "_" table)
+    (modify-syntax-entry ?\; "_" table)
+    (modify-syntax-entry ?\' "_" table)
+    (modify-syntax-entry ?^ "_" table)
+    (modify-syntax-entry ?~ "_" table)
+    (modify-syntax-entry ?\( "()" table)
+    (modify-syntax-entry ?\) ")(" table)
+    (modify-syntax-entry ?\{ "(}" table)
+    (modify-syntax-entry ?\} "){" table)
+    (modify-syntax-entry ?\[ "(]" table)
+    (modify-syntax-entry ?\] ")[" table)
+    table))
+
 (provide 'fuel-base)
 
 ;;; fuel-base.el ends here
index 2d1b182a7508817061b816e787457518c323853d..2339b623f8dc0d527858637fcf9a0bdca4ff23ab 100644 (file)
@@ -266,7 +266,8 @@ the vocabulary name."
   (setq-local comint-use-prompt-regexp nil)
   (setq-local comint-prompt-read-only fuel-listener-prompt-read-only-p)
   (fuel-listener--setup-completion)
-  (fuel-listener--setup-stack-mode))
+  (fuel-listener--setup-stack-mode)
+  (set-syntax-table (fuel-syntax-table)))
 
 (define-key fuel-listener-mode-map "\C-a" 'fuel-listener--bol)