Cải thiện hành vi tập tin thay thế để tránh mở lại bộ đệm đã xóa?


7

Bị lôi cuốn bởi lời hứa của chế độ tà ác, tôi đã được ánh trăng trong Emacs. Đó là một thế giới hoang dã với sự pha trộn của lông rụng và các tính năng thông minh đáng kinh ngạc. Một tính năng tôi thực sự thích là một lệnh được gọi bury-buffer, nó đặt cách bộ đệm hiện tại xuống dưới cùng của danh sách bộ đệm và hiển thị bộ đệm hoạt động trước đó ở vị trí của nó. Bằng cách chôn một bộ đệm, nó trở thành ứng cử viên ít có khả năng nhất other-buffer(như Vim's alternate-fileon Ctrl-^).

Vì vậy, tôi có thể nảy qua lại giữa bộ đệm A và bộ đệm B. Sau đó, khi tôi ở B, tôi muốn kiểm tra một cái gì đó trong bộ đệm C. Tôi làm, sau đó tôi chôn C và tôi đặt lại vào B với A là tập tin thay thế của tôi . Điều tương tự cũng đúng nếu tôi đã xóa bộ đệm C thay vì chôn nó. Một trong hai hành động sẽ đưa tôi trở lại quy trình A / B của mình.

Nếu tôi làm tương tự trong Vim, xen kẽ giữa A và B, thì từ B mở C, danh sách bộ đệm hiển thị C là active ( %) và B là xen kẽ ( #). Khi tôi xóa C, Vim trả tôi về B. Nhưng C vẫn là tệp thay thế, mặc dù nó không còn xuất hiện trong danh sách bộ đệm. Nếu tôi đánh Ctrl-^, nó sẽ mở lại C thay vì đưa tôi trở lại A.

Có cách nào để tôi có thể định cấu hình Vim để hành vi tệp thay thế của nó thay vào đó đánh dấu bộ đệm mở được sử dụng gần đây nhất là thay thế thay vì khôi phục bộ đệm đã xóa không? Có cách nào để thao túng khái niệm của tập tin thay thế không?

Câu trả lời:


7

Tôi nghĩ rằng bạn đang tìm kiếm :help :keepalt:

$ vim a b       current buffer is 'a', no alternate file
:bn             current is 'b', alternate is 'a'
:b#             current is 'a', alternate is 'b'
:b#             current is 'b', alternate is 'a'
:keepalt e c    current is 'c', alternate is still 'a'
:keepalt bd     current is 'b', alternate is 'a'
:b#             current is 'a', alternate is 'b'

Tôi đã hy vọng có một tùy chọn mà tôi có thể thiết lập để thực hiện hành vi này bất kể tập tin được mở / đóng như thế nào, nhưng đây là một lệnh tốt để biết. Cảm ơn.
ivan

1
Quy trình công việc khác nhau: sắp xếp bộ đệm của bạn trong danh sách đối số :args % #, chỉnh sửa bất kỳ tệp nào bạn thích, sau đó khôi phục lại :last|N.
Antony
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.