hủy bỏ hoàn thành


11

Thường thì chèn chế độ hoàn thành ( <C-n>) chèn từ đúng vào lần đầu tiên tôi nhấn <C-n>, nhưng không phải lúc nào cũng vậy. Do đó, tôi muốn Vim chèn trận đấu mà nó thấy tốt nhất khi tôi nhấn <C-n>, nhưng vẫn cho phép tôi hủy bỏ thao tác chèn này sau đó nếu trận đấu chính xác không hiển thị hoặc nằm cách xa danh sách.

Tất nhiên tôi có thể mã hóa hành vi này, nhưng tôi có cảm giác nên có một khóa tiêu chuẩn (tổ chức) để thực hiện điều này. ai đó có thể chỉ cho tôi đi đúng hướng?

Câu hỏi thưởng: có một chìa khóa khác tôi có thể sử dụng để có được trận đấu dài nhất (như trước khi tôi đánh <C-n>) không?

Đối với những gì nó có giá trị, tôi đang sử dụng completeopt=menu


1
ctrl-unhững gì bạn đang tìm kiếm?
statox

Không, ctrl-u dường như xóa toàn bộ dòng. Tôi đang tìm kiếm một sự kết hợp chỉ loại bỏ văn bản được chèn bằng cách nhấn ctrl-n.
Octaviour

Suy nghĩ đầu tiên của tôi là "không phải là công việc hủy khóa thông thường ở đây?", Sau đó tôi nhận ra đó là emacs. Chỉ vài ngày học cách đây nhiều năm đã làm tôi hư hỏng, tôi sẽ tắm trong một dòng sông linh thiêng và thanh lọc chính mình!
- Phục hồi Monica

Câu trả lời:


13

Từ :h complete_CTRL-E:

                                                        * hoàn thành_CTRL-E *
Khi hoàn thành được kích hoạt, bạn có thể sử dụng CTRL-E để dừng nó và quay lại
văn bản đánh máy ban đầu. CTRL-E sẽ không được chèn.

Ngoài ra nếu bạn, giả sử, asau đó nhập ^Pvà bạn nhận được một danh sách rất dài, bạn có thể nhấn ^N để trở về văn bản gốc của mình với cửa sổ bật lên hoàn thành vẫn hoạt động. Sau đó, bạn có thể nhập thêm ký tự để thu hẹp danh sách hoàn thành.


Đó chính xác là những gì tôi đang tìm kiếm. Tôi đã không nhận ra rằng ctrl-p cũng sẽ đưa tôi trở lại đầu vào ban đầu. Cảm ơn.
Octaviour

2
@Octaviour, tôi thấy ctrl-p thường hữu ích hơn ctrl-n, vì nó tìm kiếm kết quả gần nhất trước (thay vì sau) nơi bạn đang ở. Vì vậy, nếu bạn vừa viết một từ, ctrl-p sẽ nhanh chóng hiển thị cho bạn cùng một từ nếu bạn cần lặp lại từ đó (ví dụ: sử dụng lại cùng một biến trong mã)
Shahbaz

Vâng, tôi đã viết ^Pra thói quen cho chính xác lý do đó.
Antony
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.