انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: آموزش کار با ویرایشگر Vim  (دفعات بازدید: 24871 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین سالار مقدم

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 2074
  • جنسیت : پسر
  • هر چقدر بدونی بازم کمه.
    • سالار مقدم
آموزش کار با ویرایشگر Vim
« : 11 تیر 1392، 01:46 ب‌ظ »
سلام دوستان
همانطور که میدانید ما دو ویرایشگر فوق العاده در گنو/لینوکس (و تاحدودی دیگر سیستم عامل ها) به نام های Vim و Emacs داریم. دیدم که تایپیک آموزشی در مورد Vim وجود نداره برای همین قصد دارم تا جایی که در توانم هست در اینجا به آموزش Vim بپردازم
خوب اول یک عکس از این ویرایشگر می گذارم:




Vim چیست؟ Vim یک نرم افزار فوق العاده قدرتمند ویرایشگر متن است که در سال ۱۹۹۱ توسط  Bram Moolenaar در ابتدا برای بی اس دی ها (با تشکر از محمدرضا ح) نوشته شد و سپس به دیگر سیستم عامل ها از جمله گنو/لینوکس پورت شد. این ویرایشگر هم دارای محیط گارفیکی است و هم می تواند در ترمینال اجرا شود که البته بیشتر در ترمینال محبوب است.یکی از محیط های گرافیکی محبوب این ویرایشگر gvim است که امکانات سربرگ و ... را در اختیار کاربر قرار می دهد.
در این تایپیک بیشتر تمرکزمان را در اجرای این ویرایشگر در ترمینال می گذاریم.برای اجرای این ویرایشگر در ترمینال از دستور:

vi [OPTIONS] FileٔName
استفاده می کنیم.
نکته:در صورت وجود فایل،فایل باز می شود و در صورت عدم وجود فایل، فایل ساخته میشود.
برای مثال ما میخواهیم یک فایل به نام test در پوشه ی خانگی خودمان بسازیم:

vi test
با اجرای دستور فوق:




حالا ما در ویرایشگر ویم در حال ویرایش فایل test هستیم،چرا عصبی شدید؟چیزی نمیتوانید بنویسید؟صبر کنید، ما برای همین اینجا هستیم :)
ویم دارای سه حالت است:
۱-حالت فرمان(Command Mod) : حالت کامند مود اولین حالتی است که بعد از باز کردن فایل با آن مواجه میشوید.در این حالت شما می توانید به وارد کرد دستورات خاصی بپردازید و در جهت بهبود ویرایش خود پیش روید
۲-حالت درج (Insert Mod) : در این حالت میتوانید متن داخل فایل مورد نظر را ویرایش کنید
۳-حالت اجرا (execute mode) : در این حالت میتوانید فرامین سیستم عامل گنو/لینوکس را به اجرا در آورید

چگونگی اجرای فرمان ها در حالت فرمان: ابتدا کارکتر : را می نویسید و سپس دستور مورد نظر و اینتر. به عنوان مثال:

:set nu
با اجرای دستور فوق می توانید شماره ی هر خط را ببینید




تعدادی از میانبر ها برای حرکت cursor در Vim: در حقیقت ویم برای کیبرد های قدیمی طراحی شده بود که دارای کلید های حرکتی نبودند، شما ضمن اینکه میتوانید از کلید های حرکتی برای حرکت در فایل استفاده کنید می توانید از کلید های زیر هم در حالت فرمان استفاده کنید:
۱- حرف h برای حرکت به سمت چپ
۲- حرف j برای حرکت به سمت پایین
۳- حرف k برای حرکت به سمت بالا
۴- حرف l برای حرکت به راست

همچنین به جای PgUp از Ctrl + b و به جای PgDown می تونید از Ctrl + f استفاده کنید.

تغییر خط در صورت دانستن شماره ی خط: برای این کار شما می توانید از فرمان G استفاده کنید، در حالت عادی این فرمان به آخرین خط میرود. به عنوان مثال ما میخوایم به خط ۱۴۲ بریم:

