আপনি pydo
ভিএম .4.৪ থেকে উপলব্ধ কমান্ডটি ব্যবহার করতে পারেন , ম্যানুয়ালটিতে এটি কীভাবে আমার চেয়ে আরও ভাল কাজ করে তা বর্ণনা করে:
: [পরিসর] পাইডো {শরীর}
পাইথন ফাংশন সম্পাদন করুন "ডিফ _ভিম_পিডো (লাইন, লিনেনার): [রেঞ্জ] -এর প্রতিটি লাইনের জন্য {বডি}", ফাংশন আর্গুমেন্টগুলি প্রতিটি লাইনের পাঠ্য বিন্যাস ব্যতীত <EOL>, এবং বর্তমান ব্যতীত সেট করা হবে লাইন সংখ্যা. ফাংশনটি কোনও স্ট্রিং বা কোনওটিই ফেরত দেয়। যদি কোনও স্ট্রিং ফিরে আসে তবে এটি বর্তমান টার্নের লাইনের পাঠ্য হয়ে যায়। [রেঞ্জ] এর জন্য ডিফল্ট পুরো ফাইল: "1, 1"।
উদাহরণস্বরূপ আপনি একটি কমান্ড ব্যবহার করতে পারেন:
:python import vim
:pydo vim.current.buffer[linenr - 1] = '[%s]' % line
linenr - 1
বিট আছে কারণ মধ্যে লাইন vim.current.buffer
0-ইন্ডেক্স কিন্তু তেজ 1 থেকে লাইন গণনা শুরু।
সুন্দর জিনিসটি হ'ল আপনি সহজেই আপনার পাইথন কোডটি বিভিন্ন রেখায় চালানোর জন্য একটি কাস্টম কমান্ড সংজ্ঞায়িত করতে পারেন:
command! -range=% BracketLines
\ <line1>,<line2>pydo vim.current.buffer[linenr - 1] = '[%s]' % line