আপনি কীভাবে আপনার বর্তমান উইন্ডোজগুলি অনুভূমিক বিভাজক থেকে উল্লম্ব বিভাজনে এবং এর বিপরীতে ভিমে স্যুইচ করতে পারেন?
আমি দুর্ঘটনাক্রমে এক মুহুর্ত আগে এটি করেছি কিন্তু আমি আবার কীটি খুঁজে পাচ্ছি না।
আপনি কীভাবে আপনার বর্তমান উইন্ডোজগুলি অনুভূমিক বিভাজক থেকে উল্লম্ব বিভাজনে এবং এর বিপরীতে ভিমে স্যুইচ করতে পারেন?
আমি দুর্ঘটনাক্রমে এক মুহুর্ত আগে এটি করেছি কিন্তু আমি আবার কীটি খুঁজে পাচ্ছি না।
উত্তর:
ভিম মেলিংয়ের তালিকা বলছে (আরও ভাল পঠনযোগ্যতার জন্য পুনরায় ফর্ম্যাট করা):
দুটি পরিবর্তন করতে উল্লম্বভাবে বিভক্ত উইন্ডোগুলিকে অনুভূমিকভাবে বিভক্ত
Ctrl- w t Ctrl-w K
অনুভূমিকভাবে উল্লম্বভাবে:
Ctrl- w t Ctrl-w H
ব্যাখ্যা:
Ctrl- w t প্রথম (শীর্ষস্থানীয়) উইন্ডোটিকে বর্তমান করে তোলে
Ctrl- w K বর্তমান উইন্ডোটিকে একেবারে শীর্ষে পুরো-প্রস্থে নিয়ে যায়
Ctrl- w H বর্তমান উইন্ডোটি খুব বাম দিকে পুরো উচ্চতায় নিয়ে যায়
লক্ষ করুন যে টি ছোট হাতের অক্ষর, এবং কে এবং এইচ বড় হাতের।
এছাড়াও, কেবল দুটি উইন্ডো দিয়ে, আপনি মনে করতে পারেন Ctrl- আপনি w tঅংশটি ফেলে দিতে পারেন কারণ আপনি যদি ইতিমধ্যে কেবল দুটি উইন্ডোর একটিতে থাকেন তবে এটি বর্তমান করার বিন্দুটি কী?
:nmap <leader>th <C-w>t<C-w>H
এবং:nmap <leader>tk <C-w>t<C-w>K
Ctrl- wদ্বারা অনুসরণ H, J, Kবা L(মূলধন) বর্তমান উইন্ডোটি পর্যন্ত সরে যাবে left
, bottom
, top
বা right
স্বাভাবিক কার্সার পরিভ্রমন যথাক্রমে মত।
লোয়ার কেস সমতুল্য উইন্ডোটি সরানোর পরিবর্তে ফোকাস স্থানান্তর করে।
Ctrl
- w
( আপনার উদাহরণের ^
অর্থ আমি জানি না Ctrl
)।
^
অর্থ Ctrl
।
যখন আপনার দুটি বা ততোধিক উইন্ডোজ অনুভূমিকভাবে বা উল্লম্বভাবে খোলা থাকে এবং সেগুলি সমস্ত অন্যান্য অভিযোজনে স্যুইচ করতে চান , আপনি নিম্নলিখিতটি ব্যবহার করতে পারেন:
(অনুভূমিক দিকে স্যুইচ করুন)
:windo wincmd K
(উল্লম্ব দিকে স্যুইচ করুন)
:windo wincmd H
এটি কার্যকরভাবে প্রতিটি উইন্ডোতে স্বতন্ত্রভাবে যায় এবং ব্যবহার করে ^WKবা ^WH।
নিম্নলিখিত প্রাক্তন কমান্ডগুলি যে কোনও উইন্ডো বিভক্ত করবে (পুনরায়):
:vertical ball
:ball
যদি লুকানো বাফার থাকে তবে এই আদেশগুলি জারি করা গোপন বাফারগুলিকে দৃশ্যমান করে তুলবে।
:vert[ical] ball
ডক তাই :vert ball
ঠিক আছে এবং সংক্ষিপ্ত।
:ball
3 অনুভূমিক উইন্ডোগুলিকে 2 অনুভূমিক উইন্ডোতে হ্রাস করে, 3 টি অনুভূমিক উইন্ডোগুলিকে 3 টি উল্লম্ব উইন্ডোতে :vert ball
সঠিকভাবে ম্যাপ করে।
অনুভূমিক থেকে উল্লম্ব বিভাজন
Ctrl+ Wউইন্ডো কমান্ডের জন্য, Shift+ Hবা Shift+ এর পরেL
উল্লম্ব থেকে অনুভূমিক বিভাজন
Ctrl+ Wউইন্ডো কমান্ডের জন্য, Shift+ Kবা Shift+ এর পরেJ
কেবলমাত্র দুটি উইন্ডো উপস্থিত থাকলে উভয় সমাধানই প্রয়োগ হয়।
এই উভয় লাইন যুক্ত করুন .vimrc
:
cabbrev help vert help
cabbrev h vert h
:vert[ical] {cmd}
সর্বদা cmd
একটি উল্লম্ব বিভক্ত উইন্ডোতে চালিত করে ।
স্টিভ উত্তরে অনুপ্রাণিত হয়ে, আমি সাধারণ ফাংশনটি লিখেছিলাম যা বর্তমান ট্যাবে সমস্ত উইন্ডোর জন্য উল্লম্ব এবং অনুভূমিক বিভাজনের মধ্যে টগল করে। আপনি এটিকে নীচের শেষ লাইনের মতো ম্যাপিংয়ের সাথে আবদ্ধ করতে পারেন।
function! ToggleWindowHorizontalVerticalSplit()
if !exists('t:splitType')
let t:splitType = 'vertical'
endif
if t:splitType == 'vertical' " is vertical switch to horizontal
windo wincmd K
let t:splitType = 'horizontal'
else " is horizontal switch to vertical
windo wincmd H
let t:splitType = 'vertical'
endif
endfunction
nnoremap <silent> <leader>wt :call ToggleWindowHorizontalVerticalSplit()<cr>
if winnr() == 1 windo wincmd J windo wincmd k else windo wincmd J endif
এবং if winnr() == 1 windo wincmd L windo wincmd h else windo wincmd L endif
আশা করি যে এটি কার্যকর হয়।
উপরের দিকে মার্ক রুশাকফের পরামর্শ অনুসারে , এখানে আমার ম্যাপিংটি দেওয়া হচ্ছে:
" vertical to horizontal ( | -> -- )
noremap <c-w>- <c-w>t<c-w>K
" horizontal to vertical ( -- -> | )
noremap <c-w>\| <c-w>t<c-w>H
noremap <c-w>\ <c-w>t<c-w>H
noremap <c-w>/ <c-w>t<c-w>H
সম্পাদনা: ব্যবহার করুন Ctrl- w rদুটি উইন্ডো যদি তারা ভালভাবে না থাকে তবে অদলবদল করতে।