जीएनयू स्क्रीन में, मैं डिफ़ॉल्ट सीए के बजाय Alt-s (tweaking .screenrc द्वारा) को डिफ़ॉल्ट कमांड बाध्यकारी बदलना चाहता हूं, कारण मैं emacs का उपयोग करता हूं इसलिए जीएनयू स्क्रीन Ca कुंजी को बांधती है, "Ca" भेजती है emacs थकाऊ हो जाता है (जैसा कि @Nils ने कहा, "सीए" भेजने के लिए मुझे "सीए" टाइप करना चाहिए), साथ ही साथ "सीए" को बाश खोल में टाइप करना चाहिए, और मैं भागने को सी में बदल सकता हूं- लेकिन उनमें से कुछ पहले ही मैप किए गए हैं emacs और अन्य संयोजन ALT- एस के रूप में आसान नहीं हैं। अगर किसी ने पहले ही एएलटी कुंजी मैपिंग कर ली है, तो कृपया मुझे बताएं।gnu स्क्रीन - एएलटी-एक्स में डिफ़ॉल्ट एस्केप कमांड कुंजी बदल रहा है?
उत्तर
आपके प्रश्न का उत्तर नहीं देता है, लेकिन सी-ए खिड़की पर सी-ए भेजता है, है ना? , अगर वहाँ कुछ मानचित्रण कि आप Emacs में उपयोग नहीं करते है
escape xy
Set the command character to x and the character generating a literal
command character (by triggering the "meta" command) to y (similar to
the -e option). Each argument is either a single character, a two-character
sequence of the form "^x" (meaning "C-x"), a backslash followed by an octal
number (specifying the ASCII code of the character), or a backslash followed
by a second character, such as "\^" or "\\". The default is "^Aa".
भले ही:
man screen
की मेरी पढ़ने से
यह केवल मेटा चरित्र कि screen
आदेश बाध्यकारी के लिए उपयोग कर सकते हैं की तरह लगता है CTRL
है यह C-|
की तरह असुविधाजनक है, तो आप ALT-X
को रीमेप करने के लिए अपने टर्मिनल इनपुट मैनेजर का उपयोग कर सकते हैं, जिससे आप ALT
बाध्यकारी का उपयोग कर सकते हैं। हालांकि यह थोड़ा सा हैकिश होगा।
धन्यवाद। यह मुश्किल है, शायद यह – Siva
करने का सीधा तरीका हो सकता है आपको नियंत्रण के साथ एस्केप कुंजी का प्रस्ताव नहीं देना पड़ेगा। मैं "एस्केप' ~ "का उपयोग करता हूं, जो इसे बैकटिक (नियंत्रण के बिना) सेट करता है। मुझे नहीं लगता कि आप Alt-Any का उपयोग कर सकते हैं, हालांकि। – silentbicycle
@silentbicyle धन्यवाद। हाँ मुझे पता है कि मुझे नियंत्रण के साथ प्रस्तावना नहीं है, "बचें" ~ "मेरे लिए काम नहीं करता है। और जब मैं वास्तव में खोल पर चल रहे किसी भी कार्यक्रम में ~ वास्तव में ~ सीटीएल/एएलटी मैपिंग पसंद करता हूं तो मैं थकाऊ हो जाऊंगा। – Siva
स्क्रीन में alt बाइंडिंग के लिए कोई शॉर्टैंड सिंटैक्स नहीं है, लेकिन आप इसे सीधे ऑक्टल कोड दे सकते हैं। मेरी मशीन पर उदाहरण के लिए, Alt-एक्स हेक्स कोड F8, या 370 अष्टाधारी, तो डाल
भागने \ 370x
मेरी screenrc मेंAlt-एक्स
परीक्षण किया और कार्यों के लिए भागने कोड बदल गया है लिनक्स पर स्क्रीन 4.00.03 के साथ।
के बाद से मुझे लगता है कि यह अपनी भाषा और codeset, आदि जैसी चीजों पर निर्भर हो सकता है आप बच बदलने के लिए हो सकता है: मैं कैसे पता चला कि मेरी भागने कोड था टाइप करने के लिए
$ echo -n ^QM-x | perl -ne 'printf "%lo\n", ord($_)'
^क्यू है था रीडलाइन के लिए उद्धृत-सम्मिलित आदेश (यह आपके द्वारा व्याख्या करने की कोशिश किए बिना सीधे टाइप करता है) और एमएक्स एक शाब्दिक Alt-X था।
मैंने इस चाल की कोशिश की है और यह मेरे लिए काम नहीं करता है। क्या इसे डीबग करने का कोई तरीका है? – Siva
हाय शिव - मुझे लगता है कि सबसे अधिक संभावना अंतर मेटा कुंजी के टर्मिनल एन्कोडिंग के कारण है। मैं xterm टर्मकैप/टर्मिनो सेटिंग के साथ xterm का उपयोग कर रहा हूँ; यह संभव है कि अन्य टर्मिनलों जैसे kterm या gnome-terminal, या विभिन्न TERM सेटिंग्स, एक अलग एन्कोडिंग का उपयोग करें। आपकी मशीन पर मेरी गूंज चाल क्या उत्पन्न करती है? –
मैं भी एक Emacs और स्क्रीन उपयोगकर्ता हूँ। हालांकि मैं टर्मिनल में शायद ही कभी Emacs का उपयोग करता हूं - और जैसे कि स्क्रीन सत्र में - मैं खोल के लिए सी-ए को छोड़ना नहीं चाहता था (जो Emacs कुंजी बाइंडिंग का उपयोग करता है)। मेरा समाधान स्क्रीन के लिए उपसर्ग कुंजी के रूप में सी-जे का उपयोग करना था, जिसे मैं बलिदान देना चाहता था। Emacs प्रोग्रामिंग मोड में यह (न्यूलाइन-एंड-इंडेंट) से जुड़ा हुआ है जिसे मैं आरईटी से भी बांधता हूं, इसलिए मुझे वास्तव में याद नहीं आती है।
वैसे: मुझे पता है कि यह एक उत्तर के बजाय एक सलाह है, लेकिन मुझे लगा कि यह पोस्ट करने के लिए पर्याप्त मूल्यवान होगा।
फेलो इमैक उपयोगकर्ता यहां।
मुझे मिला सबसे अच्छा समाधान एक ~/है।screenrc निम्नलिखित के साथ फाइल:
# C-a :source .screenrc
escape ^gg
लाइव यहाँ अद्यतन: https://gist.github.com/1058111
यह भी देखें: रजिस्टरों और का उपयोग कर आदेश सीमाओं से बच: http://ubuntuforums.org/showthread.php?t=498675
बीटीडब्ल्यू, यह मेरे लिए वास्तव में अच्छा काम करता है क्योंकि^जी एमएक्स में "रद्द" अनुक्रम है। तो अगर आपकी मांसपेशी स्मृति 'spasms', तो आप emacs में कुछ भी गड़बड़ नहीं करते हैं। – audiodude
मैं इसका प्रशंसक नहीं हूं। सी-जी आखिरी चाबियों में से एक है जिसे मैं इमाक्स में छोड़ना चाहता हूं। – Psyllo
इसे "से बचें^\" ["बैकक्वॉट का उपयोग करने के लिए बदलें। डिफ़ॉल्ट रूप से Emacs में कुछ भी बाध्य नहीं है। – Psyllo
यह चारों ओर काम करने के लिए संभव है bindkey कमांड। बस .screenrc में रखते:
# reset escape key to the default
escape ^Aa
# auxiliary register
register S ^A
# Alt + x produces ^A and acts as an escape key
bindkey "^[x" process S
## Alt + space produces ^A and acts as an escape key
# bindkey "^[ " process S
http://adb.cba.pl/gnu-screen-tips-page-my.html#howto-alt-key-as-escape
Alt + एक्स आदेशों के लिए डिफ़ॉल्ट उपसर्ग और सीए बनाने के देखो, निम्न पंक्तियां जोड़ें .screenrc रहे हैं:
escape ^||
bindkey "^[x" command
एक दुष्प्रभाव के रूप में सी- | आदेश भी उपसर्ग होगा। यदि आपको इस कुंजी को भी मुक्त होने की आवश्यकता है, तो "escape^||" को ठीक करें तदनुसार।
'^ [x' को 'Alt-x' में स्थानांतरित किया जाता है, जहां'^'का अर्थ है' Ctrl' (मुझे यकीन नहीं है)? क्या '[' मतलब 'Alt' है? धन्यवाद। – Chad
ऐसा करता है, यह emacs उपयोगकर्ताओं के लिए बस कम सुविधाजनक है। – rampion
सी-ए करता है। लेकिन समस्या यह है कि मैं स्क्रीन पर चल रहे emacs में सी बाध्यकारी का उपयोग नहीं कर सकता। आशा है कि आपको यह – Siva
@ रैंपियन मिला: यह समझ गया, लेकिन सवाल में कहा गया है, "मैं सी-ए इमैक में उपयोग नहीं कर सकता", जिसे मैं विश्वास करता हूं वह गलत है। @ शिवा: एचएम। असल में, नहीं। "सी-ए" दबाकर सी-ए को emacs भेजना होगा। यह असुविधाजनक है, हाँ - लेकिन संभव है। – Nils