summaryrefslogtreecommitdiff
path: root/lisp/case-table.el
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1997-05-23 18:23:31 +0000
committerRichard M. Stallman <rms@gnu.org>1997-05-23 18:23:31 +0000
commitc9e83877851bb4ebe80bf2ed3d2fba393345af98 (patch)
treed316bf239482d67f2b829b3cc95fdc7aae295326 /lisp/case-table.el
parentf5e52cd3037bfb261c7346ec9f6ca79f9f23eb89 (diff)
downloademacs-c9e83877851bb4ebe80bf2ed3d2fba393345af98.tar.gz
(set-case-syntax-1): New function.
(set-case-syntax-delims): Use set-case-syntax-1. (set-case-syntax-pair, set-case-syntax): Likewise.
Diffstat (limited to 'lisp/case-table.el')
-rw-r--r--lisp/case-table.el16
1 files changed, 11 insertions, 5 deletions
diff --git a/lisp/case-table.el b/lisp/case-table.el
index d34cdc37db9..5f5e6699b95 100644
--- a/lisp/case-table.el
+++ b/lisp/case-table.el
@@ -71,6 +71,12 @@
(set-char-table-extra-slot copy 2 nil)
copy))
+(defsubst set-case-syntax-1 (char)
+ "Offset CHAR by `set-case-syntax-offset' if CHAR is a non-ASCII 8-bit char."
+ (if (and (>= char 128) (< char 256))
+ (+ char set-case-syntax-offset)
+ char))
+
;;;###autoload
(defun set-case-syntax-delims (l r table)
"Make characters L and R a matching pair of non-case-converting delimiters.
@@ -78,8 +84,8 @@ This sets the entries for L and R in TABLE, which is a string
that will be used as the downcase part of a case table.
It also modifies `standard-syntax-table' to
indicate left and right delimiters."
- (setq l (+ set-case-syntax-offset l))
- (setq r (+ set-case-syntax-offset r))
+ (setq l (set-case-syntax-1 l))
+ (setq r (set-case-syntax-1 r))
(aset table l l)
(aset table r r)
;; Clear out the extra slots so that they will be
@@ -99,8 +105,8 @@ This sets the entries for characters UC and LC in TABLE, which is a string
that will be used as the downcase part of a case table.
It also modifies `standard-syntax-table' to give them the syntax of
word constituents."
- (setq uc (+ set-case-syntax-offset uc))
- (setq lc (+ set-case-syntax-offset lc))
+ (setq uc (set-case-syntax-1 uc))
+ (setq lc (set-case-syntax-1 lc))
(aset table uc lc)
(aset table lc lc)
(set-char-table-extra-slot table 0 nil)
@@ -116,7 +122,7 @@ This sets the entry for character C in TABLE, which is a string
that will be used as the downcase part of a case table.
It also modifies `standard-syntax-table'.
SYNTAX should be \" \", \"w\", \".\" or \"_\"."
- (setq c (+ set-case-syntax-offset c))
+ (setq c (set-case-syntax-1 c))
(aset table c c)
(set-char-table-extra-slot table 0 nil)
(set-char-table-extra-slot table 1 nil)