شما برای مطالعه این مقاله فقط 9 دقیقه وقت نیاز دارید

vim-command
دسته بندی : آموزش لینوکس vim

vim چیست؟ نصب ادیتور vim در لینوکس+دستورات کاربردی

5/5 - (1 امتیاز)

فرقی نمی کند که کاربر ویندوز هستید یا لینوکس و مک. شما به ویرایشگرهای متنی نیاز دارید که موقع دستکاری فایل های متنی در کنار شما باشند. مخصوصا که اگر در حوزه برنامه نویسی فعالیت می کنید، حتما باید یک همراه ویرایشگر داشته باشید تا تسک های خود را با سرعت و کیفیت بالاتری جلو ببرید. اینجاست که ویرایشگر متن vim،” همراه بی قید و شرط کاربران لینوکس” وارد عمل می شود.

vim یک ویرایشگر پیشرفته است که برای افزایش کارایی و سرعت ادیت های متنی توسعه یافته است. این ویرایشگر از انواع فایل ها پشتیبانی می کند و به خاطر کاربرد گسترده خود به عنوان ویرایشگر برنامه نویسی هم شناخته می شود.

پس برنامه نویسانی که از سیستم یا سرور لینوکس استفاده می کنند، به راحتی می توانند به ویرایشگر vim اعتماد کنند. اگر هم تصمیم گرفتید با خرید سرور مجازی لینوکس به وضعیت وبسایت یا سایر پروژه های خود سروسامان دهید، باز هم قادر به استفاده از این ویرایشگر هستید. دسترسی روت به سرور مجازی لینوکس این امکان را به شما می دهد که تمام فایل های سیستمی را در حین اجرای سیستم ویرایش یا تغییر دهید و چه انتخابی بهتر از vim!

البته ویرایشگر vim رقبای قدرتمندی مثل nano هم دارد که در مقاله نصب nano در لینوکس در مورد آن هم صحبت کرده ایم ولی الان دور دور vim است پس بیایید این ویرایشگر متنی فوق العاده و امکانات آن را بررسی کنیم:

ویرایشگر vim چیست؟

ویرایشگر متنی vim نسخه توسعه یافته vi است که به خاطر امکانات پیشرفته خود به یکی از محبوب ترین ویراشگرهای ترمینال لینوکس تبدیل شده است. 

قابلیت های جذابی مثل باز کردن چند پنجره به صورت همزمان، هایلایت سینتکس، دستورات ساده و کوتاه و … باعث شده اند که این ویرایشگر موردتوجه اکثر کاربران لینوکسی مخصوصا برنامه نویسان قرار بگیرد.

کارایی عالی این ویرایشگر زمانی مشخص می شود که متوجه می شوید برای کار کردن با آن نیازی به ماوس و منو ندارید و کارتان با کیبورد و دکمه های کنترلی خود ویرایشگر حل می شود. 

البته جا دارد به این نکته هم اشاره کنیم که ویرایشگر متن vim علاوه بر لینوکس در سیستم های BSD و macOS هم قابل استفاده است. 

یک ابزار سبک و همه کاره که در همه جا حاضر است و در عین سادگی، مقیاس پذیری بالایی هم دارد. دستورات ویرایشگر vim این امکان را به شما می دهند که با چند دستور ساده و مخصوص، کارهای پیچیده مرتبط با متن را در عرض چند ثانیه انجام دهید.

پس تا الان متوجه شدید که ارزش دارد حداقل برای یک بار هم که شده طعم vim را بچشید و ببینید که چگونه از پس ادیت فایل های متنی شما برمی آید.

ویرایشگر متن vim چگونه کار می کند؟

این دستور در 3 حالت کار می کند. 

حالت Command

حالت Command، حالت پیش فرض vim است و وقتی برای اولین بار شروع به استفاده از این ویرایشگر می کنید، در حالت Command قرار دارد.

این حالت به شما کمک می کند که متن را کپی، الصاق، حذف یا جابه جا کنید. به این صورت که وقتی می خواهید با استفاده از دکمه های کنترلی با فایل متنی موردنظر تعامل برقرار کنید، کاراکترهای کیبورد در متن درج نمی شوند. بلکه به عنوان تکه های از یک دستور کل کنار هم قرار می گیرند و بعد از تکمیل و اینتر، اجرا می شوند. 

مثلا با وارد کردن کاراکتر j، هیچ حرف “j” در داخل متن درج نمی شود، بلکه اشاره گر یک خط به سمت پایین می رود. یا با dd، عبارت dd در متن درج نمی شود، بلکه خطی که اشاره گر در آن قرار دارد، به طور کامل حذف می شود.

حالت insert

برای اینکه بتوانید متنی را به فایل موردنظر اضافه کنید، باید در حالت درج یا insert قرار داشته باشید. اگر در حالت Command قرار دارید و میخواهید وارد حالت insert شوید، تنها کاری که باید انجام دهید این است که حرف i را وارد کنید. 

