Đối với các chương trình Haskell của tôi, tôi biết rằng tên của tệp thi hành trong đường dẫn giống với tên thư mục hiện tại của tôi. Bây giờ tôi muốn tạo ra một bản đồ như vậy:Sử dụng thư mục hiện tại trong các lệnh Vim
:map <leader>rr :!curdir()<cr>
Tuy nhiên, lệnh duy nhất tôi biết là getcwd()
, mà mang lại cho tôi toàn bộ con đường thay cho tên chỉ của thư mục.
Có cách nào dễ dàng chỉ trích xuất tên của thư mục không?
Xem [câu trả lời này] (http://stackoverflow.com/a/13908273/546861). – romainl
Các câu trả lời dưới đây là các giải pháp vimscript tốt. Nếu bạn không có bản đồ, bạn cũng có thể đánh giá động này bằng cách đăng ký =. (sau khi gõ một phần của lệnh cũ như ':!' type 'CR =' theo sau là một trong các giải pháp vimscript dưới đây. – darcyparker
@darcyparker Không tốt. Không sử dụng bất kỳ loại cụm từ thông dụng nào cho công việc như vậy Bất kỳ ai giả định '/' là một dấu phân cách đường dẫn là sai. Bất kỳ ai giả sử '/' và '\' là * cả hai dấu phân cách đường dẫn đều sai. Hơn nữa, bất kỳ ai giả định '\' là * luôn luôn * tách đường dẫn trên Tôi cũng không có ý tưởng trong đó hoàn cảnh phân cách đường dẫn sẽ là ':', nhưng nó có thể được nó. Hầu hết \ * nix hệ thống có thể có '\' và ':' trong tên tập tin. – ZyX