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


231

আমি আমার উইন্ডোগুলি অনুভূমিকভাবে বিভক্ত করেছি। এখন আমি কীভাবে স্বাভাবিক মোডে ফিরে যেতে পারি, অর্থাত্ আমার সমস্ত খোলা উইন্ডো বাতিল না করে কোনও বিভক্ত উইন্ডো কেবল একটি উইন্ডো। আমার 5 টি আছে এবং "ছাড়তে" চাই না, কেবল বিভক্ত উইন্ডো থেকে বেরিয়ে আসতে চাই।


7
কোনও সুযোগ আপনি একের উত্তর গ্রহণ করতে পারবেন? এটি বর্তমানে স্বীকৃত একের চেয়ে অনেক বেশি সহায়ক ...
কাইল স্ট্র্যান্ড

উত্তর:


288

Control+ টিপুন w, তারপরে qএকবারে প্রতিটি উইন্ডো বন্ধ করতে চাপুন ।

আপডেট : :on আপনি যদি একবারে একটি উইন্ডো না করতে চান তবে জড়িত (নীচে পড়ুন) জড়িত ( ECES উত্তর) বিবেচনা করুন যা আপনার পক্ষে আরও কার্যকর হতে পারে ।


9
আমি সম্মত তবে ওপি একটি উত্তর গ্রহণ করে নি, এবং আমি নিজে এটি পরিবর্তন করতে পারি না।
ওয়ারেন পি

4
আমি নিশ্চিত যে এটি সঠিক উত্তর। এটি আমার জন্য এটি করেছে এবং আপনি যদি অপের প্রশ্নের দিকে লক্ষ্য করেন তবে তিনি তার অন্যান্য খোলা উইন্ডোটি বন্ধ করতে চান নি, কেবল সম্প্রতি বিভক্ত একটি।
জাক

1
যদি দেখানো বাফারে সংরক্ষিত পরিবর্তনগুলি থাকে তবে সহায়তা করে না। এটা আমার সাথে ওভাররাইড করা উচিত বলে! কিন্তু আমি জানি না কিভাবে। নবাগত হিসাবে আমি এখন হারিয়ে গেছি।
musiKk

2
সুতরাং এটি সংরক্ষণ করুন। কীভাবে সংরক্ষণ করতে হয় তা না জানলে আপনার এই উত্তরটির দরকার নেই। এটি সংরক্ষণ করার জন্য আপনার কাছে PERMISSION নেইও সম্ভব।
ওয়ারেন পি

1
Traditionalতিহ্যবাহী জিইউআই সম্পাদকদের কাছ থেকে আসা, এটি একটি দুর্দান্ত উদ্ভট ধারণা। সেটিং hiddenযদিও সাহায্য করবে বলে মনে হচ্ছে। যদিও, আমি যা বোঝাতে চাইছিলাম তা কীভাবে আপনি যুক্ত করবেন! একটি শর্টকাটে? এটি কি "Cw! Q", "Cw q!", "! Cw q", "C-! W q"? আমি মনে করি এগুলির কোনওটিই নয় তবে আমি কীভাবে নতুন বাফার তৈরি করব তা ইতিমধ্যে ভুলে গেছি তাই এটি পাঠকের পক্ষে অনুশীলন।
musiKk

265

সমস্ত বিভাজন বন্ধ করতে, আমি সাধারণত উইন্ডোটিতে কার্সারটি রাখি যা অন- দৃশ্যমান হবে এবং তারপরে :onএটি বর্তমান উইন্ডোটিকে অন- দৃশ্যমান উইন্ডোতে পরিণত করে makes মনে রাখার জন্য সুন্দর স্মৃতিচারণ।


সম্পাদনা: :help :on আমাকে দেখিয়েছে যে এই আদেশগুলি সমান:

এই চারটির প্রতিটি সক্রিয় উইন্ডো বাদে সমস্ত উইন্ডো বন্ধ করে দেয়।


