منبع اصلی نوشتار زیر در این لینک قرار دارد

حالت vi و emacs


وضعیت‌های Emacs و Vi در Bash

دو گزینه‌ای که می‌توانند با فرمان set تنظیم بشوند و تا اندازه‌ای برای کاربر جالب خواهند بود، ‎"-o vi"‎ و ‎"-o emacs"‎ می‌باشند. همچون تمام فرمانهای ویرایش محیط اینها می‌توانند در اعلان فرمان تایپ بشوند یا در فایل مناسب درج گردند.

وضعیت Emacs

  • ‎$ set -o emacs‎
  • در محیط bash این وضعیت معمولاً حالت پیش‌فرض ویرایش است و به معنای آن است که شما برای حرکت اشاره‌گر، بریدن و چسباندن متن، یا خنثی نمودن ویرایش قادر به استفاده از فرمانهایی هستید که در Emacs وجود دارند (تعریف شده در کتابخانه Readline) .

  • فرمانهای مورد استفاده در وضعیت Emacs پوسته bash:
    • ctrl-a حرکت اشاره‌گر به ابتدای سطر
    • ctrl-e حرکت اشاره‌گر به انتهای سطر
    • meta-b حرکت اشاره‌گر یک کلمه به عقب
    • meta-f حرکت اشاره‌گر یک کلمه به جلو
    • ctrl-w بریدن آخرین کلمه
    • ctrl-u بریدن هر چیز قبل از اشاره‌گر
    • ctrl-k بریدن هر چیز بعد از اشاره‌گر
    • ctrl-y چسباندن آخرین مورد بریده شده
    • ctrl-_ بی اثر کردن
    • توجه: ‎ctrl-‎ یعنی نگه داشتن کنترل، ‎meta-‎ یعنی نگه داشتن meta (که در آن meta معمولاً کلید alt یا escape است).
    • یک ترکیب ‎ctrl-u‎ برای بریدن سطر که با ‎ctrl-y‎ همراه گردد می‌تواند بسیار مفید باشد. اگر شما در میانه تایپ یک فرمان هستید و لازم است برای بازیابی اطلاعات بیشتر به اعلان بازگردید، می‌توانید از ‎ctrl-u‎ برای ذخیره آنچه تایپ کرده‌اید استفاده نمایید و پس از به دست آوردن اطلاعاتِ مورد نیاز، ترکیب ‎ctrl-y‎ آنچه را بریده بودید بازیابی خواهد کرد.

وضعیت Vi

  • ‎$ set -o vi‎
  • وضعیت vi موقعی که در اعلان bash هستید، استفاده از فرمانهای مانند vi را میسر می‌کند. وقتی این وضعیت را تنظیم کنید در آغاز در وضعیت درج خواهید بود (قادر به تایپ کردن در اعلان فرمان، برخلاف موقعی که وارد vi می‌شوید). با فشردن کلید escape وارد حالت دستوری می‌شوید.
  • فرمانهای قابل استفاده در وضعیت Vi در bash:
    • h حرکت اشاره‌گر به چپ
    • l حرکت اشاره‌گر به راست
    • A حرکت اشاره‌گر به به انتهای سطر و قرار گرفتن در حالت درج
    • 0 (صفر) حرکت اشاره‌گر به ابتدای سطر (در حالت درج قرار نمی‌گیرد)
    • i رفتن به حالت درج در محل فعلی
    • a رفتن به وضعیت درج بعد از کاراکتر فعلی
    • dd حذف سطر (ذخیره شده برای چسباندن)
    • D حذف متن بعد از محل فعلی (ذخیره شده برای جسباندن)
    • p چسباندن متنی که حذف شده بود
    • j حرکت به بالا میان تاریخچه فرمانها
    • k حرکت به پایین میان تاریخچه فرمانها
    • u خنثی نمودن


CategoryShell

set-o-vi-emacs (آخرین ویرایش ‎2013-07-15 13:16:33‎ توسط static-173-71-130-68)