Chuyển đến ký tự không phải khoảng trắng cuối cùng của dòng trước / tiếp theo?


10

Tôi giống như -<C-M>các phím bình thường chế độ cho đi đến nhân vật phi khoảng trắng đầu tiên của dòng trước / sau.

Có các phím coresponding để đi đến ký tự không phải khoảng trắng cuối cùng trên dòng trước / tiếp theo không?

Câu trả lời:


13

g_di chuyển con trỏ đến ký tự không trống cuối cùng của dòng hiện tại . Từ Vim :help g_:

g_          To the last non-blank character of the line and
            [count - 1] lines downward |inclusive|. {not in Vi}

Thật không may, tôi nghĩ rằng các tùy chọn duy nhất bạn phải di chuyển đến ký tự không trống của dòng trước / tiếp theo là kg_hoặc jg_tương ứng hoặc sử dụng số đếm để di chuyển xuống dưới.

Tuy nhiên, thật dễ dàng để ánh xạ chúng đến một cái gì đó dễ dàng hơn:

nnoremap <F3> kg_
nnoremap <F4> jg_

1
Cũng lưu ý rằng 2g_nó cũng sẽ hoạt động nếu bạn muốn đi đến ký tự không phải khoảng trắng cuối cùng trên dòng tiếp theo. Tuy nhiên, điều này không thể được sử dụng cho dòng trước. Ưu điểm của 2g_nó là có thể lặp lại với.
EvergreenTree

1
Chuyển động (như g_) không thể lặp lại với .. Nói chung, chỉ những thứ thay đổi trạng thái của bộ đệm có thể được lặp lại.
tommcdo 17/05/2015

Mặc dù, khi kết hợp với một toán tử, lặp lại hoạt động. Có lẽ đó là những gì bạn đã đề cập đến
tommcdo 17/05/2015

Ah, tôi đã không nhận ra chuyển động không thể lặp lại. Tôi nên xem các tài liệu trước khi tôi nói.
EvergreenTree

0

Nếu bạn có nghĩa là ký tự không phải khoảng trắng tiếp theo của các dòng trước / tiếp theo (bằng cách đi theo chiều dọc), thì hãy thử:

map <C-k> :call search('\%' . virtcol('.') . 'v\S', 'bW')<CR>
map <C-j> :call search('\%' . virtcol('.') . 'v\S', 'wW')<CR>
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.