Câu trả lời:
nó có thể thực hiện được ngay cả trong vani vim, nhưng khả năng ứng dụng phụ thuộc vào trường hợp sử dụng của bạn, tức là. tần suất bạn sẽ cần lặp lại nó, vì nó cần thêm vài lần nhấn phím để làm cho nó lặp lại.
sử dụng di chuyển xuống 5 dòng làm ví dụ, bạn có thể làm:
:norm 5j
, nó sẽ di chuyển con trỏ xuống 5 dòng@:
để lặp lại phong trào:norm
là viết tắt của bình thường, bất kỳ chuỗi nào sau đây được coi là tổ hợp phím của bạn ở chế độ bình thường
qa
(lưu macro vào đăng ký a
, bạn có thể chọn đăng ký của riêng mình như thế nào qb
, qc
)5j
q
(kết thúc ghi macro)@a
để lặp lại thao tác đã ghi của bạn (thay thế a
bằng tên đăng ký bạn đã chọn, vd. @b
, @c
)macro đòi hỏi nhiều sức mạnh tâm linh hơn để thiết lập nhưng nó lặp lại nhiều hơn theo nghĩa là bạn có thể lưu trữ nhiều hoạt động trong các thanh ghi khác nhau mà không bị chi phối bởi các hoạt động mới nhất.
Bạn có thể lặp lại thay đổi với .
. Chuyển động có thể được lặp lại với ;
lệnh. Lệnh này dường như là mới và thực hiện một điều tương tự với tập lệnh repmo.vim được đề cập trong các câu trả lời khác.
Ví dụ, để chuyển sang cái thứ hai tiếp theo c
, nhấn 2fc
. Sau đó để làm lại, chỉ cần gõ ;
.
Bạn có thể chọn các dòng bạn muốn thay đổi và thực hiện lệnh chấm bình thường cuối cùng
v5j .............. visual select next 5 lines
:'<,'>norm! . normal mode execute over selection last command '.'
;
không mới Đó là một lệnh vi tiêu chuẩn. Vi nhớ loại và mục tiêu nhân vật (nhưng lập luận không số) của người cuối cùngf
/F
/t
/T
chuyển động và;
lặp đi lặp lại nó. Nó không lặp lại các chuyển động khác, tuy nhiên.