Mercurial > vim
comparison runtime/doc/motion.txt @ 32888:b1162ad29d73 v9.0.1753
patch 9.0.1753: can't move to last non-blank char
Commit: https://github.com/vim/vim/commit/b5f6fe9ca2661d06bc0be839447ce1995450b9de
Author: Christian Brabandt <cb@256bit.org>
Date: Sat Aug 19 15:53:16 2023 +0200
patch 9.0.1753: can't move to last non-blank char
Problem: can't move to last non-blank char
Solution: Make g<end> behave like that
Make it possible to move to last non-blank char on a line
We can distinguish between g0 and g^ to move to the very first character
and the first non-blank char.
And while we can move to the last screen char, we cannot go to the last
non-blank screen char.
Since I think g$ is the more widely used and known movement command (and
g<end> is synonymous to it) change the behaviour of g<end> to move to
last non-screen char instead and don't have this be the same command as
the g$ command anymore.
If you want to keep the old behaviour, you can use:
```
nnoremap g<end> g$
```
Add a test to verify the behaviour.
closes: #12593
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 19 Aug 2023 16:00:08 +0200 |
parents | 1e91e26ceebf |
children | 2ad6e8515a78 |
comparison
equal
deleted
inserted
replaced
32887:3b7e424997d2 | 32888:b1162ad29d73 |
---|---|
240 gM Like "g0", but to halfway the text of the line. | 240 gM Like "g0", but to halfway the text of the line. |
241 With a count: to this percentage of text in the line. | 241 With a count: to this percentage of text in the line. |
242 Thus "10gM" is near the start of the text and "90gM" | 242 Thus "10gM" is near the start of the text and "90gM" |
243 is near the end of the text. | 243 is near the end of the text. |
244 | 244 |
245 *g$* *g<End>* | 245 *g$* |
246 g$ or g<End> When lines wrap ('wrap' on): To the last character of | 246 g$ When lines wrap ('wrap' on): To the last character of |
247 the screen line and [count - 1] screen lines downward | 247 the screen line and [count - 1] screen lines downward |
248 |inclusive|. Differs from "$" when a line is wider | 248 |inclusive|. Differs from "$" when a line is wider |
249 than the screen. | 249 than the screen. |
250 When lines don't wrap ('wrap' off): To the rightmost | 250 When lines don't wrap ('wrap' off): To the rightmost |
251 character of the current line that is visible on the | 251 character of the current line that is visible on the |
253 the line is not on the screen or when a count is used. | 253 the line is not on the screen or when a count is used. |
254 Additionally, vertical movements keep the column, | 254 Additionally, vertical movements keep the column, |
255 instead of going to the end of the line. | 255 instead of going to the end of the line. |
256 When 'virtualedit' is enabled moves to the end of the | 256 When 'virtualedit' is enabled moves to the end of the |
257 screen line. | 257 screen line. |
258 *g<End>* | |
259 g<End> Like |g$| but to the last non-blank character | |
260 instead of the last character. | |
258 | 261 |
259 *bar* | 262 *bar* |
260 | To screen column [count] in the current line. | 263 | To screen column [count] in the current line. |
261 |exclusive| motion. Ceci n'est pas une pipe. | 264 |exclusive| motion. Ceci n'est pas une pipe. |
262 | 265 |