همچنین برای خارج شدن از این حالت و رفتن به حالت خط فرمان هم باید کلید Escape را فشار دهید.

حالت بصری

این حالت برای انتخاب و برجسته سازی متن استفاده ی شود. به این صورت که می توانید یک کاراکتر یا خط کامل از یک متن را انتخاب کنید و سپس با تغییر مکان اشاره گر، هایلایت خود گسترش دهید. برای وارد شدن به این حالت، کافیست کلید v را وارد کنید.

اگر این موارد کمی برای شما گیج کننده هستند، اصلا جای نگرانی نیست. ما اینجاییم تا علاوه بر نحوه نصب، نحوه استفاده از ویرایشگر متنی را هم به شما آموزش دهیم تا از قدرت و سرعت این ویرایشگر نهایت لذت را ببرید.

نحوه نصب ویرایشگر vim در لینوکس

برای شروع استفاده از vim، اول باید مطمئن شوید که سیستم شما مجهز به این ابزار ویرایشی است یا نه. پس ترمینال خود را باز کنید و vim را تایپ کنید:

اگر این ابزار در سیستم شما وجود داشته باشید، باید با چنین خروجی مواجه شوید.بررسی وضعیت نصب vim

در غیر این صورت باید نسبت به نصب آن اقدام کنید. پس متناسب با نوع توزیع سیستم عامل لینوکسی که استفاده می کنید، یکی از دستورات زیر را اجرا کنید:

نصب ادیتور vim در Debian / Ubunto / Mint

sudo apt install vim

نصب ادیتور vim در RHEL / CentOS / Fedora

sudo dnf install vim

نصب ویرایشگر vim در Arch Linux / Manjaro

sudo pacman -S vim

نصب vim در OpenSuse

sudo zypper install vim

بعد از این که دستور نصب را اجرا کردید، نوبت این است که بررسی کنید این ویرایشگر با موفقیت نصب شده است یا نه. پس دستور زیر را اجرا کنید:

which vim

اگر همه چیز مرتب است، پس دیگر وقت آن است که استفاده از vim را شروع کنید.

نحوه استفاده از دستور vim در لینوکس

سینتکس کلی ابزار vim به صورت زیر است:

vim file-name

برای اینکه اسم فایل موردنظر برای vim قابل شناسایی باشد، حتما باید با دستور cd در مسیر فایل موردنظر قرار بگیرید و بعد vim را همراه اسم فایل اجرا کنید.

یا اینکه به جای اسم فایل، مسیر فایل را به جای file-name قرار دهید:

vim Documents/index.html

این دستورات، محتویات متن داخل فایل موردنظر را به شما نشان می دهند.

فرض کنید که تازه اول کار هستید و می خواهید متن موردنظر را به فایل اضافه کنید. گفتیم که vim به طور پیش فرض در حالت خط فرمان قرار دارد. پس برای اینکه در حالت درج قرار بگیریم، حرف i را وارد کنید.بعد می توانید شروع به نوشتن کنید.

حالت درج vim

بعد از اینکه کارتان تمام شد، ابتدا باید فشردن کلید Esc از حالت درج خارج شوید و در حالت خط فرمان قرار بگیرید. بعد عبارت ترکیبی زیر را وارد کنید و اینتر را بزنید تا این تغییرات ذخیره شده و فایل بسته شود.

:wq!

یا اگر از این تغییرات منصرف شده اید و تمایلی به ذخیره آن ندارید می توانید از عبارت ترکیبی زیر استفاده کنید:

:q!

آپشن های حالت Command

حالت خط فرمان آپشن های زیادی را در اختیار شما قرار می دهد که با استفاده از آنها می توانید کارهای خود را با سرعت بیشتری انجام دهید. برای اجرای همه این آپشن ها، اول باید در حالت Command قرار بگیرید تا این دستورات قابل شناسایی باشند.

کلیک کنید  نصب دستور nmap‌ در لینوکس اوبونتو،دبیان،centos و فدورا

* توجه داشته باشید که برای وارد کردن دستورات در ادیتور vim، قبل از هر کدام از آنها باید یک “:” وارد کنید.

دسترسی به بخش Help

اول از همه بهتر است نگاهی به دستورات و داکیومنتیشن vim بیاندازید تا یک آشنایی کلی با این ادیتور داشته باشید.

help

اگر آپشن یا دستور خاصی را مدنظر دارید و می خواهید به راهنمایی های مربوط به آن دسترسی پیدا کنید، می توانید دستور help را به صورت زیر اجرا کنید. به عنوان مثال، اگر می خواهید بدانید که چگونه باید از دستور copy استفاده کنید. می توانید از دستور زیر کمک بگیرید:

help copy

