Marking inverted branch insets

Richard Kimberly Heck rikiheck at lyx.org
Wed Oct 20 17:58:06 UTC 2021


On 10/20/21 10:36, Scott Kostyshak wrote:
> On Wed, Oct 20, 2021 at 05:06:59PM +0300, Yuriy Skalko wrote:
>>>> I'm working on the highly variative document that contains many branches
>>>> frequently changing their states. And it is not very convenient because it
>>>> is impossible to see immediately if current branch inset is inverted or not.
>>>> Have you experienced such issue? What do you think about marking inverted
>>>> insets in some way? Maybe darker/different label color? Or some additional
>>>> symbol like "!"?
>>>
>>> I have experienced this also. I think using a symbol is better for
>>> accessibility reasons. Perhaps additionally changing the color could be
>>> considered as well.
>> Thanks for fast reply, Scott!
>> I'm glad to know that it is not only my problem.
>>
>>
>>>> Really I'm also thinking about more flexible system -- to connect branch
>>>> insets to branches using logical expressions. So the branch inset could have
>>>> logical combination of existing branches, not just branch name with optional
>>>> inversion. For example now it is impossible to have a part of the document
>>>> that will be outputted when any of 2 branches is active. But with logical
>>>> expressions we will have inset "FirstBranch or SecondBranch" that solves
>>>> this task. More complex combinations also will be possible.
>>> I like this idea a lot. I would also be interested in a dependency
>>> structure of branches (i.e., not variable by insets) along the lines of
>>> "branch Q depends on branch C and branch D so to activate branch Q,
>>> branches C and D must also be activated". I think we should think hard
>>> about exactly what features we want and the interface. Ideally we would
>>> extend the current functionality without making the interface much more
>>> complex for most users who I think do not use branches in the way you
>>> and I have in mind.
>>>
>>> Best,
>>> Scott
>> Really logical AND operation on branches can be implemented now by nesting
>> insets. Do you want to get separate Q to get simpler expressions/insets in
>> other places in the document?
> Good question. Indeed I have used nested branches until now. But I find
> the nesting annoying, and I always have to pause to think what should I
> nest in what? But thinking about it more, perhaps your proposed feature
> would work for what I want. I don't have much time to think about this
> more now, but I do like that we're having this discussion. Perhaps we
> should write down a few use cases that would motivte which features we
> consider.

I also think this could be useful. Probably not for 2.4, though. (I'll 
be emailing about that soon.) But improving the visuals for inversion, 
etc, can be done right away.

A related thing some people have wanted is for LyX to output a LaTeX 
conditional depending upon branches. So e.g. we'd have:

\newif\LyXBranchName
\LyXBranchNametrue

if the branch is active, and the obvious alternative otherwise. In that 
case, we could also offer the option of outputting all branches to 
LaTeX, but conditionalizing them this way.

Riki




More information about the lyx-devel mailing list