:142G
سپس مشاهده می کنید که در خط ۱۴۲ هستید!
نکته: مانند خط فرمان لینوکس، ویم هم به بزرگی کوچیکی حروف حساسه

حذف کارکتر ها در حالت فرمان:
۱- فرمان x با توجه به مکان فعلی cursor کارکتر مورد نظر را پاک می کند.
۲- فرمان dw واژه ی جاری را حذف می کند
۳- فرمان dd خط جاری را حذف می کند
نکته: در صورت حذف اشتباهی یک متن می توانید با دکمه ی u آن را باز گردانی کنید.

فرمان جست و جوی متن:
برای جست و جو در متن باید ابتدا / را درج کرده سپس کلمه ی مورد نظر را بنویسیم. به عنوان مثال ما میخوایم کلمه ی error را در متن جست و جو کنیم:

/error
میبینید که کلمات error همگی هایلایت شده اند!
نکته۱: با زدن دکمه ی n می توانید به واژه ی هایلایت بعدی بروید
نکته۲: همچنان ویم به حروف بزرگ و کوچک حساس است! در نتیجه error با Error بسیار متفاوت است.
نکته۳: با زدن دستور quit: می توانید از Vim خارج شوید

ورود به حالت درج:
۱- با استفاده از کلید i به معنای Insert می توانید به موقعیت فعلی مکان نما بروید و شروع به نوشتار کنید(در واقع قبل از مکان نما)
۲- با استفاده از کلید a به معنای append می توانید بعد از مکان نما اقدام به نوشتار کنید
۳- با استفاده از کلید o به معنای open شما را به خط بعد هدایت می کند
نکته: برای خروج از حالت درج از Esc استفاده کنید

ورود به حالت اجرا:
برای اینکار کافیست دو کارکتر !: را وارد کنید تا بتونید کامند های گنو/لینوکس را اجرا کنید برای مثال اجرای دستور ls -la

!:ls -la
میبینید که خروجی دستور مورد نظر روی صفحه به نمایش درامد!

در نهایت برای ذخیره ی تغییرات از w: و برای خروج و ذخیره نوشته از فرمان :q و برای خروج بدون ذخیره از q!: استفاده کنید

این ویرایشگر بسیار ساده است فقط در صورتی که از آن نترسید و از آن استفاده کنید.تمرین کنید!

لطفا با پست های ترول آمیزی چون ایمکس بهتر است، ویم بهتر است. تایپیک را منحرف نکنید
« آخرین ویرایش: 11 تیر 1392، 09:55 ب‌ظ توسط سالار مقدم »

آفلاین !

  • High Sr. Member
  • *
  • ارسال: 586
  • جنسیت : پسر
  • Don't Panic!
    • مانیتورینگ سایت
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #1 : 12 تیر 1392، 10:10 ق‌ظ »
مرسی بابت مطلب عالی ، بس حض کردیم:)

یک سوال :

اونوقت این vim editor فرقش با vi editor چیه؟ (اونی که پایینه سایته www.unix.org نوشته شده)
I just felt like running

Altern AI Directory --- GitHub

آفلاین سالار مقدم

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 2074
  • جنسیت : پسر
  • هر چقدر بدونی بازم کمه.
    • سالار مقدم
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #2 : 12 تیر 1392، 11:16 ق‌ظ »
مرسی بابت مطلب عالی ، بس حض کردیم:)

یک سوال :

اونوقت این vim editor فرقش با vi editor چیه؟ (اونی که پایینه سایته www.unix.org نوشته شده)
اون هم یک ادیتور بوده که آقای Bram Moolenaar اون رو برای ادیتور خودش (ویم) بیس قرار داده، به عبارت دیگر وی ، بیس ویم بوده. الان فکر نکنم دیگه کسی از اون استفاده کنه

