On Tue, 13 Jul 1999, Jean-Marc Lasgouttes wrote:

> The following patch seems to fix the problem. Alejandro, is it OK with
> you?

[patch]

Macromode is closed in the 3 "if" cases, so it would be better to do it
once at the beginning.

This is the patch:

--- math_cursor.C~      Sun Feb  7 14:37:42 1999
+++ math_cursor.C       Tue Jul 13 18:05:01 1999
@@ -340,6 +340,9 @@
    if (t==LM_TC_MIN)
       t = lastcode;
     
+   if (macro_mode && !(MathIsAlphaFont(t) || t==LM_TC_MIN))
+      MacroModeClose();
+       
    if (t==LM_TC_CR) {
       MathParInset *p= cursor->p;
       if (p==par && p->GetType()<LM_OT_MPAR && p->GetType()>LM_OT_MIN) {
@@ -362,8 +365,6 @@
       }
    } else
    if (t==LM_TC_TAB) {
-      if (macro_mode)
-       MacroModeClose();
       MathParInset *p = cursor->p;
       if (p &&  p->Permit(LMPF_ALLOW_TAB)) {
          if (c) {
@@ -384,8 +385,6 @@
           if (MathIsAlphaFont(t) || t==LM_TC_MIN) {
               MacroModeInsert(c);
               return;
-          } else {
-              MacroModeClose();
           }
        } 
        if (accent) {

-----

Greets,

Alejandro

Reply via email to