OSX पर स्क्रीन चलाते समय, कमांड + r सभी स्क्रीन के पार तीर कुंजियों को गड़बड़ कर देता है


15

आप इसे कैसे खोलते हैं? क्योंकि आप अपने ब्राउज़र को फिर से लोड करने के लिए हर समय कमांड आर दबाते हैं, और अक्सर आप टर्मिनल में होते हैं।

चूंकि मुझे पता नहीं चला है कि तीर कुंजियों को फिर से कैसे सक्षम किया जाए, इसलिए मैं वर्तमान में अपनी सभी स्क्रीन और पुनरारंभ स्क्रीन को मारता हूं, जो एक दर्द है।

जवाबों:


28

एक अच्छा सा विम वकील के रूप में, मैं आपको अपने कर्सर कुंजी के रूप में hjkl का उपयोग करने के लिए सीखने के लिए बाध्य महसूस करता हूं। समस्या की खोज के आधे रास्ते में, मुझे लगा कि यह रहस्यमय तरीके से खुद को तय कर चुका है, जब तक मुझे एहसास नहीं हुआ कि मैं वास्तविक तीर कुंजियों के बजाय hjkl का उपयोग कर रहा हूं।

वैसे भी, अब एक असली जवाब के लिए।

अपनी सभी स्क्रीन को बंद करने और पुनरारंभ करने के बजाय, आप टर्मिनलों के बीच स्क्रीन की क्षमता का लाभ उठा सकते हैं। CTRL+A CTRL+Dअपने टर्मिनल से स्क्रीन को अलग करने के लिए हिट करें, फिर screen -D -Rरीटच पर चलाएं । यह आपके तीर कुंजी को फिर से काम करना चाहिए।

यदि आप स्क्रीन में नहीं हैं, लेकिन सिर्फ विम में हैं, तो आप एक ही प्रभाव के लिए CTRL+Zटाइप कर सकते हैं fg

आप विम में कर्सर कुंजी समस्या के आसपास भी काम कर सकते हैं, लेकिन रीसेट ने अन्य टर्मिनल विकल्पों को बदल दिया हो सकता है, इसलिए ऐसा करने के लिए सुरक्षित है जैसा कि ऊपर वर्णित है कि आप अन्य यादृच्छिक डिस्प्ले / कीबोर्ड समस्याएं देखते हैं। यदि आप किसी भी तरह से रेमपिंग चाहते हैं, तो वे यहां हैं:

map <Esc>[A <Up>
map <Esc>[B <Down>
map <Esc>[C <Right>
map <Esc>[D <Left>

मोटा विवरण:

विम और स्क्रीन दोनों टर्मिनल का प्रबंधन करने के लिए ncurses लाइब्रेरी का उपयोग करते हैं। चीजों में से एक ncurses तब कर रही है जब यह VT100- संगत टर्मिनल का नियंत्रण लेता है, तीर कुंजियों को "एप्लिकेशन मोड" में बदल रहा है, जो उनके द्वारा कोडित कोड को बदल देता है। उदाहरण के लिए, ऊपर-तीर कुंजी, से बदलती Esc [ Aहै Esc O A। यह करने के लिए उत्सर्जन VT100 नियंत्रण कोड है Esc [ ? 1 h। Command + R द्वारा भेजा गया टर्मिनल रीसेट कमांड कर्सर कीज़ को डिफ़ॉल्ट पर रीसेट करता है।

स्क्रीनिंग और रीटेटिंग स्क्रीन के कारण ncurses को टर्मिनल के नियंत्रण को फिर से लेना पड़ता है, जो इसे पसंद की जाने वाली सभी सेटिंग्स को फिर से लागू करता है, इसलिए यह संभवत: सामान्य करने के लिए चीजों को पुनर्स्थापित करने का सबसे पोर्टेबल और विश्वसनीय तरीका है।

VT100 नियंत्रण कोड: http://www.handshake.de/infobase/dfue/prgrmmer/t322.htm


एक और मुद्दा हो सकता है टर्मिनल टाइप कन्फ्यूजिंग विम,
मैसजेड

इस समाधान के लिए धन्यवाद! यह मेरे लिए वेब डेवलपर के रूप में बकवास को कम कर रहा है। ब्राउज़र में आप स्क्रीन को रिफ्रेश करने के लिए cmd-r को बहुत मारते हैं और कभी-कभी दुर्घटना से मैं cmd-r को व्यर्थ में मार रहा होगा। मैं समझ नहीं पाया कि मेरे तीर कुंजी अब तक क्यों मिटाए जा रहे हैं। और आप वहाँ से बाहर hjkl purists के लिए, मुख्य कारण मैं hjkl का उपयोग नहीं करते क्योंकि वे कर्सर मोड में कर्सर आंदोलन के लिए उपलब्ध नहीं हैं। मेरे लिए उस समस्या को हल करें और मैं पुनर्विचार करूँगा।
राजस्व

6

आप इसे जल्दी और आसानी से ठीक कर सकते हैं :!reset


1

यदि आप iTerm का उपयोग कर रहे हैं, तो आप दबाकर command+dऔर वापस अपना vim सत्र प्राप्त कर सकते हैंcommand+w

क्यों?

command+d टर्मिनल पेन को विभाजित करेगा, जादुई रूप से जिसे आप से आए थे उसे बहाल करना।

command+w अब उस विभाजन फलक को बंद कर देंगे जिसे आपने अभी खोला था।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.