सवाल विम में, मैं टैब के बीच त्वरित रूप से कैसे स्विच कर सकता हूं?


Gnome टर्मिनल में, मैं बस दबा सकते हैं ऑल्ट + (1, 2, 3, आदि) विशिष्ट टैब पर स्विच करने के लिए। मैं भी उपयोग कर सकता हूँ Ctrl + (PgUp / PgDn) टैब के माध्यम से चक्र (स्वीकार्य रूप से कम सुविधाजनक, लेकिन इसे रीमेप्ड किया जा सकता है)।

यदि मैं gnome-terminal टैब की बजाय vim टैब का उपयोग करना चाहता हूं, टाइपिंग :tabn तथा :tabp काफी बोझिल है। मैं उन्हें कीबोर्ड शॉर्टकट पर मैप कर सकता हूं, लेकिन यह अभी भी टैब 4 पर सीधे कूदने से बहुत कम सुविधाजनक है ऑल्ट + 4

क्या विम में टैब के बीच स्विच करने का कोई तेज़ तरीका है?


94
2018-04-11 01:06


मूल




जवाब:


अगला टैब: जीटी

पहले टैब: जीटी

क्रमांकित टैब: NNNजीटी


161
2018-04-11 02:19



मुझे पता है कि मैं टाइप कर सकता हूं nnn  g  t, लेकिन मैं इसे करना चाहता हूँ सर्र से, अर्थात। Alt + nnn या Ctrl + nnn। परंतु Alt + n पहले ही gnome टर्मिनल द्वारा लिया गया है, और बाध्यकारी है Ctrl + n ऐसा कोई प्रतीत नहीं होता है। - Matthew
फ़ंक्शन कुंजियों को मैप करने के बारे में क्या nnn  g  t? जैसे, :map <F2> 2gt। समस्या है कि <F1> अक्सर गनोम द्वारा इसकी सहायता सुविधा में मैप किया जाता है। या आप सामान्य कुंजी में अक्सर उपयोग नहीं की जाने वाली कुछ कुंजी चुन सकते हैं, कॉमा कहें, और इसे इस तरह मैप करें: :map , gt। फिर 1, आपको टैब 1 पर ले जाएगा, 2, टैब 2 के लिए, और इसी तरह। - garyjohn
मुझे '<' और '>' का उपयोग करना बहुत सुविधाजनक लगता है - Igor Stoppa
एक बेहतर उत्तर के लिए नीचे स्क्रॉल करें .. - The Vivandiere


अपने नेता का उपयोग क्यों न करें (मेरे नेता को मैप किया गया है अंतरिक्ष):

" Go to tab by number
noremap <leader>1 1gt
noremap <leader>2 2gt
noremap <leader>3 3gt
noremap <leader>4 4gt
noremap <leader>5 5gt
noremap <leader>6 6gt
noremap <leader>7 7gt
noremap <leader>8 8gt
noremap <leader>9 9gt
noremap <leader>0 :tablast<cr>

आप वर्तमान और अंतिम सक्रिय टैब के बीच टॉगल करने के लिए नीचे दी गई सेटिंग्स का उपयोग कर सकते हैं (यहां इसे मैप किया गया है Ctrl+एल, अर्थात।, <c-l>):

" Go to last active tab

au TabLeave * let g:lasttab = tabpagenr()
nnoremap <silent> <c-l> :exe "tabn ".g:lasttab<cr>
vnoremap <silent> <c-l> :exe "tabn ".g:lasttab<cr>

33
2017-11-12 20:59



आप की जरूरत है au TabLeave * let g:lasttab = tabpagenr() के लिये c-l काम करने के लिए: stackoverflow.com/questions/2119754/... - Ciro Santilli 新疆改造中心 六四事件 法轮功
मैं जोड़ूंगा <leader>h/l के लिये gT तथा gt - Brenden


टैब को तेज़ और सरल के बीच स्विच करने के लिए, यह सबसे आसान तरीका है।
अपने .vimrc पर अगली पंक्तियां जोड़ें और इसका आनंद लें, विम टैब के बारे में अधिक युक्तियां यहाँ

nnoremap <C-Left> :tabprevious<CR>
nnoremap <C-Right> :tabnext<CR>

अब आप इसका उपयोग कर सकते हैं Ctrl   बाएं जाने के लिए Ctrl   सही जाने के लिए

या बस उपयोग करें:
1gt एक टैब पर जाने के लिए,
2gt टैब दो पर जाने के लिए,
3gt टैब तीन, आदि पर जाने के लिए ... अब आपके पास विचार है।


13
2018-03-03 14:21



