เมื่อฉันพิมพ์ช่องว่างตามด้วยสัญลักษณ์'|'
ไพพ์บนบรรทัดคำสั่ง zsh zsh กินช่องว่างวางสัญลักษณ์ไพพ์ขึ้นตรงกับคำก่อนหน้า ฉันจะหยุดมันจากการทำเช่นนั้นได้อย่างไร ฉันไม่แน่ใจเกี่ยวกับอนุสัญญาโวหารใด ๆ ที่เป็นไปได้ แต่ฉันชอบช่องว่างทั้งสองด้านของสัญลักษณ์ไปป์เพื่อความสะดวกในการอ่าน ฉันใช้ oh-my-zsh ค่อนข้างออกนอกกรอบ
วิธีการแก้
จากคำตอบของ mpy ด้านล่างฉันใช้วิธีแก้ปัญหาต่อไปนี้:
โดยค่าเริ่มต้น ZLE_REMOVE_SUFFIX_CHARS จะไม่ได้กำหนดใน zsh / ohmyzsh เมื่อไม่ได้กำหนดจะทำหน้าที่เหมือนเป็น:
ZLE_REMOVE_SUFFIX_CHARS=$' \t\n;&|'
ฉันเพิ่มคำจำกัดความต่อไปนี้ใน ~ / .zshrc ของฉัน:
ZLE_REMOVE_SUFFIX_CHARS=$' \t\n;&'
(ทั้งหมดยกเว้น pipe) และ presto สมบูรณ์แบบ! ปัญหาหายไป
zsh -f
(เพื่อข้ามการโหลดการกำหนดค่าของคุณ) คุณจะสังเกตเห็นว่า zsh จะไม่ทำเช่นนั้นอีก จากนั้นคุณจะต้องขุด (ส่วนใหญ่) ลงในoh-my-zshเพื่อหาสาเหตุที่ทำให้ ;-)