Điểm của chế độ thay thế ảo trong Vim là gì?


9

Trợ giúp nói rằng các lệnh chế độ thay thế ảo trong Vim gr& GRthay thế các ký tự trong phần màn hình và không có trong tệp.

:help Virtual-Replace-mode

Tôi hiểu điều này giống như thay đổi các ký tự trên màn hình nhưng không phải trong bộ đệm. Có đúng không? Có vẻ không đúng.

Tôi có thể sử dụng một lời giải thích và có thể là một kịch bản hoặc một ví dụ trong đó tính năng này có liên quan.

Câu trả lời:


9

Trong Chế độ thay thế ảo, Bộ đệm khó cố định hơn vị trí ban đầu của nó.

1. Hello World
         ^ Cursor
2. I like cheese
3. And beer

Khi vào chế độ thay thế bình thường và nhấn Internet<CR>And othersbộ đệm mới sẽ như thế này:

1. Hello Internet
2. And others
3. I like cheese
4. And beer

Khi thực hiện tương tự trong Thay thế ảo, kết quả sẽ là

1. Hello Internet
2. And othersese
3. And beer

Một ví dụ khác (tabstop = 2; sts = 0):

1. 012345678901234567890
2. Hello beautiful World
         ^ Cursor

Phím bấm: <Tab><Tab>

Kết quả thay thế chế độ:

1. 012345678901234567890
2. Hello     autiful World

Kết quả Chế độ ảo thay thế:

1. 012345678901234567890
2. Hello     tiful World

Bởi vì trong chế độ Thay thế, việc thay thế được thực hiện bằng char, trong đó Tabcó một char, bất kể có bao nhiêu ký tự được hiển thị. Trong Chế độ ảo thay thế, độ dài hiển thị của Tab( :h 'ts', :h 'sts') được sử dụng để thay thế ký tự.


(Có bất kỳ nhân vật nào bị ăn mòn bởi định dạng nhận xét, một số chuỗi trích dẫn trông giống như họ bỏ lỡ văn bản, với tôi). Dù sao, đoạn cuối đã giúp rất nhiều. Tôi khá chắc chắn tôi hiểu ngay bây giờ :) Cảm ơn rất nhiều @krissi!
Sri Kadimisetty
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.