Home and End are on a boat...
This is the current behavior of Home and End keys (V=good, X=means something to change explained afterwards):
With a selected note in the middle of the score (tests done with a score of several pages with 2 staves, one of them with 2 voices):
Home: do not change selection, scroll the score to the beginning X
Shift-Home: extend the selection to the beginning of the line and scroll if necessary V
Ctrl-Home: change the selection to the beginning of the score V and do not scroll X
Shift-Ctrl-Home: extend the selection to the beginning of the score and scroll if necessary V
End: do not change selection, scroll to the top of the last page X
Shift-End: extend the selection to the end of the line and scroll if necessary V
Ctrl-End: change the selection to the end of the score and scroll if necessary V
Shift-Ctrl-End: extend the selection to the end of the score and scroll if necessary V
With nothing selected:
Home: scroll the score to the beginning X
Shift-Home: do nothing
Ctrl-Home: set the selection to the beginning of the score V? and do not scroll X
Shift-Ctrl-Home: do nothing
End:
End: scroll to the top of the last page X
Shift-End: do nothing
Ctrl-End: set the selection to the end of the score V? and scroll if necessary V
Shift-Ctrl-End: do nothing
**
** What should be changed and why
**
[1] all current behaviours with the shift key are exactly what you would expect knowing how any other software works ==> keep them!
[2] one should expect that adding Shift to a movement key (Home, PgUp, Arrow, ...) extends the selection the same way as it moves the selection when no Shift key is used
E.g.
-ctrl-home: move the selection to the beginning, shift-ctrl-home extends the selection to the beginning
-arrow right: move the selection to the right, shift arrow right: extends the selection to the right
This is what happens in musescore, with the only exception of Home and End.
Home and End should really moves the selection the beginning and the end of the line, and not scroll to top and end of score. That will make them consistent with they behavior if associated with the shift key, which is the normal one to be kept.
One would just using ctrl-home and ctrl-end to scroll the score to top and end.
[3] ctrl-home with a selected note selects the first note of the score (ok) but do not scroll (bug) contrary to ctrl-end: the behavior is correct but the scroll is missing (ctrl-end is correct)
[4] ctrl-home / ctrl-end with nothing selected selects the first/last note and scroll (should scroll: only ctrl-end works, bug to fix as in [3]): I would find more natural that they scroll only when nothing is selected to begin with. But selecting at the same time is not really annoying
[5] shift + anything when no note is selected does nothing. This is ok (why would you use the shift combination if nothing is selected) but I would find more natural if their would behave as if the shift key is not used.
**
** Conclusion
**
[3] is a bug to fix
[2] should really be changed to make MuseScore at the same time: consistent with itself (align home/end with shift home/end) and consistent with other softwares (home/end = beginning/end of line)
Other points are there to be complete
Comments
FWIW, while I agree it seems there are some inconsistencies that should be addressed, I think your expectations differ from mine.
The standard behavior for "Home" in text editing programs - programs with a constant cursor - is to move the cursor (and hence the view) to the beginning of the current *line*. The standard behavior of Ctrl+Home is to move the cursor to the beginning of the current *document*. Because the selection in text edition programs is normally tied to the cursor position, both of these actions normally clear the selection
For programs without a constant cursor, the standard behavior is a little different. Sometimes there is no difference at all between Home and Ctrl+Home. Sometimes Home moves to the beginning of the current "page" (or some other logical unit), Ctrl+Home to the beginning of the current document. Sometimes the selection is reset, but more often not it seems to me.
Here are official Microsoft recommendations:
https://msdn.microsoft.com/en-us/library/ms971323.aspx
I am guessing Apple doesn't have anything quite so standardized, because most Macs lack these keys from my understanding.
My take on the most natural approach for a notation program is for Home to move the view to the top left of the current page, End to move to the bottom right of the current page; with Ctrl I'd expect it to move to the top left of the *first* page, Ctrl+End to move to the bottom right of the *last* page. In no case would I exepct the selection to be lost.
Would be worth seeing how other notation programs handle this.
In reply to FWIW, while I agree it seems by Marc Sabatella
'My take on the most natural approach for a notation program is for Home to move the view to the top left of the current page, End to move to the bottom right of the current page; with Ctrl I'd expect it to move to the top left of the *first* page, Ctrl+End to move to the bottom right of the *last* page. In no case would I exepct the selection to be lost.'
=> I agree with what you say, this is logic and consistent.
Just one point: one should choose between:
[A]
home: move view to the beginning of the line
shift-home: extends selection to the beginning of the line (as it is today)
[B]
home: move view to top left of the current page (as you propose)
shift home: extends selection to the beginning of the current page
But not mix [A] & [B].
I prefer [A].
In reply to 'My take on the most natural by frfancha
I think I agree. I'd still be interested to see how other programs do this.
In reply to I think I agree. I'd still by Marc Sabatella
Tested in V3, and unfortunately home, end, with or without control key are still incorrectly handled by MuseScore.
1) ctrl+home is supposed to go to first element and ctrl+end to last element according to preferences shortcuts, they do so but the view is not scrolled :-(
2) home and end are still inconsistent with their "shift" behaviour.
With "shift" they select until begin/end of LINE.
Without shift they go begin/end of PAGE.
That is inconsistent, they must do line or page for both.
And personally I would rather say "line", leaving the page movement responsibility to pgdn and pgup keys.
In reply to 'My take on the most natural by frfancha
Option [A] would feel most natural, (i.e. Home and End applying only to current line), with Ctrl-Home and Ctrl-End moving to start and end of current page. Home and End normally cancel any selection.
Changing page with home and end keys feels unintuitive. The PageUp and PageDown keys should be involved with page changes. Ctrl-PageUp and Ctrl-PageDown could move to start and end of whole document.
Shift can be used with ctrl/home/end/pageup/pagedown to extend selection.