توجه: این مقاله به مرور زمان، ویرایش و یا تکمیل میشود!
تقاضا: در صورتی که با مشکل تایپی، دستوری و یا مفهومی در این مقاله برخورد کردید، از شما دوست عزیز و گرامی، صمیمانه تقاضا میکنم که اینجانب را مطلع کرده، تا نسبت به تصحیح و یا تکمیل آن، در اسرع وقت، اقدام نمایم.
با کمال تشکر
داریوش تصدیقی
کانال تلگرام: IranianExperts@
شماره تلفن همراه: ۰۹۱۲۱۰۸۷۴۶۱
نشانی پست الکترونیکی: DariushT@GMail.com
فیلمهای آموزشی https://www.aparat.com/DariushT
آدرس سایتها: https://WebsiteAnalytics.ir - http://IranianExperts.ir - http://Date2Date.ir
نسخه مقاله: ۱.۲ - تاریخ بروزرسانی: ۱۳۹۹/۰۳/۱۵
قبل از شروع آموزش این ویرایشگر افسانهای و قوی، باید عرض کنم که من برای نوشتن Source Code ها قطعا از Visual Studio Code استفاده میکنم! ولی به دلایل زیادی از این Editor نیز استفاده میکنم و توصیه میکنم شما هم با این ویرایشگر آشنا شده و آنرا یاد بگیرید!
بارها گفتهام و باز هم تکرار میکنم! برخلاف سالها قبل، که برای ما برنامهنویسان داتنت، صرفا یک محیط برنامهنویسی به نام Visual Studio وجود داشت و ما جز سیستمعامل ویندوز، سیستمعامل دیگری را یا نمیشناختیم و یا اهمیتی برای ما نداشت! در دنیای امروز و خصوصا در آیندهای نزدیک، آشنایی و یادگیری یک سری موارد بسیار اهمیت پیدا کرده است! که اگر امروز برای فراگیری آنها اقدام نکنیم، شاید خیلی زود، دیر شود! بعضی از این موارد، عبارتند از:
ویرایشگر Vim مخفف دو کلمه VI Improved بوده و با استفاده از دستور ذیل میتوانیم آنرا اجرا کرده و وارد آن بشویم:
vi SomeFileName OR vim SomeFileName
به طور کلی، ویرایشگر Vim دارای دو حالت (Mode) میباشد:
برای ذخیره کردن تغییرات ، ابتدا کاراکتر : را زده و سپس در پایین صفحه، از کاراکتر w (کوچک)(Write) استفاده کرده و سپس Enter را میزنیم.
برای ذخیره و خروج از محیط ادیتور، ابتدا کاراکتر : را زده و سپس در پایین صفحه، از دو کاراکتر wq (کوچک)(Write & Quit) استفاده کرده و سپس Enter را میزنیم.
برای صرفا خروج از محیط ادیتور، در صورتی که نخواهیم اگر تغییراتی ایجاد کردهایم ذخیره شود، ابتدا کاراکتر : را زده و سپس در پایین صفحه، از دو کاراکتر q! (کوچک)( Quit) استفاده کرده و سپس Enter را میزنیم.
برای به سمت چپ بردن Cursor از دکمههای Arrow Keys (سمت چپ) و یا دکمه h (کوچک) استفاده میکنیم.
برای به سمت پایین بردن Cursor از دکمههای Arrow Keys (سمت پایین) و یا دکمه j (کوچک) استفاده میکنیم.
برای به سمت بالا بردن Cursor از دکمههای Arrow Keys (سمت بالا) و یا دکمه k (کوچک) استفاده میکنیم.
برای به سمت راست بردن Cursor از دکمههای Arrow Keys (سمت راست) و یا دکمه l (کوچک) استفاده میکنیم.
برای اینکه Cursor به ابتدای متن یک خط منتقل شود، میتوانیم از کاراکتر ^ استفاده نماییم.
برای اینکه Cursor به انتهای متن یک خط منتقل شود، میتوانیم از کاراکتر $ استفاده نماییم.
برای بالا و پایین رفتن در متن، میتوانیم از کاراکتر G (بزرگ) به معنای Go استفاده نماییم.
در صورتی که صرفا از کاراکتر G (بزرگ) استفاده نماییم، Cursor به ابتدای آخرین خط متن خواهد رفت.
در صورتی که ابتدا عدد 1 و سپس کاراکتر G (بزرگ) را بزنیم، Cursor به ابتدای خط اول متن خواهد رفت.
در صورتی که ابتدا عدد 5 را زده و سپس کاراکتر G (بزرگ) را بزنیم، Cursor به ابتدای خط پنجم متن خواهد رفت.
زمانی که Cursor در وسط متن در حال چشمک زدن میباشد، با زدن x (کوچک) کاراکترها را از سمت راست پاک میکند و اگر از X (بزرگ) استفاده نماییم، کاراکترها را به سمت چپ حذف میکند.
برای جایگزین کردن یک کاراکتر، ابتدا Cursor را بر روی کاراکتری که میخواهیم جایگزین کنیم رفته و سپس r (کوچک) را زده و کاراکتر دلخواه را تایپ میکنیم.
در صورتی که Cursor در هر کجای یک متن قرار داشته باشد، با زدن کاراکتر a (کوچک) به معنای Append (اضافه کردن)، Cursor به انتهای متن رفته و ما را در Mode ویرایش (Insert) قرار میدهد.
برای ایجاد یک خط خالی جدید در ذیل جایی که Cursor قرار داد از o کوچک استفاده میکنیم.
برای ایجاد یک خط خالی جدید در بالای جایی که Cursor قرار داد از O بزرگ استفاده میکنیم.
برای Undo کردن، از کاراکتر u (کوچک) استفاده میکنیم.
برای Redo کردن، از دکمههای ترکیبی CTRL + r (کوچک) استفاده میکنیم.
در صورتی که در خطی قرار داشته باشیم و از کاراکتر J (بزرگ) استفاده نماییم، متن خط بعدی را به انتهای خط جاری منتقل میکند.
اگر ابتدا از کاراکتر y (کوچک) به معنای Yank = Copy استفاده کرده و مجددا از کاراکتر y (کوچک) استفاده نماییم، خطی جاری که Cursor در آن قرار دارد، در حافظه Copy میشود.
نکته: استفاده از کاراکتر Y (بزرگ)، دقیقا نتیجهای معادل yy (کوچک) داشته و متن خط جاری را کپی میکند!
اگر ابتدا از کاراکتر y (کوچک) به معنای Yank = Copy استفاده کرده سپس از کاراکتر w (کوچک) به معنای Word (کلمه) استفاده نماییم، کلمهای که Cursor در آن قرار دارد را Copy میکند. البته به این شرط که Cursor در ابتدای کلمه باشد، در غیر این صورت از جایی که Cursor قرار دارد، تا پایان کلمه Copy میشود!
اگر از کاراکتر p (کوچک) به معنای Paste استفاده نماییم، از جایی که Cursor قرار دارد به بعد (در سمت راست یا پایین)، متن کپی شده، Paste میشود.
اگر از کاراکتر P (بزرگ) به معنای Paste استفاده نماییم، از جایی که Cursor قرار دارد به قبل (در سمت چپ یا بالا)، متن کپی شده، Paste میشود.
برای جستجو میتوانیم ابتدا / (اسلش) را زده و سپس کلمه مورد نظر را تایپ کرده و Enter بزنیم. در صورتی که از کاراکتر n (کوچک) به معنای Next (بعدی) استفاده نماییم، کلمه بعدی را (به بعد) جستجو کرده و اگر از کاراکتر N (بزرگ) را استفاده نماییم، کلمه قبلی را (به قبل) را جستجو نماییم.
با استفاده کاراکتر . (نقطه) میتوانیم به ادیتور VIM بگوییم که آخرین دستوری که اجرا کردهایم را تکرار کند.
اگر ابتدا کاراکتر d (کوچک) به معنای Delete را زده و سپس w (کوچک) به معنای Word (کلمه) را بزنیم، اگر Cursor وسط یا ابتدای یک کلمه باشد، از آنجا تا ابتدای کلمه بعدی را حذف میکند.
اگر ابتدا کاراکتر d (کوچک) به معنای Delete را زده و سپس e (کوچک) به معنای End (انتها) را بزنیم، اگر Cursor وسط یک کلمه قرار داشته باشد، از آنجا تا انتهای کلمه جاری را حذف میکند.
اگر ابتدا کاراکتر d (کوچک) به معنای Delete را زده و سپس b (کوچک) به معنای Begin (ابتدا) را بزنیم، اگر Cursor وسط یک کلمه قرار داشته باشد، از آنجا تا ابتدای کلمه جاری را حذف میکند.
اگر ابتدا کاراکتر d (کوچک) به معنای Delete را زده و سپس d (کوچک) به معنای یک Line (خط) را بزنیم، خط جاری که Cursor در آن قرار دارد را حذف میکند.
برای اینکه از جایی که Cursor قرار دارد تا انتهای خط را حذف نماییم، میتوانیم از دکمههای ترکیبی d (کوچک) و $ استفاده کنیم.
برای اینکه از جایی که Cursor قرار دارد تا ابتدای خط را حذف نماییم، میتوانیم از دکمههای ترکیبی d (کوچک) و ^ استفاده کنیم.
فرض کنید زمانی که در داخل یک خط قرار داریم، ابتدا کاراکتر a (کوچک) و به معنای Append (اضافه کردن) را زده و سپس کلمه TODO را نوشته و سپس ESC را میزنیم. حال اگر در هر خطی قرار داشته باشیم و کاراکتر . (نقطه) را بفشاریم، آخرین عملیات انجام شده را تکرار کرده و لذا کلمه TODO به انتهای هر خطی که . را بزنیم، اضافه میشود.
اگر Cursor قبل از کلمه The قرار داشته باشد و فقط یکبار کاراکتر x (کوچک) را بزنیم، صرفا کاراکتر T را حذف میکند، ولی اگر ابتدا عدد 3 را زده و سپس کاراکتر x (کوچک) را بزنیم، هر سه کاراکتر یعنی کلمه The را حذف میکند.
3x
اگر Cursor بر روی یک خط متن قرار داشته باشد و ابتدا عدد 2 را زده و سپس دو کاراکتر d (کوچک) را بزنیم، دو خط را (یعنی خط جاری و خط زیر آنرا حذف میکند)
2dd
اگر Cursor قبل از یک کلمه قرار داشته باشد (و یا اولین کاراکتر آن کلمه انتخاب شده باشد) و ابتدا عدد 3 را زده و سپس کاراکتر d (کوچک) و بعد کاراکتر w را بزنیم، کلمه جاری و دو کلمه بعد از آن را حذف میکند:
3dw
اگر Cursor در یک خط قرار داشته باشد و از دکمههای yy استفاده نماییم، خط جاری کپی شده و اگر ابتدا عدد 5 را زده و سپس کاراکتر p (کوچک) را بزنیم، خط کپی شده را سه بار در ذیل خط جاری Paste میکند:
yy -> 5p
https://www.vim.org/download.php
https://en.wikipedia.org/wiki/Vim_(text_editor)
https://vimeo.com/showcase/2838732
https://danielmiessler.com/study/vim
http://www2.geog.ucl.ac.uk/~plewis/teaching/unix/vimtutor
https://vim.fandom.com/wiki/Best_Vim_Tips
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
https://www.openvim.com/tutorial.html
https://hackernoon.com/why-you-should-learn-vim-8085cfab1c7f
با تشکر از جادی عزیز بابت فیلمهای آموزشی خوب ایشان در خصوص Vim
پایان