2009-01-14 19 views
35

Trong zsh, làm cách nào tôi có thể thiết lập trình chỉnh sửa dòng sao cho từ dừng ngược lại dừng trên bộ tách thư mục? Hiện tại trong thiết lập bash của tôi, nếu tôi nhậpzsh: dừng lùi-giết-chữ trên phân cách thư mục

cd ~/devel/sandbox 

và sau đó nhấn điểm C-w sẽ ngay sau "devel /". Trong thiết lập zsh của tôi, điểm sẽ là sau "cd". Tôi muốn thiết lập zsh để nó hoạt động tương tự như bash.

+0

Điều này có thể là một vấn đề readline, tôi nên thêm ... – wilhelmtell

Trả lời

4

Một google nhanh chóng cho thấy:

Backward Kill

Hoặc, có lẽ một sửa chữa tốt hơn:

Bash Style Backward Kill

+2

Đối độc giả tương lai: cả hai câu trả lời khác đều tốt hơn và dễ dàng hơn. – Emil

59

Đối với các phiên bản gần đây của zsh, bạn chỉ có thể thêm:

autoload -U select-word-style 
select-word-style bash 

vào zshrc của bạn dưới dạng descr ibed in zshcontrib(1).

+5

Điều này có lẽ khá cụ thể, nhưng nếu điều này không hoạt động, có thể là do plugin đánh dấu cú pháp zsh: https://github.com/zsh-users/zsh-syntax-highlighting/issues/67. Đảm bảo rằng nguồn plugin ở cuối zshrc của bạn. –

+0

Tác phẩm này hoạt động, nhưng chỉ một phần, tức là nhảy một từ về phía trước và phía sau vẫn xem xét '/' là một phần của từ. –

+0

Ah, tôi đã sửa nó, hóa ra vì bất cứ lý do gì mà hai dòng này phải ở ngay đầu của tập tin. –

35

Một tùy chọn khác là đặt WORDCHARS (ký tự không phải chữ và số được coi là một phần của từ) vào nội dung không bao gồm /.

Bạn cũng có thể tinh chỉnh này nếu bạn muốn ^w để phá vỡ trên chấm, dấu gạch dưới, vv Trong ~/.zshrc tôi có:

WORDCHARS='*?_-.[]~=&;!#$%^(){}<>' 
+2

Tùy chọn dễ dàng và linh hoạt nhất. Cảm ơn bạn! – Alex

Các vấn đề liên quan