ভিআইএম-এ উল্লম্ব বিভাজন হিসাবে একটি বাফার খুলুন


176

আপনি যদি ভিআইএম-তে কোনও ফাইল সম্পাদনা করছেন এবং তারপরে আপনাকে একটি বিদ্যমান বাফারটি খোলার প্রয়োজন (যেমন আপনার বাফার তালিকা থেকে :buffers:) আপনি কীভাবে এটি উল্লম্ব বিভাজনে খুলতে পারেন?

আমি জানি যে আপনি ইতিমধ্যে এটিকে একটি সাধারণ বিভাজন দিয়ে খুলতে পারবেন :

:sbuffer N

Nআপনি যে বাফার নম্বরটি চান তা কোথাও নেই, তবে উপরেরটি Nউল্লম্বভাবে নয়, অনুভূমিকভাবে উদ্বোধন করে buff

আমি এও সচেতন যে আপনি খোলার পরে উইন্ডো স্থাপনটি পরিবর্তন করতে পারেন এবং এর মতো একটি উল্লম্ব স্প্লিট রাখতে পারেন:

Ctrl-W H
Ctrl-W L

যা উইন্ডোটি উল্লম্বভাবে ডান বা বামে বিভক্ত করবে।

আমার কাছে মনে হয় যে যদি সেখানে থাকে তবে একটি sbufferথাকা উচিত vsbufferতবে তা বিদ্যমান নেই (আমি অবগত নই)

এছাড়াও, দয়া করে নোট করুন যে আমি এই প্রশ্নটি সমাধান করার জন্য কোনও প্লাগইন খুঁজছি না। আমি প্লাগইনগুলির একটি সম্পদ সম্পর্কে জানি যা আপনাকে এটি করতে অনুমতি দেবে।

আমি নিশ্চিত যে আমি ইতিমধ্যে এখানে থাকা কিছু মিস করছি।

সম্পাদনা: সহযোগিতার সর্বোত্তম চেতনায়, যদি কেউ এই ইস্যুটি ধরে ফেলে এবং একটি প্লাগইন ইনস্টল করতে না চান তবে আমি ম্যাপিংয়ের সাথে একটি সাধারণ ফাংশন তৈরি করেছি:

ফাংশন:

" Vertical Split Buffer Function
function VerticalSplitBuffer(buffer)
    execute "vert belowright sb" a:buffer 
endfunction

ম্যাপিং:

" Vertical Split Buffer Mapping
command -nargs=1 Vbuffer call VerticalSplitBuffer(<f-args>)

এটি একটি সঠিক বিভক্তিতে একটি বাফার খোলার কাজটি সম্পাদন করে, সুতরাং বাফার 1 এর জন্য আপনি এটিকে এইভাবে ডাকবেন:

:Vbuffer 1

উত্তর:


206

চেষ্টা করুন:

:vert sb N

যা একটি বাম উল্লম্ব বিভাজন খুলবে (ডিফল্টরূপে, আপনি কিছু বিকল্প সংশোধন না করে)।

অন্যদিকে ডানদিকে একটি বিভাজন খুলতে:

:vert belowright sb N

5
এটি না পেয়ে বরং অদ্ভুত বলে মনে হচ্ছে vsbuffer N? বিরক্তিকর। আপনার উত্তর এটি নখ। ধন্যবাদ!
alfredodeza

13
আমি সবসময় মনে করি যে vsbufferখুব বেশি হওয়া উচিত এবং আমি প্রায়শই Ctrl-w Tএকটি নতুন ট্যাবে বাফারটি খুলতে ভুলে যাই (বা আমি এটি বর্তমানে সক্রিয় বা দৃশ্যমান নয় এমন বাফার দিয়ে করতে চাই)। সুতরাং বিকল্প হিসাবে, আপনি এই ক্ষেত্রে যে কোনও একটির জন্য একটি বার ব্যবহার করতে পারেন, যা আমি @ জীটের বৈধ উত্তরের চেয়ে মনে রাখা সহজ মনে করি: :vsp | b Nএবং :tabe | b N
ches