8
+1 যদি অন্য উইন্ডোতে কোনও অনিচ্ছাকৃত পরিবর্তন থাকে, :onতবে প্রতিক্রিয়া জানাবে E445: Other window contains changesএবং অন্য উইন্ডোটি বন্ধ করবে না। উদাহরণস্বরূপ, আমি সাধারণত একটি নতুন উইন্ডো তৈরি করি এবং এর মধ্যে এমন একটি ফাইল পড়ে থাকি যা থেকে আমি ইঁকতে চাই। এই ক্ষেত্রে, ভিম অন্য উইন্ডোটিকে অলিখিত পরিবর্তনগুলি বিবেচনা করে। এ জাতীয় ক্ষেত্রে, :on!ঘনিষ্ঠভাবে জোর করতে ব্যবহার করুন ।
সবুঙ্কু

61

সমস্ত উইন্ডো বন্ধ করতে তবে বর্তমানের ব্যবহারটি:

CTRL+ w,o

অর্থাৎ প্রথম CTRL+ + wএবং তারপর o


3
আমিও আশ্চর্য হই যে CTRL+W oদুর্ঘটনাক্রমে কোনও টাইপ পূর্বাবস্থায় ফেলার কোনও উপায় আছে কি না ।
পাওলো

30

বর্তমান উইন্ডোটি বন্ধ করার জন্য দুটি বিকল্প হ'ল ZZএবং ZQ, যা যথাক্রমে প্রদর্শিত বাফারে পরিবর্তনগুলি সংরক্ষণ এবং সংরক্ষণ করবে না।


10
এটি অবশ্যই "ভিম ওয়ে", crtl + wo তাই ইমাস মনে হচ্ছে।
অ্যান্ডি হেডেন

আমি পছন্দ Zকরি না কারণ আমি জার্মান। (স্পোলার: আপনি ঘন ঘন ডিই / এন সেটিং এর মধ্যে স্যুইচ করলে কীবোর্ড লেআউট)
টিনো

6

কমান্ড: লুকান বর্তমানে ফোকাস করা উইন্ডোটি লুকিয়ে রাখবে। আমি মনে করি এটির কার্যকারিতা আপনি সন্ধান করছেন।

উইন্ডোজের মধ্যে নেভিগেট করার জন্য একটি নেভিগেশন কী (h, j, k, l, বা তীর কী) এর পরে Ctrl + w টাইপ করুন

আরও তথ্যের জন্য :help windowএবং :help hidevim চালান ।


এটা অসাধারণ. ক্রোম (এসএসএস প্লাগইন সহ) <CW> "ক্লোজ ট্যাব" হিসাবে কার্যকরভাবে সমস্ত ভিমের <cw> উইন্ডো কমান্ড অক্ষম করে। একটি বিকল্প থাকা দরকারী।
মূক্ত

6