این دستور، تمام اطلاعات و دستورالعمل هایی که با کلمه copy مرتبط هستند را برای شما نمایش می دهد.

دستورات حرکت اشاره گر

در حالت خط فرمان ویرایشگر متنی vim، اشاره گر یا همان مکان نما با کیبورد کنترل می شود و ماوس یا تاچ پد هیچ عملکردی از خود نشان نمی دهد. 

جدول زیر شامل بعضی از دستورات کار با اشاره گر است که البته برای این کار می توانید از دکمه های جهت دار کیبورد هم استفاده کنید:

دستورکاربرد
kحرکت به سمت بالا
jحرکت به سمت پایین
hحرکت به سمت راست
lحرکت به سمت چپ
Iجا به جایی اشاره گر به موقعیت مناسب
Mحرکت به سمت مرکز صفحه
Hحرکت مستقیم به سمت خط اول متن
Lحرکت مستقیم به سمت خط آخر متن
eقرار دادن اشاره گرد در انتهای کلمه فعلی
Gقرار دادن اشاره گر در انتهای فایل
ggقرار دادن اشاره گر در ابتدای فایل
0قرار دادن اشاره گر در ابتدای خط
$قرار دادن اشاره گر در انتهای خط
#رفتن به خطی که شماره آن بعد از # قرار دارد.

دستورات کپی و الصاق متن

ویرایشگر vim، دستور copy را با yank می شناسد. به همین خاطر است که ابتدای دستور کپی حرف y اضافه می شود. 

yY: کپی خط فعلی

yw: کپی کلمه فعلی

$y: کپی متن از محل اشاره گر تا انتهای خط فعلی

برای اینکه متن کپی شده را الصاق کنید، باید از P استفاده کنید. 

دستورات Undo و Redo

اگر کاری را ناخواسته یا اشتباه انجام داده اید، می توانید با وارد کردن دستور u آن را به عقب برگردانید. برای بازگشت به حالت بعدی هم می توانید از r استفاده کنید.

دستورات حذف 

با اینکه شاید حذف کلمه زیر اشاره گر از پرکاربردترین دستورات حذفی باشد ولی دستورات دیگری هم هستند که می توانند کارها را برای شما راحت تر کنند.

x: حذف کلمه زیر اشاره گر

D: حذف خط از موقعیت اشاره گر تا انتهای خط 

dgg: حذف محتوای فایل از موقعیت اشاره گر تا انتهای فایل

d: حذف بخش مشخص شده توسط شما

دستورات جستجو

دستوراتی هم وجود دارند که برای جستجو در فایل و پیدا کردن کلمات خاص در داخل متن استفاده می شوند.

text/: جستجو کلمه موردنظر. کلمه را به جای text قرار دهید.

n: رفتن به نتیجه جستجوی بعدی

N: رفتن به نتیجه جستجوی قبلی

s/searchword/replaceword: جستجوی کلمه و جایگزینی آن با کلمه دیگر

نمایش شماره ها در کنار خطوط

دستورات زیر با اضافه کردن شماره خطوط به شما کمک می کند که خط موردنظر برای ادیت یا حذف را راحت تر پیدا کنید:

set number
set nu! 
set number!

برای غیرفعال سازی این ویژگی هم می توانید از دستور زیر استفاده کنید:

set nonumber

دستور بررسی تعداد کلمه

اگر می خواهید از تعداد کلمات فایل متنی خود مطلع شوید، می توانید یکی از دو روش زیر را امتحان کنید:

۱. اول کلید g و بعد دکمه ترکیبی CTRL+G را فشار دهید.

۲. دستور زیر را اجرا کنید:

:w !wc –w

دستور ذخیره فایل و خروج از ویرایشگر

حالت های زیادی وجود دارد که می توانید برای ذخیره یا خروج در نظر بگیرید.

خروج از ویرایشگر بدون ذخیره سازی تغییرات

qa یا q!

خروج از ویرایشگر با ذخیره سازی تغییرات

wq

ذخیره فایل

w

ذخیره فایل به همراه تغییر اسم فایل 

w [file name]

دستور مقایسه فایل ها

برای اینکه دو فایل را مقایسه کنید و تفاوت های بین آنها را ببینید، می توانید از دستور زیر استفاده کنید:

vimdiff file1 file2

نحوه پیکربندی ویرایشگر vim در لینوکس

اگر می خواهید مستقیما با فایل پیکربندی این ویرایشگر سروکار داشته باشید و هر تغییری که خواستید را در آن اعمال کنید، می توانید با دستور زیر این فایل را باز کنید:

vim ~/.vimrc

بعد از این دستور، می توانید پیکربندی موردنظر خود را در این فایل قرار دهید.

به عنوان مثال برای نمایش شماره خطوط، دستور زیر را در فایل قرار دهید:

set number

