Can't create a macro with 2.4.0~devel
Jean-Marc Lasgouttes
lasgouttes at lyx.org
Tue Feb 27 17:34:50 UTC 2024
Le 27/02/2024 à 14:46, Jean-Marc Lasgouttes a écrit :
> Le 26/02/2024 à 17:44, Jean-Pierre Chrétien a écrit :
>> Le 26/02/2024 à 16:14, Jean-Marc Lasgouttes a écrit :
>>
>>>
>>> Now I have to understand why it crashes.
>>
>> I tried in a fresh lyx file with a single table. LyX crashes with the
>> same trace as the one I posted previously, I guess that you can
>> reproduce.
>>
>
> Indeed, I see the crash too. But it is still mysterious.
I finally fixed it. The inset was not inserted (because it is actually
not allowed) but LyX still tried to put the cursor inside this new inset.
Question is now: why is inserting a macro definition in a table cell
forbidden? Archaeology research shows that it was inserted by Stefan
Schimanski in the commit below, but I see no reason for it.
JMarc
commit 36dbec45069bf3d9db923200835e44f44d904eb8
Author: Stefan Schimanski <sts at lyx.org>
Date: Fri Dec 21 20:42:46 2007 +0000
* Lazy MathData to avoid unneeded interpretation of macro definitions
* DocIterator as MacroPosition
* Iterative search for macro in scope until a visible one is found.
This include the ability to resolve macro inside nested text insets.
* Speed up macro lookups by factor 2: only getMacro(name) call, no
further hasMacro(name) call before
* Both way child/master support
* Correct macro scope for multi-paragraph environments
* Correct macro scope for multi-depth-paragraphs
* Buffer::updateMacros made const
* Update macros when loaded (of master and child)
* Do not remove too many braces when unfolding a macro. This could
lead to a data loss because the relationship between arguments of
macros can be mixed up if nested macros are unfold at once.
* Reduce dependencies to MetricsInfo in MathMacro
* Update macros when needed. Normally it's done just before doing
metrics. But in cases without a brace around some constructs (like
\left(bla\right)) there is some help needed.
More information about the lyx-devel
mailing list