আমি কীভাবে আমার উইন্ডোগুলিকে গ্রিড গঠনে ফিরিয়ে আনতে পারি?


12

নীচের কমান্ডের ক্রম অনুসারে যদি আমি চারটি চতুষ্কোণে উইন্ডোজ সজ্জিত করে থাকি:

  • :tabnew
  • :vsplit
  • :split
  • <C-W>l
  • :split

তারপরে যেমন একটি কমান্ড প্রবেশ করানো <C-W>Jএগুলি আর বর্গক্ষেত্রের কারণ হবে না; এই ক্ষেত্রে, এটি একটি উইন্ডোটিকে নীচে ভাসতে বাধ্য করবে।

আমি কীভাবে বিপরীতটি করতে পারি - তা হল, উইন্ডোজগুলিকে আবার একটি বর্গক্ষেত্র গঠনে বাধ্য করা?

আমি পড়েছি :help window-movingকিন্তু দরকারী কিছু দেখিনি।


1
আপনি <সিডব্লিউ> জে টিপলে আপনি কী অর্জন করতে চাইছেন সে সম্পর্কে আমি কিছুটা অস্পষ্ট, যা "বর্তমান উইন্ডোটিকে একেবারে নীচে অবস্থিত করে, পর্দার পুরো প্রস্থ ব্যবহার করে" সরিয়ে দেয়, "এর অর্থ উইন্ডোগুলি হবে সংজ্ঞা অনুসারে আর গ্রিড গঠনে থাকবেন না। আপনি আপনার উইন্ডো দিয়ে আসলে কী করার চেষ্টা করছেন?
সমৃদ্ধ

3
@ সমৃদ্ধ আমি মনে করি ওপি কেবল একটি পরিস্থিতির উদাহরণ দিচ্ছে যার পরে তিনি উইন্ডোজগুলি গ্রিড গঠনে পুনরায় সেট করতে চাইতে পারেন।
গোনালো রিবেইরো

@ গনালোআরবেইরো সঠিক
wchargin


কোনও উত্তর না হলেও, আপনি যদি নিজের সমাধান তৈরি করার জন্য কোড উদাহরণগুলির জন্য নিজেকে আবিষ্কার করেন তবে আমি কল্পিত মাইক্রোভিচ প্রকল্পটি পরীক্ষা করার পরামর্শ দিচ্ছি
নিউ আলেকজান্দ্রিয়া

উত্তর:


4

যতদূর আমি জানি, স্প্লিটের গ্রিডে খোলা বিভক্তকরণের সহজ উপায় নেই। এক্ষেত্রে গ্রিডে ফিরে আসার সবচেয়ে সহজ উপায় হ'ল কাঠামোটি নিজেই সংশোধন করা:

  1. শীর্ষে ভাসমান বিভাজনটি বন্ধ করুন
  2. অর্ধেক স্ক্রিন গ্রহণ করে বিভাজনে ফিরে আসুন
  3. এটি দিয়ে আবার বিভক্ত :split <file>

এটি আপনাকে গ্রিডে ফিরিয়ে দেবে। উইন্ডো লেআউটকে প্রভাবিত না করে কৌশলে বিভক্ত করার উপায়টি হল [গণনা] Ctrl - W x যা বর্তমান উইন্ডোটি [কাউন্ট] উইন্ডোটির সাথে বিনিময় করে।


আমি জানি যে আমি এটি করতে পারি তবে বেশ কয়েকটি ডাউনসাইড রয়েছে। (1) জানালা একটি প্রদত্ত বাফার শুধুমাত্র দর্শনযোগ্য, এবং বাফার মলিন হয়, তাহলে আপনি করতে হবে :wqবা :q!, তন্ন তন্ন যার বাঞ্ছনীয়। (২) এটি কার্সার অবস্থানের মতো কোনও উইন্ডো-নির্দিষ্ট সেটিংস পুনরায় সেট করবে। (3) এটি কোনও অগ্রগতির বিভেদ ভেঙে দেবে। মূলত, উইন্ডোজগুলি প্রথম শ্রেণির নাগরিক; এগুলি ধ্বংস এবং নতুন তৈরি করা যথেষ্ট নয়।
wchargin

@ ডাব্লুচারগিন যদি আপনি লুকানো বাফারগুলিকে অনুমতি দেওয়ার জন্য ভীম সেট করেন তবে এর মধ্যে কিছু চলে যায়। তবে হাঁ ...
derobert

2
উইন্ডোটি বন্ধ করে বাফারটিকে কাঙ্ক্ষিত স্থানে বিভক্ত করার পরিবর্তে আপনি যেখানে যেতে চান সেখানে একটি নতুন উইন্ডো বিভক্ত করুন, আপনি যে উইন্ডোটি সরাতে চান তার সাথে এটি বিনিময় করুন, তারপরে (সরানো) নতুন উইন্ডোটি বন্ধ করুন।
tommcdo

4

আপনি winsaveviewকমান্ডটি ব্যবহার করে আপনার পছন্দসই বিন্যাসটি সংরক্ষণ করতে পারেন । \svসুবিধার জন্য এখানে আমি এটিতে ম্যাপিং করছি :

nnoremap <Leader>sv :let g:myLayout = winsaveview()<CR>

আপনার লেআউটটি ভেঙে যাওয়ার আগে এটি চালানোর বিষয়ে নিশ্চিত হন! ;-)

এখন আপনি যদি কখনও দুর্ঘটনাক্রমে আপনার বিন্যাসটি ভাঙ্গেন তবে আপনি এটি পুনরুদ্ধার করতে পারেন:

nnoremap <Leader>rv :call winrestview(g:myLayout)<CR>

4

উইন্ডোজগুলি পুনরায় সাজানোর জন্য ডিফল্ট কীগুলি কেবল তাদের স্থানীয় বিভক্ত গোষ্ঠীর মধ্যে কাজ করে:

CTRL-W x   Exchange current window with next (in group)
CTRL-W r   Rotate windows down/right (in group)

অথবা তারা উইন্ডোটি শীর্ষ গ্রুপে ছিন্ন করে:

CTRL-W  H | J | K | L   Move window to left/top/bottom/right-most edge

এগুলি অপর্যাপ্ত যখন আপনি বাফারকে অন্য বিভক্ত গোষ্ঠীগুলির মধ্যে একটিতে স্থানান্তর করতে চান।

কিন্তু এই ধরনের অনুষ্ঠান, WindowSwap প্লাগইন সাহায্য করতে পারেন । এটি আপনাকে যে কোনও দুটি স্বেচ্ছাসেবী উইন্ডোর বাফারগুলি অদলবদল করতে দেয়।

<leader> yw   "Yank window": Yank the current window

<leader> pw   "Paste window": Swap the current window with the yanked window
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.