یا اگر می خواهید ویژگی هایلایت سینتکس را فعال کنید، دستور زیر را هم در فایل لحاظ کنید:

syntax on

یا اگر رنگ خاصی را برای طرح vim در نظر گرفته اید و می خواهید آن را از حالت کسل کننده دربیاورید، می توانید از دستور زیر استفاده کنید:

colorscheme COLOR_SCHEME_NAME

این بستگی به شما دارد که COLOR_SCHEME_NAME را با چه طرح و رنگی جایگزین کنید. blue ،desert ،evening، peachpuff و shine از جمله طرح های محبوب برای vim هستند.

دستور تغییر رنگ محیط vim

رنگ آبی محیط

البته برای ایجاد چنین تغییراتی می توانید از دستورات هم استفاده کنید. مثلا دستورات زیر به ترتیب برای تغییر فونت و رنگ ویرایشگر استفاده می شوند.

set guifont = courier
colorscheme color

حتی اگر می خواهید علائم نگارشی متن هم چک شود، می توانید از دستور زیر استفاده کنید:

set spell

اگر زبان خاصی را مدنظر دارید و دوست دارید که علائم نگارشی مرتبط با آن زبان چک شوند، از دستور زیر استفاده کنید:

set spelllang = <language>

مزایا و معایب vim

مزایامعایب
سازگاری با انواع توزیع های لینوکسنیاز به تلاش زیاد برای شخصی سازی
دارای دو حالت ترمینال و گرافیکپشتیبانی ضعیف از ابزارهای خارجی
نیاز به منابع کمقابلیت کشف ویژگی ضعیف
پشتیبانی از ویژگی چند تبی و چند فایلیمکانیسم نسبتا سخت برای کپی و الصاق متن
امکان شخصی سازی
پشتیبانی از اکثر زبان های برنامه نویسی
امکان یادگیری سریع و آسان

6 پلاگین عالی برای vim

افزونه های زیادی وجود دارند که می توانند به ارتقا قابلیت ها و کارایی ویرایشگر vim کمک کنند. سازگاری بالای این ویرایشگر با افزونه ها باعث شده است که به چیزی فراتر از یک ویرایشگر ساده تبدیل شود. در ادامه به چند مورد از افزونه های رایگان برای vim اشاره می کنیم:

DumpX برای پیاده سازی کدهای C و C++ استفاده می شود.

Pathogen به عنوان مدیر بسته برای vim استفاده می شود.

NERDTree، فایل منیجری است که برای اجرای فایل ها و فولدرهای مختلف استفاده می شود.

NERD Commenter برای حفظ زیبایی ظاهر کدها و کامنت ها مفید است.

Vim-colors-solarized به عنوان یک تم محبوب برای توسعه دهندگان شناخته می شود.

Syntastic، سینتکس کدهای موجود در فایل را بررسی می کند و خطاها را نمایش می دهد. این افزونه از اکثر زبان های برنامه نویسی پیشتیبانی می کند.

کلام آخر

vim، یکی از پرکاربردترین ویرایشگر های متنی است که در تمام توزیع های لینوکس قابل استفاده است. دستورات و قابلیت های این ویرایشگر باعث شده است که vim به یک همراه قابل اعتماد برای کاربران معمولی تا حرفه ای تبدیل شود. همچنین، با استفاده از پلاگین های پیشرفته این ویرایشگر هم می توانید پتانسیل آن را به درجه دلخواه خود برسانید.

از اینکه تا انتهای مقاله با ما همراه بودید، از شما متشکریم. امیدواریم که مطالعه این مقاله برای شما مفید واقع شده باشد. در صورت داشتن هرگونه سوال، درخواست و نیاز به راهنمایی، می توانید با ثبت نظر خود، با ما وارد ارتباط شوید تا هر چه زودتر به شما پاسخ دهیم.

سوالات متداول:

این حالت برای وارد کردن متن است و برای استفاده از دستورات ارائه شده در مقاله، باید در حالت command قرار بگیرید و اول همه دستورات یک : اضافه کنید.

مطالب مشابهی که شاید علاقمند باشید

من زهرا پیرجانی دانشجوی رشته نرم افزار هستم. علاقه ای که به یادگیری مطالب جدید دارم باعث شد که انگیزم برای فعالیت در حوزه تولیدمحتوا بیشتر شود. تمام تلاشم این است که با درک کامل موضوع، محتوایی ساده و کامل تهیه کنم که برای همه علاقمندان مفید و کاربردی باشد. یادگیری مطالب جدید و آموزش اونها به بقیه، بهترین کاری هست که می توانم برای رشد خودم و همچنین کمک به رشد علاقمندان به مباحث مورنظر انجام بدم.

دیدگاه های شما

برای دریافت این مقاله لطفا ایمیلتان را وارد کنید

می توانید مقاله را دانلود کنید یا پرینت بگیرید