denemo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Denemo-devel] Keymap and Many small bugs, problems and ideas


From: Nils Gey
Subject: [Denemo-devel] Keymap and Many small bugs, problems and ideas
Date: Wed, 8 Oct 2008 02:19:11 +0200

Hi list,

1) Introduction of the new keymap
2) Short docu of the keymap
3) List of changes and notable keys.
4) Many small bugs, problems and ideas I encountered while working with Denemo 
and the keymap.

-----1------

Today I worked on a keymap to provide a better default one for Denemo. Since 
there were nearly zero keys defined until now I got not in conflict to change 
anything already standard. If I did so I will mention it if you read further. 
I attached the file so you can see for yourself. If someone of the git-people 
could review it and maybe upload it to git. If you think I am no harm for the 
git repository maybe you could grand me write-access.

-----2------

Here is a short documentation.

The philosophy behind it is: Actions which are used quite often got a shortcut 
(i.e. add note to chord, save, new tab), any other not (Add Staff, Open 
Example/Template). It showed that this means that many objects to acutally 
write to the staffs are shortcut-worthy while action above this are not, which 
is no surprise. Additionally anything that has to do with navigating through 
your score got a shortcut, too. Otherwise you are forced to use the mouse, 
which is not efficient, as you surely know.

There are two concepts of assining shortcuts to actions: First is logic. It is 
logical to have "Dynamics" on Crtl+D because it begins with D. 

Second are keyboard regions or the graphical layout of the keyboard. For 
example F9 to F12 is for bookmarks, add, list, prev. next (and no key for 
"delete all bookmarks"!)
Since its better for ornaments to be grouped, and not to force some name/key 
logic to them, they are avaible with shift+number. 
==IMPORTANT IMPORTANT==
I think this cries for keymaps which depend on language/keyboard-layout or 
better keymap overrides for different languages. Or maybe change the way 
key-combos are saved (I wrote more about this at the end of this mail)
Example:
I used shift+1 to shift+7 for ornaments. But I use a Germany keyboard-layout, 
off course, so the keys are:
1/!  2/"  3/§  4/$  5/%  6/&  7//  
Denemo shows these characters and not the combination so I guess different 
keyboard-language means different keys. Which is bad, off course.
Other way around, too and it has already happened: Octave up/down is on comma 
and apostrophe. I guess these keys are related in some way on an us-layout. But 
for me they are relative far away from each other and the apostrophe is with a 
shift-combination.
More on this later...
=================

Sometimes these concepts are mixed. Its logical to have the cursor left on the 
left-arrow-key and its good to have right, up and down in the same keyboard 
region. Fortunatly the keyboard is already designed in this "mixed" way. Same 
goes for Home/End/PageUp and Down. Other example: Measure begins with "m" so 
this key adds a blank measure. Any other command linked to measures uses a 
combination with "m". Crtl-m, alt-m, Crtl+Shift+M and so on.

-----3------
Now follows an overview over my keymap-idea. You can learn the other keys 
easily if you open Denemo and have a look around. Once this has settled down a 
bit I can make a nice graphical keychart/poster/cheat-sheet for Denemo. Print 
it out and decorate your walls with it.

File and Denemo controls: I have set the standard keys for new file/tab/close 
etc. like they are used in nearly any program (open office, firefox etc. )

Movement/Cursor: Arrow-Keys move the cursor. Crtl+Arrows for Staff Up/Down or 
Measure Left/Right. PageUp/PageDown for Voices, F9 to F12 for bookmark-control.

Notes: Chordnotes are added with Crtl+Return and deleted with Crtl+Backspace or 
Crtl+Delete. Sharpen/Flatten with plus and minus +/- .
As written above, the most important Expression Marks are shift+number. 

Play and Stop is on F5 and F6. F7 and F8 are free for future things 
(play-scripts i.e.)

A few special keys: d for dynamics, n for noteheads. ^ and °  are the lilypond 
keys (for me this is the key left to "1" and its shifted version). Alt+Return 
is for Staff-Properties, Crtl+l lyrics. F1 is the manual.

There is some work to do (Tuplets and Cresc/Decresc.) but luckily Denemo is not 
Photoshop or X-Wing (remember the old game?) so there are still free keys :).

-----4------
I encountered bugs and a few issues with the keymap and using keys to steer 
Denemo. Some of them are feature suggestions, I will add them to the list 
later. I will use this list to try the scripting engine a bit. 
And here they come:

