Vim یک ویرایشگر متن (text editor) است که برای ویرایش و ایجاد متون متنی و کد برنامهنویسی استفاده میشود. Vim مخفف “Vi IMproved” است، به معنای بهبود یافته نسخهای ازVi که توسط Bram Moolenaar ایجاد شده است. در ادامه با این ویرایشگر به طور کامل آشنا می شویم.
معرفی ویرایشگر Vim
استفاده از Vim ممکن است برای کاربرانی که با ویرایشگرهای متنی معمولی آشنا هستند، چالش برانگیز باشد. اما با یادگیری دستورات اصلی و مفاهیم اساسی Vim، کاربران میتوانند به طور کلی تجربه مثبتی از این ویرایشگر کسب کنند.
ویژگیهای Vim عبارتند از:
- حالتهای مختلف: Vim دارای حالتهای مختلفی از جمله حالت ویرایش (insert mode)، حالت دستور (command mode)، و حالت انتخاب (visual mode) که به کاربر این امکان را میدهد تا به راحتی بین عملیات مختلف جابهجا شود.
- قابلیت های پیشرفته: Vim دارای دستورات پیشرفته و قدرتمندی است که اجازه میدهد به سرعت و به شیوههای متنوعی متنها را ویرایش کرده و تغییر دهید.
- گسترشپذیری: Vim از افزونهها (plugins) و اسکریپتهای مختلف پشتیبانی میکند و کاربران را قادر میسازد تا ویرایشگر خود را با توجه به نیازهای خاص خود گسترش دهند.
- قابلیت خودکارسازی: Vim دارای امکانات خودکارسازی و تنظیمات متنوعی است که به کاربر این امکان را میدهد تا ویرایشگر را به نحوهای که با سبک کاری خود سازگار باشد، تنظیم کند.
یکی از ویژگیهای جالب Vim، این است که از حرکات دستهای برای حرکت در متن استفاده میشود. این ویژگی به کاربر این امکان را میدهد که بدون استفاده از موس، با سرعت بیشتری در متن حرکت کند. این ویژگیها و ساختار متفاوت Vim آن را به یک ابزار قدرتمند برای برنامهنویسان و متننویسان تبدیل کرده و از آن به عنوان یکی از ویرایشگرهای متن محبوب در جهان برنامهنویسی یاد میشود.
قابلیتها و تنظیمات کد ادیتور VIM
Vim یک ویرایشگر متن با قابلیتها و تنظیمات بسیار زیاد است که به کاربران این امکان را میدهد تا تجربه ویرایش متن را به دلخواه خود تنظیم کنند. در زیر، برخی از قابلیتها و تنظیمات اصلی Vim آورده شده است.
- حرکات و ناوبری: Vim از حرکات مختلف مانند حرکات دستهای و حرکات جستجو (search) برای سرعت بخشیدن به فرایند ناوبری در متن استفاده میکند.
- جستجو و جایگزینی: Vim دارای دستورات جستجو و جایگزینی قدرتمندی است که به کاربر این امکان را میدهد تا متون را سریعاً جستجو کند و کلمات یا عبارات را جایگزین کند.
- تنظیمات پنجره و صفحه نمایش: Vim به کاربر امکان میدهد تا پنجرهها و صفحه نمایش را به دلخواه تنظیم کند. ازجمله این موارد تقسیم صفحه (split screen) و نمایش همزمان چند فایل است.
- پشتیبانی از افزونهها و پلاگینها: Vim قابلیت اضافه کردن افزونهها و توسعه دهندگان میتوانند ویژگیهای جدیدی را به آن اضافه کنند.
- مدیریت فایلها و پروژهها: Vim امکاناتی مانند امکان باز و بسته کردن فایلها، جستجوی پروژه برای مدیریت فایلها و پروژههای بزرگ فراهم میکند.
- قابلیت تنظیم و تخصیص دستورات: کاربران میتوانند تنظیمات و دستورات خود را با استفاده از فایل تنظیمات Vim (vimrc) سفارشیسازی کنند.
این موارد تنها بخشی از ویژگیها و تنظیمات Vim هستند. اینابزار به عنوان یک ابزار قدرتمند، انعطافپذیر و گسترده، امکانات بسیار زیادی برای ویرایش متن ارائه میدهد.
آموزش برنامه نویسی با VIM
آموزش برنامهنویسی با Vim ممکن است برای کسانی که با این ویرایشگر آشنایی ندارند، چالشبرانگیز باشد. اما یادگیری Vim میتواند به شما کمک کند که در محیطهای مختلف با متون و کدها به صورت موثرتری کار کنید. در زیر چند مرحله برای شروع آموزش برنامهنویسی با Vim آورده شده است.
- نصب Vim: ابتدا باید Vim را بر روی سیستم خود نصب کنید. در بسیاری از سیستمعاملها امکان نصب این ادیتور وجود دارد. به عنوان مثال، در سیستمعاملهای لینوکس، میتوانید از دستورات مربوطه به نصب Vim استفاده کنید.
- آشنایی با حالتها: Vim سه حالت اصلی دارد: حالت دستور (Command mode)، حالت ویرایش (Insert mode) و حالت انتخاب (Visual mode). در حالت دستور، شما میتوانید حرکت کنید و دستورات را وارد کنید. با فشردن i به حالت ویرایش میروید و میتوانید متن را ویرایش کنید. حالت انتخاب به شما این امکان را میدهد تا متن را انتخاب کرده و دستورات را بر روی آن اعمال کنید.
- حرکت در متن: یکی از مفاهیم اصلی Vim حرکت در متن با حرکات دستهای است. با استفاده از h، j، k، l میتوانید به ترتیب به چپ، پایین، بالا و راست حرکت کنید.
- ذخیره و خروج: در حالت دستور، با وارد کردن :w میتوانید فایل را ذخیره کنید و با :q میتوانید از Vim خارج شوید. برای ذخیره و خروج همزمان، میتوانید :wq را استفاده کنید.
- وارد کردن متن: در حالت ویرایش، میتوانید متن را وارد کرده و ویرایش کنید. برای خروج از حالت ویرایش به حالت دستور با فشردن Esc برمیگردید.
- جستجو و جایگزینی: برای جستجو از :/pattern استفاده کنید. برای جایگزینی از :s/pattern/replace استفاده میشود. از :%s/pattern/replace/g برای جایگزینی همه وقوعهای یک الگو در کل فایل استفاده میشود.
- پنجرهها و تقسیم صفحه: Vim امکان تقسیم صفحه را فراهم میکند. با :split یا :vsplit میتوانید صفحه را به صورت افقی یا عمودی تقسیم کنید.
- افزونهها و پلاگینها: Vim از افزونهها و پلاگینهای زیادی پشتیبانی میکند که به شما امکانات جدیدی ارائه میدهند. برخی از معروفترین پلاگینها شامل NERDTree، CtrlP، و YouCompleteMe هستند.
- یادگیری دستورات پیشرفته: به مرور زمان، با یادگیری دستورات پیشرفته مانند جستجوی پیشرفته، حرکات (motions) و عملیات بر روی خطوط (operations on lines)، میتوانید تسلط بیشتری بر Vim پیدا کنید.
همچنین، منابع آموزش Vim زیادی آنلاین وجود دارد که میتوانید از آنها برای بهبود مهارتهای خود در Vim استفاده کنید.
معرفی بهترین پلاگینهای VIM
همانطور که اشاره شد، Vim از افزونهها و پلاگینهای متعددی برای افزایش قابلیتها و امکانات خود پشتیبانی میکند. این پلاگینها میتوانند تجربه استفاده از Vim را بهبود بخشند. در زیر به برخی از بهترین و محبوبترین پلاگینهای Vim اشاره میشود.
NERDTree
-
- یک مدیر فایل بصری است که این امکان را به شما میدهد تا در ساختار فایلها و پوشهها حرکت کنید و فایلها را مدیریت کنید.
- لینک: NERDTree
CtrlP
-
- یک پلاگین مستقل برای جستجو و باز کردن فایلها و پوشهها است. با استفاده از متغیرهای فراوان، به سرعت به فایلها دسترسی پیدا میکنید.
- لینک: CtrlP
YouCompleteMe
-
- یک موتور تکمیل کد قدرتمند است که به شما کمک میکند تا با سرعت و بدون مشکلات کد بنویسید. پشتیبانی از زبانهای مختلف و امکانات پیشرفتهای دارد.
- لینک: YouCompleteMe
vim-airline
-
- یک نوار وضعیت زیبا و سبک برای Vim است که اطلاعات مفیدی را درباره وضعیت فعلی ویرایشگر به شما نمایش میدهد.
- لینک: vim-airline
Fugitive
-
- یک پلاگین Git برای Vim است که امکانات مدیریت نسخه Git را به شما میدهد و به شما این امکان را میدهد که با ابزارهای Git به صورت مستقیم در Vim کار کنید.
- لینک: Fugitive
Ale
-
- یک پلاگین است که به شما کمک میکند اشکالات نحوهای کد را در حین نوشتن پیدا کنید. از ابزارهای افزونههای مختلف برای انواع زبانها پشتیبانی میکند.
- لینک: Ale
Tagbar
-
- اطلاعات توابع، کلاسها و تگهای مختلف کد شما را در یک پنجره جدید نمایش میدهد. این پلاگین بر اساس اطلاعات تولید شده توسط ctags عمل میکند.
- لینک: Tagbar
این موارد چند نمونه از پلاگینهای Vim هستند که امکانات جدیدی برای بهبود تجربه Vim ارائه میدهند. هنگام استفاده از پلاگینها، مطمئن شوید با نسخه Vim شما سازگار هستند و همچنین از مخزنهای اصلی یا معتبر برای نصب آنها استفاده کنید.
ترفندها و کلیدهای میانبر برای استفاده بهتر از VIM
استفاده از Vim به ویژه برای کسانی که تازه با آن آشنا میشوند، ممکن است در ابتدا چالشبرانگیز باشد. اما با یادگیری ترفندها و کلیدهای میانبر، تجربه کار با Vim بهبود مییابد. در زیر تعدادی از ترفندها و کلیدهای میانبر مفید Vim آورده شده است.
تغییر حالت
-
- i: ورود به حالت ویرایش (Insert mode) پیش از موقع نشانگذاری
- I: ورود به حالت ویرایش از ابتدای خط
- a: ورود به حالت ویرایش پس از نشانگذاری
- A: ورود به حالت ویرایش از انتهای خط
حرکت در متن
-
- h, j, k, l: حرکت به ترتیب به چپ، پایین، بالا و راست
- w: حرکت به شروع کلمه بعدی
- b: حرکت به شروع کلمه قبلی
- e: حرکت به انتهای کلمه فعلی
- 0: حرکت به ابتدای خط
- $: حرکت به انتهای خط
حذف و ویرایش
-
- x: حذف نشانگذاری شده (یک حرف یا کاراکتر)
- dd: حذف یک خط کامل
- yy: کپی یک خط کامل
- p: چسباندن متن کپی شده یا حذف شده
جستجو و جایگزینی
-
- /: شروع جستجو
- n: رفتن به تطبیق بعدی در جستجو
- N: رفتن به تطبیق قبلی در جستجو
- :s/old/new/g: جایگزینی تمام تطابقها در یک خط
- :%s/old/new/g: جایگزینی تمام تطابقها در سراسر فایل
ذخیره و خروج
-
- :w: ذخیره تغییرات
- :q: خروج
- :wq یا :x: ذخیره و خروج
- :q!: خروج بدون ذخیره تغییرات
حالتهای خاص
-
- v: حالت انتخاب (برای انتخاب متن)
- V: حالت انتخاب خط (برای انتخاب خطوط)
- Ctrl + v: حالت انتخاب بلوک (برای انتخاب بلوکهای مستطیلی)
تغییر اندازه پنجرهها
-
- :split: تقسیم افقی صفحه
- :vsplit: تقسیم عمودی صفحه
- Ctrl + w + h, j, k, l: تغییر فوکوس به پنجرههای مختلف
عملیات بر روی چندین خط
-
- Ctrl + v: حالت انتخاب بلوک
- Shift + I: ورود به حالت ویرایش برای چند خط (سراسری)
- بعد از ورود به حالت ویرایش، متن خود را وارد کنید و با Esc ثبت کنید
استفاده از تگها
-
- Ctrl + ]: پرش به تگ
- Ctrl + T: بازگشت از تگ
این تنها چند نمونه از کلیدهای میانبر و ترفندهای Vim هستند. هرچند که Vim یادگیری نیازمند زمان و تمرین است، اما با پیشرفت تجربه شما از آن بهبود خواهد یافت.
سخن آخر
در این بخش با یکی از بهترین و حرفهایترین ویرایشگر کد و متن آشنا شدیم. با کمک این ویرایشگر میتوانید در زمان کوتاهی کدهای بسیار حرفهای و مرتب تولید کنید. استفاده از افزونهها نیز میتوان در شخصی سازی این ویرایشگر به شما کمک کند.
بوت کمپ برنامه نویسی مپصا اچ آر یکی از معتبرترین برگزار کنندگان دورههای آموزشی در زمینههای مختلف برنامه نویسی است. به کمک انی مجموعه میتوانید در زمان کم و به صورت فشرده مهارتهای برنامه نویسی را آموزش دیده و به بازار کار وارد شوید. برای دریافت اطلاعات بیشتر میتوانید با کارشناسان مجموعه تماس بگیرید.