aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Belanger <[email protected]>2005-04-05 03:50:26 +0000
committerJay Belanger <[email protected]>2005-04-05 03:50:26 +0000
commitbf7bae80d797472fc05bd12ac4962085f4e18d74 (patch)
tree151ff03a8e71e4c6588b4244cad3e40396b2ee71
parentee298b369eeccdd885718dd57d5b1fd774b577cf (diff)
(math-read-replacement-list): Add subscripts.
(math-read-subscripts): New variable. (math-read-preprocess-string): Process subscripts.
-rw-r--r--lisp/calc/calc-aent.el24
1 files changed, 23 insertions, 1 deletions
diff --git a/lisp/calc/calc-aent.el b/lisp/calc/calc-aent.el
index e174d81c41..a2d6e9dc88 100644
--- a/lisp/calc/calc-aent.el
+++ b/lisp/calc/calc-aent.el
@@ -519,7 +519,22 @@ T means abort and give an error message.")
("⁽" "(") ; (
("⁾" ")") ; )
("ⁿ" "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 @@ in Calc algebraic input.")
"⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁽⁾ⁿⁱ" ; 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