iTerm2 Vim alt + दाएँ / बाएँ तीर


13

लिनक्स उपयोगकर्ता के रूप में, मुझे ALT+ leftया का उपयोग करके शब्द से शब्द में विम / नैनो से कूदने की बहुत आदत है right

यह iTerm का उपयोग करके ठीक से काम नहीं करता है, मैं zsh का उपयोग कर रहा हूं, मैंने जोड़ने की कोशिश की;

bindkey -e
bindkey '^[[1;9C' forward-word
bindkey '^[[1;9D' backward-word

यह काम करता है, लेकिन केवल zsh के अंदर, फिर मैंने उन पंक्तियों पर टिप्पणी की और iTerm में एक कीबोर्ड शॉर्टकट जोड़ा;

यहाँ छवि विवरण दर्ज करें

यह काम करता है, लेकिन केवल के लिए ALTleft

मैं इसे सही तीर के लिए भी कैसे काम कर सकता हूं?

जवाबों:


11

ITerm के गुणों में प्रोफ़ाइल पर जाएँ -> कुंजी और सेटअप

  • के लिए ⌥→संदेश एस्केप अनुक्रम[1;5C
  • के लिए ⌥←संदेश एस्केप अनुक्रम[1;5D

यहाँ छवि विवरण दर्ज करें


यह मेरे लिए काम नहीं करता है। भागने के क्रम भेजे जाते हैं, लेकिन विम केवल एक स्थान को आगे-पीछे करता है। डिफॉल्ट vim 7.3 को चलाना जो OS X 10.8 के साथ आता है। आदर्श रूप से, मैं इसे विम की तरफ बदलना चाहूंगा, टर्मिनल एमुलेटर के डिफॉल्ट्स को टिवेट नहीं करूंगा (क्योंकि इससे बेहतर पोर्टेबिलिटी हो जाएगी)।
स्लेक

यह अजीब है, यह ओम (होमब्रेव से, डिफॉल्ट वन नहीं) और ओश-माय-ज़श (~ / .oh-my-zsh / lib / key-bindings.sh) से डिफ़ॉल्ट कॉन्फ़िगरेशन के साथ दोनों काम करता है।
ईयोनोहिटो

यहाँ भी काम नहीं करता है, मैं zsh के अंदर alt + एरो का उपयोग कर सकता हूं, विम में केवल शिफ्ट + एरो के साथ काम करता है :(
seds

मैंने इसे उपलब्ध रिमोट सिस्टम (ubuntu 13.04, स्थिर डेबियन, और वैज्ञानिक लिनक्स) पर एक बार और जाँच की और यह हर जगह काम करता है। जब आप Control + V, Control → दबाते हैं तो आउटपुट क्या होता है? मेरे लिए यह ^ [[1; 5C
eiennohito

मेरे लिए काम करता है: iTerm / Vi + zsh
पेट्रो

7

उस कुंजी कोड को देखकर प्रारंभ करें जिसे आपका टर्मिनल vim को भेज रहा है:

$ sed -n l
^[[1;9D 

उपरोक्त उदाहरण में, मैंने sed कमांड को चलाया और दबाया Alt + Left

^[[1;9Dबच गए अनुक्रम vim को भेजा जा रहा उपयोगकर्ता है, इसलिए हम कर सकते हैं कि हमारे मानचित्रण के लिए।

Vimrc में जोड़ें:

map <Esc>[1;9D :tabn<CR>

धन्यवाद, कि मेरे लिए काम किया।
j5shi

1

मैं एक और पोस्ट पढ़ता हूं जिसमें कहा गया है कि विकल्प-बाएँ और विकल्प दाएं के लिए, आपको क्रमशः ^ [b और ^ [f] क्रियाओं से उन्हें बाँधने की आवश्यकता है। यही है, आप उन्हें "सेंड एस्केप सीक्वेंस" में बांधते हैं और कुंजी बी और एफ को बांधते हैं।

http://elweb.co/making-iterm-2-work-with-normal-mac-osx-keyboard-shortcuts/


1
+1! मुझे यहाँ ऐसे ही निर्देश मिले: coderwall.com/p/h6yfda/…
कैम जैक्सन

0

उन जवाबों में से किसी ने भी मेरे लिए काम नहीं किया। मैंने एक Linux VM लोड करना समाप्त किया और जाँच की कि मुझे क्या मिलेगा <Alt-ARROW>

4 एस्केप सीक्वेंस जो मेरे लिए काम करते हैं, वे हैं:

  • <Alt+Up>: [1;3A
  • <Alt+Down>: [1;3B
  • <Alt+Right>: [1;3C
  • <Alt+Left>: [1;3D

प्रोफ़ाइल कुंजियों को संपादित करने के लिए सावधान रहें, न कि वे मुख्य जो प्रोफ़ाइल वालों द्वारा ओवरराइड किए जाएंगे (जहां Alt + एरो डिफ़ॉल्ट रूप से हेक्स अनुक्रम के लिए सेट किए गए हैं जो विम के साथ काम नहीं करते हैं)।


-1

बस एक अन्य संभव समाधान, विम अपने आप पर शब्द गति प्रदान करता है, देखें:

:help word-motions

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