Bug 101110 - Menu entry to execute commands by name
Summary: Menu entry to execute commands by name
Status: RESOLVED DUPLICATE of bug 91874
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
(earliest affected)
Hardware: All All
: low enhancement
Assignee: Not Assigned
Keywords: needsUXEval
Depends on:
Reported: 2016-07-25 13:25 UTC by Mike Kaganski
Modified: 2016-10-11 13:26 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Note You need to log in before you can comment on or make changes to this bug.
Description Mike Kaganski 2016-07-25 13:25:46 UTC
This enhancement request is for a way to execute any command in LibreOffice by searching through the full commands list - without the need to first add the command to a toolbar/menu.

I imagine that something like in AutoCAD, where there is a rich menu with an input box, where one can enter either help request, or (some characters of) a command name, and in the list beside the input box, there appear both similarly named commands and help topics, so clicking to any of those, one gets either the command executed or help topic open. See https://www.youtube.com/watch?v=peDXW7lu6tk

The "menu" could be e.g. in a sidebar.

I suppose that this would make it easier to use some commands that one cannot fins in menu/toolbar. And macros should be available there, too, as ordinary commands.
Comment 1 Buovjaga 2016-08-01 18:02:48 UTC
I have a vivid memory of this being discussed before, but could not find an existing report. Maybe it was a daydream? This type of workflow should be pretty familiar for power users on any desktop platform (open "start menu" and start typing). Throwing this on the UX table.
Comment 2 Jean-Baptiste Faure 2016-08-13 20:27:28 UTC
Please, could you describe a use-case showing that what you propose could be easier to use than adding your preferred but missing command in a menu or a toolbar?

Best regards. JBF
Comment 3 Mike Kaganski 2016-08-14 00:17:48 UTC
(In reply to Jean-Baptiste Faure from comment #2)
> Please, could you describe a use-case showing that what you propose could be
> easier to use than adding your preferred but missing command in a menu or a
> toolbar?

Wow. :)
The often-used commands are, of course, better placed to a toolbar/sidebar, there's no doubt.
But the full commands repertoire cannot be represented on toolbars, and even in menus.
There are several main problems that this proposal could solve.
1. When I want to use some rarely-used command. :) For a power user, that knows of some less-used functionality but useful in some situations, this is surely often encountered situation. One single rare command may be required once a year, but there's another one, and another, too much of them.
2. When I want to maximize usable screen space, like using new single toolbar. So, the toolbar space is not too huge.
3. When I don't know (remember) where the command is (menu/toolbar) and what its icon is, but searching by (part of) command's name will show me its icon and (hopefully) will show me its position on menu. Further, I may not remember its correct name, I may enter a word "capitals", and each command having a good description and growing dictionary of aliases, I'll be presented with "Format->Text->UPPERCASE" and "Format->Text->Capitalize Every Word" commands, and also "Format->Character" with help section describing its Font Effects, and Character Styles in that context. This way, anyone will find it easier to find commands for requested functionality, easier to learn and enhance proficiency.
Comment 4 Jean-Francois Nifenecker 2016-08-18 08:18:56 UTC
IMO, this a seldom wanted option. Hence, I guess the wanted functionality could be added through an extension rather than a native development.

This could be a toolbar (à-la SearchBar) with a combobox, a Close button, a Search button and a Run button.

1a. Get the Uno commands list for the running module (the commands are listed in xml files stored within the current installation, in the \share\config\soffice.cfg\modules directory. There are subdirectories by module (sglobal is... well... global). 
1b. Each command is associated with a menu entry and/or a toolbar button. Get the corresponding pointer. It is not trivial (for me ;) to find what option or button/icon is associated with what command.
1c. List the uno commands using a combo box
2. Allow for approximative search within the Uno commands list (this search is not trivial to me either)
3. Search and display possibilities upon character entry
4. Run the command

Just my two euro-cents.
Comment 5 Mike Kaganski 2016-10-11 00:04:08 UTC
(In reply to Jean-Francois Nifenecker from comment #4)
> IMO, this a seldom wanted option.

I suppose it's incorrect estimation.
1. This kind of UI is very common currently. You may see it in Unity Dash, Windows Start, Blender etc. Also, I see a wish for this rather frequently in forums (e.g. here: http://blender.stackexchange.com/questions/40163/find-commands-by-name , here in Russian: https://www.linux.org.ru/forum/talks/12695695/page1?lastmod=1467486174771#comment-12705845)

> Hence, I guess the wanted functionality could be added through an extension
> rather than a native development.

I'm afraid it's impossible without "native development", because otherwise it won't be able to use additional information. I mean, that it must respond to "contextual" meaning (bring commands that don't have typed words in names, but that may do what user wants, e.g. by having a dictionary of "tags" attached to each command), etc. Supporting external DB of such information is unfeasible, because it would require from maintainer to do it multilingually, track each new/modified command, etc.

Not every LO feature has its uno command: e.g., many entries inside Format Character dialog. I'm afraid, that if users will search for "Blinking", they won't find requested commands using your suggested approach, while in best case they would be presented the option to open that Format Character dialog.

Many uno commands would likely come unlocalized; that would be a showstopper for this feature.

The feature should also provide relevant help entries (online/offline, depending on whether help is installed locally).

I suppose that the feature is only possible by dradual development. First, create infrastructure for it, e.g. means for feature developers to define the "tags" for their commands. Implement the feature to be user-visible, and then gradually fill required data to existing commands, hopefully with a bunch of easy hacks. Include this into localization process, etc.
Comment 6 Mike Kaganski 2016-10-11 00:13:59 UTC
And btw, with notebookbar coming (that often criticized for wasting vertical space, and is targeted to users that tend not to use menu), and already implemented single toolbar (that clearly seeks to maximize screen real estate), the need to hide menu bar will be greater. It would be possible to continue being productive without menu bar in LO, if such a feature is implemented.
Comment 7 Heiko Tietze 2016-10-11 13:26:10 UTC
This idea is known as Spotlight or HUD and discussed in bug 91874. Perhaps I should change my mind since this feature would be in fact a great addition for small screen (in terms of height) with the single toolbar. 

Would be good to add your points to the other ticket and track the discussion there.

*** This bug has been marked as a duplicate of bug 91874 ***