2009-01-14 18 views
35

zsh में, मैं लाइन संपादक कैसे स्थापित कर सकता हूं जैसे पिछड़ा-शब्द-शब्द निर्देशिका विभाजक पर बंद हो जाता है? वर्तमान में मेरे बैश सेटअप में, यदि मैंzsh: निर्देशिका डेलीमीटर पर पिछड़ा-हत्या-शब्द रोकें

cd ~/devel/sandbox 

टाइप करें और फिर सी-डब्ल्यू बिंदु "डेवेल /" के बाद सही होगा। मेरे zsh सेटअप में, बिंदु "सीडी" के बाद होगा। मैं zsh सेट अप करना चाहता हूं, इसलिए यह समान रूप से बाश के साथ व्यवहार करता है।

+0

यह हो एक ReadLine मुद्दा, मैं जोड़ने चाहिए सकती है ... – wilhelmtell

उत्तर

4

एक त्वरित गूगल का पता चलता है:

Backward Kill

या, शायद एक बेहतर ठीक:

Bash Style Backward Kill

+2

के लिए भविष्य के पाठक: अन्य सभी उत्तर सख्ती से बेहतर और आसान हैं। – Emil

59

zsh के हाल के संस्करणों के लिए, आप बस जोड़ सकते हैं:

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

अपने zshrc को descr के रूप में zshcontrib(1) में ibed।

+5

यह शायद काफी विशिष्ट है, लेकिन यदि यह काम नहीं करता है, तो यह zsh-syntax-highlighting प्लगइन की वजह से हो सकता है: https://github.com/zsh-users/zsh-syntax-highlighting/issues/67। अपने zshrc के अंत में उस प्लगइन को स्रोत बनाना सुनिश्चित करें। –

+0

यह काम करता है, लेकिन केवल आंशिक रूप से, यानी एक शब्द आगे बढ़ता है और फिर भी एक शब्द का हिस्सा बनने के लिए '/' को मानता है। –

+0

आह, मैंने इसे ठीक किया है, फाइल के बहुत शुरुआत में दो लाइनों के कारण होने के कारण बाहर निकलता है। –

35

एक और विकल्प WORDCHARS (गैर-अल्फान्यूमेरिक वर्णों को किसी शब्द के हिस्से के रूप में माना जाता है) सेट करना है जिसमें / शामिल नहीं है।

आप भी इस परिवर्तन कर सकते हैं अगर आप डॉट पर तोड़ने के लिए ^w पसंद करते हैं, अंडरस्कोर, आदि ~/.zshrc में मेरे पास है:

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

सबसे आसान और सबसे लचीला विकल्प। धन्यवाद! – Alex