Quay lại trình duyệt thư mục sau khi mở tệp trong vim


122

Khi tôi mở thư mục đang duyệt trong vim, tôi có thể mở một tệp bằng cách di chuyển con trỏ đến tên tệp và nhấn Enter.

Bây giờ, có lệnh nào để quay lại trình duyệt thư mục trước đó không?

Nếu không, có cách nào để mở tệp mà không đóng chế độ duyệt thư mục không?


2
Tôi không chắc chắn, nhưng nếu bạn muốn duyệt thư mục thực sự thuận tiện, tôi khuyên bạn nên kiểm tra NERDTree
Johan Kotlinski

Câu trả lời:


197

Bạn có thể quay lại bộ đệm cuối cùng bằng cách sử dụng :b#.

Nếu bạn vừa mở một tập tin, thì nó sẽ đưa bạn trở lại trình duyệt thư mục.

Cập nhật : Vì câu trả lời này tình cờ được chấp nhận là câu trả lời đúng và do đó ở trên cùng, tôi muốn tóm tắt một chút các câu trả lời, bao gồm câu trả lời của @romainl mà imho là câu đúng.


3
Điều đó nên được :b#. Tôi đã sửa nó, nhưng các chỉnh sửa một ký tự không bay.
echristopherson

Nếu tôi thực hiện vim <dirname>và sau đó điều hướng đến tệp và nhấn Enter, nó không hoạt động; nếu tôi mở vim, sau đó :e <dirname>, hãy chọn tệp và Enternó hoạt động. Trong cả hai trường hợp :bufferschỉ hiển thị một bộ đệm. Tôi không chắc tại sao nó lại như vậy.
mcmlxxxvi

@mcmlxxxvi theo wiki vim b#chỉ hoạt động cho "bộ đệm đã chỉnh sửa trước đó": vim.wikia.com/wiki/…
ezdazuzena

3
Rất vui khi tóm tắt tất cả các câu trả lời đúng khác, tôi ước nhiều người làm được điều đó.
LightMan

1
@veich Cảm ơn nhận xét của bạn, nhưng tôi sẽ không làm điều đó bây giờ vì câu hỏi chỉ là về việc lùi lại. Đây không phải là một trang wiki, tôi chỉ tóm tắt các câu hỏi khác cho rõ ràng. Mong bạn hiểu điều đó.
ezdazuzena

88

Bạn có thể sử dụng Ctrl- Ođể quay lại bộ đệm trước đó.


2
Nhìn chung, rất hữu ích (ví dụ: để điều hướng trở lại từ gf), nhưng trong trường hợp khám phá các thư mục, nó không đưa tôi trở lại "dòng" mà tôi đã bật khi mở tệp. :Rex<Enter>, hơi vụng về (5 tổ hợp phím so với 1), thì phải. Có lẽ đây là một ứng cử viên cho lập bản đồ ...
Tomasz Gandor

34

Lệnh thích hợp để quay lại danh sách netrw là :Rex[plore]. Bạn có thể chạy nó ngay cả sau khi bạn đã chuyển đến và từ hàng chục tệp.


Khi chỉnh sửa tệp sau khi rời khỏi danh sách netrw, việc trả lại bằng :Rexplorebất kỳ điều gì khác với việc trả lại bằng :Explore?
Jasha

Để trả lời câu hỏi của riêng tôi, nó dường như :Rexploreluôn trả bạn về cùng một danh sách netrw mà bạn đã duyệt trước đó, trong khi :Explorecung cấp danh sách cho thư mục của bất kỳ tệp nào hiện đang mở.
Jasha

29

:Ex sẽ đưa bạn trở lại (và hiển thị cho bạn những gì bạn đã chỉnh sửa và không lưu).


1
Tôi đã ủng hộ MỌI câu trả lời. tất cả chúng đều hữu ích
javadba

Tốt, nó tốt hơn một chút Ctrl-Ovì nó làm nổi bật thư mục mẹ ( ..), thay vì dòng trên cùng (một số tiêu đề Netrw), nhưng nó vẫn không phải là nơi tôi đã để lại trình khám phá (tệp đã mở). 4 lần nhấn phím so với 1, tiết kiệm một số js để điều hướng xuống nơi tôi đang ở, nhưng tôi vẫn có khả năng lập bản đồ :Rex<Enter>nếu tôi mong đợi nhiều điều hướng.
Tomasz Gandor

26

Tôi dựa vào Ctrl ^ để qua lại b / w hai bộ đệm.


1
Điều này đã làm việc cho tôi với vim 7.3 trên OSX từ homebrew. Ctrl-O dường như không hoạt động.
Gardner Bickford

5
Bạn thậm chí không cần thay đổi, có thể chỉ cần Ctrl 6
mVChr

chính xác hơn, điều này "chỉnh sửa tệp thay thế": vimdoc.sourceforge.net/htmldoc/editing.html#CTRL- ^
ezdazuzena 14/03/18

Thông minh! Mặc dù nó chỉ hoạt động qua lại (giống như "Hoàn tác 1 cấp"), nhưng nó thực sự trở lại dòng mà tôi đã bật! Có vẻ như tôi không lập bản đồ :Rex<CR>sau tất cả! (Tất nhiên, chỉ khi tôi không muốn "quay lại" từ các điều hướng lồng nhau (chuyển sang tệp khác, v.v.).
Tomasz Gandor

14

Tôi thường chỉ sử dụng :E. Thật dễ nhớ và đưa bạn trở lại danh sách thư mục của tệp bạn đã mở.


2
Tôi ngạc nhiên vì điều này có quá ít phiếu bầu. Đó chắc chắn là một câu trả lời.
TaoPR

1
Đừng ngạc nhiên - trên vim 7.4.x hiện tại của tôi :Erất mơ hồ và không làm gì cả. Bạn cần phải gõ ít nhất :E<CR>.
Tomasz Gandor

1
Điều này giống như :Exhoặc :Explorernếu không lệnh khác bắt đầu bằng Eđược định nghĩa. Xem ví dụ stackoverflow.com/a/14367507/1141095
ezdazuzena Ngày
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.