Hello there!
I find the behaviour of :move
and similar commands (such as :delete
) to be inconsistent, as they behave differently depending on whether things are selected or not.
I am using a workflow to delete emails where I mark them first and then use a key binding to send them to the Trash folder (:move Trash
). If I mark some emails, those marked will be moved but not the selected one (unless marked); if not, the currently selected one will be.
I find this to be inconsistent: when an action is performed on a selected email, the outcome should not depend on what actions were performed on other emails.
Say you have emails A, B and C.
Mark A, highlight B
* A
-- B --
C
Type :delete
, A (marked) gets deleted, B (selected) doesn't.
Now you mark nothing and highlight C:
B
-- C --
Type :delete
. C (selected) gets deleted.
In two different scenarios, running a command while an email is selected has two different behaviours on what was selected.
This behaviour depends not on the currently selected email but on others.
Does selecting a message implicitly "mark" it?
If yes: the selected message should get acted on, regardless of whether other messages were marked.
If not: the selected message should not get acted on, regardless of whether other messages were marked.
In order not to break existing workflows, would it be possible for commands to have flags such as -s/-m/-b/-f
where they act on "selected", "marked", "both" or "flexible" (current behaviour) respectively?
Thanks!