]> git.eshelyaron.com Git - emacs.git/commitdiff
Remove Emacs 20 bug workaround in ebnf2ps (bug#39663)
authorMattias Engdegård <mattiase@acm.org>
Wed, 19 Feb 2020 21:08:22 +0000 (22:08 +0100)
committerMattias Engdegård <mattiase@acm.org>
Thu, 20 Feb 2020 14:52:23 +0000 (15:52 +0100)
* lisp/progmodes/ebnf2ps.el (ebnf-range-regexp): Remove.  All calls
replaced with a string equivalent to the returned value.

lisp/progmodes/ebnf-abn.el
lisp/progmodes/ebnf-bnf.el
lisp/progmodes/ebnf-dtd.el
lisp/progmodes/ebnf-ebx.el
lisp/progmodes/ebnf-iso.el
lisp/progmodes/ebnf-yac.el
lisp/progmodes/ebnf2ps.el

index dc6bd44e48205cd1fc46abd55a01e369debce718..bf9b0e961bac8b1318228fb334e277212e199728 100644 (file)
     (aset ebnf-abn-token-table ?\; 'comment)))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-abn-non-terminal-chars
-  (ebnf-range-regexp "-_0-9A-Za-z" ?\240 ?\377))
+  "-_0-9A-Za-z\u00a0-\u00ff")
 (defconst ebnf-abn-non-terminal-letter-chars
-  (ebnf-range-regexp "A-Za-z" ?\240 ?\377))
+  "A-Za-z\u00a0-\u00ff")
 
 
 (defun ebnf-abn-lex ()
@@ -572,9 +571,8 @@ See documentation for variable `ebnf-abn-lex'."
     (not eor-p)))
 
 
-;; replace the range "\177-\237" (see `ebnf-range-regexp').
 (defconst ebnf-abn-comment-chars
-  (ebnf-range-regexp "^\n\000-\010\016-\037" ?\177 ?\237))
+  "^\n\000-\010\016-\037\177\u0080-\u009f")
 
 
 (defun ebnf-abn-skip-comment ()
@@ -612,9 +610,8 @@ See documentation for variable `ebnf-abn-lex'."
   (ebnf-buffer-substring ebnf-abn-comment-chars))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-abn-string-chars
-  (ebnf-range-regexp " -!#-~" ?\240 ?\377))
+  " !#-~\u00a0-\u00ff")
 
 
 (defun ebnf-abn-string ()
index 583740d3617ff5f476b86a645276de211e87c1ee..4e11862c1dc0a4e8e664c8bdd764e770bb0ec189 100644 (file)
     (aset ebnf-bnf-token-table ebnf-lex-eop-char     'period)))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-bnf-non-terminal-chars
-  (ebnf-range-regexp "!#%&'*-,0-:<>@-Z\\\\^-z~" ?\240 ?\377))
+  "!#%&'*-,0-:<>@-Z\\\\^-z~\u00a0-\u00ff")
 
 
 (defun ebnf-bnf-lex ()
@@ -520,9 +519,8 @@ See documentation for variable `ebnf-bnf-lex'."
        ))))
 
 
-;; replace the range "\177-\237" (see `ebnf-range-regexp').
 (defconst ebnf-bnf-comment-chars
-  (ebnf-range-regexp "^\n\000-\010\016-\037" ?\177 ?\237))
+  "^\n\000-\010\016-\037\177\u0080-\u009f")
 
 
 (defun ebnf-bnf-skip-comment ()
index 7e824e487aa44bfd699438fd6681f942bcec60ca..bdebf0db2c17332ee3f91f1a27d092a79e9f94f0 100644 (file)
     (aset ebnf-dtd-token-table ?\] 'end-subset)))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-dtd-name-chars
-  (ebnf-range-regexp "-._:0-9A-Za-z" ?\240 ?\377))
+  "-._:0-9A-Za-z\u00a0-\u00ff")
 
 
 (defconst ebnf-dtd-decl-alist
@@ -1263,11 +1262,10 @@ See documentation for variable `ebnf-dtd-lex'."
     (format "%s%s;" start char)))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-dtd-double-string-chars
