2013-08-07 33 views
9

Đôi khi tôi cần phải viết toàn bộ bảng chữ cái abcd…z và tôi không muốn gõ chữ cái này bằng chữ cái trong chế độ chèn của Vim. Có tồn tại bất kỳ phương pháp để làm điều này hiệu quả hơn?Viết toàn bộ bảng chữ cái trong Vim

Tôi biết về lệnh ga cho tôi mã ascii của ký tự nơi con trỏ ... nhưng không biết gì về cách trộn nó với giải pháp chuẩn của tôi để nhập số từ 1 đến (ví dụ) 5000 : a1ESCqqyyp^[email protected] ...

+5

... hoặc đi công nghệ thấp ': inoreab abc abcdefghijklmnopqrstuvwxyz' :) – glts

+0

Nếu bạn thực sự cần phải nhập toàn bộ bảng chữ cái thường thì viết tắt là cách để đi. Nó sẽ dễ dàng hơn nhiều để gọi sau đó phải nhớ một cách lập trình để làm điều đó. –

Trả lời

14

Sử dụng set nrformats+=alpha:

ia<Esc>qqylp<C-a>[email protected] 

Từng bước:

ia<Esc>  " Start with 'a' 
qqylp<C-a>q " @q will duplicate the last character and increment it 
[email protected]   " Append c..z 
+0

Có vẻ tuyệt vời, không biết điều đó về nrformats. Cảm ơn. –

+0

Nếu bạn không đăng bài ở đây về 'nrformats', tùy chọn đó chắc chắn sẽ là lần cuối cùng tôi biết về! Bạn đã sử dụng tùy chọn này để bạn biết điều đó? – user1146332

+0

Tôi không nhớ bao giờ phải sử dụng nó; Tôi chỉ biết về sự tồn tại của nó bằng cách đọc qua [': help options'] (http://vimdoc.sourceforge.net/htmldoc/options.html). –

5

Làm thế nào về lệnh này:

:put =join(map(range(char2nr('a'),char2nr('z')),'nr2char(v:val)'),'') 

Thu thập các giá trị ASCII của ký tự trong khoảng từ a để z, sau đó bản đồ chúng trong nr2char() chức năng và chèn kết quả vào bộ đệm hiện với :put =.

Khi bạn rời khỏi bao vây join(,''), bạn sẽ có được các ký tự trên một dòng riêng biệt.

Xem

9

Nếu shell của bạn không mở rộng cú đúp này là một giải pháp khá thanh lịch:

:r !printf '\%s' {a..z} 

:read! đọc đầu ra của một lệnh bên ngoài vào cu bộ đệm thô tục. Trong trường hợp này, nó đọc đầu ra của vỏ printf áp dụng cho {a..z} sau khi nó được mở rộng bởi vỏ.

0

Bạn có thể thử sử dụng Vim abbreviations hoặc plugin trình quản lý đoạn mã chính thức như UltiSnips. Có thể mất vài phút để thiết lập và bạn phải nhập bảng chữ cái đó một lần nữa để xác định nó dưới dạng viết tắt hoặc đoạn trích, nhưng sau đó bạn có thể chèn bảng chữ cái hoặc bất kỳ đoạn văn bản thông thường nào khác dễ dàng hơn nhiều.

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