ভিমে, আমি কীভাবে দ্রুত ট্যাবগুলির মধ্যে স্যুইচ করতে পারি?


125

জিনোম-টার্মিনাল, আমি শুধু টিপতে পারেন Alt+ + ( 1, 2, 3, ইত্যাদি) নির্দিষ্ট ট্যাব স্যুইচ। আমি ট্যাবগুলির মাধ্যমে চক্র করতে Ctrl+ ( PgUp/ PgDn) ব্যবহার করতে পারি (স্বীকারযোগ্যভাবে কম সুবিধাজনক তবে এটি পুনরায় তৈরি করা যেতে পারে)।

আমি যদি জিনোম-টার্মিনাল ট্যাবগুলির পরিবর্তে ভিআইএম ট্যাবগুলি ব্যবহার করতে চাই তবে টাইপিং :tabnএবং :tabpবেশ জটিল। আমি এগুলি কীবোর্ড শর্টকাটগুলিতে ম্যাপ করতে পারলাম, তবে এটি সরাসরি Alt+ + এর সাথে ট্যাব 4 এ ঝাঁপ দেওয়ার চেয়ে অনেক কম সুবিধাজনক 4

ভিএম-এ ট্যাবগুলির মধ্যে স্যুইচ করার কোন দ্রুত উপায় আছে?

উত্তর:


209

পরবর্তী ট্যাব: gt

পূর্বের ট্যাব: gT

সংখ্যাযুক্ত ট্যাব: nnngt


1
আমি জানি যে আমি টাইপ nnn g tকরতে পারি, তবে আমি এটি দ্রুত করতে চাই , Alt + nnnবা Ctrl + nnn। তবে Alt + nইতোমধ্যে জিনোম-টার্মিনাল দ্বারা গ্রহণ করা হয়েছে, এবং এর সাথে জোর Ctrl + nকরে কোনও প্রভাব রয়েছে বলে মনে হচ্ছে না।
ম্যাথু

6
ফাংশন কীগুলি ম্যাপিংয়ের বিষয়ে কী nnn g t? যেমন :map <F2> 2gt,। <F1>জেনোম দ্বারা সহায়তা সহায়তাটিতে প্রায়শই ম্যাপ করা সমস্যা রয়েছে । অথবা আপনি কিছু কি আপনি স্বাভাবিক মোডে প্রায়ই ব্যবহার করবেন না চয়ন করতে পারেন, কমা বলে, এবং এর মতো এটিকে মানচিত্র: :map , gt। তারপরে 1,আপনাকে ট্যাব 1 এ, 2,ট্যাব 2 এ নিয়ে যাবে এবং আরও অনেক কিছু।
গ্যারিজোহন

2
আমি '<' এবং '>'
ইগোর স্টোপা

আরও ভাল উত্তরের জন্য নীচে স্ক্রোল করুন ..
Vivandiere

41

আপনার নেতাকে কেন ব্যবহার করবেন না (আমার নেতা ম্যাপ করেছেন Space):

" 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+ L, যেমন ম্যাপ করা হয়েছে <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>

2
আপনি প্রয়োজন au TabLeave * let g:lasttab = tabpagenr()জন্য c-lকাজ করতে: stackoverflow.com/questions/2119754/...
সিরো Santilli新疆改造中心法轮功六四事件

1
আমি যোগ চাই <leader>h/lজন্য gTএবংgt
Brenden

24

দ্রুত এবং সহজ ট্যাবগুলির মধ্যে স্যুইচ করার জন্য এটি আমি সবচেয়ে সহজ উপায় iest
আপনার .vimrc এ পরবর্তী লাইন যুক্ত করুন এবং এটি উপভোগ করুন, ভিম ট্যাবগুলি সম্পর্কে আরও কৌশল এখানে

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

এখন আপনি Ctrl বাম Ctrl দিকে যেতে এবং ডানদিকে যেতে ব্যবহার করতে পারেন ।

