Tùy chọn 'switchbuf' nên hoạt động như thế nào?


9

Gần đây tôi đã phát hiện ra tùy chọn này switchbufvà đã thử sử dụng nó nhưng tôi không thể nói nếu tôi không hiểu nó nên hoạt động như thế nào hoặc nếu nó thực sự không hoạt động trên Vim của tôi.

Về các giá trị khác nhau có thể, tài liệu nói:

useopen Nếu được bao gồm, nhảy đến cửa sổ mở đầu tiên
              có chứa bộ đệm được chỉ định (nếu có).
usetab Giống như "useopen", nhưng cũng xem xét các cửa sổ trong các trang tab khác.

Sau đó tôi đã sử dụng set switchbuf=useopen,usetabvà các lệnh sau trong một ví dụ vim mới:

  • Mở bộ đệm đầu tiên :e file1
  • Chia đôi màn hình :split
  • Mở bộ đệm thứ hai :e file2
  • Quay trở lại bộ đệm đầu tiên :e file1(tôi cũng đã sử dụng :bN)

Các lệnh cuối cùng để đi đến bộ đệm đầu tiên mở nó trong phần tách thứ hai. Từ những gì tôi hiểu từ tài liệu, các lệnh sẽ đặt con trỏ đến phần tách đầu tiên nơi bộ đệm đã được mở nhờ useopen. Ngoài ra hành vi là như nhau khi tôi thử các lệnh tương tự với các tab thay vì chia tách.

  • Đây có phải là hành vi dự kiến?
  • Nếu vậy bạn có thể giải thích tùy chọn này nên làm gì?
  • Nếu không tôi biết rằng tôi sẽ phải gỡ lỗi .vimrcnhưng có lẽ có một cài đặt chung được biết là can thiệp vào switchbufkhông?

Câu trả lời:


9

'switchbuf'chỉ được vinh danh bởi các lệnh quickfix (như :cc) và các lệnh tách bộ đệm (như :sb).

Nó không ảnh hưởng :buffervà các lệnh liên quan đến bộ đệm "thông thường" khác.


1
Ồ tôi hiểu rồi. Như tài liệu nói đầu tiên This option controls the behavior when switching between buffers.và chỉ một vài dòng sau đề cập đến các lệnh quickfix và sbtôi nghĩ rằng đó là bổ sung cho các lệnh bộ đệm thông thường. Cảm ơn!
statox
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.