বিদ্যমান উইন্ডোটি বিদ্যমান ট্যাবে সরান


14

কখনও কখনও আমাকে উইন্ডোজগুলি ইতিমধ্যে বিদ্যমান ট্যাবে স্থানান্তরিত করতে হবে এবং আমি ভাবছিলাম যে কোনও কমান্ড / কীবোর্ড শর্টকাট এটি করতে পারে কিনা। আমি জানি আমি উইন্ডোটি বন্ধ করতে, ট্যাবে স্যুইচ করতে এবং এটি একটি নতুন বিভাজনে খুলতে পারি, তবে আমি ভাবছিলাম যে এটি সম্পাদন করার আরও ছোট উপায় আছে কিনা। নোট করুন যে আমি এটি কোনও বিদ্যমান ট্যাবে সরিয়ে নিতে চাই <C-w>T, নতুন ট্যাবটি এর মতো নয়।


ট্যাবগুলি জুড়ে উইন্ডোজ সরানো সম্ভব নয়।
lcd047

হুম, এটা খুব খারাপ। আমি সম্ভবত কিছু ম্যাপিং বা কমান্ড তৈরি করতে পারি যা এটি সম্পাদন করতে পারে।
চিরসবুজ

আমি মনে করি আপনি যা করতে পারেন তা হ'ল উইন্ডোটির সমস্ত সেটিংস সংরক্ষণ করা এবং এটি বিদ্যমান ট্যাবে পুনরায় তৈরি করা।
tommcdo

উত্তর:


10

বর্তমান ট্যাব পৃষ্ঠায় বিদ্যমান উইন্ডোগুলিকে চারদিকে সরানোর জন্য কমান্ড থাকলেও (যেমন ঘোরানো, পুনরায় আকার দেওয়া, এবং সরানোর মাধ্যমে উইন্ডো লেআউটটিকে প্রভাবিত করে), উইন্ডোটিকে অন্য ট্যাবে স্থানান্তরিত করার কোনও আদেশ নেই।

উইন্ডোটি লোড হওয়া বাফার হিসাবে কেবল একটি ভিউপোর্ট হিসাবে আপনাকে এগুলি করতে হবে:

  1. বর্তমান উইন্ডোতে প্রদর্শিত বাফার নম্বরটি নোট করুন।
  2. :close! জানালা.
  3. বিদ্যমান টার্গেট ট্যাব পৃষ্ঠায় স্যুইচ করুন।
  4. :sbuffer এটি আবার খোলার জন্য বাফার নম্বর।

আপনি এটি দ্বারা কোনও উইন্ডো-নির্দিষ্ট বিকল্প হারাবেন। আপনি এগুলিও কোনও স্ক্রিপ্টে সংরক্ষণ এবং পুনরুদ্ধার করতে পারেন।


আমি বুঝতে পারি যে এটিই ছিল। আমি সম্ভবত একটি ছোট স্ক্রিপ্ট তৈরি করতে পারি যা ঠিক এটি করে।
চিরসবুজ

2
  1. বিদ্যমান লক্ষ্য ট্যাবে যান
  2. আপনি চান তা বিভক্ত
  3. :b ab(বাকি ট্যাব-সম্পূর্ণ)

abকেবল এলোমেলো অক্ষর, আপনার পছন্দসই ফাইল নামের শুরুতে প্রতিস্থাপন করুন। :bট্যাব-সমাপ্তি আমার জন্য খুব ভাল অভিনয় করেছে, এটি সাধারণত মাত্র একটি বর্ণ এবং 1-2 টি Tabকীপ্রেসের উপর ভিত্তি করে সঠিক উত্স বাফারটি খুঁজে পেতে পারে।

ইনগো'র এই পদ্ধতির সুবিধা হ'ল কোনও বিষয়কে লক্ষ্য করা বা মনে রাখার অভাব, যার অর্থ কম জ্ঞানীয় বোঝা। ফাইলের নাম আপনি ইতিমধ্যে যেভাবেই জানেন।


2

নীচে সংজ্ঞায়িত দুটি কমান্ড সমস্ত বাফারকে ডান হাতের ট্যাব থেকে বর্তমান ট্যাবে নিয়ে যায় এবং তারপরে ডান হাতের ট্যাবটি বন্ধ করে দেয়। Mtabspঅনুভূমিকভাবে Mtabvspবিভক্ত হয়ে এগুলি সরানো হয় এবং উল্লম্বভাবে বিভাজিত হয়। কমান্ডগুলি ব্যবহার করার আগে আপনাকে মার্জড ট্যাবটি সরানো দরকার। ব্যবহার করুন +tabm, -tabmবা <n>tabm

