http://vim.wikia.com/wiki/Toggle_auto-indenting_for_code_paste
কোড পেস্টের জন্য অটো-ইন্ডেন্টিং টগল করুন
পটভূমি
আপনি পাঠ্য আটকানোর জন্য ভিম কমান্ডগুলি ব্যবহার করলে অপ্রত্যাশিত কিছুই ঘটে না। অন্য অ্যাপ্লিকেশন থেকে পেস্ট করার সময় সমস্যাটি কেবল তখনই উদ্ভূত হয় যখন আপনি ভিমের কোনও জিইউআই সংস্করণ ব্যবহার করেন না। ভিমের কোনও কনসোল বা টার্মিনাল সংস্করণে, অন্য অ্যাপ্লিকেশন থেকে পাঠ্য আটকানোর কোনও মানক পদ্ধতি নেই। পরিবর্তে, টার্মিনালটি কীবোর্ড বাফারটিতে পাঠ্য সন্নিবেশ করিয়ে পেস্টিং অনুকরণ করতে পারে, তাই ভিম মনে করেন যে পাঠ্যটি ব্যবহারকারী লিখেছেন। প্রতিটি লাইন শেষ হওয়ার পরে, ভিম কার্সারটি সরিয়ে ফেলতে পারে যাতে পরবর্তী লাইনটি শেষের মতো একই ইনডেন্ট দিয়ে শুরু হয়। যাইহোক, এটি ইতিমধ্যে আটকানো পাঠ্যে ইন্ডেন্টেশন পরিবর্তন করবে।
টগল আটকান
নিম্নলিখিতগুলি আপনার ভিআরসিআরিতে রাখুন (আপনি যে কীতে চান তা পরিবর্তন করুন):
set pastetoggle=<F2>
অন্য অ্যাপ্লিকেশন থেকে পেস্ট করতে:
- সন্নিবেশ মোড শুরু করুন।
- F2 টিপুন ('পেস্ট' বিকল্পটি টগল করে)।
- ক্লিপবোর্ড থেকে পাঠ্য আটকানোর জন্য আপনার টার্মিনালটি ব্যবহার করুন।
- F2 টিপুন ('পেস্ট' বিকল্পটি টগল করে)।
তারপরে আটকানো পাঠ্যের বিদ্যমান ইন্ডেন্টেশনটি ধরে রাখা হবে।
আপনাকে প্রথমে সন্নিবেশ মোডটি শুরু করতে হবে না, তবে আপনি যদি সাধারণ মোডে থাকেন এবং F2 এর জন্য ম্যাপিং করেন তবে সেই ম্যাপিংটি প্রযোজ্য হবে এবং 'পেস্টটগল' ফাংশনটি পরিচালনা করবে না।
কিছু লোক আপনার ভিএমআরসি-র জন্য নিম্নলিখিত বিকল্পের দ্বারা স্থিতি রেখায় দেখানো ভিজ্যুয়াল প্রতিক্রিয়া পছন্দ করে:
nnoremap <F2> :set invpaste paste?<CR>
set pastetoggle=<F2>
set showmode
প্রথম লাইনটি একটি ম্যাপিং সেট করে যাতে F2 চাপলে সাধারণ মোডে 'পেস্ট' বিকল্পটি উল্টে যায় এবং তারপরে সেই বিকল্পটির মান প্রদর্শিত হবে। দ্বিতীয় লাইনটি সন্নিবেশ মোডে, টগল করে 'পেস্ট' চালু এবং বন্ধ করার সময় আপনাকে F2 টিপতে দেয়। তৃতীয় লাইন সন্নিবেশ মোডে 'পেস্ট' চালু আছে কিনা তা প্রদর্শন সক্ষম করে।