zle-keymap-selectजब भी मोड परिवर्तित होता है, तो आपको पहले ही मिल चुका होता है। आप इसका उपयोग प्रॉम्प्ट की तुलना में कुछ अन्य दृश्य संकेतक सेट करने के लिए कर सकते हैं, यह इस बात पर निर्भर करता है कि आपका टर्मिनल इसका समर्थन करता है (और मोड संकेतक डिस्प्ले में आपका स्वाद, निश्चित रूप से)।
कर्सर के आकार को बदलने के लिए एक मानक टर्मिनो क्षमता है। हालाँकि कुछ टर्मिनल दोनों मोड में एक ही कर्सर प्रदर्शित करते हैं। कम दृश्यमान कर्सर की Xterm की धारणा इसे पलक बनाने के लिए है (और इसे -bcकमांड लाइन तर्क या cursorBlinkसंसाधन के साथ सक्षम होना चाहिए )।
zle-keymap-select () {
case $KEYMAP in
vicmd) print -rn -- $terminfo[cvvis];; # block cursor
viins|main) print -rn -- $terminfo[cnorm];; # less visible cursor
esac
}
कुछ टर्मिनलों के साथ, आप कर्सर का रंग print -n '\e]12;pink\a'(रंग के नाम से) या print -n '\e]12;#abcdef\a'(RGB विनिर्देश द्वारा ) भी बदल सकते हैं । ये क्रम xterm प्रलेखन में, ctlseqsफ़ाइल में वर्णित हैं ; आधुनिक टर्मिनल एमुलेटर आमतौर पर एक्सटर्म का अनुकरण करते हैं, हालांकि वे इसकी सभी विशेषताओं का समर्थन नहीं कर सकते हैं।
CTRL+Cvi-कमांड मोड में रहते हुए कुछ करते हैं, तो प्रॉम्प्ट रीसेट हो जाएगा, लेकिन जब आप वास्तव में इन्सर्ट मोड में हैं, तो आप कमांड मोड में संकेत देते हैं।zle-line-initहमेशा मोड डालने के लिए संकेतक को बदलना चाहिए।$KEYMAPजब किसी कारणवश zle-line-init को ठीक से अपडेट नहीं किया जाता है।