ব্যাকএন্ড ইঞ্জিনিয়ার হিসেবে আমি সবসময় এমন টুলস খুঁজি যা আমার কাজের গতি বাড়িয়ে দেবে। আমার টুলকিটের সবচেয়ে গুরুত্বপূর্ণ অংশ হলো Neovim। এর মোডাল এডিটিং আর Neovim Keybindings আমার কডিং লাইফকে পুরো বদলে দিয়েছে। মাউস ছাড়াই কোডবেসে ঘুরে বেড়ানোর আনন্দটা একবার অভ্যস্ত না হলে বোঝা কঠিন।
মোডাল ম্যাজিক: কেন Neovim আলাদা?
Neovim বা Vim এডিটরের একটা দারুণ ব্যাপার হলো "Modal Editing"। প্রথমে এটা একটু অদ্ভুত মনে হতে পারে, বিশেষ করে যদি রেগুলার টেক্সট এডিটরে অভ্যস্ত হন। কিন্তু একবার বুঝে গেলে দেখবেন কতটা efficient এটি। Neovim এর বিভিন্ন মোড আছে:
Normal Mode: এটাই আপনার মেইন নেভিগেশন মোড। সিঙ্গেল কি ব্যবহার করে কোডের এক জায়গা থেকে অন্য জায়গায় নিমেষেই চলে যেতে পারেন। যেমন, 'j' দিয়ে নিচে, 'k' দিয়ে উপরে যাওয়া।
Insert Mode: এখানে আপনি টাইপ করেন। একদম সাধারণ টেক্সট এন্ট্রির মতো।
Visual Mode: কোনো টেক্সট সিলেক্ট করার জন্য এই মোডটি ব্যবহার করা হয়। হাইলাইট করা, কপি বা কাট করার জন্য এটি বেশ কাজের।
Command Mode: এখানে আপনি সার্চ বা বিভিন্ন কমান্ড রান করতে পারেন।
কি-বাইন্ডিং নিয়ে কিছু কথা
Neovim এর আসল জাদু লুকিয়ে আছে এর Keybindings এর মধ্যে। একবার যদি হাতের আঙ্গুলগুলো কিবোর্ডের সাথে মানিয়ে নেয়, তবে দেখবেন মাউস ধরার আর প্রয়োজনই পড়ছে না।
- কোডে ঘুরে বেড়ানো, ওয়ার্ড ডিলিট করা (dw), কপি (y) বা পেস্ট (p)—সবই চোখের পলকে হয়ে যায়।
- '/' প্রেস করে যেকোনো কিছু সার্চ করতে পারেন। 'n' প্রেস করলে পরের ম্যাচে নিয়ে যাবে।
- ট্যাব ম্যানেজ করা থেকে শুরু করে উইন্ডো স্প্লিট করা—সবকিছুই কিবোর্ড দিয়ে সম্ভব।
- নিজের পছন্দমতো কাস্টম শর্টকাট তৈরি করা যায়। আমি ক্যাপস লককে এস্কেপ (Escape) হিসেবে ব্যবহার করি যাতে হাত মুভ না করেই মোড চেঞ্জ করতে পারি।
Neovim এর চ্যালেঞ্জ এবং আমার তিক্ত অভিজ্ঞতা
সবকিছু ভালো বললেও Neovim এর একটা বড় লার্নিং কার্ভ আছে। সত্যি বলতে, শুরুতে Neovim ব্যবহার করা বেশ যন্ত্রণার। আমি যখন প্রথমবার Vim ওপেন করেছিলাম, জানতামই না কীভাবে ফাইল থেকে বের হতে হয়। প্রায় ১৫ মিনিট গুগলে সার্চ করার পর :q! কমান্ডটা শিখলাম।
এছাড়া কনফিগারেশন নিয়ে সময় নষ্ট করাটা একটা বড় অসুখ। মাঝেমধ্যে মনে হয়, কোড করছি না বরং এডিটরই ঠিক করছি। Neovim আপনার প্রোডাক্টিভিটি রকেটের মতো বাড়িয়ে দিলেও এর Configuration Hell থেকে সাবধান থাকা উচিত। অনেক সময় দেখা যায় একটা প্লাগইন আপডেট করতে গিয়ে পুরো সেটআপ ভেঙে গিয়েছে।
আপনার স্টাইল অনুযায়ী নিজের কি-বাইন্ডিং আর ফাংশনগুলো সাজিয়ে নিতে পারেন। আমি আমার dotfiles নিচে দিয়েছি, যা দেখে আপনি আইডিয়া নিতে পারেন।
দরকারি লিঙ্ক আর টিউটোরিয়াল
- আমার dotfiles এবং Neovim কনফিগ
- Neovim ওয়েবসাইট
- কুইক রেফারেন্স গাইড
- kickstart.nvim - নতুনদের জন্য দারুণ একটা স্টার্টার কনফিগ।