BASH สนับสนุน$PROMPT_COMMAND
ตัวแปรสภาพแวดล้อมที่กำหนดคำสั่งที่จะดำเนินการก่อนที่จะมีการโต้ตอบระดับแรก ฉันกำลังมองหา ZSH ที่เท่ากัน
เอกสารบอกว่ามีฟังก์ชั่นที่precmd
ฉันสามารถนิยามได้ว่า; อย่างไรก็ตามฉันไม่ทราบวิธีการกำหนดจากตัวแปรสภาพแวดล้อม
ฉันได้พิจารณาผ่านตัวแปรสภาพแวดล้อมที่จะทำให้ ZSH อ่านไฟล์ที่มีคำจำกัดความของฟังก์ชั่นนั้น แต่ ZSH ดูเหมือนจะไม่สนับสนุนสิ่งต่าง ๆ : มันอ่านเฉพาะไฟล์ทั่วโลกแล้วต่อไฟล์ผู้ใช้ ฉันสามารถแทนที่พวกเขา แต่ฉันไม่สามารถเพิ่มพวกเขาโดยไม่ต้องแก้ไขไฟล์ซึ่งฉันไม่สามารถทำได้
ดังนั้นฉันจะกำหนด hook pre-prompt ใน ZSH ผ่านตัวแปรสภาพแวดล้อมเช่นเดียวกับที่ฉันใช้$PROMPT_COMMAND
ใน BASH ได้อย่างไร
exit
exec
;)
start() { eval "$@"; echo post-command-code }
แล้วใช้ zle- ผูกพันเพื่อรันบรรทัดคำสั่งด้วยstart
prepended?
DEBUG
กับดักที่จะหาที่ไหนดี แต่คุณยังคงมีปัญหาวิธีการที่จะกำหนดมัน ฉันได้ขยายคำตอบของฉันอีกครั้ง แต่ฉันปล่อยให้คุณเขียนคำตอบของคุณเองเกี่ยวกับการแก้ปัญหากับดัก DEBUG :)