Do not leave behind an empty line when 3-clicking and dragging and prepend to line easier

Use case or problem

I manage my to-dos with Obsidian, so I have lists of bullet points. I want to easily reorder them using the mouse.

Obsidian supports the 3-click, however there are two shortcomings

  • The newline at the end is not selected. This leaves an empty line after dragging the selected text somewhere else and appends/prepends to the target line instead of opening a new one
  • The beginning of a line is hard to find when dragging text, a few pixels off, and the dragging is canceled

This is a video of the problems:

move_line

Proposed solution

  1. Make the 3-click select the newline at the end of the line; just one more character to the right!
  2. When dragging text in front of the line, do not cancel the operation, but prepend it to the line.

Current workaround (optional)

  • select > cut > new position new empty line > paste > delete empty line left behind (from #40812
  • Binding shortcuts to “Move line up/down”, but this is slower when moving over multiple lines

Related feature requests (optional)

2 Likes

I don’t disagree with your request. Especially about how you can’t really interact with the empty space in the left. Even clicking there doesn’t work.

But wouldn’t your life be a lot easier if you use keyboard shortcuts? Why do you claim it is slower on multiple lines? You can select quickly with a mouse, even if the selection is incomplete, and then use the hotkeys to move.

Or hold shift and hit up and down to quickly select multiple lines. Then use the hotkey. I can’t imagine in any case how that is slower than using the mouse to drag.

Dragging text around with a mouse is - in my not humble opinion - a bad idea, prone to all sorts of human-error.

(Edit: Also, I just discovered in testing, if you 4-click on a line, it does select the new line.)

2 Likes

Defining a short-cut for moving a line is possible indeed. I think it is also useful for something like working with code, where I am happy if I can spend most of my time at the keyboard, because this requires lots of fine-grained changes close together in the text.

However, in Obsidian, I organize my thoughts in free-form text. There, the mouse often feels like an extension to my mind. I move around, the cursor while thinking. Moving around text with the mouse is the way which gets least in the way. On long distances in the text, the mouse is just quicker than the keyboard, even if I memorize e.g. the vim shortcuts for jumping paragraphs. The time I need to move from the mouse to the keyboard, repeatedly pressing vim shortcuts to move up and down is just too much mental distraction.
The mouse is more intuitive for me because it is more similar to rearranging physical things.

As for human-error while moving text, I do not see how this is a problem. I am not sure what kind of error you mean, I assume it is being off by a few characters when releasing the text. That might be a problem when editing code, but for notes, everything is written in free-form anyway. Slight inaccuracies do not do big damage here, as humans parse that text, who are more tolerant to small inaccuracies than compilers.

Moreover, especially for bullet points, handles at the side to move a (set of) points up or down reduces this problem further.

Therefore, this feature would make Obsidian more seamless to work with for me.

4-clicking grabs the newline

yes, as rigmarole noted and it is very useful. Therefore, only the problem remains of not being able to drag into the space (gutter) before a line to release it at the beginning of the line. Apart from that, not many users might find out the 4-click by themselves so a handle might still be useful for a lot of people but I agree, it can be worked around.