Tôi có thể đặt Vim không duy trì tệp .swp khi không có chỉnh sửa chưa được lưu không?


0

Tôi chạy Vim trong một screen phiên. Khi phiên đó kết thúc, nó sẽ giết các tiến trình đang chạy bên trong nó, khiến Vim bị bỏ lại phía sau .swp các tập tin. Đây là một điều tốt nếu .swp tệp chứa thông tin cho phép tôi khôi phục các chỉnh sửa chưa được lưu, nhưng trong hầu hết các trường hợp, tôi thoát screen với mọi thứ trong trạng thái được lưu sạch sẽ ( :wa ). Điều này làm cho .swp gây khó chịu vì chúng không chứa bất kỳ thông tin hữu ích nào, nhưng vẫn gây ra lời nhắc khôi phục khi mở lại.

Tôi có thể lấy Vim chỉ để duy trì một .swp tập tin khi có những thay đổi chưa được lưu đang chờ xử lý?

Câu trả lời:


1

Trao đổi tập tin

Câu trả lời ngắn gọn là Không . Với Vim, các tệp hoán đổi liên tục được mở trong khi bộ đệm đang được chỉnh sửa. Nó có thể làm chậm quá trình chỉnh sửa quá nhiều để mở tệp hoán đổi và đóng nó mỗi khi có thay đổi đối với nó (tệp hoán đổi được cập nhật sau khi nhập 200 ký tự hoặc khi bạn không gõ gì trong bốn giây).

Nếu bạn không muốn dùng một tập tin hoán đổi cho một bộ đệm hoặc bộ đệm nhất định, bạn có thể tạm thời bỏ đặt swapfile Tùy chọn:

set noswapfile

Để mở bộ đệm mới mà không sử dụng tệp hoán đổi, bạn có thể sử dụng :noswapfile công cụ sửa đổi, ví dụ:

:noswapfile edit ~/.bashrc

Phiên

Từ trường hợp sử dụng của bạn, có vẻ như bạn có thể hưởng lợi từ các phiên Vim. Khi bạn chỉnh sửa xong, hãy chạy mksession để lưu phiên của bạn trong tệp tập lệnh Vim có tên Session.vim trong thư mục hiện tại. Sau đó gõ xa để viết và thoát tất cả các tập tin. Lần tới khi bạn chạy Vim, hãy khởi động nó trong cùng thư mục làm việc bằng cách sử dụng

vim -S Session.vim

Ngoài ra, nếu bạn đã bắt đầu Vim, bạn có thể lấy tập lệnh phiên

:source Session.vim

Xem help Session để biết thêm thông tin về tính năng hữu ích này.

BTW, liên quan đến màn hình, tôi cho rằng bạn chỉ đóng phiên màn hình (chứ không phải tách ra) vì máy tính đang bị tắt hoặc khởi động lại.


Cảm ơn bạn. Tôi đang sử dụng các phiên Vim và quy trình làm việc cuối phiên của tôi là (1) chuyển sang tab màn hình có Vim chạy trong đó, (2) :xa, (3) đóng cửa sổ đầu cuối có màn hình trong đó (vâng, đây là trên máy phát triển máy tính để bàn và tôi đóng màn hình khi tắt máy). Tôi đã hy vọng cho một câu trả lời cho phép tôi bỏ qua (1) và (2).
jl6

@ jl6 Quy trình làm việc của tôi tương tự với bạn ngoài thực tế là tôi thường chạy GVim để chỉnh sửa các tệp cục bộ thay vì Vim trong một thiết bị đầu cuối. Tôi không thấy quá khó để lưu phiên Vim trước khi đóng nó một cách rõ ràng.
Anthony Geoghegan
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.