diff lisp/calc/calc-aent.el @ 61303:b56d5250fbc3

(math-read-replacement-list): Add subscripts. (math-read-subscripts): New variable. (math-read-preprocess-string): Process subscripts.
author Jay Belanger <jay.p.belanger@gmail.com>
date Tue, 05 Apr 2005 03:50:26 +0000
parents c396883e5069
children e570688e1d80 02f1dbc4a199
line wrap: on
line diff
--- a/lisp/calc/calc-aent.el	Tue Apr 05 01:21:23 2005 +0000
+++ b/lisp/calc/calc-aent.el	Tue Apr 05 03:50:26 2005 +0000
@@ -519,7 +519,22 @@
     ("⁽" "(")  ; (
     ("⁾" ")")  ; )
     ("ⁿ" "n")  ; n
-    ("ⁱ" "i")) ; i
+    ("ⁱ" "i")  ; i
+    ;; subscripts
+    ("₀"  "0")  ; 0
+    ("₁"  "1")  ; 1
+    ("₂"  "2")  ; 2
+    ("₃"  "3")  ; 3
+    ("₄"  "4")  ; 4
+    ("₅"  "5")  ; 5
+    ("₆"  "6")  ; 6
+    ("₇"  "7")  ; 7
+    ("₈"  "8")  ; 8
+    ("₉"  "9")  ; 9
+    ("₊"  "+")  ; +
+    ("₋"  "-")  ; -
+    ("₍"  "(")  ; (
+    ("₎"  ")"))  ; )
   "A list whose elements (old new) indicate replacements to make
 in Calc algebraic input.")
 
@@ -527,11 +542,18 @@
   "⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁽⁾ⁿⁱ" ; 0123456789+-()ni
   "A string consisting of the superscripts allowed by Calc.")
 
+(defvar math-read-subscripts
+  "₀₁₂₃₄₅₆₇₈₉₊₋₍₎" ; 0123456789+-()
+  "A string consisting of the subscripts allowed by Calc.")
+
 (defun math-read-preprocess-string (str)
   "Replace some substrings of STR by Calc equivalents."
   (setq str
         (replace-regexp-in-string (concat "[" math-read-superscripts "]+")
                                   "^(\\&)" str))
+  (setq str
+        (replace-regexp-in-string (concat "[" math-read-subscripts "]+")
+                                  "_(\\&)" str))
   (let ((rep-list math-read-replacement-list))
     (while rep-list
       (setq str