Vim ẩn bộ đệm như trong emacs?


8

Tôi đang cố gắng tìm hiểu làm thế nào khái niệm vim về bộ đệm, cửa sổ và tab ánh xạ lên emacs.

Dường như với tôi điều đó <c-w>s<c-w>vgần tương đương với Emacs C-x 2C-x 3. Chúng không hoàn toàn tương đương vì các phân chia vim được đặt cách đều nhau theo mặc định và emacs sẽ chia đôi cửa sổ hiện tại.

Tương đương với C-x 0(đóng cửa sổ này), C-x 1(đóng mọi thứ trừ cửa sổ này) cho vim là gì? Tôi muốn có thể ẩn bộ đệm mà tôi hiện không tìm thấy nó mà không đóng chúng, vì vậy chúng vẫn có thể được triệu tập sau đó với bufexplorer hoặc một cái gì đó tương tự.


3
:h CTRL-W_c, :h CTRL-W_o.
Sato Katsura

Câu trả lời:


15

Theo mặc định, Vim sẽ từ chối thay thế bộ đệm hiện tại bằng bộ đệm khác nếu nó chứa các thay đổi chưa được lưu. Bạn sẽ cần thêm tùy chọn bên dưới vào vimrcnếu bạn không muốn hành vi đó (và bạn không muốn điều đó):

set hidden

Bộ đệm tương đương với tài liệu của Vim trong các chương trình khác. Khi bạn chuyển sang tài liệu khác, bạn chuyển sang bộ đệm khác. Điều này được thực hiện với các lệnh như:

:b2            switch to buffer number 2
:b#            switch to previous buffer
:b foo<tab>    switch to buffer with foo in its name + tab completion
...

Windows là một bản tóm tắt giới hạn được xây dựng trên bộ đệm. Chúng là các khung nhìn được sử dụng để hiển thị bộ đệm nhưng chúng không và không thể được gắn với bất kỳ bộ đệm cụ thể nào . Chuyển sang cửa sổ hoặc đóng cửa sổ chắc chắn không giống như chuyển sang bộ đệm hoặc đóng bộ đệm. Bạn có thể làm việc với các cửa sổ với các lệnh được liệt kê dưới :help ctrl-wđây:

<C-w>s    split current window in two, focus on the new one
<C-w>c    close the current window
<C-w>o    closes all other windows
<C-w>p    switch to previous window
...

Các trang tab là một sự trừu tượng hóa giới hạn khác được xây dựng trên các cửa sổ. Chúng là các không gian làm việc được thiết kế để chứa một hoặc nhiều cửa sổ. Giống như windows, chúng không thể được sử dụng làm proxy tệp / tài liệu.

Xem :help windows:help tab-pagecho một mô tả kỹ lưỡng.


2
May mắn thay, Emacs (thứ mà OP dường như đã quen thuộc) có khái niệm bộ đệm tương tự :)
VanLaser

4

Đóng cửa sổ: Ctrl-w c

Đóng tất cả các cửa sổ khác : Ctrl-w o, ( ocho "chỉ")

Để biết thêm thông tin mở vim và nhập lệnh :help window. Nhìn đặc biệt vào phần 3 và 4.

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.