-  (ebnf-range-regexp "\t -!#-~" ?\240 ?\377))
+  "\t -!#-~\u00a0-\u00ff")
 (defconst ebnf-dtd-single-string-chars
-  (ebnf-range-regexp "\t -&(-~" ?\240 ?\377))
+  "\t -&(-~\u00a0-\u00ff")
 
 
 (defun ebnf-dtd-string (delim)
@@ -1287,11 +1285,10 @@ See documentation for variable `ebnf-dtd-lex'."
        (forward-char)))))
 
 
-;; replace the range "\177-\237" (see `ebnf-range-regexp').
 (defconst ebnf-dtd-comment-chars
-  (ebnf-range-regexp "^-\000-\010\013\014\016-\037" ?\177 ?\237))
+  "^-\000-\010\013\014\016-\037\177\u0080-\u009f")
 (defconst ebnf-dtd-filename-chars
-  (ebnf-range-regexp "^-\000-\037" ?\177 ?\237))
+  "^-\000-\037\177\u0080-\u009f")
 
 
 (defun ebnf-dtd-skip-comment ()
index 2ae6fb67569b8c1aa5752218623db6f50c7bd58b..20e2d4ca31c0c4741c66451190944432bae94b2e 100644 (file)
     (aset ebnf-ebx-token-table ?/  'comment)))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-ebx-non-terminal-chars
-  (ebnf-range-regexp "-_A-Za-z" ?\240 ?\377))
+  "-_A-Za-z\u00a0-\u00ff")
 (defconst ebnf-ebx-non-terminal-letter-chars
-  (ebnf-range-regexp "A-Za-z" ?\240 ?\377))
+  "A-Za-z\u00a0-\u00ff")
 
 
 (defun ebnf-ebx-lex ()
@@ -488,9 +487,8 @@ See documentation for variable `ebnf-ebx-lex'."
        ))))
 
 
-;; replace the range "\177-\237" (see `ebnf-range-regexp').
 (defconst ebnf-ebx-constraint-chars
-  (ebnf-range-regexp "^\000-\010\016-\037]" ?\177 ?\237))
+  "^\000-\010\016-\037]\177\u0080-\u009f")
 
 
 (defun ebnf-ebx-skip-constraint ()
@@ -517,11 +515,10 @@ See documentation for variable `ebnf-ebx-lex'."
     (not eor-p)))
 
 
-;; replace the range "\177-\237" (see `ebnf-range-regexp').
 (defconst ebnf-ebx-comment-chars
-  (ebnf-range-regexp "^\000-\010\016-\037\\*" ?\177 ?\237))
+  "^\000-\010\016-\037*\177\u0080-\u009f")
 (defconst ebnf-ebx-filename-chars
-  (ebnf-range-regexp "^\000-\037\\*" ?\177 ?\237))
+  "^\000-\037*\177\u0080-\u009f")
 
 
 (defun ebnf-ebx-skip-comment ()
@@ -581,11 +578,10 @@ See documentation for variable `ebnf-ebx-lex'."
       (concat fname (make-string nchar ?*)))))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-ebx-double-string-chars
-  (ebnf-range-regexp "\t -!#-~" ?\240 ?\377))
+  "\t -!#-~\u00a0-\u00ff")
 (defconst ebnf-ebx-single-string-chars
-  (ebnf-range-regexp "\t -&(-~" ?\240 ?\377))
+  "\t -&(-~\u00a0-\u00ff")
 
 
 (defun ebnf-ebx-string (delim)
index b52094a5912e8facfbed13f5ab219e7d6c54202f..466e7785053494d12da7a7adae3884212c527348 100644 (file)
     (aset ebnf-iso-token-table ?.  'character)))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
 (defconst ebnf-iso-non-terminal-chars
-  (ebnf-range-regexp " 0-9A-Za-z_" ?\240 ?\377))
+  " 0-9A-Za-z_\u00a0-\u00ff")
 
 
 (defun ebnf-iso-lex ()
@@ -487,9 +486,8 @@ See documentation for variable `ebnf-iso-lex'."
        ))))
 
 
-;; replace the range "\177-\237" (see `ebnf-range-regexp').
 (defconst ebnf-iso-comment-chars
-  (ebnf-range-regexp "^*(\000-\010\016-\037" ?\177 ?\237))
+  "^*(\000-\010\016-\037\177\u0080-\u009f")
 
 
 (defun ebnf-iso-skip-comment ()
index f5d633e84601348422b68cac138c36e9227c3b5d..a657c637f82105c3a96628fcb8116e12a6a47a32 100644 (file)
@@ -397,9 +397,8 @@ See documentation for variable `ebnf-yac-lex'."
   (< (point) ebnf-limit))
 
 
-;; replace the range "\177-\377" (see `ebnf-range-regexp').
 (defconst ebnf-yac-skip-chars
-  (ebnf-range-regexp "^{}/'\"\000-\010\013\016-\037" ?\177 ?\377))
+  "^{}/'\"\000-\010\013\016-\037\177\u0080-\u009f")
 
 
 (defun ebnf-yac-skip-code ()
@@ -442,9 +441,8 @@ See documentation for variable `ebnf-yac-lex'."
    ))
 
 
-;; replace the range "\177-\237" (see `ebnf-range-regexp').
 (defconst ebnf-yac-comment-chars
-  (ebnf-range-regexp "^*\000-\010\013\016-\037" ?\177 ?\237))
+  "^*\000-\010\013\016-\037\177\u0080-\u009f")
 
 
 (defun ebnf-yac-skip-comment ()
index d5dddfc2b7c95c02a60a6108ceb0b5b496e3fbd1..f7ac9d36032061774f10e0104670c0e1b44365cc 100644 (file)
@@ -4962,18 +4962,6 @@ killed after process termination."
       (kill-buffer (current-buffer))))
 
 
-;; function `ebnf-range-regexp' is used to avoid a bug of `skip-chars-forward'
-;; on version 20.4.1, that is, it doesn't accept ranges like "\240-\377" (or
-;; "\177-\237"), but it accepts the character sequence from \240 to \377 (or
-;; from \177 to \237).  It seems that version 20.7 has the same problem.
-(defun ebnf-range-regexp (prefix from to)
-  (let (str)
-    (while (<= from to)
-      (setq str  (concat str (char-to-string from))
-           from (1+ from)))
-    (concat prefix str)))
-
-
 (defvar ebnf-map-name
   (let ((map (make-vector 256 ?\_)))
     (mapc #'(lambda (char)
@@ -5970,8 +5958,7 @@ killed after process termination."
      (point))))
 
 
-;; replace the range "\240-\377" (see `ebnf-range-regexp').
-(defconst ebnf-8-bit-chars (ebnf-range-regexp "" ?\240 ?\377))
+(defconst ebnf-8-bit-chars "\u00a0-\u00ff")
 
 
 (defun ebnf-string (chars eos-char kind)