বা কেবল ব্যবহার করুন:
1gtএক
2gtট্যাবে যেতে , দুটি
3gtটব যেতে, ট্যাব তিনে যেতে, ইত্যাদি ... এখন আপনার ধারণাটি রয়েছে।


আমি মনে করি এটি এখানে সেরা উত্তর। খুব সুবিধাজনক। আমি কেবল ওএস এক্স-তে সেই সিস্টেম কী-বাইন্ডিংগুলিকে সিস্টেম স্বাধীন করার জন্য অক্ষম করেছি।
লও লোপোল্ড হার্টজ 준영

1
তীর কীগুলি ব্যবহার আপনাকে ধীর করবে। আমি তাদের অক্ষম করেছি
জিজ্ঞাসা করুন এবং শিখুন

হ্যাঁ ... সেরা উত্তর!
Vivandiere

দুঃখের সাথে "সিটিআরএল" আমাকে ভিএমপ্লেয়ারে সমস্যা দিয়েছে, তাই আমি "ব্যাকস্পেস" এবং "এন্টার" কীগুলিতে পরিবর্তন করেছি।
বোরিস ডাপ্পেন

: ম্যাক ব্যবহারকারী: আপনি ডিফল্ট মিশন কন্ট্রোল স্পেস কীবোর্ড শর্টকাট অক্ষম করার প্রয়োজন হতে পারে stackoverflow.com/questions/15719135/...
azatar

15

যেহেতু আমি একটি ম্যাকের সাথে আছি এবং ম্যাকভিম ব্যবহার করছি না (তবে টার্মিনালের অভ্যন্তরে সাদামাটা ভিএম) টার্মিনালের মাধ্যমে মূল সংমিশ্রণগুলি না পাঠানোতে আমার কিছুটা সমস্যা হয়েছে।

ট্যাবগুলি দ্রুত স্যুইচ করার সর্বাধিক সামঞ্জস্যপূর্ণ (এবং আমার পক্ষে সবচেয়ে আরামদায়ক) উপায়টি ভিম উইকিয়া সাইট থেকে আসে ।

আপনার .vimrcফাইলে রাখুন :

nnoremap H gT
nnoremap L gt

এখন Shift-h(মূলধন এইচ) এবং Shift-l(মূলধন এল) আপনি দ্রুত ট্যাবগুলির একটি থেকে অন্যটিতে, এবং কনভেনশন যে অনুসরণ করে হবে hএবং lবাম এবং মিলা অধিকার একটি নিয়মিত কোয়ার্টি কীবোর্ডের তেজ হবে।


আমি এই সমাধানটি স্বজ্ঞাত এবং ভিম-মত পছন্দ করি। কোনও তীরচিহ্নের দরকার নেই।
ইভান ইভভকুইć

আমি রাজী. একটি খুব সুন্দর সমাধান
জে দু: খ

এটি সত্যই একটি স্বজ্ঞাত সমাধান। ধন্যবাদ!
লিওন - হ্যান লি

2

(দুর্ভাগ্যক্রমে) ভিম ট্যাবগুলির মাধ্যমে চক্র CtrlPgDn/ ব্যবহার করে PgUp। আপনি ব্যবহার করতে হবে mapম্যাপ tabn/ tabpকিছু ব্যবহারযোগ্য হবে।


2

যদি আপনি gvim বা অনুরূপ (উদাহরণস্বরূপ, টার্মিনালের বাইরের কিছু) 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")(যদিও এটি নিওভিমের সাথে কাজ করে না বলে মনে হচ্ছে), বা এটি putোকাতে চান .gvimrc


2

ট্যাব নেভিগেশন হট কীগুলি সক্ষম করতে এগুলিকে .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>


শেষ টোগল ট্যাব ফাংশনে <Ctrl> - <ট্যাব> মানচিত্র করা কি সম্ভব? আমি চেষ্টা করেছি nnoremap <silent> <C-Tab> :exe "tabn ".g:lasttab<cr>এবং vnoremap <silent> <C-Tab> :exe "tabn ".g:lasttab<cr>ভাগ্য ছাড়া।
জাজারু
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.