আমি পছন্দ করি যে এই কমান্ডটি Nস্বতঃপূরণ হওয়ার অনুমতি দেয় (যা অন্য উত্তরে কমান্ড দিয়ে সম্ভব বলে মনে হচ্ছে না)। উভয় upvated, তবুও।
ডেভিড নদী

124

:vsp | b1

1 কিছু বাফার নম্বর হচ্ছে। buffersসমস্ত বাফার তালিকা করতে ব্যবহার করুন ।

আপনি যদি আগ্রহী হন তবে এখানে বিভাজন সম্পর্কে কিছু অতিরিক্ত তথ্য। লিংক


9
আপনি এটিও ব্যবহার করতে পারেন :lsযা মনে হয় এটির জন্য একটি শর্টকাট :buffers
dskecse

3
:vsp | b <buffer name>
আপনিও

4
@ কেনি ক্যামব্রিজ আরও ভাল - আপনাকে কেবল বাফার নামের কিছু অংশ (কেস সেনসিটিভ) টাইপ করতে হবে এবং তারপরে ফিল্টার তালিকার মাধ্যমে
চক্রটিতে

মনে রাখবেন যে @ জেরিনাউ প্রদত্ত লিঙ্কটি সেই পৃষ্ঠাটির পরিভাষাটি গুরুতরভাবে বিভ্রান্তিকর তাই আপনার স্পষ্ট করার জন্য সেই পৃষ্ঠাটিতে থাকা মন্তব্যগুলি পড়তে হবে।
নীলজি

5

আপনার .vimrc এ নিম্নলিখিতগুলি যুক্ত করে আপনার ব্যথা সহজ করতে পারেন

cabbrev vb vert sb

এখন আপনি এটি নিম্নলিখিত উপায়ে ব্যবহার করতে পারেন।

:vb <buffer>

এটি দুর্দান্ত, বর্ধিত সংস্করণে বাফারের নাম অটোকম্প্লিশনও উপলব্ধ! আমি ক্যাব্রেভকেও জানতাম না, ধন্যবাদ।
কিডপিক্সো

2

আপনি :lsআপনার বর্তমান বাফারগুলি এবং যে কোনও একটিতে পছন্দসই বাফারটি খোলার জন্য আদেশগুলি তালিকাভুক্ত করেও একত্রিত করতে পারেন

  1. বর্তমান উইন্ডো: :b <N/bufname>
  2. উল্লম্ব বিভাজন: :vsp | b <N/bufname>
  3. অনুভূমিক বিভাজন: :sp | b <N/bufname>

এর জন্য, আমি আমার সাথে নিম্নলিখিত ম্যাপিংগুলি যুক্ত করেছি ~/.vimrc(ম্যাপিংয়ের ক্রম পছন্দসই উইন্ডোগুলির উপরের তালিকাটি উপস্থাপন করে)

 nnoremap <leader>b :ls<cr>:b<space>
 nnoremap <leader>v :ls<cr>:vsp<space>\|<space>b<space>
 nnoremap <leader>s :ls<cr>:sp<space>\|<space>b<space>

এর উপর ভিত্তি করে, আপনি আঘাতের সাথে সাথে বাফার তালিকাটি দেখতে পাবেন

  1. <leader>b
  2. <leader>v
  3. <leader>s

এবং তারপরে কেবল কাঙ্ক্ষিত বাফার নম্বরটি প্রবেশ করান N। এটি তখন পছন্দসই উইন্ডোতে বাফারটি খুলবে। আপনি অবশ্যই এখনও বাফার নামের একটি অংশ ব্যবহার করতে পারেন bufname

আমি ম্যাপ <leader>করার ,উপর ভিত্তি করে

let mapleader = ","

কিছু লোকের (উদাহরণস্বরূপ) এটি এমনকি MiniBufExpl এর মতো প্লাগইনগুলি প্রতিস্থাপন করতে পারে এবং এভাবে স্ক্রিনে স্থান বাঁচাতে পারে।


0

আপনি নীওভিম ব্যবহার করতে পারেন, এটির মতো:

autocmd FileType python nmap <F5> :rightbelow vertical split <bar> :term python %<cr>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.