থেকে :help opening-window("উইন্ডোটি বন্ধ করে দেওয়ার জন্য অনুসন্ধান করুন - /Closing a window) "

  • :q[uit]বর্তমান উইন্ডো এবং বাফার বন্ধ করুন। এটি যদি শেষ উইন্ডো হয় তবে এটি ভিএম থেকেও প্রস্থান করবে
  • :bd[elete] বর্তমান বাফারটি আনলোড করুন এবং বর্তমান উইন্ডোটি বন্ধ করুন
  • :qa[all]বা :quita[ll]সমস্ত বাফার এবং উইন্ডোজ বন্ধ করে এবং ভিমে প্রস্থান করবে ( :qa!পরিবর্তনগুলি সংরক্ষণ না করে জোর করে)
  • :clo[se]বর্তমান উইন্ডোটি বন্ধ করুন তবে বাফারটি খোলা রাখুন। যদি কেবল একটি উইন্ডো থাকে তবে এই কমান্ডটি ব্যর্থ হয়
  • :hid[e]বর্তমান উইন্ডোতে বাফারটি লুকান (আরও পড়ুন :help hidden)
  • :on[ly] অন্যান্য সমস্ত উইন্ডো বন্ধ করুন তবে সমস্ত বাফার খোলা রাখুন

5

আমি খুঁজে পেয়েছি যে ctrl+ wআপনি যে উইন্ডোটি বন্ধ করতে চান, তারপরে ঠিক করুন :q। এটি আমার পক্ষে কাজ করে।


এটি সত্যিই একটি সদৃশ উত্তর, 3+ বছর ধরে সেখানে বসে আছে এমন কোনওর সদৃশ।
ওয়ারেন পি

@ ওয়ারেনপি ডুপের মতো দেখায় না। আমি অন্য কোনও উত্তর পাইনি যা ^W^W:qসম্ভাব্য সমাধান হিসাবে উল্লেখ করেছে তাই বিচ্ছেদ থেকে মুক্তি পান। নোট করুন যে ^W to the window you want to closeদৃশ্যত ^W^Wআপনি যে উইন্ডোটি বন্ধ করতে চান তাতে স্যুইচ করার জন্য একাধিক ব্যবহারকে বোঝায় ..
টিনো

আমার খারাপ। অন্যটি হ'ল then ডব্লিউ তখন ও
ওয়ারেন পি

2

আমি আপনার উদ্দেশ্য ভালভাবে বুঝতে পারি, আমি একচেটিয়াভাবেও বাফারগুলি ব্যবহার করি এবং প্রয়োজনে মাঝেমধ্যে বিভক্ত হয়।

নীচে আমার অংশ .vimrc

" disable macro, since not used in 90+% use cases
map q <Nop>
" q,  close/hide current window, or quit vim if no other window
nnoremap q :if winnr('$') > 1 \|hide\|else\|silent! exec 'q'\|endif<CR>
" qo, close all other window    -- 'o' stands for 'only'
nnoremap qo :only<CR>
set hidden
set timeout
set timeoutlen=200   " let vim wait less for your typing!

যা আমার ওয়ার্কফ্লো বেশ ভাল ফিট করে

যদি qচাপ দেওয়া হত

  • একাধিক উইন্ডো খুললে বর্তমান উইন্ডোটি আড়াল করুন, অন্যথায় ভিআইএম ছাড়ার চেষ্টা করুন।

যদি qoচাপা ছিল,

  • অন্য সমস্ত উইন্ডোটি বন্ধ করুন, কেবলমাত্র একটি উইন্ডো থাকলে কোনও প্রভাব নেই।

অবশ্যই, আপনি সেই অগোছালো অংশটিকে কোনও ফাংশনে আবদ্ধ করতে পারেন , যেমন

func! Hide_cur_window_or_quit_vim()
    if winnr('$') > 1
        hide
    else
        silent! exec 'q'
    endif
endfunc
nnoremap q :call Hide_cur_window_or_quit_vim()<CR>

Sidenote : আমি পুনরায় ম্যাপ q, যেহেতু আমি সম্পাদনা করার জন্য ম্যাক্রো ব্যবহার করবেন না, পরিবর্তে ব্যবহার :s, :g, :v, এবং বহিরাগত টেক্সট প্রক্রিয়াকরণ কমান্ড প্রয়োজনে, যেমন, :'{,'}!awk 'some_programm', বা ব্যবহারের :norm! normal-command-here


1

অন্যদের মত পথ এই কাজ করতে আগে বলেন প্রেস হয় ctrl+ + wএবং তারপর o। এটি অন্যদের বন্ধ করার সময় বর্তমান উইন্ডোটিকে "সর্বাধিক" করবে। আপনি যদি এটি "আনস্যাক্সিমাইজাইজ" করতে সক্ষম হতে চান তবে তার জন্য জুমওয়ান নামে একটি প্লাগইন রয়েছে । অন্যথায় আপনাকে স্ক্র্যাচ থেকে উইন্ডো সেটআপটি পুনরায় তৈরি করতে হবে।


0

ঠিক আছে আমি কেবল বিচ্ছিন্ন হয়ে স্ক্রিন সেশনে পুনরায় সংযুক্ত হয়েছি এবং আমি চাইলে আবার স্বাভাবিক পর্দায় ফিরে এসেছি


এটি vim'র বিভক্ত উইন্ডো মোডটি ছাড়বে না , এটি কেবল screenস্প্লিট ফলক মোডটিকে ছেড়ে দেয় - যা সহজেই ভুল হতে পারে, তাই সম্ভবত অন্যরাও তা করে। বিটিডাব্লু আমি এই পর্দার বৈশিষ্ট্যটিকে বিরক্তিকর বলে মনে করি, তাই আমি এখন ডিফল্ট হয়ে tmuxযা এতে সমস্ত বিভাজন অক্ষত রেখে পুনরায় যুক্ত করতে দেয় allows
টিনো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.