जब tmux के अंदर चल रहा है, तो कुंजी को मेस में रखें


9

मैं tmux के साथ खेल रहा हूँ और मैं इसे प्यार कर रहा हूँ। हालाँकि, जब इसके अंदर विम चल रहा है तो एक कष्टप्रद मुद्दा है।

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

यदि मैं उदाहरण के लिए एक बफर के माध्यम से जाने के लिए तीरों का उपयोग करता हूं, तो वे ठीक से काम करते हैं।

कोई विचार?

धन्यवाद!


1
$TERMबाहर क्या है tmux? अंदर का क्या? ऐसा लगता है कि अनुप्रयोग और सामान्य कीपैड मोड के साथ कुछ चल रहा है।
अगली सूचना तक रोक दिया गया।

बाहरी tmux: xterm, अंदर: स्क्रीन ... इसलिए अगर मैं चलाऊं तो मुझे TERM=screen vimवही व्यवहार दिखाई देता है, इसलिए मुझे स्क्रीन ठीक करनी चाहिए?
इवान

जवाबों:


13

मैंने बस set -g default-terminal "xterm"अपने .tmux.conf में जोड़ा

इसने tmux को स्क्रीन के बजाय xterm का उपयोग किया, इसलिए जीवन सुंदर है और मुझे कीबाइंडिंग पर पेट भरने के बारे में चिंता करने की आवश्यकता नहीं है।


5
इस तरह बेहतर set -g default-terminal "xterm-256color"। सीमित रंगों के कारण दृश्य मोड में होने पर अन्यथा मैं नोटिस नहीं कर सकता था।
मकारियो

1
मुझे इसके साथ गठबंधन करना था set -g xterm-keys on
डैन स्टाहलेके

4
यह ध्यान देने योग्य है कि tmux का मैन पेज कभी सेट नहीं होने के लिए कहता है default-terminal। मुझे यकीन नहीं है कि क्या प्रभाव हैं।
डैन स्टाल्के

1
यह चेतावनी देते हुए कि default-terminalसेट नहीं किया जाना चाहिए, विम पक्ष से एक बेहतर समाधान है: लिंक
डैन स्टाल्के

मेरे मामले में काम नहीं कर रहा ...
Blaszard

6

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

अजीब बात यह है कि मैंने केवल एक मैपिंग को अपने .vimrc फ़ाइल में जोड़ा है:

map <Esc>[B <Down>

लेकिन वह एकल मानचित्रण सभी तीर कुंजी को ठीक से काम करता है ...


किसी तरह ... यह एकमात्र समाधान था जिसने मेरे लिए सेंटोस 6.3
पेट्रीक

इससे मुझे कोई मतलब नहीं है, लेकिन एकल मैपिंग जोड़ने से मेरे लिए सभी कुंजी ठीक हो जाती हैं। यहां तक ​​कि अजनबी (कम से कम मेरे लिए) इन्सर्ट मोड में कीपर के लिए डायरेक्ट मैपिंग इसे ठीक नहीं करता है ( map ^[A <Up>Ctrl + V <Up> को map ^[OA <Up>दबाने और O को हटाने से, Ctrl + V <Up> को दबाने और O doesn को छोड़ने से काम करता है) 'टी)। मुझे नहीं मिला ... लेकिन जो भी हो। मेरी चाबी अब काम करती है। धन्यवाद।
एनडी गीक


1

बस इस मामले में किसी को इस समाधान के साथ पागल हो जाता है काम नहीं कर रहा है।

जांचें कि आप वास्तव में tmux + vim + AutoClose vim प्लगइन का उपयोग नहीं कर रहे हैं । आटोक्लास कुछ ऐसा बनाता है जिसके कारण आप पिछली पंक्ति में एबीसीडी चार्ट लगा सकते हैं!

मैं बस प्लगइन मिटा दिया और यह अब ठीक काम कर रहा है


धन्यवाद! यह मेरे लिए था। मैंने इसके बजाय इस ऑटोक्लो-प्लगइन का उपयोग करके समाप्त किया । यह समान कार्यक्षमता प्रदान करता है।
ollलपु

0

टर्मिनल में चलने पर कमांड-टी मैपिंग द्वारा कुछ गूंगा करता है। यदि $ Tt vt100 * या xterm * है तो यह मैपिंग को छोड़ देता है, लेकिन यह एक अच्छा समाधान नहीं है।


0

उन लोगों के लिए जो कर्सर को कमांड लाइन मोड में ले जाना चाहते हैं, इस ब्लॉग पोस्ट पर एक नज़र डालें । मैंने अपने vimrc में आठ पंक्तियों को जोड़ दिया;

" Needed for tmux and vim to play nice
" Needed for tmux and vim to play nice
map <Esc>[A <Up>
map <Esc>[B <Down>
map <Esc>[C <Right>
map <Esc>[D <Left>

" Console movement
cmap <Esc>[A <Up>
cmap <Esc>[B <Down>
cmap <Esc>[C <Right>
cmap <Esc>[D <Left>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.