فهرست مندرجات
دستور vi یا Vim (ویرایشگر متن)
در ارتباط با این ویرایشگر آقای امیر صمیمی بطور کاملا مفصل در اینجا آموزش داده اند من قصدم تکرار صحبتهای ایشون نیست بلکه تصمیم دارم خلاصه ای از ۹ ویدیو بنویسم به شخصه برای بعضی از نکاتی که ایشون ذکر میکردند بعضی مواقع مجبور بودم یک ویدیو رو در فواصل زمانی مختلف چندین بار ببینم پس تصمیم گرفتم برای راحتی خودم و بقیه دوستان که با همین مشکل روبرو هستند بر اساس تنظیمات ایشون این آموزش رو آماده کنم امیدوارم که مفید باشد در اولین اقدام از اینجا تمام فایلهای مورد نیاز برای کافیگ VIM را دانلود کنید.
کلیدهای ترکیبی مورد استفاده در شخصی سازی vim
- F4 و F3 سوئیچ بین تب های باز شده در صورتی که از طریق nerd tree از کلیدهای CTRL + T استفاده کرده باشید
- CTRL + T باز کردن فایل ها از طریق nert tree و امکان استفاده از کلیدهای ترکیبی F4 و F3 برای جابه جایی بین تب ها
- F2 برای past کردن کدهای دستور خود پیشنهاد میشود قبل از زدن کلید i برای رفتن به حالت insert کلید ترکیبی F2 را برای آماده شدن vim برای past کردن را بزنید و بعد با کلیدهای ترکیبی CTRL + SHIFT + V کد خود را past کنید
- F9 باز و بستن nerd tree
- F5 اجرا کدهای پایتون
- F6 قرار دادن کامنت
- F7 برداشتن کامنت
به صورت پیش فرض vimrc بر روی کنسول kde تنظیم هست اگر همانند بنده از xfce استفاده میکنید کد زیر را جایگزین خط ۴۲ کنید
:noremap <silent> #5 :!xfce4-terminal --hold -e 'python3 ./%' <CR> <CR>" execute python script with F5
اعمال تنظیمات vimrc
شما باید فایل موجود در فایل زیپ را در آدرس home خود قرار دهید اگر مثلا فایلهای دانلود شده در پوشه دانلود شما هستند با دستور زیر به راحتی میتوانید فایل را به home خود کپی کنید.
cp ~/Downloads/vim/.vimrc ~
نصب پلاگین و تم
در صورتی که میخواهید آموزش نصب پلاگین و تم را یاد بگیرید میتوانید به این ویدیو مراجعه کنید ولی اگر هم میخواهید از همان پلاگین های پیش فرض استفاده کنید من تمام پلاگین های مورد نیاز را در فایل زیپ قرار داده ام که میتوانید از اینجا دانلود کنید اگر فایل دانلود شده ما در پوشه دانلود شما باشد با آدرس زیر میتوانید تمام آن پلاگین ها را نصب کنید به قول آقای امیر صمیمی بدون درد و خونریزی پس کد زیر را در ترمینال اجرا کنید
cp ~/Downloads/vim/.vim ~
ایجاد شورت کات و آیکن برای ویم
خوب آقای امیرصمیمی بصورت کامل در این ویدیو آموزش این مورد رو دادند که ما هم تصمیم برای آموزش نداریم ولی برای راحتی شما ما تمام این فایلهارو آماده کردیم که میتوانید از اینجا دانلود کنید اگر فایل دانلود شده ما در پوشه دانلود شما باشد با آدرس زیر میتوانید شورت کات و آیکن را ایجاد کنید پس دو دستور زیر را به ترتیب در ترمینال تایپ کنید.
sudo cp ~/Downloads/vim/vim.desktop /usr/share/applications/ sudo cp ~/Downloads/vim/vim_run /usr/local/bin/
نصب پلاگین توسط پلاگین vim-plug
آقای امیر صمیمی در این ویدیو آموزش کاملی در ارتباط با این پلاگین دادند ولی برای راحتی کار من ۲ دستور پر کاربرد این پلاگین رو ذکر میکنم
دستور PlugInstall
برای نصب پلاگین در محیط ویم : را زده و بعد کلمه PlugInstall را مینویسیم و جلوی آن اسم پلاگین مورد نظرمان را مینویسیم یا اینکه کلا چیزی نمینویسیم و فقط اینتر میزنیم خود پلاگین چک میکند کدام پلاگین نصب نشده است همان را نصب خواهد کرد
دستور PlugUpdate
برای به روزرسانی پلاگین در محیط ویم : را زده و بعد کلمه PlugUpdate را مینویسیم و جلوی آن اسم پلاگین مورد نظرمان را مینویسیم یا اینکه کلا چیزی نمینویسیم و فقط اینتر میزنیم خود پلاگین چک میکند کدام پلاگین نیاز به update دارد و همان را به روز خواهد کرد
طریقه اضافه کردن پلاگین برای نصب را پیشنهاد میکنم ویدیو آقای امیرصمیمی را ببینید چون محتملا راحت تر متوجه خواهید شد
برای توضیحات تکمیلی در ارتباط با دستور cp را ببینید
کپی متن از vim به کلیپبرد سیستم
شما باید بسته های زیر را توسط دستور زیر نصب کنید
sudo dnf install vim-enhanced vim-X11
اگر میخواهید برای همه یوزرها اعمال شود باید در دایرکتوری etc فایل bashrc رو ادیت کنید
من فرض میکنم میخواهید برای یوزر خودتان این کار را انجام دهید پس در home خود دستورات زیر را تایپ کنید
vim .bashrc
کدهای زیر را در آن قرار دهید
alias vi='vimx' alias vim='vimx'
حالا متن خود را در vim انتخاب کنید و کلید Y را بزنید تا متن به بافر کپی شود حالا در هر جایی که نیاز دارید past کنید
vim متن در حال ویرایش را به صورت صفحه به صفحه نمایش می دهد نام این ویرایش گر را به دلیل بصری (visual) بودن vi گذاشتند این ویرایشگر ۲ حالت مختلف در حالت کار دارد. حالت درج کردن متن و حالت فرمان در حالت درج کردن شما میتوانید متن مورد نظر را تایپ نمایید و در حالت فرمان شما می توانید کارهای ویرایشی همچون رفتن به قسمتهای مختلف فایل و حذف متن را انجام دهید. شما با این ویرایشگر می توانید کارهای مختلفی از جمله ایجاد یک فایل جدید در ویرایشگر و درج متن و ویرایش و حذف متن و جستجو و جایگزینی متن و اضافه کردن متن از فایلهای دیگر و کپی و برش و چسباندن متن و چاپ یک فایل و ذخیره متن ویرایش شده را انجام دهید. برای تمرین از ایجاد یک فایل جدید به نام note شروع می کنیم برای ایجاد فایل مذکور از دستور زیر استفاده می کنیم
vi note
علامت مدی که در ابتدای هر خط وجود دارد جزء فایل محسوب نمی شود و فقط به عنوان نمایش دهنده خطوط در صفحه نمایش کاربرد دارند
وقتی شما ویرایشگر را اجرا می کنید در حالت فرمان قرار دارد و بدین معنی است که هر چه شما با صفحه کلید تایپ می کنید ویرایشگر به عنوان فرمان می شناسد برای اینکه بتوانید متنی را تایپ نمایید باید از دستور I استفاده نمایید یا اینکه کلید insert در صفحه نمایش را بفشارید پس از فشردن کلید مذکور ویرایشگر اماده برای تایپ می باشد و شما هر کلیدی را بفشارید در داخل ویرایشگر تایپ خواهد شد.
تکرار یک تغییر
از فرمان نقطه برای تکرار اخرین تغییر انجام شده استفاده نمایید برای انجام این کار شما میبایست پس از تایپ متن و یا هر تغییر کلید ESC را فشرده و سپس کلید . را بفشارید به عنوان مثال اخرین تغییری که شما در متن خود ایجاد نمو ده اید تایپ این جمله است linux is good حال شما می خواهید این جمله را ۳ بار در متن خود داشته باشید شما میبایست پس از تایپ جمله بالا یعنی linux is good کلید ESC را فشرده و سپس ۲ بار کلید . را بفشارید تا جمله شما ۲ بار تکرار گردد شما برای پاک کردن کلمات تکراری که به اشتباه در جملات خود نوشته اید نیز می توانید از این شیوه استفاده نمایید
حرکت دادن مکان نما
شما می توانید مکان نما را وقتی در حالت فرمان هستید جابجا نمایید به عنوان مثال می توانید از فرمان H برای رفتن مکان نما به گوشه سمت چپ بالای صفحه استفاده نمایید
برای اجرای صحیح فرمان در استفاده از حروف کوچک و بزرگ دقت نمایید
لیست زیر انواع فرامین برای حرکت مکان نما در ویرایش گر را نشان می دهد
- H یا left arrow یک موقعیت کاراکتری به سمت چپ
- L یا right arrow یک موقعیت کاراکتری به سمت راست
- . یا up arrowیک خط بالا
- J یا down arrow
- H گوشه بالا سمت چپ صفحه
- L اخرین خط روی صفحه
- NG رفتن به خط مشخص شده با عدد n
- W یک لغت به جلو
- B یک لغت به عقب
- 0 (Zero) رفتن به ابتدای خط جاری
- $ رفتن به انتهای خط جاری
حذف متن
برای حذف متن در ویرایشگر از کلید ایکس استفاده می شود بدین منظور شما باید روی حرف مورد نظر رفته البته ابتدا باید در حالت فرمان قرار بگیرید و سپس کلید ایکس را بفشارید لیست زیر راهنمای حذف متن می باشد
- X حذف کاراکتر بالای مکان نما
- Dd حذف خط جاری
- Dw حذف واژه بالای خط اگر مکان نما در وسط صفحه قرار داشته باشد از محل مکان نما تا اخر خط را حذف می نماید
- D$ یا D حذف از مکان نما تا اخر خط
- D0 حذف از مکان نما تا اول خط
فرمان Dd در حقیقت خطوط حذف شده را در حافظه موقت نگه داری می کند شما می توانید با دستور P (paste) برای درج خطوط حذف شده در مکانی دلخواه استفاده نمایید
کپی متن
برای کپی متن از فرمان Yy بهره ببرید و برای چسباندن متن از فرمان P استفاده نمایید
لغو کردن یک دستور
برای برگرداندن یک دستور اجرا شده از این فرمان استفاده می شود به عنوان مثال شما به چند خط از یک متن را حذف کرده اید برای برگرداندن متون پاک شده کافی است در حالت فرمان کلید U را بفشارید
جستجو در متون
برای یافتن کلمه نوشته شده و یا اینکه کلمه مورد نظر چند بار تکرار شده از این روش استفاده می شود برای اینکار ابتدا به حالت فرمان رفته و با فشردن کلید اچ مکان نما را به ابتدای متن ببرید و پس از زدن کلید / متن مورد نظر برای جستجو راتایپ نمایید و سپس کلید اینتر را بفشارید و برای ادامه جستجو کلمه مورد نظر کلید N را بفشارید
جستجو و جایگزینی در متون
شما می خواهید در متن تایپ شده خود یک کلمه را که چند بار تکرار شده عوض نمایید فرض کنید که شما در متن خود ۵ کلمه windows دارید و می خواهید که بجای این کلمات از کلمه linux استفاده نمایید برای این کار از روش زیر استفاده نمایید
1,$s/windows/linux/g
عدد یک به کار رفته می گوید که از اولین سطر مطلب برای تعویض کلمه شروع نماید علامت $ نیز اخر مطلب را نشان می دهد S نیز می گوید که کلمه ویندوز را با لینوکس تعویض کن و حرف G نیز می گوید که این کار را در هر قسمت از مطلب انجام بده
به علامت ویرگول بین عدد یک و علامت $ توجه کنید
ذخیره کردن متن ویرایش شده
برای ذخیره و خروج از ویرایشگر از دستور
wq:
استفاده نمایید حرف دبلیو برای ذخیره متن ویرایش شده و حرف کیو برای خروج از ویرایشگر می باشد برای خروج بدون اعمال تغییرات از دستور زیر استفاده نمایید
!q:
اضافه کردن متن از فایلی دیگر
برای این منظور از دستور زیر استفاده می کنیم
:r filename
شما ۲ فایل دارید و می خواهید محتویات فایل یک را به دیگری اضافه نمایید به عنوان مثال نام ۲ فایل شما به قرار زیر است text1 , text2 حال شما می خواهید محتویات text1 را به text2 منتقل نمایید از دستور زیر استفاده می کنیم
r text1:
ترک موقت ویرایشگر ویم
برای ترک موقت ویرایشکر از دستور زیر استفاده می نماییم
i command:
به عنوان مثال به دستور زیر دقت کنید
i date :
باعث خروج موقت از ویرایشگر شده و تاریخ در ترمینال به نمایش در میاید برای بازگشت به محیط ویرایشگر کلید اینتر را بفشارید
بعضی از آپشنهای کاربردی vim
دستور زیر برای شماره بندی صفحه نمایش کاربرد دارد شماره های بکار رفته جزئی از فایل محسوب نمی شوند و فقط برای نمایش تعداد خطوط کاربرد دارند
set number:
فرمان زیر برای چاپ فایل استفاده نمایید
lpr filename!
و اگر ۲ چاپگر دارید می توانید با گزینه زیر نوع چاپگر را مشخص نمایید مانند دستور زیر
lpr -plp2 filename !
یک cheatsheet برای ویم تهیه کردم که در گیت هاب منتشرش کردم در صورت دیدن اشکال یا کم و کسری لطفا در اینجا در خود گیت هاب اطلاع بدین تا تغییرش بدم برای دیدن خود پروژه به لینک زیر مراجعه کنید
cheatsheet vim
برای دانلود فایل PDF به لینک زیر مراجعه کنید
دانلود PDF