Lưu một macro vừa tạo trong vimrc


14

Đôi khi tôi tạo macro. Đôi khi tôi tạo cùng một macro nhiều lần.

Đôi khi tôi cảm thấy mệt mỏi khi tạo cùng một macro một lần nữa. Tôi có thể lưu trữ macro không? Tôi có thể tải một cài đặt sẵn của macro không? Tôi có thể tạo một macro và lưu nó mãi mãi không?

Câu trả lời:


17

Vâng, bạn có thể! Có một vài cách để làm điều này. Theo mặc định, tất cả các thanh ghi sẽ được lưu vào tệp viminfo của bạn và được tải khi bạn bắt đầu vim. Đây là cách dễ dàng nhất. Tuy nhiên, nó không phải là hoàn hảo. Mỗi thanh ghi sẽ bị mất nếu bạn vô tình ghi / kéo qua nó.

Cách tốt hơn để lưu một macro cụ thể là đặt nó trong của bạn .vimrc. Ví dụ: giả sử bạn muốn foođược lưu vào macro a. Điều này có thể đạt được với:

let @a='foo'

trong vimrc của bạn. Nếu bạn đã tạo macro, bạn có thể nhập

ilet @a='<C-r><C-r>a'<esc>

để dán nội dung hiện tại của macro, nếu bạn không muốn gõ lại tất cả.


Cảm ơn Andrew Keeton đã chỉ ra <C-r><C-r>


Có lẽ bạn sẽ muốn sử dụng <C-r><C-r>(hai, thay vì một) để chèn văn bản theo nghĩa đen
Andrew Keeton

1
@AndrewKeeton Ooh, cải tiến tuyệt vời. Cảm ơn vì đã cho tôi biết về điều đó
James

<c-r><c-r>sẽ không làm việc nếu macro của bạn chứa đặc biệt dãy phím như <c-right>, "apkhông có vấn đề này.
depowsdi
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.