2008-09-22 35 views
57

Tôi thích vim và tốc độ nó mang lại cho tôi. Nhưng đôi khi, ngón tay của tôi quá nhanh và tôi thấy mình đang gõ :WQ thay vì :wq. (Trên bàn phím tiếng Đức, bạn phải bấm Shift để lấy dấu hai chấm :.) Vim sau đó sẽ khiếu nại rằng WQNot an editor command.Tôi có thể (lại) ánh xạ các lệnh Ex trong vim không?

Có cách nào để thực hiện các lệnh biên tập WQ không?

+4

Bạn cũng sử dụng dịch chuyển để có dấu hai chấm trên một QWERTY chuẩn của người Mỹ. –

+1

Không nên có trên Superuser? – Boldewyn

+2

bạn cũng có thể lập bản đồ; (hoặc bất cứ điều gì là trên: phím) để: và ngược lại, do đó bạn không cần phải sử dụng thay đổi để có được:. – mb14

Trả lời

67

Hãy thử

:command WQ wq 
:command Wq wq 
:command W w 
:command Q q 

Bằng cách này bạn có thể định nghĩa các lệnh của riêng bạn. Xem :help command để biết thêm thông tin.

+4

đừng quên thêm phần trên vào vimrc của bạn để bạn không phải thực hiện nó mỗi lần. – rampion

+7

Lưu ý rằng trong .vimrc, bạn cần phải bỏ qua dấu hai chấm hàng đầu. Nó nên đọc, ví dụ: 'lệnh Wq wq' – Luc

+0

Giải pháp này được giới hạn trong một tên lệnh bắt đầu bằng chữ cái của thủ đô. Một giải pháp tốt hơn có thể được tìm thấy [ở đây] (http://stackoverflow.com/a/3879737/1519199). – Jthorpe

12

Và bạn có thể sử dụng

:cmap WQ wq 

là tốt. Ví dụ: Tôi có

cmap h tab help 

trong số .vimrc có nghĩa là mở trang trợ giúp trong tab mới.

Thanks for the tip Jim Stewart:

Nhưng đây là một giải pháp tốt hơn nhiều như ở trên (đối với các bản đồ giúp đỡ, để nó chỉ được áp dụng khi bạn làm: h):

cnoreabbrev <expr> h getcmdtype() == ":" && getcmdline() == "h" ? "tab h" : "h" 
+0

Trợ giúp tab 'cmap h' của bạn không hoạt động đối với tôi –

+1

Phiên bản nào nếu (G) Vim? Điều gì sẽ xảy ra khi bạn nhập ': trợ giúp tab cmap h : h '? –

+6

-1: chạm quá nhiều. Ví dụ, ': echo 3' sau đó sẽ tạo ra': ectab helpo 3'. ': e sh.py' trở thành': e stab help.py'. Vân vân. –

30

Cách khác để thực hiện:

Sử dụng 'command abbreviations'

:ca WQ wq 
+5

"Command * abbreviationations *", not "command aliases". –

+2

Một cách hữu ích để nhớ rằng: Từ khóa đầy đủ là 'cabbrev'. :) –

+1

+1 Điều này cũng cho phép các bí danh bắt đầu bằng chữ thường (ngược lại với ': lệnh'). –

Các vấn đề liên quan