সেটআপ

নীচে ভিএম স্ক্রিপ্টটি আপনার যুক্ত করুন vimrc:

function! Mtab(vert)
    if tabpagenr() == tabpagenr("$")
        return 0
    endif
    +tabnext
    let s:killed_tab = tabpagenr()
    let s:buf_list = tabpagebuflist()
    -tabnext
    for item in s:buf_list
        if a:vert
            vsp
        else
            sp
        endif
        execute "buf " . item
    endfor
    execute "tabclose " . s:killed_tab
endfunction

command! Mtabsp call Mtab(0)
command! Mtabvsp call Mtab(1)

প্রযুক্তিগত বিবরণ

ফাংশন Mtab একটি পরামিতি গ্রহণ করে vert। এটি নির্ধারণ করে যে বর্তমান ট্যাব অনুভূমিকভাবে বা উলম্বভাবে বিভক্ত কিনা।

নিম্নলিখিত পদক্ষেপগুলি দ্বারা কাঙ্ক্ষিত ফলাফল অর্জন করা হয়:

  1. আমরা সাময়িকভাবে পরবর্তী ট্যাবে চলেছি
  2. এর ট্যাব নম্বর এবং বাফারগুলি উল্লেখ করতে দুটি ভেরিয়েবল ব্যবহার করুন
  3. বর্তমান ট্যাবে ফিরে আসুন
  4. আমরা ট্যাবটি বিভক্ত করে প্রতিটি বাফার খুলি
  5. শেষ পর্যন্ত, আমরা ডান হাতের ট্যাবটি বন্ধ করি

যদি আমাদের বর্তমান ট্যাব শেষ হয়, আদেশগুলি উপেক্ষা করা হবে।


1

যদি এটি কোনও ফাইল বাফার ( স্ক্র্যাচ বাফার ইত্যাদির জন্য কাজ করে না ), আপনি পারেন:

  1. :let @f=@%ENTER - উত্স উইন্ডোতে;
    • এটি নিয়মিত রেজিস্টার f এর বিষয়বস্তুকে বিশেষ রেজিস্টার % এর সামগ্রীর সাথে প্রতিস্থাপন করে , যা বর্তমান ফাইলের নাম ধারণ করে।
    • দ্রষ্টব্য: আমি ফাইল হিসাবে রেজিস্ট্রেশন এফ চয়ন করেছি , তবে আপনি নিজের পছন্দ মতো অন্য কোনও নিবন্ধ ব্যবহার করতে পারেন।
    • আপনি যাচাই করতে পারবেন যে নিবন্ধটিতে সঠিক পথ রয়েছে: :echo @f
  2. Ptionচ্ছিকভাবে: Ctrl-WCtrl-Q- পুরানো উইন্ডোটি বন্ধ করতে;
  3. gt/ gT- লক্ষ্য ট্যাবে নেভিগেট করুন (এবং উইন্ডো);
  4. Ctrl-Ws - একটি নতুন উইন্ডো খোলার জন্য, ট্যাবটি আপনার পছন্দ মতোই বিভক্ত করুন;
  5. :e␣Ctrl-RfENTER
    • নতুন খোলা উইন্ডোতে, রেজিস্টার এফ মধ্যে সঞ্চিত পথ থেকে একটি ফাইল লোড করে ;
    • দ্রষ্টব্য: এখানে ␣ অক্ষরটি একটি নিয়মিত স্থান চিহ্নিত করে।

গুরুত্বপূর্ণ দ্রষ্টব্য: চূড়ান্ত পদক্ষেপটি সঠিকভাবে কাজ করবে না যদি পাথে স্পেস বা কিছু বিশেষ অক্ষর থাকে! :-( একটি কর্মক্ষেত্র হিসাবে, নিম্নলিখিত, সামান্য দীর্ঘ কমান্ডটি ফাঁকা জায়গাগুলির জন্য কাজ করা উচিত (যদিও এটি এখনও কিছু অন্যান্য বিশেষ অক্ষরের জন্য ব্যর্থ হতে পারে):

  • :e␣"Ctrl-Rf"ENTER

(এটি, Ctrl-R এর ফলাফলের উদ্ধৃতি দিয়ে )

Lkraav এবং ইনগো-কারকাতের উত্তরগুলি দ্বারা অনুপ্রাণিত


এটি দুর্দান্ত, আমার উইন্ডোজের ট্যাবগুলিতে "কাট এবং পেস্ট" করার জন্য একটি ম্যাপিং স্থাপন করতে হবে।
ড্রাগন 788
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.