Note entry
Hello,
i am looking for a better and faster note entry mode. The default keyboard shortcuts are very confusing and not intuitive. It would be more practical when the keyboard input follows the natural writing from left to right. If I setup a keyboard shortcut for the sharp sign to key "#", then I can press something like that with all the other default settings:
. 5 c # (which results in a single dotted quarter note C)
But normally one writes a note from left to right like this:
# c 4 . (consider the 4 is more natural for meaning quarter note)
I know that I can change the keyboard shortcuts for the note durations, so that I can press "4" for a quarter and "8" for an eight note. But I cannot change the behavior that I need to press a . before note entry a # after note entry. I can also not change the keyboard processor, so that it is more intelligent and works like a modifier. I should be able to enter also things like this:
# # c 4 . . (should result in a double dotted quarter cisis)
c 1 (should result in a whole note c)
c 1 6 (should result in a sixteen note c)
So what I mean is, the keyboard processor should be more intelligent and should recognize if there are coming more modifier keys that changes the previous note.
Is there a way to do something like this in MuseScore, maybe I have not seen the right option in keyboard settings?
Comments
If you think about how you say the note it would make more sense. You don't want to enter a sharp C but rather a C sharp. You select the base note name then the alteration just as you say then note name.
In reply to If you think about how you… by mike320
My English is not so fantastic, so I need to ask... how is the right speaking for a note in English... if I would follow now the MuseScore order I need to say "single dotted quarter C sharp" or maybe "quarter single dotted C sharp" would also work I guess. But anyway, it is possible to become accustomed to MuseScore note entry when one do it often enough. What I would say is just, that it is sometimes confusing that I need to press a 5 for quarter note instead of a 4, that I need a 4 for eight note instead of an 8.
But I agree also with Marc, it is just my personal liking :-)
I compare it with note entry in Lilypond, where I write... c4. cis8.. g2 b16.
But when I can change the settings it is also fine.
In reply to My English is not so… by unique75m
I did not address the duration, or length of the notes at all. I admit it took me some time to get used to pressing 5 for a quarter note rather than 4 and learned to love the Q, W, Shift+Q & Shift+W shortcuts that adjust the length of the note. In English we say "Dotted Quarter note C#" for example. The dot is added after the duration but said before, but as you wanted the note duration is entered as you want, the duration then the dot.
In reply to My English is not so… by unique75m
One reason it makes sense in LilyPond to use numbers like 4, 8, etc is that the file is a text file that can be written and read using any text editor. So instead of simple mnemonic shortcuts, it needs to rely on plain text. Thus, while MuseScore can use a simple Ctrl+T command to place text, LilyPond instead needs a more cumbersome set of tags that can be typed in, saved as text, and then read later as text. And for that purpose, it does make sense to have "4" as the text representation of a quarter note.
Whereasth in MsueScore, the keyboard shortcuts used to enter notes are never recorded as plain text, since there is absolutely no reason for them to be. Thus, the focus can be on making them efficient rather than one making them readable. And for the sake of efficiency, it does help a lot to have adjacent note values adjacent on the keyboard - 4/5/6 for eighth/quarter/half means you can do most of your note input using three adjacent keys, you don't an inefficient two-character sequence for 16ths or 32nds, etc.
So really, as soon as you stop thinking about using the keyboard to enter text in a system like LilyPond and instead start thinking more about the idea of using the keyboard to enter shortcut commands to perform operations in a GUI-based system like MuseScore, the shortcuts chosen really do make more sense, which is why a similar scheme is used in virtually other GUI-based prograsm (eg, Finale, Sibelius, etc). It's just more efficient.
But again, if you really want, you can customize your shortcuts, so everyone can be happy!
In reply to One reason it makes sense in… by Marc Sabatella
I agree with you that adjacent keys are probably better in efficiency, of course if I do it often enough then it would be normal for me to press a 5 for a quarter note. But when I follow only the pattern "efficiency" instead of "human-logic" or whatever words you want to use for that... why you don't use the keys Q W E R T Z U (German keyboard) instead of A B C D E F G. I could also say now, the first is better for efficiency, because they are adjacent keys. But nobody will understood it. The same happens from my viewpoint with the note duration.
I will not say that the current input is bad, the only I say is, that it is not like a human thinks, especially a beginner that does not know all the hundredths keyboard commands. Most software is just too technical and not human-friendly.
At the end of this thread I gave you a potential general solution for that. Maybe MuseScore can have a macro system in future, where all your current keyboard shortcuts are configured as macros per default. The macro system is just a super-set of your current keyboard shortcut system.
Currently you need to press for a "dotted quarter C sharp" that here: 5 . c #
In the macro system you just define a macro with name "5.c#" and assign all the needed actions that would be executed when you press 5 . c # including the action to switch to the next note. Then the system would work as before without any differences.
The big advantage is, that a user can now create own macros like "#c4.", which does exactly the same actions like "5.c#". This cannot be achieved currently by the keyboard settings, because you cannot change the order of some key strokes like dot or sharp.
If you think it in a bigger context, then all users can create many many macros and define their own most-used patterns. As example I could create macros for all triads and enter only triads and maybe up/down them by octave. I think this would be much more efficient than entering single notes. A macro for the G major triad could be called "tgma", which means "Triad G MAjor". Maybe you find a shorter form for that. In German I could use "tgd" = "Triad G Dur", because the there exists the words Dur=major and Moll=minor.
So as I said before, just an idea for the future. I think the implementation would be not easy, because you need first a good separation of UI code and domain code to have actions, that can be assigned to macros. For the moment I live with the current situation.
In reply to I agree with you that… by unique75m
Indeed, some people do prefer reassigning the letter names to resemble a piano keyboard, and we support that as well. But for most people - in the English-speaking world anyhow - the letter names are just too ingrained and useful to ignore.
Anyhow, not all humans think the same way. Different strokes for different folks. Some value efficiency, others the fact that the shortcuts line up the same way as the icons on the toolbar, others want shortcuts that match how most other programs do it, others want shortcuts that are reminiscent of the names used in the US (other countries, btw, do not necessarily use terms like "eighth note"). The current scheme satisfies all but the last. Switching to a scheme that favored the last would mess up all the rest.
Macros are a fine idea too of course, and maybe someday a facility will be added.
"Intuitive" is of course very subjective. The default order is nice because everything is all sequential, right in a row, left to right, just as the icons are. Also not everyone uses the term "quarter note" in Britain it is a "crotchet", for example). Also, you can add a dot after entering the note if you prefer thinking of the dot as a decoration rather than an inherent part of the duration, which is how MuseScore thinks of it. To add the dot afterwards, just press Shift+W (this too can be customized).
Still, there is no command that says "wait for the user to enter pitch, and as soon as he does, apply this accidental to it". Regardless of the shortcut you assign, accidentals will be assigned after the pitch, just as in many/most other notation programs. It's not impossible that someday someone might implement a toolbar toggle for accidentals like how it works for dots or for duration.
As Mike says, the current system works nicely in that it reflects how we say the note, not necessary how we write it. Unfortunately that music notation developed these inconsistencies.
In reply to "Intuitive" is of course… by Marc Sabatella
Hello Marc,
I described the issue to my coworker today. I think he had an excellent idea, but maybe this is more a feature request, because of complexity :-)
Instead of changing the keyboard settings or how the keyboard processor works currently, it would be more useful to have a macro functionality, where I can record all my key strokes and other UI actions. Every macro should have a name. The name should accept any character including specials like ?/.# etc. The macros should be searchable like in a searching/filtering dialog, maybe with options like "alphabetically sort" or "most used by user first". Then I could simply record a macro and give it a name like "cis4." or "cisis8..". The filter dialog should also accept wildcards, so that I can filter by "c*4" to find some macros with less character typing. I can refine my filter pattern to decrease the size of found items or I just use up/down arrow keys. A simple return can execute the macro. I think this would work like code-completion in development environments.
If there is a recordable action like "select previous N elements" I could also define some macros like "slur2", "slur3", ..., "slurN", which creates a slur over the last N notes. I think there should be also a recordable action like "select everything from last macro or last N macros", so that I can increase the octave for all notes that are generated by the last N macros.
Of course macros should be exportable/importable, so that users can share it.
Maybe the macro recording should be independent from keyboard settings, so that different keyboard settings on different computers does not causes troubles. Maybe there should be more like an "list of available actions", where I can compose a macro from.
Just an idea for future versions :-)