टर्मिनल केवल पात्रों को समझते हैं, चाबियाँ नहीं। इसलिए अल फ़ंक्शन कुंजियाँ वर्णों के अनुक्रम के रूप में एन्कोडेड हैं, नियंत्रण वर्णों का उपयोग करते हुए। इसके अलावा कुछ आम लोगों को किसी संबद्ध नियंत्रण चरित्र है (से Tabहै Ctrl+I
, Enterहै Ctrl+M
, Escहै Ctrl+[
), समारोह चाबियाँ बच दृश्यों के साथ शुरु होने भेजने Ctrl+[ [
या Ctrl+[ O
। आप यह tput
देखने के लिए कमांड का उपयोग कर सकते हैं कि आपके टर्मिनल पर प्रत्येक फंक्शन की के लिए कौन से सीक्वेंस एप्लिकेशन की उम्मीद है। ये क्रम terminfo
डेटाबेस में संग्रहीत हैं । उदाहरण के लिए, नीचे दिए गए शेल स्निपेट प्रत्येक फ़ंक्शन कुंजी के अनुरूप एस्केप अनुक्रम दिखाता है।
$ for x in {1..12}; do echo -n "F$x "; tput kf$x | cat -A; echo; done
F1 ^[OP
F2 ^[OQ
F3 ^[OR
F4 ^[OS
F5 ^[[15~
F6 ^[[17~
F7 ^[[18~
F8 ^[[19~
F9 ^[[20~
F10 ^[[21~
F11 ^[[23~
F12 ^[[24~
फ़ंक्शन कुंजी के लिए एस्केप सीक्वेंस देखने का दूसरा तरीका एक टर्मिनल एप्लिकेशन में Ctrl+ को प्रेस Vकरना है जो Ctrl+ Vकुंजी (जैसे शेल) को रीबाइंड नहीं करता है । Ctrl+ Vअगले चरित्र को सम्मिलित करता है (जो बच चरित्र होगा) शाब्दिक रूप से, और आप शेष अनुक्रम को देख पाएंगे, जिसमें साधारण वर्ण शामिल हैं।
चूंकि अनुक्रम टाइप करने के लिए अजीब हो सकते हैं, अपने आवेदन में कुंजी बाइंडिंग को बदलने या किसी अन्य टर्मिनल एमुलेटर का उपयोग करके जांच करें। इसके अलावा, ध्यान दें कि आपके पास समय सीमा हो सकती है: कुछ अनुप्रयोग केवल भागने के क्रम को पहचानते हैं यदि वे पर्याप्त तेजी से आते हैं, ताकि वे Escअकेले कुंजी को एक अर्थ दे सकें ।