ভিম পূর্বাবস্থায় ফিরিয়ে আনুন টেক্সট প্রস্থ বিন্যাস


3

আমি textwidth = 80 সঙ্গে vim একটি নথি লিখেছেন। আমি এখন ফরম্যাটিংয়ের জন্য এই নথিটি libreoffice এ পেস্ট করতে চাই। সমস্যা লাইন বিরতি হয়। Libreoffice ইন 80 অক্ষর পরে ভিম দ্বারা ঢোকানো newlines কারণে লাইন খুব ছোট।

আমি দুটি নতুন অক্ষর ব্যবহার করে পৃথক অনুচ্ছেদের (অর্থাত দুইবার ফেরত আঘাত)। \ N \ n অক্ষরগুলি ধরে রাখার সময় আমি কি সব একক \ n অক্ষর সরাতে পারি?


শুধুমাত্র ওয়ার্ড প্রসেসিং সফ্টওয়্যারের সাথে, আপনি অনুচ্ছেদ বিরতি হতে "দোষারোপ" করতে দুটি লাইন বিরতি থাকার পরিবর্তে বড় ব্যবধানের জন্য অনুচ্ছেদের বিরতিগুলি তৈরি করতে পারেন।
Alvin Wong

আমি নিকটতম আসে :%s/\n\{2,}/\rSomemarkerNotFoundElsewhereInTheText\r/e অনুসরণ, একটি মার্কার সঙ্গে সব ডবল newlines প্রতিস্থাপন :%j সব লাইন যোগদান এবং %s/SomemarkerNotFoundElsewhereInTheText/^M^M/g মার্কার প্রতিস্থাপন। জাহান্নাম হিসাবে কুৎসিত এবং আমি নিশ্চিত একটি ভাল উপায় আছে।
Hennes

উত্তর:


0

এটার মতো কিছু

:%s/\(\S\)\n/\1
:%s/\n/&&

কাজ করা উচিত. আচ্ছা, এটা এখানে আছে।

প্রথম প্রতিস্থাপনটি একটি "অ হোয়াইটস্পেস চরিত্র" (এটি আরো নির্দিষ্ট হতে পারে) সাথে মেলে, এটি একটি নতুন লাইনের অনুসরণ করে, যেটি "অ হোয়াইটস্পেস চরিত্র" প্রতিস্থাপনে ব্যবহারের জন্য ধরে নেয়। \1 )। বাস্তবিকভাবে, এটি প্রতিটি "অনুচ্ছেদ" একক লাইনে পরিণত করে।

দ্বিতীয়টি দুটি নতুন লাইন সহ প্রতিটি নতুন অক্ষর প্রতিস্থাপন করে। & এখানে "মিলযুক্ত পাঠ্য" মানে প্রতিস্থাপন ব্যবহৃত হয় && মানে "দুটি নতুন অক্ষর"। এটা লেখা যেতে পারে :%s/\n/\r\r কিন্তু && ছোট।


যে হতে হবে \&\& শেষ লাইনে?
alexis

টাইপো, আমি দুঃখিত।
romainl

আমি ভিম এর REs জানি না, কিন্তু তারা পার্ল-শৈলী, \w বিরাম চিহ্ন সঙ্গে শেষ যে লাইন মেলে না। আমি মনে করি আপনি চান \Sযা কোন অ-স্থান অক্ষর মেলে।
alexis

ভাল পয়েন্ট, @ Alexis।
romainl

3

তুমি ব্যবহার করতে পার VipJ প্রতিটি অনুচ্ছেদে:

  • V: linewise নির্বাচন শুরু করুন।
  • ip: পুরো অনুচ্ছেদ নির্বাচন করুন।
  • J: একসঙ্গে লাইন যোগদান।

কারণ আপনি প্রতিটি অনুচ্ছেদের একটি ডবল নতুন লাইন দিয়ে আলাদা করুন, আমরা স্বয়ংক্রিয়ভাবে আমাদের জন্য এটি করার জন্য একটি ম্যাক্রো রেকর্ড করতে পারি:

qqVipJ2jq

যোগদান করতে এন অনুচ্ছেদ একসঙ্গে, সহজভাবে ব্যবহার করুন এন @q এখন।


এর সাথে একমাত্র সমস্যা হল যে একটি লাইন অনুচ্ছেদ নিম্নলিখিত অনুচ্ছেদে যোগদান করা হয়েছে।
Moyamo

2

ভিমতে এটি করার অনেকগুলি উপায় রয়েছে, তবে আমার মনে হয় এটি সর্বাধিক সহজ:

:set tw=9999
gggqG

যে কার্সার বাফার প্রথম লাইন থেকে সরানো ( gg ) এবং সংস্কার ( gq ) সব লাইন থেকে শেষ লাইন ( G )। দেখ

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