Có cách nào để di chuyển tệp trong Vim không? Ví dụ. Tôi đã mở một tập tin foo/bar.txt trong Vim. Tôi biết 2 cách để di chuyển tập tin này:Di chuyển tệp trong Vim
giải pháp đầu tiên:
- Xóa bộ đệm với
:bd bar.txt
- Thực hiện các động thái trên vỏ với
mv foo/bar.txt foo/bar2.txt
- tải tập tin trong vim với
:e foo/bar2.txt
Giải pháp thứ hai:
- Đóng Vim, vì vậy tất cả vùng đệm đã đóng.
- Thực hiện di chuyển trên vỏ ...
- Bắt đầu Vim và tải tệp.
Nhưng hai giải pháp này rất đáng xấu hổ. Tôi biết, có một plugin để đổi tên các tập tin vim-enuch, nhưng không phải là có một cách Vim để thực hiện chức năng cơ bản như vậy?
Giải pháp này là tốt hơn, bởi vì tôi có thể thêm dòng này từ 5 đến vimrc của tôi chứ không phải tải một plugin nặng. – SvenK
Tôi vừa cập nhật nó sau khi một số thử nghiệm – sehe
Các vấn đề về tên tệp thoát được bỏ qua trong việc triển khai được cung cấp. Để khắc phục vấn đề này, ta nên thay đổi hai dòng cuối của hàm như sau. Đầu tiên, 'exe 'sav' fnameescape (a: newspaperec)'; thứ hai, 'gọi xóa (cũ)'. Bạn cũng nên kiểm tra giá trị trả về của hàm 'delete()' để thông báo cho người dùng trong trường hợp thất bại trong việc xóa tập tin (dễ bắt tình huống này là một ưu điểm khác của hàm trên '! Rm', ngoài tính đa nền tảng của nó). –