2011-12-21 24 views
6

Trong Vim theo mặc định khi bạn nhập :e và nhấn mũi tên lên, nó sẽ hiển thị danh sách các tệp được mở trước đó bằng lệnh :e. Có cách nào để thêm tệp tôi đã mở từ thiết bị đầu cuối qua vim <filename> vào danh sách này không?vim thêm tập tin được mở qua CLI vào: lịch sử e

+0

Không chắc chắn nếu điều này giải quyết vấn đề của bạn, nhưng ': bộ đệm' có thể là thú vị cho bạn. Ngoài ra, có một số plugin tốt có thể giúp bạn tìm các tệp, như 'Command-T'. – deviousdodo

+0

Bạn có thích thú khi nâng cao giá trị 'history' của mình không? Thêm một cái gì đó như 'set history = 1000' thành' ~/.vimrc'. Vim mặc định là 20. –

Trả lời

2

Một khả năng:

au BufEnter * for f in argv() | call histadd("cmd", "e " . f) | endfor 

Giải thích:

au        # Autocommand. 
BufEnter       # Run it after entering a buffer. 
*         # For any file matching. 
for f in argv()     # Select files in argument list. 
call histadd("cmd", "e " . f) # Append to history of ex commands (beginning 
            # with colon) letter 'e' (of edit) with file name. 
endfor       # Repeat next loop. 

Đặt lệnh đó trong tập tin vimrc của bạn và thử.

2

Tôi không nghĩ vậy. :e <up> chỉ là một cách thuận tiện để duyệt lịch sử các lệnh cũ của bạn . Nó không cụ thể cho lệnh chỉnh sửa. Nó chỉ xảy ra khi bạn gõ đầu của lệnh cũ, lịch sử sẽ là "được lọc" vào các mục bắt đầu bằng cùng một ký tự.

Lệnh :args sẽ in danh sách các tập tin được như các đối số trong dòng lệnh, và :arge sẽ chỉnh sửa một tập tin và đặt nó trong danh sách đối số (nếu không muốn nói là đã được).

Ngoài ra, lệnh :b có thể được sử dụng để nhập một bộ đệm (trong trường hợp bạn vẫn còn có các tập tin trong một bộ đệm và muốn chỉnh sửa nó.

Một trong số đó có thể giúp bạn!

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