मुझे लगता है कि यह सबसे अच्छा जवाब है। पास करने के लिए बहुत सुविधाजनक है। मैंने सिस्टम को स्वतंत्र बनाने के लिए ओएस एक्स में उन सिस्टम कीबाइंडिंग को अक्षम कर दिया है। - Léo Léopold Hertz 준영
तीर कुंजियों का उपयोग करें आपको धीमा कर देगा। मैंने उन्हें अक्षम कर दिया है - Ask and Learn
हाँ ... सर्वश्रेष्ठ जवाब! - The Vivandiere
अफसोस की बात है कि "Ctrl" ने मुझे vmplayer में समस्याएं दीं, इसलिए मैंने कुंजी "बैकस्पेस" और "एंटर" में बदल दिया। - Boris Däppen
मैक उपयोगकर्ता: आपको डिफ़ॉल्ट मिशन नियंत्रण रिक्त स्थान कीबोर्ड शॉर्टकट को अक्षम करने की आवश्यकता हो सकती है: stackoverflow.com/questions/15719135/... - toszter


जैसा कि मै मैक पर हूं और मैकवीम का उपयोग नहीं कर रहा हूं (लेकिन टर्मिनल के भीतर सादा विम) मुझे टर्मिनल के माध्यम से भेजे जाने वाले महत्वपूर्ण संयोजनों में कुछ कठिनाई हुई है।

टैब को स्विच करने के लिए सबसे संगत (और मेरे लिए सबसे अधिक आरामदायक) तरीका जल्दी से आता है विम विकिया साइट

अपने स्थान पर रखें .vimrc फ़ाइल:

nnoremap H gT
nnoremap L gt

अभी व Shift-h (पूंजी एच) और Shift-l (पूंजी एल) आपको टैब के बीच जल्दी से स्विच करेगा, और इस सम्मेलन का पालन करेगा h तथा l एक नियमित qwerty कीबोर्ड पर vim में बाएं और दाएं के अनुरूप है।


10
2017-07-03 10:59





(दुर्भाग्य से) vim भी उपयोग करता है CtrlPgDn/PgUp टैब के माध्यम से चक्र के लिए। आपको उपयोग करने की आवश्यकता होगी map नक्शा tabn/tabp उपयोग करने योग्य कुछ करने के लिए।


1
2018-04-11 01:25





यदि आप जीवीआईएम या इसी तरह का उपयोग कर रहे हैं (यानी, टर्मिनल के बाहर कुछ), तो आप इसका अनुकरण कर सकते हैं gnome-terminal व्यवहार जिसके साथ आप वर्णन करते हैं:

" Map alt-x keys to jump to a tab
for i in range(1, 8)
  execute "nmap \<M-" . i . "> " . i . "gt"
endfor
nmap <M-9> :tablast<CR>

इसलिए alt-1 पहले टैब पर कूदता है, आदि alt-9 अंतिम टैब पर कूदता है (जैसे क्रोम में)।

आप इसे लपेटना चाहेंगे if has("gui_running") (हालांकि यह Neovim के साथ काम नहीं प्रतीत होता है), या इसे अंदर डाल दिया .gvimrc


0
2017-10-02 15:32





आपके .vimrc के लिए यहां कुछ आसान मैपिंग हैं:

nnoremap <C-h> :tabprev
nnoremap <C-l> :tabnext

पेशेवरों:

  • घर पंक्ति से कोई हिल नहीं रहा (मैं ctrl और कैप्स लॉक स्वैप)
  • "बाएं" और "दाएं" कुंजी का पुन: उपयोग करता है
  • स्विचिंग ब्राउज़र टैब के समान लगता है

0
2018-01-12 23:17





टैब नेविगेशन हॉट कुंजी सक्षम करने के लिए इन्हें .vimrc में जोड़ें:

<ctrl-l> 2 सबसे हालिया टैब के बीच टॉगल करें;

<ctrl-j/k> आखिरी / अगला टैब मिला;

<ctrl-t> एक नया टैब खोलें।

" tab navigation: Alt or Ctrl+Shift may not work in terminal: " http://vim.wikia.com/wiki/Alternative_tab_navigation " Tab navigation like Firefox: only 'open new tab' works in terminal nnoremap <C-t> :tabnew<CR> inoremap <C-t> <Esc>:tabnew<CR> " move to the previous/next tabpage. nnoremap <C-j> gT nnoremap <C-k> gt " Go to last active tab au TabLeave * let g:lasttab = tabpagenr() nnoremap <silent> <c-l> :exe "tabn ".g:lasttab<cr> vnoremap <silent> <c-l> :exe "tabn ".g:lasttab<cr>


0
2017-11-05 02:25