Khi tôi thoát khỏi VIM và mở lại cùng một tệp, tôi được định vị ở đầu tệp. Làm thế nào tôi có thể duy trì vị trí con trỏ cuối cùng?Giữ nguyên vị trí chỉnh sửa cuối cùng trong VIM
Trả lời
Các "out of the box" .vimrc
phép này với tuyên bố:
source $VIMRUNTIME/vimrc_example.vim
Bạn chỉ có thể cần phải khôi phục tuyên bố này trong .vimrc
của bạn. Trong mọi trường hợp, hãy xem vimrc_example.vim
và cũng có thể xem chức năng line()
in the Vim manual để thảo luận về cách hoạt động của nó.
Điều đó làm việc cho tôi trên mac os x. Tôi cp'd các tập tin, chmod 600, và cuộc sống là lớn. – tggagne
Bạn có thể thử lệnh :mks
(thực hiện phiên). Nó lưu trữ một tập tin kịch bản mà, khi chạy qua vim, khôi phục phiên chỉnh sửa hiện tại của bạn, bao gồm tất cả các tệp đang mở và vị trí con trỏ.
Nó tạo ra một tập tin Session.vim trong thư mục địa phương. Đây không phải là những gì tôi muốn. Tôi bây giờ vim có thể tự động lưu các vị trí chỉnh sửa và khôi phục lại nó khi cùng một tập tin được mở ra. Tôi chỉ không biết làm thế nào. –
Taken từ http://amix.dk/vim/vimrc.html
" Return to last edit position when opening files (You want this!)
autocmd BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif
Bạn có thể giải thích câu lệnh 'if' đang làm gì ở đây không? Tôi đang đọc nó là "Chỉ khôi phục con trỏ nếu con trỏ sau dòng đầu tiên hoặc trước dòng cuối cùng", và nó không rõ ràng với tôi những gì khác biệt mà làm cho. Tôi hiện đang thêm 'autocmd BufReadPost * bình thường! g \ '" zv' để vimrc của tôi và nó có vẻ làm việc, nhưng tôi đoán tôi không hiểu những cạm bẫy tiềm năng của việc phục hồi nhãn hiệu vô điều kiện – robru
Ah, nếu tập tin được cắt ngắn bên ngoài vim, và dấu của vim là trên một dòng mà không còn tồn tại, vim ném một lỗi. Cố định rằng với 'autocmd BufReadPost * im lặng! bình thường! g \' "zv' – robru
Có một plugin (Tôi là tác giả) gọi là vim-lastplace đó một cách thông minh sẽ đưa bạn trở về chỉnh sửa cuối cùng mà bạn thực hiện.
Nó cũng có tùy chọn cấu hình để bỏ qua một số loại tệp nhất định. Theo mặc định, nó sẽ bỏ qua các thông điệp cam kết cho git, svn và mercurial. Đối với các loại tệp này, nó sẽ bắt đầu con trỏ của bạn ở dòng đầu tiên. Đoạn mã ở trên sẽ nhảy vào giữa tệp tin cam kết của bạn (nơi bạn đã dừng lại trong lần commit trước) mặc dù đó có thể không phải là những gì bạn muốn. vim-lastplace khắc phục sự cố này.
Vị trí chỉnh sửa cuối cùng được Vim tự động lưu giữ và có sẵn dưới dạng dấu nhảy "đặc biệt" .
. Các nhãn hiệu đặc biệt khác bao gồm "
(vị trí bạn đã lưu từ) và '
(vị trí bạn đã nhảy từ).
Bạn có thể nhảy đến một dấu ấn bằng cách gõ '<mark>
, vì vậy '.
sẽ đưa bạn đến nơi chỉnh sửa cuối cùng, ''
sẽ đưa bạn trở lại nơi bạn đã và '"
sẽ đưa bạn đến vị trí bạn đã lưu tệp ở.
Điều đó và nhiều hơn nữa về dấu Vim tại Vim.Wikia.
- 1. Eclipse IDE chỉnh sửa lịch sử vị trí cuối cùng - nhiều bước trở lại?
- 2. Chỉnh sửa tập tin Bash và giữ 500 dòng cuối
- 3. Nhận ngày chỉnh sửa cuối cùng của tệp trong VB6
- 4. Cách lấy vị trí xem cuộn cuối cùng, scrollview
- 5. Di chuyển con cuối cùng về vị trí đầu tiên
- 6. vim vị trí hình ảnh
- 7. Cách chỉnh sửa cùng một tệp trong nhiều tab trong vim?
- 8. Con trỏ Chuyển/Vị trí trong Vim
- 9. Vim - Chuyển đến vị trí trước
- 10. JFreeChart: Giữ nguyên vị trí zoom khi cập nhật biểu đồ
- 11. Chỉnh sửa tệp tại chỗ trong vim
- 12. Khi sử dụng CSS Scale trong Firefox, phần tử giữ nguyên vị trí gốc
- 13. Neo nhấp và giữ vị trí trang?
- 14. Nhận vị trí con trỏ trong Android trong văn bản chỉnh sửa?
- 15. Sửa vị trí tuyệt đối trong Android
- 16. UIImageView Animation không giữ khung cuối cùng
- 17. Tính toán đơn vị ở vị trí cuối cùng (ULP) cho số tăng gấp đôi
- 18. CSS để giữ nguyên tố ở vị trí "cố định" trên màn hình
- 19. Giữ lại vị trí trong ListView sau khi gọi notifyDataSetChanged
- 20. Chọn tất cả văn bản trong chỉnh sửa JComboBox và thiết lập vị trí con trỏ
- 21. Vị trí được biết cuối cùng được ghi lại trong bao lâu?
- 22. Cách điều hướng đến vị trí con trỏ cuối cùng trong Eclipse?
- 23. Cách điều hướng quay lại vị trí con trỏ cuối cùng trong Visual Studio?
- 24. Làm cách nào để tìm thông số vị trí cuối cùng trong Linux
- 25. Chuyển sang tab hoạt động cuối cùng trong VIM
- 26. Định vị hộp thoại Giao diện người dùng jQuery: điều chỉnh vị trí trên cùng 20px -
- 27. Vị trí con trỏ đến cuối văn bản trong uitextview và cuộn đến vị trí
- 28. Vị trí con trỏ trong chữ viết tắt VIM
- 29. Vị trí bù không số nguyên trong jQuery
- 30. Kiểm tra đơn vị cuối cùng chặn trong Java 6
bản sao có thể có của [Làm thế nào để bạn tạo Vim đưa bạn trở lại vị trí của bạn khi bạn chỉnh sửa tệp lần cuối?] (Http://stackoverflow.com/questions/1682536/how-do-you-make-vim-take -you-back-nơi-bạn-là-khi-bạn-last-edited-a-file) – mloskot
: giúp viminfo nên cho bạn biết những gì bạn cần –