Thực thi nội dung của bộ đệm như vimscript


10

Tôi có một nofilebộ đệm chứa vimscript và tôi muốn thực thi nó. Tuy nhiên, :so % sẽ không hoạt động vì nó yêu cầu một tệp đã lưu, không phải bộ đệm. Có một lệnh vim để làm điều này theo mặc định? Nếu không, có thể tạo ra một chức năng thực hiện những điều tương tự?

Câu trả lời:


13

Có, bạn có thể kéo toàn bộ bộ đệm bằng ggyGhoặc :%ythực hiện nó với :@".

Nói ngắn gọn:

:%y|@"<CR>

Được sử dụng trong ánh xạ:

nnoremap <key> :%y|@"<CR>

Được sử dụng trong một lệnh linh hoạt hoạt động trên toàn bộ bộ đệm theo mặc định hoặc một phạm vi tùy chọn:

command! -bar -range=% Foo execute <line1> . ',' . <line2> . 'y|@"'

bạn có một dấu hai chấm bị thiếu trong lệnh đầu tiên.
Vitor

Ngoài ra, điều này không ghi đè "đăng ký. Tôi tưởng tượng bạn có thể sử dụng một đăng ký khác nếu bạn muốn, hoặc bạn chỉ có thể lưu "đăng ký và khôi phục nó sau đó.
EvergreenTree
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.