On Mon, 2013-05-06 at 11:45 +0200, Éloi Rivard wrote: > > 3 - Adds a new "category" argument to register_command() > > what would the type of this argument be? > > > The category list ? yes - a list of strings? ... I think it will be worthwhile to discuss the possibilities for this list. Should it be just a list where each item is on the same level of importance as any other?
I am thinking that at present, there is information about a command stored in the command label, the tooltip and the labels of the menu ancestors. This only patchily exploited for two reasons 1) the menus would become bloated if, for example, every menu had a Delete command for deleting the things at that menu level (e.g. delete a fingering on a note, delete a marking on a note of which fingering is a specific case). 2) the top level of the menu is not a single menu (Score) containing Movements as a submenu, containing Staffs as a submenu and so on. (And in addition, Notes/Rests has been split from Chords, though they are on the same level and other irregularities like that at the top level). So at present there is a certain amount of hierarchy which helps finding the right command - you look under score to find things affecting the entire score, under measures to find things affecting the current measure and so on. We could lose this if we replaced the present situation with a search that just matched tags and came up with a list of commands - it wouldn't be obvious which commands applied to the whole score and which to a single note just from the label. And, contrariwise, we could do much better than the current situation since we could have more (virtual) menu hierarchies - for example commands for piano music, or commands for deleting things ... Perhaps what we could have is two sorts of things, say "Categories" and "Keywords", the first being absolute binary, each command is either in or not-in each category, the second, keywords would make a search rank a command higher by the number of matching keywords. I am thinking out loud here - this topic must be well researched, I seem to remember doing something in the field myself twenty years ago or so - but I hope these ramblings might spark off something practical that we could do that would allow people to find out how to do things without reading a lot of text (which I don't mind doing, but most users never do). Perhaps you have something very definite in mind here that will work very well? Richard _______________________________________________ Denemo-devel mailing list Denemo-devel@gnu.org https://lists.gnu.org/mailman/listinfo/denemo-devel