معرفی ویرایشگر VI
یادگیری خط فرمان لینوکس درست شبیه تبدیل شدن به یک پیانیست حرفهای کاری نیست که یک شبه انجام شود. در ادامه ما شما را با ویرایشگر متن vi که یکی از برنامههای هستهای و سنتی لینوکس است، آشنا میکنیم.
vi به دارا بودن رابط کاربری سخت معروف است ولی زمانی که فردی حرفهای را میبینیم که از کیبورد استفاده میکند، مجذوب هنر وی خواهیم شد. ما در آموزشهای پیشِ رو قصد نداریم به یک حرفهای تبدیل شویم ولی در پایان این فصل نحوه کار با vi را خواهیم آموخت.
چرا بایستی از ویرایشگر متن vi استفاده کنیم؟
در عصر ویرایشگرهای مدرن گرافیکی و همچنین ویرایشگرهای مبتنی بر متن، مانند nano چرا بایستی vi را یاد بگیریم؟ این سوالی است که ممکن است برای شما هم ایجاد شده باشد. برای این سوال چندین دلیل و پاسخ خوب وجود دارد:
- vi همیشه در دسترس است. در صورتی که شما سیستمی داشته باشید که فاقد رابط گرافیکی باشد، vi نجاتبخش شما خواهد بود.. چرا که vi همیشه در دسترس خواهد بود. سیستمهایی مانند یک سرور ریموت و یا سیستمی که رابط گرافیکی پیکربندی آن از بین رفته، دارای چنین شرایطی هستند. nano در حالی که بسیار رایج است ولی هنوز سراسری نیست. POSIX که استانداردی برای سازگاری برنامهها در سیستمهای یونیکس است، نیاز به موجود بودن vi دارد.
- vi سبک و سریع است. برای بسیاری از کارها راحتتر است که vi را باز کنید تا اینکه یک ویرایشگر متنی گرافیکی را باز نمایید و منتظر بارگزاری چندین مگابایت برنامه شوید. به علاوه، vi به منظور تایپ سریع طراحی شده است. همانطور که خواهیم دید یک کاربر حرفهای vi هنگام تایپ هرگز دست خود را از روی صفحهکلید بلند نخواهد کرد.
- در آخر اینکه ما نمیخواهیم دیگر کاربران لینوکس تصور کنند که ما سوسول هستیم!
در آموزشهای پیشِ رو صرفاً به معرفی ویرایشگر vi میپردازیم و در آموزشهای آینده از ویرایشگر vi برای ویرایش فایلهای متنی استفاده نخواهیم کرد و به جای آن به ویرایشگر nano اکتفا میکنیم. دلیل اصلی آن هم این است که vi ویرایشگری حرفهای ایت و تسلط کامل بر روی فرمانهای آن بر خودآموزان زمانبر خواهد بود. در نتیجه برای اینکه تمرکز خود را بر اجرای مباحث آموزشها بگذاریم (به جای کلنجاز با vi) از ویرایشگر nano در مثالهای خود استفاده خواهیم کرد.
تاریخچهای درباره ویرایشگر vi
اولین نسخه ویرایشگر متن vi در سال ۱۹۷۶ توسط Bill Joy نوشته شد. او دانشجوی دانشگاه برکلی کالیفرنیا بود که بعدها به میکروسیستمهای شرکت سان رفت.
vi نام خود را از واژه visual (تصویری) گرفته است. چرا که شما را قادر میسازد که با جابهجا کردن مکاننما در داخل ترمینال به صورت تصویری و ویژوال، ویرایش کنید. پیش از ویرایشگرهای تصویری (Visual Editors) ویرایشگرهای خطی (Line Editors) وجود داشتند که شما تنها قادر به ویرایش یک خط متن در لحظه بودید. بدین منظور برای اعمال تغییر میبایست به یک ویرایشگر خطی میگفتید که به فلان خط خاص برو و تغییر مورد نظر را برای آن تعریف میکردید. با پدید آمدن ترمینالهای تصویری، ویرایش تصویری ممکن شد. vi در حقیقت شامل یک ویرایشگر خطی قوی با نام ex میباشد و ما میتوانیم در حین استفاده vi از دستورات ویرایش خط نیز استفاده کنیم.
بیشتر توزیعهای لینوکس شامل نسخه حقیقی vi نیستند. به جای آن دارای یک نسخه بهینه یافته از vi با نام vim (که مخفف Vi Improved به معنای vi بهینه یافته) میباشند که توسط Bram Moolenaar نوشته شده است. vim بهینهسازی قابل توجهی نسبت به نسخه قدیمی آن، یعنی vi دارد و معمولاً به صورت سمبلیک با نام vi لینک شده است. در درسهای بعدی ما فرض میکنیم که از ابزاری با نام vi استفاده میکنیم که در حقیقت vim میباشد.
آغاز و توقف vi
به منظور شروع vi کافی است فرمان vi را در خط فرمان وارد کنید.
[me@linuxbox ~]$ vi
پس از وارد کردن صفحه نمایشی مثل زیر نمایش داده میشود:
~ ~ ~ VIM - Vi Improved ~ ~ version 7.1.138 ~ by Bram Moolenaar et al. ~ Vim is open source and freely distributable ~ ~ Sponsor Vim development! ~ type :help sponsor<Enter> for information ~ ~ type :q<Enter> to exit ~ type :help<Enter> or <F1> for on-line help ~ type :help version7<Enter> for version info ~ ~ Running in Vi compatible mode ~ type :set nocp<Enter> for Vim defaults ~ type :help cp-default<Enter> for info on this ~ ~~
همانطور که قبلاً درباره nano انجام دادیم، اولین کاری که بایستی یاد بگیرید نحوه خروج از ویرایشگر vi میباشد. بدین منظور فرمان :q را وارد کنید (توجه شود که علامت نقلقل بخشی از فرمان است).
:q
پس از وارد کردن :q خط فرمان برمیگردد. اگر به هر دلیلی از vi خارج نشدید (معمولاً زمانی اتفاق میافتد که فایلی را تغییر دادهایم و هنوز ذخیره نکردهایم)، ما میتوانیم با کمک علامت تعجب، به vi بگوییم که واقعاً میخواهیم از برنامه خارج شویم:
:q!
در نهایت اگر باز هم در داخل vi گیر افتادید، چندین بار از کلید Esc استفاده کنید.
حالتهای ویرایش
در ادامه vi را دوباره اجرا کرده و این بار نام فایلی که وجود ندارد را وارد میکنیم. این شیوه ایجاد یک فایل جدید است:
[me@linuxbox ~]$ rm -f foo.txt [me@linuxbox ~]$ vi foo.txt
اگر فرمان با موفقیت اجرا شود، صفحهنمایشی مشابه تصویر زیر میبینیم:
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ "foo.txt" [New File]
همانطور که میبینید با استفاده از فرمان vi فایل جدیدی با نام foo.txt ایجاد کردهایم. کارکترهای تیلدا (~) نشانگر این است که هیچ متنی در آن خط موجود نمیباشد. این نشان میدهد که ما فایلی خالی داریم.
دومین چیز مهمی که بایستی درباره vi بدانید این است که vi ویرایشگری Modal است. زمانی که vi آغاز میگردد، به حالت فرمان (Command Mode) اجرا میشود. در این حالت، تقریباً هر کلید یک فرمان محسوب میشود. پس اگر شروع به تایپ کردن کنیم، vi به هم ریخته و افتضاح به بار میآورد!
ورود به حالت درج (Insert Mode)
به منظور اضافه کردن متن به فایل خود بایستی ابتدا وارد حالت درج بشویم. برای این کار کلید I را فشار میدهیم.
-- INSERT --
اکنون میتوانیم متن دلخواه خود را وارد کنیم:
The quick brown fox jumped over the lazy dog.
برای خروج از حالت درج، کلید Esc را فشار دهید.
ذخیره کار خود
برای ذخیره تغییرات ایجاد شده در فایل، بایستی زمانی که در حالت فرمان (Command Mode) هستیم، فرمان :w را وارد کنیم و Enter را فشار دهیم. در این صورت فایل ذخیره میشود و ما پیام تایید دریافت میکنیم.
درباره فرشید نوتاش حقیقت
همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرمافزارهای آزاد/ متنباز و سیستمعامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.
نوشتههای بیشتر از فرشید نوتاش حقیقتاین سایت از اکیسمت برای کاهش جفنگ استفاده میکند. درباره چگونگی پردازش دادههای دیدگاه خود بیشتر بدانید.
دیدگاهتان را بنویسید