summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/calc/calc-aent.el12
2 files changed, 14 insertions, 4 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index c17f848c0f4..0cfe7fe704d 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
+2007-11-16 Jay Belanger <jay.p.belanger@gmail.com>
+
+ * calc/calc-aent.el (calc-last-user-lang-parse-table): New variable.
+ (math-build-parse-table): Get parse information from
+ `math-parse-table'.
+
2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
* window.el (recenter-last-op): New var.
diff --git a/lisp/calc/calc-aent.el b/lisp/calc/calc-aent.el
index ffd07bd8f2e..18b0e194777 100644
--- a/lisp/calc/calc-aent.el
+++ b/lisp/calc/calc-aent.el
@@ -603,6 +603,7 @@ in Calc algebraic input.")
(defvar calc-user-parse-table nil)
(defvar calc-last-main-parse-table nil)
+(defvar calc-last-user-lang-parse-table nil)
(defvar calc-last-lang-parse-table nil)
(defvar calc-user-tokens nil)
(defvar calc-user-token-chars nil)
@@ -612,10 +613,12 @@ in Calc algebraic input.")
(defun math-build-parse-table ()
(let ((mtab (cdr (assq nil calc-user-parse-tables)))
- (ltab (cdr (assq calc-language calc-user-parse-tables))))
+ (ltab (cdr (assq calc-language calc-user-parse-tables)))
+ (lltab (get calc-language 'math-parse-table)))
(or (and (eq mtab calc-last-main-parse-table)
- (eq ltab calc-last-lang-parse-table))
- (let ((p (append mtab ltab))
+ (eq ltab calc-last-user-lang-parse-table)
+ (eq lltab calc-last-lang-parse-table))
+ (let ((p (append mtab ltab lltab))
(math-toks nil))
(setq calc-user-parse-table p)
(setq calc-user-token-chars nil)
@@ -629,7 +632,8 @@ in Calc algebraic input.")
(length y)))))
"\\|")
calc-last-main-parse-table mtab
- calc-last-lang-parse-table ltab)))))
+ calc-last-user-lang-parse-table ltab
+ calc-last-lang-parse-table lltab)))))
(defun math-find-user-tokens (p)
(while p