> The "reason" is largely a side-effect of the implementation, I
> suspect.
Would it then not be a good idea to improve it (not as part of this bug,
of course)? E.g. currently the behavior is like below.
Setup: Magit buffer with staged files, at least two. It looks like this:
Staged changes (N)
modified file1
[invisible diff of file1]
modified file2
[invisible diff of file2]
so essentially I, as a user, only see this in UI:
Staged changes (N)
modified file1
modified file2
Now, I put the point at the beginning of the third line ([^] is the point):
Staged changes (N)
modified file1
[^]modified file2
I press C-b, expecting that the point is moved to the end of the
previous line that I see. But it is not moved there, this is the result:
Staged changes (N)
modified file1
[^]modified file2
In reality, the point is in the invisible (to me, as the user) diff for file1.
If I press C-b again, only now point is moved like I expected it to be
moved the last time:
Staged changes (N)
modified file1[^]
modified file2
So, the presence of invisible text between lines 2 and 3 changes the
way C-b behaves and breaks my (as a user of Emacs) expectations,
disrupting established editing flow. I'd say that the invisible text
should count as implementation details and shouldn't affect user-
visible results at all.
What do you think?
Paul