آفلاین MHA152

  • High Hero Member
  • *
  • ارسال: 2745
  • جنسیت : پسر
  • من عاشق یونیکسی ها هستم
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #3 : 19 تیر 1392، 05:05 ب‌ظ »
مرسی بابت مطلب عالی ، بس حض کردیم:)

یک سوال :

اونوقت این vim editor فرقش با vi editor چیه؟ (اونی که پایینه سایته www.unix.org نوشته شده)
اون هم یک ادیتور بوده که آقای Bram Moolenaar اون رو برای ادیتور خودش (ویم) بیس قرار داده، به عبارت دیگر وی ، بیس ویم بوده. الان فکر نکنم دیگه کسی از اون استفاده کنه
توی قدرت هاشون با هم متفاوتند؟vim چقدر از vi قوی تره
بهتون پیشنهاد می کنم به دنیای بزرگ شبه−یونیکس وارد بشید و از پیشرفت لذت ببرید
جیمیلم

آفلاین سالار مقدم

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 2074
  • جنسیت : پسر
  • هر چقدر بدونی بازم کمه.
    • سالار مقدم
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #4 : 19 تیر 1392، 05:22 ب‌ظ »
مرسی بابت مطلب عالی ، بس حض کردیم:)

یک سوال :

اونوقت این vim editor فرقش با vi editor چیه؟ (اونی که پایینه سایته www.unix.org نوشته شده)
اون هم یک ادیتور بوده که آقای Bram Moolenaar اون رو برای ادیتور خودش (ویم) بیس قرار داده، به عبارت دیگر وی ، بیس ویم بوده. الان فکر نکنم دیگه کسی از اون استفاده کنه
توی قدرت هاشون با هم متفاوتند؟vim چقدر از vi قوی تره
وی که خیلی قدیمیه ... مشخصا ویم خیلی قوی تر و دارای کامند های بشتریه.

آفلاین MohammadH

  • Jr. Member
  • *
  • ارسال: 33
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #5 : 19 تیر 1392، 08:08 ب‌ظ »
خب این مطلب خوبه ولی در مورد تاریخچش حرف نمیزدید سنگین تر بودید. vi در سال ۱۹۷۶ برای BSDهای اولیه بوجود اومده بود. ولی vim نسخه تقویت شده دهه نودی این ادیتور هست و تقریبا الان هیچ تفاوتی بین این دو نیست

آفلاین سالار مقدم

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 2074
  • جنسیت : پسر
  • هر چقدر بدونی بازم کمه.
    • سالار مقدم
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #6 : 19 تیر 1392، 09:17 ب‌ظ »
خب این مطلب خوبه ولی در مورد تاریخچش حرف نمیزدید سنگین تر بودید. vi در سال ۱۹۷۶ برای BSDهای اولیه بوجود اومده بود. ولی vim نسخه تقویت شده دهه نودی این ادیتور هست و تقریبا الان هیچ تفاوتی بین این دو نیست
نقل قول از ویکیپدیا:
نقل‌قول
Vim is a text editor written by Bram Moolenaar and first released publicly in 1991

آفلاین B

  • Sr. Member
  • *
  • ارسال: 354
  • جنسیت : پسر
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #7 : 19 تیر 1392، 09:27 ب‌ظ »
خب این مطلب خوبه ولی در مورد تاریخچش حرف نمیزدید سنگین تر بودید. vi در سال ۱۹۷۶ برای BSDهای اولیه بوجود اومده بود. ولی vim نسخه تقویت شده دهه نودی این ادیتور هست و تقریبا الان هیچ تفاوتی بین این دو نیست

من هم این رو در کتابی خوندم؛

اما قضیه اینه که این مربوط میشه به vi
The original code for vi was written by Bill Joy in 1976,

و vim بر اساس vi به وجود اومده در سال 1991 ؛

الان تقریبا کسی از vi استفاده نمیکنه؛ اگه هم در سیستمتون از vi استفاده میکنید؛ احتمال خیلی زیاد همون alias شده از vim هست!!

