ZLE_REMOVE_SUFFIX_CHARS
/ ZLE_SPACE_SUFFIX_CHARS
Bu parametreler hat editörü tarafından kullanılır. Belirli durumlarda, tamamlama sistemi tarafından eklenen sonekler (genellikle boşluk veya eğik çizgi), ya bir sonraki düzenleme komutu eklenebilir bir karakter olmadığından ya da karakterin sonekin kaldırılmasını gerektiren olarak işaretlenmiş olması nedeniyle otomatik olarak kaldırılır.
Bu değişkenler, son ekin kaldırılmasına neden olacak karakter kümelerini içerebilir. Eğer ZLE_REMOVE_SUFFIX_CHARS
ayarlanır, bu karakterleri soneki kaldırılan olmasına yol açar; eğer ZLE_SPACE_SUFFIX_CHARS
ayarlanırsa, bu karakterler soneki çıkarılıp bir alan ile değiştirilir neden olur.
Eğer ZLE_REMOVE_SUFFIX_CHARS
ayarlanmazsa, varsayılan davranış eşdeğerdir:
ZLE_REMOVE_SUFFIX_CHARS=$' \t\n;&|'
Eğer ZLE_REMOVE_SUFFIX_CHARS
kümesidir ancak boş olduğunda, hiçbir karakter bu davranışı var. ZLE_SPACE_SUFFIX_CHARS
öncelik taşır, böylece aşağıdakiler:
ZLE_SPACE_SUFFIX_CHARS=$'&|'
karakterlere neden olur &
ve |
son eki kaldırır, ancak bir boşlukla değiştirir.
Farkı göstermek için, seçeneğin AUTO_REMOVE_SLASH
yürürlükte olduğunu ve DIR dizininin sonuna eklenmiş olduğunu /
ve ardından kullanıcının yazdığını varsayalım &
. Varsayılan sonuç şudur DIR&
. İle ZLE_REMOVE_SUFFIX_CHARS
sette ama eklemeden &
sonucudur DIR/&
. İle ZLE_SPACE_SUFFIX_CHARS
içerecek şekilde ayarlanmıştır &
sonucu olduğunu DIR &
.
Belirli tamamlamaların, burada açıklanan değerleri geçersiz kılan kendi sonek kaldırma veya değiştirme davranışlarını sağlayabileceğini unutmayın.
zsh -f
(yapılandırmanızı yüklemeyi atlamak için) düğmesini kullanarak bunu tekrar deneyin . Artık zsh'ın bunu yapmayacağını fark edeceksiniz. Daha sonra, buna neden olduğunu anlamak için (büyük olasılıkla) oh-my-zsh'ı kazmanız gerekecek ;-)