1) The "reminder accidental" is often used so maybe it deserves its own 
menu-entry. Possibly a script?
2) There is a feature missing for "Play only current staff" or maybe "play all 
selected staffs". 
3) Play from start is missing. Maybe 2) and 3) could be scripted and combined 
and used for crtl/shift F5
4) If you set a new shortcut which is already used there should be a warning 
and the info where this shortcut is used and a Overwrite:Yes/No option. 
Currently there is nothing so you have to search every time if a shortcut 
already exist.
5) If you just type in the shortcut-window it searches for the right command, 
which is great. But it should not be case-sensitve. Maybe this is not Denemo 
but my Gnome?
6) The F10 key opens the file-menu for me. I think this is gnome-specific. Can 
denemo override this?
7) Denemo crashes if you close the first tab if there are more than one tab. It 
crashes when you jump around in the tabs a bit and try to close and cancel the 
"File is not saved"-dialog. I don't figured out the concrete behaviour to 
reproduce the crash, but the "Close Score" is certainly buggy.
8) If you close a tab with "Close Score" (Crtl+w) and Denemo crasehs not the 
first tab is selected after that. This is strange behaviour. The standard is 
that the tab left to the closed one will be selected.
9) The normal "open" is destructive. It closes the current tab/score and I 
think there is no need to have this if you have a "open in tab". I suggest to 
remove the "open" command and make the "open in new tab" the only one.
10) Same for the Score Wizard. It tries to close the current tab. Why? Just 
leave it open.
11) Tenuto is not visible in Denemo but in the Output.
12) A "clean note/chord" command would be useful. It could remove all ornaments 
and lilypond-postfixes, reset the stem... and other non-basic stuff (so just 
leave the note and its accidental).
13) The lilypond-postfix command is only succesfull if you click exactly on the 
notehead. This is a bit confusing because you expect it to work if the note is 
selected, which happens when you use the mouse to click on it. I suggest to 
ignore the vertical position of the cursor. If its a chord I suggest the same 
behaviour as in "Delete note from chord": Just take the nearest one. Same for 
ornaments etc. It works for noteheads!
14) Undo is really, totally broken. So this is not a small thing, I guess. I 
just want to share my experience. Currently it seems that undo is only for 
noteentry/deletion. If you delete a note with ornament or lilypond-postfix and 
undo it everything is gone except the note itself. Adding measures is not 
undoable, instead it justs delete the last note and so on and so on. I guess 
there are more examples...
15) The big thing (as mentioned above): Keyboard-shortcuts. It seems that 
Denemo saves not a key-combination (shift+a) but the result (captial A). This 
leads to several issues.
 First and minor is that Denemo shows just the result for the key in its 
shortcut windows if you use shift but it shows crtl/alt as a modificator. So 
crtl/alt+m is what it says but crtl+shift+m is "crtl+M". 
 If only the result is used then the keymab is very fragile to differnt 
language/keyboard-layouts. Saving the shift key as a combination, too would 
make things easier, but there are other keys which are simply on different 
positions (the old y/z problem... ask any German about it... for some reason 
the keys are switched) so I think language-dependent keymaps are needed anyway. 
Most of the shortcuts will stay the same nevertheless but it would be nice to 
define a few exceptions from the standard.
 
I hope you all like my ideas and the keymap.

Nils


On Sat, 4 Oct 2008 23:53:35 +0200
Nils Gey <address@hidden> wrote:

> On Sat, 04 Oct 2008 20:34:49 +0100
> Richard Shann <address@hidden> wrote:
> 
> > On Mon, 2008-09-29 at 22:31 +0100, Richard Shann wrote:
> > > On Mon, 2008-09-29 at 23:18 +0200, Nils Gey wrote:
> > > > Hi list,
> > > > 
> > > > I noticed that there are some standard keys which could easily be 
> > > > defined to add more comfort to Denemo and give the users a well known 
> > > > enviroment. Instead of making a list with these commands I want to ask 
> > > > how and where the presets (in git) are defined so that I can add some 
> > > > keys.
> > > > 
> > > The are defined in
> > > denemo/actions/Default.cmdset
> > > You may wish to add them to the NumericKeypad.cmdset as well.
> > Nils - did you progress this?
> > Richard
> 
> Not until now. 
> 
> 
> _______________________________________________
> Denemo-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/denemo-devel

Attachment: Default.keymap
Description: Binary data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]