در اکثر توزیعهای سیستم عامل لینوکس، ویرایشگر پیشفرض nano است. اما در برخی از توزیعات لینوکسی از ویرایشگر Vim استفاده شده است. تفاوتهای فاحش vim با nano باعث شده که این مقاله را تهیه کنیم. از مهمترین تفاوتهایی که میتوان بین این دو ویرایشگر برشمرد این است که این ویرایشگر برای یک شخص مبتدی بسیار پیچیده است اما نانو برای اشخاص مبتدی بوده کار با آن ساده است. دیگر اینکه ویم از زبان های برنامه نویسی نیز پشتیبانی میکند اما نانو مانند notepad ویندوز یک تکست ادیتور ساده است. با این دو تفاوت میتوان فهمید که ویم یک ویرایشگر حرفهای است. به طوری که اگر کار با این ادیتور را ندانید و به اتفاق داخل این ادیتور بیفتید خارج شدن از این ادیتور بسیار برای شما مشکل میشود! پس برای استفاده حرفهای از ویرایشگر ویم با ما در این مقاله همراه باشید.
vim Mode یا حالتهای ویم
برای اینکه بتوانید با ویم کار کنید نیاز است تا دو حالت insert mode و command mode را درک کنید. در حالت پیشفرض که شما وارد این ویرایشگر میشوید حالت command mode برای شما فعال است و شما میتوانید در این حالت دستورات خود را برای ادیت متن وارد نمایید اما حالت insert mode حالتی است که شما میتوانید در آن بنویسید.
دستورات ویم
دقت داشته باشید که این دستورات در حالت command mode کار میکند.
دستورات | توضیحات |
i | شما با این دستور به حالت insert mode میروید و میتوانید متن مدنظر خود را بنویسید. |
x, X | شما با این دستور میتوانید هر کارکتر را از جلو و یا از عقب پاک نمایید. |
o, O | هرجایی از متن باشید با این دستور یک خط جدید برای شما در بالای یا پایین ایجاد میکند و به حالت insert mode نیز میرود. |
J | اگر بخواهید خط بعدی را به خطی که هستید متصل کنید این حرف به کار شما میآید. |
r | هرجایی باشید با این دستور میتوانید به همراه کارکتر بعد از آن جایگزاری کنید. |
A | به سرخط میرود و به حالت insert mode رفته میتوانید تایپ کنید. |
a | هرجایی که باشید به حالت insert mode رفته و میتوانید تایپ کنید. |
u | تغییراتی را که انجام دادید را به حالت قبل برمیگرداند. |
dw | هرجایی باشید از آنجا تا آخر همان کلمه را حذف میکند. |
dd | خطی که در آن قرار دارید را به کل پاک میکند. |
G | رفتن به آخرین خط یک متن. |
gg | رفتن به اولین خط متن. |
yy | کپی کردن یک خط |
p | جایگزاری متن کپی شده. |
/ | جستجو کردن در میان متن. |
n | این مربوط به دستور قبلی میشود و مواردی بعدی جستجو را نمایش میدهد. |
^ | رفتن به اول خطی که در آن هستید. |
$ | رفتن به آخر خطی که هستید. |