Vim چیست و چه کاربردی دارد؟
Vim، مخفف «Vi IMproved»، نوعی ویرایشگر متن منبع باز بوده که توسط Bram Moolenaar ایجاد شده است. این ویرایشگر متن در ابتدا در سال 1991 برای انواع سیستمعامل یونیکس منتشر شد، هدف اصلی Vim بهبود و گسترش عملکرد ویرایشگر Vi بود که در سال 1976 ایجاد شد. برخلاف سایر ویرایشگرهای متن قبل از خود، Vim پشتیبانی جامعی از رابطهای مبتنی بر متن و گرافیکی ارائه میدهد و آن را در پلتفرمهای مختلف قابلدسترسی میسازد. در این مطلب از مجله مکتوب در رابطه با اینکه vim editor چیست، چه کاربردی دارد و چگونه باید از آن استفاده کنیم اطلاعات مفیدی ارائه خواهیم کرد.
Vim چیست؟
Vim نوعی ویرایشگر متن همهکاره و قدرتمند است که عمدتاً در سیستمهای مبتنی بر یونیکس مانند لینوکس، BSD و macOS استفاده میشود. این ویرایشگر به سرعت و کارایی شهرت دارد و تا حدی به دلیل ماهیت سبک وزن آن است که آن را قادر میسازد در محیط ترمینال بهراحتی کار کند.
در حالی که Vim یک رابط گرافیکی نیز ارائه میدهد، قدرت Vim در توانایی متنی آن است که به طور کامل از طریق دستورات صفحهکلید کنترل میشود و نیازی به منوها یا ماوس را از بین میبرد. اما vim مخفف چیست؟ Vim، مخفف Vi Improved بوده و همانطور که گفته شده نوعی text editor یا کد ادیتور متنی است.
پیشنهاد مطالعه: تفاوت کامپایلر و مفسر چیست؟
دلیل استفاده از Vim چیست؟
در پاسخ به سؤال اینکه دلیل استفاده از Vim چیست میتوان فهرست دلایل زیر را نام برد:
- ویرایشگر پیشفرض: Vim به طور گسترده در بسیاری از سیستمها در دسترس و از پیش نصب شده است، به این معنی که میتوانید بدون نیاز به یادگیری ویرایشگر جدید، بین ماشینهای مختلف جابهجا شوید.
- مقیاسپذیری: Vim میتواند برای اهداف مختلفی استفاده شود، از ویرایش فایلهای پیکربندی ساده گرفته تا ابزاری جامع برای نوشتن اسناد یا کدهای پیچیده.
- مصرف حافظه کم: Vim علیرغم ویژگیهای قدرتمندی که دارد، کمترین تأثیر را بر منابع سیستم دارد و آن را به انتخابی کارآمد، بهویژه برای ماشینهای قدیمی یا با محدودیت منابع تبدیل میکند.
- رویکرد فرماندهی محور: طراحی فرمان محور Vim به شما اجازه میدهد تا کارهای پیچیده دستکاری متن را تنها با چند دستور خوب انجام دهید. هنگامی که با مجموعه دستورات آن آشنا شدید، میتوانید به کارایی قابلتوجهی در ویرایش گردش کار دست یابید.
- قابلیت سفارشیسازی: ادیتور ویم پیکربندی گستردهای را ارائه داده و به کاربران امکان میدهد ویرایشگر را مطابق با نیازهای خاص خود تنظیم کنند. این ویرایشگر از فایلهای متنی ساده برای ذخیره تنظیمات استفاده کرده و سفارشیسازی را ساده و در دسترس میکند.
با پذیرش Vim، به یک محیط ویرایش متن فراگیر، مقیاسپذیر، منبع پسند، دستور محور و بسیار قابل تنظیم دسترسی پیدا میکنید که میتواند بهرهوری و کارایی شما را در کارهای محاسباتی مختلف افزایش دهد.
Vim یک ویرایشگر متن پرکاربرد و ویرایشگر پیشفرض در سیستمهای POSIX است. در محیطهای مختلف، از جمله سیستمعاملهای تازه نصبشده، حداقل محیطهای تعمیر سیستم، یا شرایطی که ویرایشگرهای دیگر غیرقابلدسترسی هستند، در دسترس است. در حالی که ویرایشگرهای جایگزین مانند GNU Nano یا Jove را میتوان جایگزین کرد، Vim تقریباً به طور جهانی در سیستمهای سراسر جهان وجود دارد.
یکی از جنبههای قانعکننده Vim سطح بالای سفارشیسازی آن است که به شما امکان میدهد آن را مطابق با سبک برنامهنویسی و ترجیحات خود تنظیم کنید. حال با اینکه با Vim چیست و دلایل استفاده از آن آشنا شدیم در ادامه به بررسی دستوار Vim خواهیم پرداخت.
پیشنهاد مطالعه: کوبرنتیز چیست و هرآنچه که باید در مورد آن بدانید
دستورات Vim
دستور Vim چیست؟ دستور Vim به دستورات (command) متنی در ترمینال سیستمعامل گفته میشود که در محیط Vim قابل اجرا بوده و موجب انجام عملی از سوی سیستم میشود. در ادامه مهمترین دستورات Vim و کاربرد آنها تشریح شده است.
[box type=”note” align=”” class=”” width=””]دوره پیشنهادی: آموزش سیستم ادمین با لینوکس[/box]
دستورات حرکت مکان نما
ویرایشگر Vim دستورات حرکتی بصری را ارائه میدهد که از مهمترین آنها میتوان فهرست دستورات زیر را نام برد:
- «hjkl» به شما امکان میدهد به ترتیب به سمت چپ، پایین، بالا و راست حرکت کنید.
- «7j» مکاننما را هفت خط به پایین میبرد.
- «w» آن را یک کلمه به جلو میبرد.
- «ctrl + f» یک صفحه را به پایین میبرد.
- «ctrl + b» یک صفحه را به بالا، «gg» به بالای صفحه میرود.
- «G» به پایین حرکت میکند.
دستورات حذف Vim
Vim دستورات حذف قدرتمندی را ارائه میدهد که مهمترین آنها به صورت موارد زیر هستند:
- «dw» یک کلمه را حذف میکند.
- «d6w» شش کلمه را حذف میکند.
- «dt» همه چیز را تا «>» بعدی حذف میکند.
- «di» همهچیزهایی را که در داخل کروشه قرار دارند.
- «dd» خط فعلی را حذف میکند
- « 4dd» چهار خط را حذف میکند.
ویرایش دستورات Vim
Vim دستوراتی را برای ویرایش کارآمد ارائه میدهد که از مهمترین این دستورات میتوان موارد زیر را نام برد:
- «yy» خط فعلی را قطع میکند (کپی میکند).
- «cc» تغییر میدهد (حذف میکند و وارد حالت درج میشود) خط فعلی را تغییر میدهد.
- «cap» کل پاراگراف را تغییر میدهد.
- «.» آخرین دستور را تکرار میکند.
پیشنهاد مطالعه: ١٥ تا از پردرآمدترین زبان های برنامه نویسی دنیا در ٢٠٢٣
دستورات دستکاری متن در Vim
مجموعه دستورات Vim شامل دستورات مختلف دستکاری متن است که از مهمترین آنها میتوان موارد زیر را نام برد:
- «f» اولین وقوع یک نقلقول را پیدا میکند
- «f’ci’hello» تک نقلقول بعدی را پیدا میکند و همه چیز داخل آن را به “hello” تغییر میدهد.
این نمونهها تنها چند تا از مجموعه دستورات گسترده Vim هستند. با استفاده از کلیدهای استاندارد مانند «d» برای حذف، «c» برای تغییر و «f» برای یافتن، جفت شده با اعداد برای تکرار اقدامات، میتوانید به کدنویسی سریع دست پیدا کنید. برای اینکه بهتر بفهمید دستور Vim چیست و چگونه باید با آن کار کرد بهتر است که به صورت عملی دستبهکار شوید.
[box type=”note” align=”” class=”” width=””]دوره پیشنهادی: آموزش RedHat و اصول لینوکس[/box]
نحوه استفاده از Vim
حال با اینکه Vim چیست و دستورات آنچه هستند آشنا شدیم نوبت به بررسی نحوه استفاده از آن است. استفاده از Vim امکان دارد در ابتدا چالشبرانگیز به نظر برسد، اما قطعاً اینطوری نیست. علیرغم تصور اغراقآمیز در مورد منحنی یادگیری شیبدار Vim کمی تمرین و تکرار شما را به تسلط به این ویرایشگر میرساند.
برای شروع کار با Vim باید مراحل زیر طی کرد:
- نصب Vim: برای کاربران لینوکس، بسته به مدیر بسته خود، میتوانید Vim را با اجرای «sudo apt-get install vim» یا «pacman -S vim» نصب کنید. پس از نصب، ترمینال خود را باز کنید و «vim <filename>» را تایپ کنید تا یک فایل در Vim باز شود.
- پیمایش و ویرایش: وقتی یک فایل را در Vim باز میکنید در حالت عادی خواهید بود. برای ورود به حالت درج و شروع به تایپ کردن، کلید «i» را فشار دهید. سپس میتوانید متن مورد نظر خود را وارد کنید.
- ذخیره و خروج: برای ذخیره تغییرات و خروج از Vim، کلید Esc را فشار دهید تا به حالت عادی برگردید. سپس : «wq» را تایپ کرده و «Enter» را فشار دهید. این دستور فایل (`:w`) را ذخیره میکند و از Vim (`:q`) خارج میشود. اگر میخواهید بدون ذخیره کردن کار را ترک کنید، میتوانید از : «q!» استفاده کنید.
مهم است که از ظاهر اولیه Vim دلسرد نشوید چون کار با آن آسان است. به یاد داشته باشید، سفر یادگیری Vim شامل صبر و تمرین است. همانطور که با ویژگیها و دستورات آن بیشتر آشنا میشوید، به قدرت و کارایی آن در ویرایش وظایف پی خواهید برد. برای آشنایی بهتر با اینکه Vim چیست و چگونه کار میکند بهتر است که همینالان دستبهکار شوید و از آن به صورت عملی استفاده کنید.
پیشنهاد مطالعه: معرفی بهترین ویرایشگر کد برای اندروید
نحوه پیکربندی Vim
برای پیکربندی Vim، میتوانید از فایل «.vimrc» استفاده کنید که معمولاً در پوشه اصلی سیستمعامل شما قرار دارد. در اینجا نحوه پیکربندی Vim آورده شده است:
- باز کردن فایل «vimrc.»: یک ترمینال را راهاندازی کرده و «vim ~/.vimrc» را تایپ کنید تا فایل «vimrc.» با استفاده از خود Vim باز شود. این به شما امکان میدهد با استفاده از Vim تغییرات پیکربندی را انجام دهید.
- سفارشی کردن صفحهکلیدها و تنظیمات: در داخل فایل `«vimrc.»، میتوانید کلیدهای دلخواه خود را تعریف کنید، تمها را تنظیم کرده و تنظیمات مختلف را پیکربندی کنید. به عنوان مثال، میتوانید یک صفحهکلید سفارشی با استفاده از قالب زیر ایجاد کنید: «map <C-n>:NERDTreeToggle<CR>». این ترکیب کلید «<C-n>» را برای جابجایی افزونه NERDTree ترسیم میکند.
- مدیریت پلاگینها: برای بهبود عملکرد Vim، میتوانید افزونهها را نصب کنید. برای نصب و مدیریت آسان توصیه میشود از یک مدیر پلاگین استفاده کنید. نرمافزارهای مدیریت پلاگین محبوب عبارتاند از: vim-pathogen، Vundle.vim و Vim-plug. هر ابزار مدیریت پلاگین دستورالعملهای نصب و استفاده خاص خود را دارد که در مخازن مربوطه خود موجود است.
- سازماندهی پلاگینها: میتوانید یک فایل جداگانه مانند «plugins.vim» ایجاد کنید تا افزونههای خود را فهرست کرده و مدیریت کنید. در فایل «vimrc.» خود، خط «source ~/.vim/plugin/plugins.vim» را در بالا اضافه کنید تا فایل افزونه را نیز شامل شود. در داخل «plugins.vim»، میتوانید افزونههای مختلفی را با استفاده از مدیر پلاگین نصب کنید؛ مثلا:
call plug#begin('~/.vim/plugged')
Plug 'scrooloose/nerdtree'
Plug 'moll/vim-node'
Plug 'yegappan/mru'
call plug#end()
در این مثال، مدیر پلاگین «vim-plug» برای نصب سه پلاگین استفاده میشود: NERDTree، vim-node و mru. لیست افزونهها را مطابق با نیاز خود تنظیم کنید.
- نصب افزونهها: پس از ایجاد تغییرات در فایل «vimrc.» خود، آن را با خروج از Vim و باز کردن مجدد آن یا استفاده از دستور `:source ~/.vimrc` در Vim مجدداً بارگیری کنید. برای نصب افزونههای مشخص شده در «vimrc.» خود، از دستور `:PlugInstall` استفاده کنید. با این کار افزونههای مشخص شده توسط مدیر پلاگین شما واکشی و نصب میشود.
با دنبال کردن این مراحل، میتوانید Vim را مطابق میل خود پیکربندی کنید، صفحهکلیدها را سفارشی کرده، افزونهها را نصب و تجربه ویرایش خود را متناسبتر و کارآمدتر کنید.
پیشنهاد مطالعه: آشنایی با اصول SOLID در برنامه نویسی
افزونه Vim چیست؟
قدرت Vim با افزونههای متعدد ایجاد شده توسط جامعه منبع باز بیشتر تقویت میشود اما افزونه Vim چیست؟ افزونه Vim نوعی ابزار کمکی و کاربردی است که میتواند به Vim کمک کند که کارآمدتر و بهتر کار کند. در ادامه فهرستی از مهمترین افزونههای Vim آورده شده است:
- scrooloose/nerdtree: درخت کاوشگر فایل که به شما امکان میدهد فایلهای پروژه خود را پیمایش و مدیریت کنید.
- alvan/vim-closetag: به طور خودکار تگهای HTML و XML را هنگام تایپ میبندد.
- vim-scripts/vim-auto-save: به طور خودکار تغییرات شما را در فواصل زمانی منظم ذخیره میکند.
- airblade/vim-gitgutter: علائم git diff را در ناحیه ناودان نشان میدهد که خطوط اضافه، اصلاح شده و حذف شده را نشان میدهد.
- ervandew/supertab: تکمیل برگه را برای نوشتن کد سریعتر بهبود میبخشد.
- vim-airline/vim-airline: یک خط وضعیت که اطلاعات مختلفی را در مورد جلسه ویرایش شما نمایش میدهد.
- SirVer/ultisnips: برای تسریع روند کار کدنویسی شما، از بسطهای قطعه پشتیبانی میکند.
- honza/vim-snippets: مجموعهای از اسنیپتها برای زبانهای برنامهنویسی مختلف و انواع فایلها.
- dense-analysis/ale: یک لینتر ناهمزمان قدرتمند که کد شما را در زمان واقعی برای خطاها و هشدارها بررسی میکند.
- tpope/vim-repeat: عملکرد دستور “.” را برای تکرار اقدامات بیشتر گسترش میدهد.
- ap/vim-css-color: کدهای رنگ را در فایلهای CSS برجسته میکند و شناسایی و ویرایش رنگها را آسانتر میکند.
- jiangmiao/auto-pairs: بهطور خودکار پرانتزها، براکتها و نقلقولهای منطبق را هنگام تایپ درج میکند.
- tmhedberg/matchit: کلید «%» را برای پرش بین تگهای HTML/XML، پرانتز و موارد دیگر تقویت میکند.
- kana/vim-textobj-user: به شما امکان میدهد تا اشیاء متن سفارشی را برای انتخاب و دستکاری آسان تعریف کنید.
- vim-scripts/tComment: کامنت گذاشتن و برداشتن نظر خطوط کد یا بلوکها را آسان میکند.
- Valloric/YouCompleteMe: یک موتور تکمیل کد جامع که از چندین زبان برنامهنویسی پشتیبانی میکند.
- Prettier/vim-prettier: با فرمت کننده کد Prettier یکپارچه میشود تا به طور خودکار کد شما را قالببندی کند.
- jeffkreeftmeijer/vim-numbertoggle: شمارهگذاری خطوط را با یک کلید ترکیبی روشن و خاموش میکند.
- elzr/vim-json: برجستهسازی و تورفتگی نحوی JSON بهبود یافته را ارائه میدهد.
- tpope/vim-markdown: ویرایش Markdown را با ویژگیهایی مانند برجستهسازی نحو و میانبرها بهبود میبخشد.
- pangloss/vim-javascript: برجستهسازی نحو جاوا اسکریپت را بهبود میبخشد و ویژگیهای اضافی را ارائه میدهد.
- mxw/vim-jsx: پشتیبانی از برجستهسازی و تورفتگی نحوی JSX را اضافه میکند.
- jparise/vim-graphql: ویرایش GraphQL را با برجستهسازی نحو و تورفتگی بهبود میبخشد.
- leafgarland/typescript-vim: برجستهسازی نحو TypeScript را بهبود میبخشد و ویژگیهای خاص زبان را ارائه میدهد.
- vim-syntastic/syntastic: بررسی نحو و پشتیبانی از لینتینگ را برای انواع فایلهای مختلف ارائه میدهد.
- ntpeters/vim-better-whitespace: فضای خالی انتهایی را برجسته کرده و ابزارهایی برای مدیریت آن فراهم میکند.
این پلاگینها طیف گستردهای از عملکردها را پوشش میدهند و فقط گوشهای از اکوسیستم پلاگین گسترده موجود برای Vim هستند. با استفاده از این پلاگینها، میتوانید Vim را به یک محیط توسعه یکپارچه (IDE) غنی از ویژگیها و قدرتمند تبدیل کنید. به یاد داشته باشید که اسناد و گزینههای پیکربندی هر افزونه را بررسی کرده تا از قابلیتهای آنها نهایت استفاده را ببرید.
پیشنهاد مطالعه: آشنایی با اصول SOLID در برنامه نویسی
سخن پایانی
Vim، ویرایشگر متن قدرتمند و همهجا حاضر، با رویکرد دستور محور کارآمد خود، تجربه ویرایش منحصربهفردی را ارائه میدهد. با وجود منحنی یادگیری اولیه، تسلط بر Vim سرعت و بهرهوری بینظیری در کدنویسی به ارمغان میآورد. Vim با گزینههای سفارشیسازی گستردهاش، از جمله استفاده از افزونهها و کلیدهای شخصیسازیشده، میتواند متناسب با اولویتهای کدنویسی فردی طراحی شود.
یادگیری vim editor دنیایی از امکانات را به روی کاربران باز میکند، گردش کار کدنویسی را تغییر میدهد و امکان ویرایش متن کارآمد را فراهم میکند. توصیه میشود که سرعت و انعطاف بینظیر Vim را تجربه کرد و سطح جدیدی از مهارت کدنویسی را باز کنید. به امید اینکه مطلب فوق در رابطه با اینکه Vim چیست مورد رضایت شما واقع شده باشد. درک اینکه vim در لینوکس چیست و توانایی کار با آن توانایی بسیار جذاب و کاربردی است که برای کاربران فعال در حوزه فناوری اطلاعات اهمیت بالایی دارد.
آموزش لینوکس
برای یادگیری لینوکس و حرفهای شده در این سیستم عامل محبوب میتوانید از انواع دورههای آموزش لینوکس مکتب خونه استفاده کنید. هماکنون در مکتب خونه انواع دورههای لینوکس با رویکردهای مختلفی موجود است که شما را با این سیستم عامل از پایه تا پیشرفته آشنا میکند.
منبع: loginradius