১. দ্বি-পদক্ষেপের বিকল্প ব্যবহার করে আচরণ অর্জন করা কঠিন নয়:
:,$s/BEFORE/AFTER/gc|1,''-&&
প্রথমত, প্রতিস্থাপন কমান্ড বর্তমান লাইন থেকে শুরু করে ফাইলের শেষ অবধি প্রতিটি লাইনের জন্য চালিত হবে:
,$s/BEFORE/AFTER/gc
তারপরে, সেই :substitute
আদেশটি একই অনুসন্ধান প্যাটার্ন, প্রতিস্থাপনের স্ট্রিং এবং পতাকাগুলি দিয়ে পুনরায় পুনরায় পুনরায় পুনরায় পুনরায় সাজানো হবে :&
(কমান্ডটি দেখুন :help :&
):
1,''-&&
পরেরটি তবে ফাইলের প্রথম লাইন থেকে রেখার রেঞ্জের বিস্তৃতিতে প্রতিস্থাপনটি করে যেখানে পূর্বের প্রসঙ্গ চিহ্নটি নির্ধারণ করা হয়েছে, বিয়োগ 1। যেহেতু প্রথম :substitute
কমান্ডটি প্রকৃত প্রতিস্থাপন শুরু করার আগে কার্সারের অবস্থান সঞ্চয় করে, ''
রেখাটি যে লাইনটি চিহ্নিত করা হয়েছিল সেটি সেই প্রতিস্থাপন কমান্ড চালানোর আগে বর্তমান লাইন ছিল। ( ''
ঠিকানাটি '
ছদ্ম চিহ্নকে বোঝায়
; দেখুন :help :range
এবং :help ''
বিশদগুলির জন্য))
মনে রাখবেন যে প্রথম কমান্ডে যখন প্যাটার্ন বা ফ্ল্যাগগুলি পরিবর্তন করা হয় তখন দ্বিতীয় কমান্ডের ( |
কমান্ড বিভাজক-দেখুন পরে
:help :bar
) কোনও পরিবর্তন প্রয়োজন হয় না।
২. কিছু টাইপিং সংরক্ষণ করতে, কমান্ড লাইনে উপরের সাবস্টিটিউশন কমান্ডের কঙ্কাল আনার জন্য, কেউ নরমাল-মোড ম্যাপিং সংজ্ঞায়িত করতে পারে, যেমন:
:noremap <leader>cs :,$s///gc\|1,''-&&<c-b><right><right><right><right>
<c-b><right><right><right><right>
কমান্ড লাইন ( <c-b>
) এর শুরুতে এবং তারপরে চারটি অক্ষর ডান দিকে ( move <right>
4) সরানোর জন্য পিছনের অংশটি প্রয়োজনীয় , সুতরাং এটি প্রথম দুটি স্ল্যাশ চিহ্নের মধ্যে রেখে, ব্যবহারকারী অনুসন্ধানের প্যাটার্নটি টাইপ করতে শুরু করে । একবার কাঙ্ক্ষিত প্যাটার্ন এবং প্রতিস্থাপন প্রস্তুত হয়ে গেলে ফলাফলটি কমান্ড টিপে চালানো যায়
Enter।
( উপরের ম্যাপিংয়ের //
পরিবর্তে ///
কেউ যদি বিবেচনা করতে পারে যে কেউ যদি প্যাটার্নটি টাইপ করতে পছন্দ করে তবে আলাদা করে স্ল্যাশ নিজেই টাইপ করুন, তারপরে প্রতিস্থাপনের স্ট্রিংয়ের পরিবর্তে ডান তীরটি ব্যবহার করার পরিবর্তে ইতিমধ্যে উপস্থিত পৃথক পৃথক স্ল্যাশ শুরুর উপরে কার্সারটি সরানো হবে প্রতিস্থাপন অংশ।)
\vpattern
- 'খুব ম্যাজিক' প্যাটার্ন: অ-অক্ষরীয় অক্ষরগুলি বিশেষ রেজেক্স প্রতীক হিসাবে ব্যাখ্যা করা হয় (কোনও পালানোর দরকার নেই)