آفلاین albert

  • Jr. Member
  • *
  • ارسال: 34
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #8 : 16 تیر 1393، 01:48 ب‌ظ »
با سلام آقای مقدم در تصویری که از vim گذاشته اید . خاصیت code folding را استفاده کرده اید . آیا امکان دارد که در مورد code folding در vim راهنمایی فرمایید.

آفلاین امیر آهنگری

  • Newbie
  • *
  • ارسال: 19
  • جنسیت : پسر
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #9 : 31 امرداد 1393، 03:47 ب‌ظ »
سلام
این سایته http://www.openvim.com/ واسه آموزش vim خیلی خوبه. سایتش اینتراکتیوه. یه سری بزنین ضرر نمی کنین.

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19720
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #10 : 01 شهریور 1393، 10:45 ب‌ظ »
مرسی سالار. خیلی خوبه، ادامه بده (:
البته یه حالت بصری (visual mode) هم داریم که با دکمه‌ی v به اون حالت می‌ره.
برای بالا و پایین کردن صفحه هم کلید‌های ctrl-u و ctrl-d هم روون‌تر بالا و پایین می‌کنن، هم با up و down سنخیت دارن و در یاد می‌مونن
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین afrod

  • High Hero Member
  • *
  • ارسال: 1526
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #11 : 01 شهریور 1393، 11:46 ب‌ظ »
If you are a developer or sysad... Learn Vim (the other text editor). It's okay learn the basics so that you can easily work on other people's computers. If you know your way around Vim, people won't give you as much grief over Emacs
...
Okay. Once you know the basics of Vim, you can get on with learning Emacs
منبع
من  نفهمیدمش، اگر متوجه شدید، به من هم بگید که چرا قبل از ایمکس، ویم یاد بگیریم!!

آفلاین mohsen-rashidi

  • High Sr. Member
  • *
  • ارسال: 646
  • جنسیت : پسر
  • Hacker`s Emblem
    • اینجا خانه محسن است
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #12 : 02 شهریور 1393، 07:15 ق‌ظ »
خوب Vi/Vim جزو استاندارد پوزیکسِ. و به این معناست که محاله پشت یه سیستم یونیکسی بشینید Vi نداشته باشه.
اون مقاله هم میگه vim رو حتما یاد بگیرید که اگر روزی پشت یه سیستم دیگه نشسستید و احتیاج به ادیتور داشتید و ادیتور محبوبتون و یا حتی هیچ ادیتور دیگه ایی نصب نبود،‌کارتون لنگ نمونه.

آفلاین persianboy1993

  • Newbie
  • *
  • ارسال: 3
  • جنسیت : پسر
  • I love Linux
    • یک دانشجوی توسعه دهنده
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #13 : 16 تیر 1397، 01:48 ق‌ظ »
آقای صمیمی هم تو این لینک آموزش خوبی از این ادیتور قرار دادند

https://amirsamimi.ir/vim/


آفلاین Silvio Dante

  • High Hero Member
  • *
  • ارسال: 1221
  • جنسیت : پسر
  • Arch Linux
    • وبلاگ شخصی
پاسخ : آموزش کار با ویرایشگر Vim
« پاسخ #14 : 16 تیر 1397، 10:52 ب‌ظ »
آقای صمیمی هم تو این لینک آموزش خوبی از این ادیتور قرار دادند

https://amirsamimi.ir/vim/
این تایپک مال خیلی وقت پیشه و احتمالا اون موقع آقای امیرصمیمی این آموزش رو منتشر نکرده بودن.

پ.ن: قبل از پاسخ به تایپک به تاریخش نگاه کنید.
« آخرین ویرایش: 16 تیر 1397، 10:54 ب‌ظ توسط Silvio Dante »
به ما نگفته بودند ایران در زمان احمدشاه قاجار چگونه بوده است. همیشه به ما دادند، ما هم فکر کردیم باید می‌داده‌اند و تازه خیال می‌کردیم کم‌مان است باز هم می‌خواستیم!!
فریدون فرخزاد