[Libreoffice] [UX] Formula cursor proposals (was: Re: Formula cursor : bug or feature ?)

Christoph Noack christoph at dogmatux.com
Tue Jan 4 15:43:49 PST 2011

Hi Regina, hi Jan, and of course Jonas!

Jonas, first - thanks for working on such a great feature. Due to this
thread, I noticed the video presenting the feature (moreover, YouTube
also proposes some catwalk clips *g*). Cool!

I briefly went over the thread and I really understand most of the
concerns mentioned here - but I don't see any (really) conflicting
issues. Or at least, that should be solvable somehow.

@ Regina, Jean-Baptiste: Right, the opportunity to "jump" to a certain
cursor position within the formula syntax is very helpful for advanced
users. After having worked a lot with the command window during my
studies, I prefer "typing" than "clicking". The problem is (same for
e.g. the page preview), that this functionality is "invisible". Most of
the students I knew, did not get an introduction how to use a Formula
Editor ...

@ Jonas: You are right as well - it is indeed more than helpful for less
experienced users (who start to work with the command window) to edit
formulas more visually. But also experts will value advanced visual
clues (since jumping to a certain formula position is one of the basic
things that already worked).

The main issue is, that we do have two different input methods (one
being WYSIWYG, the other one being the formula syntax) that have to be
synced somehow. The content itself isn't the main problem, but things
like cursor position and selection. We can only have one, because this
corresponds with the current focus that is visualized for the user.

So here is some initial idea that might serve as some input to solve
that issue. It already implies some step-by-step approach to achieve
reasonable maturity:
      * Only one item (visual editor, command window) can be active at a
        time. There is a need to switch between both input methods.
        Let's call that new functionality "change editor focus"
              * Change Editor Focus: The focus changes to the "other"
                editor. The cursor position position / selection marker
                is transformed to and visualized within the (now) active
                editor type.
              * Behavior:
                      * If the command window is currently inactive and
                        the user clicks inside the command window, then
                        the "Change Editor Focus" is executed.
                      * If the command window is currently active and
                        the user clicks inside the command window, then
                        the cursor is placed according to the mouse
                        pointer position.
                      * If the visual editor is currently inactive and
                        the user clicks inside the visual editor, then
                        the "Change Editor Focus" is executed. 
                      * If the visual syntax editor is currently active
                        and the user clicks inside the visual editor,
                        then the cursor is placed according to the mouse
                        pointer position. 
              * Keyboard Shortcut for "change editor focus": Provides a
                shortcut for the advanced users ...
                      * Proposal 1: Ctrl+Tab could be used if it does
                        not interfere with a (planned) syntax
                        completion. In Calc, STRG+Tab (e.g.) cycles
                        through the elements within the formula bar
                        (once having the focus).
                      * Proposal 2: Ctrl+Shift+F2 is used in Calc to
                        jump to the input line (but not back) and may be
                        used here to cycle between formula syntax input
                        and visual input.
                      * Proposal 3: Add yours, here ;-)
      * [Optional] To make the feature more "visible" for all users, by
        avoiding too much clutter in the application menu, I propose to
        add a context menu entry to both the editors that says something
        like "Go to Formula Object" / "Go to Commands Window" (the
        official name in the help). A context menu is mandatory anyway,
        if Copy/Cut/Paste is available for the visual editor.
      * [Optional] Visual Indicator: Advanced users might even value
        some "always" visible visual indicator for the current position
        - extending the current "[]", "<?>". How about a gray dashed
        line that surrounds the currently active element when working in
        the command window? (Is this what you name "care" at [1]?)

Note that I "disrespect" the initial user intention for the clicks (like
Firefox does for the search field, well, not really) ... we should check
whether this is accepted / understood by the users. At the moment, it is
a rough guess that this might work (well). If not, I do have some more
complex (but working) ideas.

Comments appreciated :-) Although it might take some time to get back to
this discussion ...

At the moment, there are still some issues that still exist (of course)
- e.g. finding the markers does not work (Ctrl+F4), or finding them
draws a non-working cursor in the visual editor. But these are things
that can be resolved (optimistic view of a non-developer *g*).

And, I don't know (yet) how the feature behaves if automatic updates for
the formula are deactivated - I'm not even sure why we might need this
kind of feature in the post 80486 decade ;-)

I hope this helped a bit ... at least, I think more than one target
group can really benefit from this feature.


PS: By the way, if someone adds syntax highlighting to the list, Max
worked on the SQL highlighting and dropped some information in the OOo
wiki at [2].


[2] http://wiki.services.openoffice.org/wiki/SQL_Syntax_Highlighting

Am Montag, den 03.01.2011, 14:02 +0100 schrieb Jan Holesovsky:
> Hi Regina,
> On 2010-12-31 at 14:21 +0100, Regina Henschel wrote:
> > >> (Aside from that I have a lot of other wishes, for example: Free choice
> > >> of color, nice scaling integral sign, easier way to add new symbols,
> > >> alignment to equal sign in stacks and matrices, inheritance of font size
> > >> from environment or style.)
> > >
> > > Go ahead and file all these to the Easy Hacks too! :-)
> > 
> > It is no Wiki, so I cannot do it technically, and with regards to 
> > content, I do not know whether they are "Easy".
> My point of view is that with enough guidance, every task is easy
> enough, or can be split into easy enough ones ;-)  So let's file it
> there, if there is somebody interested, I think we can shape some code
> pointers etc. too.  So far I filed it here:
> http://wiki.documentfoundation.org/Development/Easy_Hacks#General_formula_editor_improvements
> This is a wiki, you just need to create an account - please feel free to
> extend it with more information :-)
> > And please - don't bash Jonas for the great work he's done, I am sure he 
> > aims to make
> > it perfect for everyone;
> > 
> > Please excuse me. I am sad that my posts has caused such an impression. 
> > Jonas, I would never bash you.
> I am sorry I read it as such.
> > I guess it is enough, that they are in the OOo Issuetracker. But you are 
> > right for remarks concerning new visual formula editor. I'll file bug 
> > reports.
> Would be great to add URLs of these to the "General formula editor
> improvements" too, so that we have a collection of the painful use
> cases.
> Thank you,
> Kendy
> _______________________________________________
> LibreOffice mailing list
> LibreOffice at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/libreoffice

More information about the LibreOffice mailing list