আসসালামু আলাইকুম, সবাইকে স্বাগতম NTP Solutions-এর আজকের টিউটোরিয়ালে। আজকের টিউটোরিয়াল হলো: “File Editing Tools: Vi/Vim”. Vim হল লিনাক্সের সবচেয়ে শক্তিশালী এবং জনপ্রিয় টেক্সট এডিটরগুলোর মধ্যে একটি। এটি ব্যবহার করতে গেলে কিছু বেসিক জিনিস জানা জরুরি, কারণ Vim-এর কাজ একটু আলাদা। আজ আমরা শিখবো কীভাবে ফাইল এডিট করতে হয়, এবং বিভিন্ন কমান্ড ব্যবহার করে সহজেই টেক্সট মডিফাই করতে হয়।
আশা করি আজকের এই টিউটোরিয়াল আপনাদের জন্য সহায়ক হবে এবং Vim ব্যবহার শুরু করার জন্য আপনাদের উৎসাহিত করবে!
Vim (Vi Improved) হলো একটি শক্তিশালী এবং বহুল ব্যবহৃত টেক্সট এডিটর, যা বিশেষ করে প্রোগ্রামারদের জন্য তৈরি করা হয়েছে। এটি Linux এবং Unix এর মতো অপারেটিং সিস্টেমে প্রায়শই ব্যবহৃত হয়। এটি মূলত সার্ভার পরিবেশ, ডেভেলপমেন্ট এবং স্ক্রিপ্টিংয়ের জন্য ব্যবহৃত হয়। Vim একটি আপডেটেড ভার্সন Vi এর, এবং এতে অনেক উন্নত রয়েছে যা এটি প্রফেশনাল লেভেলের এডিটর হিসেবে পরিচিত করেছে।
Vim কী?
Vim হলো একটি কমান্ড-ভিত্তিক টেক্সট এডিটর যা আপনার কোড লেখার, সম্পাদনা করার এবং কনফিগারেশন ফাইল এডিট করার জন্য পারফেক্ট। এটি টার্মিনালের মধ্যে থেকেই কাজ করে এবং বিভিন্ন শর্টকাট এবং কমান্ড ব্যবহার করে ফাইল এডিট করা যায়।
কী কী করতে পারবেন Vim দিয়ে?
- টেক্সট এডিটিং: আপনি নতুন টেক্সট লিখতে, সম্পাদনা করতে এবং ফাইল সেভ করতে পারবেন।
- কনফিগারেশন ফাইল এডিট: Linux এ /etc/ ডিরেক্টরির বিভিন্ন কনফিগারেশন ফাইল সহজেই এডিট করতে পারবেন।
- কোড লেখার জন্য পারফেক্ট: কোড এডিটিং ও টেক্সট ফরম্যাটিংয়ের জন্য ব্যবহার করা যায়, বিশেষ করে যদি আপনি একটি দ্রুত এবং কাস্টমাইজেবল এডিটর চান।
নিচে কিছু ডিস্ট্রিবিউশন এবং অপারেটিং সিস্টেমের নাম উল্লেখ করা হলো যেখানে vi বা vim ব্যবহৃত হয়:
১. লিনাক্স ডিস্ট্রিবিউশন
- Red Hat Enterprise Linux (RHEL): অনেক সার্ভার এবং এন্টারপ্রাইজ সেটআপে ব্যবহৃত হয়।
- Ubuntu: জনপ্রিয় ডেস্কটপ এবং সার্ভার ডিস্ট্রিবিউশন, যেখানে vim ইনস্টল করা থাকে।
- Debian: এই ডিস্ট্রিবিউশনে vi এবং vim সাধারণত ডিফল্টভাবে উপলব্ধ।
- Fedora: একটি আপ-টু-ডেট লিনাক্স ডিস্ট্রিবিউশন যা vim ব্যবহার করে।
- CentOS: RHEL-এর ভিত্তিতে তৈরি, যেখানে vi এবং vim উপলব্ধ।
- Arch Linux: কাস্টমাইজেশন এবং লিনাক্সের জন্য পরিচিত, এটি vim সমর্থন করে।
২. ম্যাক ওএস
- macOS: vi ডিফল্ট টেক্সট এডিটর হিসাবে অন্তর্ভুক্ত, যদিও ব্যবহারকারীরা vim ইনস্টল করতে পারেন।
৩. বিডিএস (BSD) সিস্টেম
- FreeBSD: BSD ভিত্তিক অপারেটিং সিস্টেম, যেখানে vi সাধারণত ডিফল্ট টেক্সট এডিটর হিসাবে থাকে।
- OpenBSD: এটি vi সমর্থন করে এবং সিস্টেমে অন্তর্ভুক্ত থাকে।
- NetBSD: এটি vi কে ব্যবহারকারী টেক্সট এডিটর হিসেবে অন্তর্ভুক্ত করে।
৪. সার্ভার পরিবেশ
- ক্লাউড সার্ভিসেস: বিভিন্ন ক্লাউড পরিবেশে (যেমন AWS, Google Cloud) ব্যবহৃত সার্ভারগুলিতে vi বা vim ব্যবহৃত হয়।
৫. অন্য অপারেটিং সিস্টেম
- Cygwin: Windows-এর জন্য একটি পরিবেশ যেখানে লিনাক্সের মতো টুলগুলি ব্যবহার করা যায়, সেখানেও vim ইনস্টল করা যায়।
Vim-এর মূলত ৩টি মোড রয়েছে:
1. Normal Mode (নরমাল মোড)
Purpose (উদ্দেশ্য): Navigating and manipulating text এর ডিফল্ট মোড। Key Functions (মূল কার্যাবলী):
- Cursor move করা, টেক্সট ডিলিট করা, কপি এবং পেস্ট করা, এবং বিভিন্ন কমান্ড ব্যবহার করা। Key Bindings (মূল বাইন্ডিংস):
- h, j, k, l: left, down, up, এবং right movements এর জন্য।
- d: delete text, y: copy, p: paste।
2. Insert Mode (ইনসার্ট মোড)
Purpose (উদ্দেশ্য): Text entry করার জন্য ব্যবহৃত। Key Functions (মূল কার্যাবলী):
- টেক্সট টাইপ এবং এডিট করা। Key Bindings (মূল বাইন্ডিংস):
- Insert mode এ যাওয়ার জন্য প্রেস করুন i (insert before the cursor) অথবা a (insert after the cursor)।
- Normal mode এ ফেরত আসার জন্য প্রেস করুন Esc।
3. Command-Line Mode (কমান্ড-লাইন মোড)
Purpose (উদ্দেশ্য): এই মোডে ফাইল সংক্রান্ত কমান্ডগুলো চালানো হয়, যেমন save, quit, বা search করা। Key Functions (মূল কার্যাবলী):
- ফাইল অপারেশন, টেক্সট সার্চ, এবং সেটিংস কনফিগার করা। Key Bindings (মূল বাইন্ডিংস):
- এই মোডে আসার জন্য Normal mode থেকে প্রেস করুন :।
- কমান্ডের উদাহরণ: :w to save, :q to quit, :wq to save and quit।
Visual text editing with vim editor
Vim কমান্ডসমূহ
নিচে কিছু গুরুত্বপূর্ণ কমান্ডের তালিকা দেওয়া হলো:
- সেভ এবং কুইট:
- :w – ফাইল সেভ করার জন্য।
- :q – কুইট বা বের হওয়ার জন্য।
- :wq – সেভ এবং কুইট করার জন্য।
- :q! – পরিবর্তন সেভ না করেই কুইট করার জন্য।
- ইনসার্ট মোডে প্রবেশ:
- i – বর্তমান কার্সরের আগে টেক্সট ইনসার্ট করার জন্য।
- a – কার্সরের পরে টেক্সট ইনসার্ট করার জন্য।
- o – নতুন লাইনে টেক্সট ইনসার্ট করতে।
- নেভিগেশন:
- h – বামে যেতে।
- j – নিচে যেতে।
- k – উপরে যেতে।
- l – ডানে যেতে।
- কপি, কাট এবং পেস্ট:
- yy – বর্তমান লাইনটি কপি করতে।
- dd – বর্তমান লাইনটি কাট করতে।
- p – কপি বা কাটকৃত টেক্সট পেস্ট করতে।
- অনুসন্ধান:
- /text – নির্দিষ্ট টেক্সট খুঁজে বের করতে।
- n – পরবর্তী মেলে যাওয়া ফলাফল দেখতে।
- N – আগের মেলে যাওয়া ফলাফল দেখতে।
Vim একটি শক্তিশালী এবং দ্রুতগতির এডিটর যা প্রাথমিকভাবে কঠিন মনে হতে পারে, কিন্তু একবার অভ্যস্ত হয়ে গেলে এটি অনেক প্রয়োজনীয় ফিচার প্রদান করে।