BASHRUN(1) User Manuals BASHRUN(1)

bashrun - راه‌انداز برنامه‌ها و ابزار اجرای دستورات مبتنی بر بش

bashrun [گزینه‌ها]

bashrun یک راه‌انداز ساده برنامه‌ها برای X11 است. این ابزار یک نشست bash را درون یک پنجره کوچک XTerminal اجرا می‌کند و به‌راحتی تمام قابلیت‌های متداول bash مانند readline، تکمیل با کلید Tab و تاریخچه را فراهم می‌سازد، در حالی که ویژگی‌های بیشتری مانند نشانک‌ها (bookmarks)، گرداننده‌های مبتنی بر عبارات باقاعده (regexp)، جستجو در فرهنگ لغت و جستجوی گوگل را نیز اضافه می‌کند.

bashrun بسته به این‌که آیا xdotool(1) روی سیستم نصب شده باشد یا خیر، دو حالت عملکرد پایه را ارائه می‌دهد.

اگر xdotool(1) در دسترس باشد، پنجره ترمینال میزبان نشست bash در پس‌زمینه و پنهان از دید در حال اجرا باقی می‌ماند. فراخوانی bashrun یا bashrun --show پنجره را نمایان کرده و فوکوس را به آن می‌دهد؛ پس از صدور یک دستور، پنجره ترمینال دوباره از دید پنهان خواهد شد. این روش زمان راه‌اندازی را کاهش داده و در منابع سیستم صرفه‌جویی می‌کند.

اگر xdotool(1) نصب نشده باشد، در هر بار فراخوانی یک نمونه جدید ایجاد می‌شود و بلافاصله پس از اجرای اولین دستور خاتمه می‌یابد.

چاپ اطلاعات نسخه
چاپ اطلاعات نحوه استفاده
شروع در حالت اشکال‌زدایی (debug)

اگر xdotool(1) در دسترس باشد، گزینه‌های زیر یک نمونه در حال اجرای bashrun را از فراخوانی‌های بعدی کنترل می‌کنند. توجه داشته باشید که اگر نمونه قبلی از bashrun یافت نشود، گزینه‌های --show، --toggle، --restart، --su و --debug یک نشست جدید bashrun را آغاز خواهند کرد.

نمایش پنجره و فوکوس روی آن
پنهان کردن پنجره
تغییر وضعیت نمایان یا پنهان بودن پنجره
خاتمه دادن به یک فرآیند موجود bashrun
راه‌اندازی مجدد bashrun (برای اعمال تغییرات فایل پیکربندی الزامی است)
اجرای دستور با دسترسی‌های ریشه (root). پنجره ترمینال bashrun را برای ورود گذرواژه باز می‌کند.
تایپ متن در bashrun و فراخوانی توالی کلیدها از راه دور. برای نحو ساختاری <keyseq>، به دستور key در xdotool(1) مراجعه کنید.
چاپ شناسه پنجره (window id) ترمینال
صبر کردن تا زمانی که پنجره ترمینال پنهان (unmapped) شود
تغییر وضعیت حالت اشکال‌زدایی

اجرای دستورات ساده سرراست است. پوسته گسترش‌های معمول را انجام می‌دهد و دستور حاصل مطابق با کنش درخواستی و اولویت‌های کاربر پردازش و راه‌اندازی می‌شود.

چندین دستور که با ; از هم جدا شده‌اند به همین ترتیب متوالی پردازش می‌شوند.

اگر دستورات با یک علامت لوله (|) یا با عملگرهای منطقی || یا && جدا شوند، رفتار bashrun تفاوت چشمگیری با رفتار معمول پوسته خواهد داشت. برای پوسته bashrun، هر دستور ساده در یک عبارت مرکب به گونه‌ای به نظر می‌رسد که گویی بلافاصله با موفقیت پایان یافته است. این بدان معنی است که جدا کردن دستورات با && یا | عملاً معادل استفاده از ; است. جدا کردن دستورات با || مانع از اجرای دستورات سمت راست عبارت خواهد شد.

برای دور زدن این رفتار، کاراکترهای ;، & و | را می‌توان با یک کاراکتر بک‌اسلش (\) اسکیپ کرد. لطفاً توجه داشته باشید که در این حالت قواعد ترمینال تنها بر اساس نام دستور اول اعمال می‌شوند.

برای نمونه، دستوری مانند


$ cat textfile | wc -l <term-page>

آن‌طور که در نظر گرفته شده کار نخواهد کرد و در عوض خروجی هر دو دستور را در ترمینال‌های جداگانه صفحه‌بندی می‌کند، بدون این‌که لوله‌ای میان دستورات ایجاد شود. برای این‌که تعداد خطوط موجود در textfile مطابق انتظار در یک پنجره واحد ترمینال صفحه‌بندی شود، باید از دستور زیر استفاده کنید:


$ cat textfile \| wc -l <term-page>

ویرایش چندخطی در bashrun کار نمی‌کند. اگر احیاناً بستن علامت نقل‌قول (quote) را در خط فرمان فراموش کنید، bashrun از شما می‌خواهد که C-c را فشار دهید. پس از این کار ممکن است آخرین خط تاریخچه شما نامعتبر شود.

برای اجرای دستورات در زمینه نشست پوسته bashrun به جای پردازش آن‌ها توسط bashrun، از کنش <pass> (پیش‌فرض: M-w) استفاده کنید.

کلیدهای میانبر را می‌توان در فایل پیکربندی صفحه‌کلید $XDG_CONFIG_HOME/bashrun/keys پیکربندی کرد. این فایل شامل دستورالعمل‌های keymap و تعاریف keybinding است.

دستورالعمل keymap مشخص می‌کند که تعاریف بعدی keybinding به کدام نگاشت کلید readline متصل شوند. ساختار دستوری به صورت زیر است:


KEYMAP <keymap>

که در آن <keymap> یکی از مقادیر emacs، vi-insert یا vi-command است.

ساختار دستوری برای تعاریف keybinding به صورت زیر است:


<action> <keyseq> [<keyname>]

که در آن <action> نام کنش bashrun است (بخش کنش‌ها (ACTIONS) در زیر را ببینید)، keyseq یک توالی کلید معتبر در readline(1) است، و <keyname> یک نام اختیاری و خوانا برای توالی کلید است (که برای نمایش میانبرها به کاربر استفاده می‌شود).

لطفاً توجه داشته باشید که تمام توالی‌های کلیدی که با C-x[0-9] شروع می‌شوند و همچنین کاراکترهای دقیق \201 تا \209 برای استفاده داخلی رزرو شده‌اند و قابل استفاده نیستند.

خطوطی که با # شروع می‌شوند توضیح (کامنت) هستند و نادیده گرفته می‌شوند.

این بخش تمام کنش‌هایی را که می‌توان به توالی‌های کلید متصل کرد فهرست می‌کند. برای نمایش کلیدهای میانبر فعلی، از کنش <bashrun-bindings> (پیش‌فرض: F1) استفاده کنید.

خروج از bashrun. نشست پوسته bashrun را خاتمه می‌دهد.
پنهان کردن پنجره (با استفاده از xdotool) یا خروج.
اجرای دستور در زمینه نشست پوسته bashrun؛ بررسی و مدیریت دستور را دور می‌زند.
اجرای دستور.
اجرای دستور در یک ترمینال.
اجرای دستور در یک ترمینال و باز نگه‌داشتن آن پس از پایان.
اجرای دستور در یک ترمینال و صفحه‌بندی خروجی با استفاده از PAGER.
اجرای دستور با دسترسی ریشه (root). ابتدا گذرواژه از شما پرسیده می‌شود.
اجرای دستور با دسترسی ریشه در یک ترمینال.
اجرای دستور با دسترسی ریشه در یک ترمینال و باز نگه‌داشتن آن پس از پایان.
اجرای دستور با دسترسی ریشه در یک ترمینال و صفحه‌بندی خروجی با استفاده از PAGER.
نمایش صفحه راهنمای دستور در یک ترمینال.
نمایش صفحه info برای دستور در یک ترمینال.
صفحه‌بندی راهنمای دستورات داخلی بش (bash builtins) در ترمینال. اگر دستور از دستورات داخلی بش نباشد، تلاش می‌کند تا صفحه راهنما (man) را نشان دهد.
کپی کردن خروجی دستور به کلیپ‌بورد (با استفاده از xclip).
کپی کردن خروجی دستور و الصاق آن در پنجره زیر نشانگر ماوس (با استفاده از xclip و xdotool).
هدایت محتویات کلیپ‌بورد به ورودی دستور از طریق پایپ و کپی کردن خروجی به کلیپ‌بورد (با استفاده از xclip).
هدایت محتویات کلیپ‌بورد به ورودی دستور از طریق پایپ و کپی خروجی در کلیپ‌بورد، سپس الصاق آن در پنجره زیر نشانگر ماوس (با استفاده از xclip و xdotool).
مرور کلمات در BROWSER، بخش فایل پیکربندی (CONFIGURATION FILE) را ببینید.
جستجوی کلمات در گوگل با استفاده از BROWSER، بخش فایل پیکربندی (CONFIGURATION FILE) را ببینید.
جستجوی کلمات در فرهنگ لغت، نیازمند dict(1) یا ابزار مشابه است. برای استفاده از کلاینت دیگر، از گزینه پیکربندی DICT_CLIENT استفاده کنید، بخش فایل پیکربندی (CONFIGURATION FILE) را ببینید.
نمایش کلیدهای میانبر فعلی در یک ترمینال.
نمایش این راهنما در یک ترمینال.
نمایش HANDLERS فعلی در یک ترمینال.
فعال یا غیرفعال کردن پیام‌های اشکال‌زدایی. متغیر KEEP_OPEN را تنظیم کرده و در صورت پشتیبانی، اندازه ترمینال را به 80x24 تغییر می‌دهد.
جابه‌جایی بین اندازه‌های "کوچک" (small) و "بزرگ" (large) (فقط برای xterm و rxvt*). بخش فایل پیکربندی (CONFIGURATION FILE) را ببینید.
تغییر اندازه ترمینال (فقط برای xterm و rxvt*).

فایل پیکربندی کاربر $XDG_CONFIG_HOME/bashrun/rc به عنوان فایل rc برای نشست bash مورد استفاده توسط bashrun بارگذاری (source) می‌شود. به غیر از متغیرهای محیطی شرح داده شده در این‌جا، می‌توانید هر چیزی را که معمولاً به فایل ~/.bashrc خود اضافه می‌کنید به این فایل نیز بیافزایید. به عنوان مثال، ممکن است بخواهید توابع یا نام‌های مستعار اضافه کنید، کلیدهای تابعی دیگر را اختصاص دهید یا به سادگی فایل ~/.bashrc موجود خود را source کنید.

لطفاً اطمینان حاصل کنید که با تنظیمات tty/bash و میانبرهای رزرو شده توسط bashrun تداخلی ایجاد نمی‌کنید. بخش‌های فایل پیکربندی صفحه‌کلید (KEYBOARD CONFIGURATION FILE) و متغیرهای محیطی (ENVIRONMENT) را ببینید یا نگاهی به $PREFIX/share/bashrun/bashrc بیندازید.

XTERM=[xterm|rxvt|urxvt|urxvtc|mrxvt|aterm|mlterm] (پیش‌فرض: xterm)

ترمینال مورد استفاده برای bashrun.

XTERM_OPTIONS=[...] (پیش‌فرض: خالی)

گزینه‌های خط فرمان اضافی برای ارسال به ترمینال.

KEEP_OPEN=[yes|no] (پیش‌فرض: no)

در صورت تنظیم روی "yes"، ترمینال پس از هر دستور پنهان نخواهد شد. فراخوانی‌های بعدی bashrun یا bashrun --show روی پنجره ترمینال فوکوس می‌کنند، و <abort> یا bashrun --hide فوکوس را از پنجره برداشته و به برنامه‌ای که قبلاً فوکوس داشته است بازمی‌گردانند.

SMALL_COLUMNS=n, SMALL_LINES=n (پیش‌فرض: 40x1)

اندازه ترمینال در حالت پیش‌فرض "کوچک" (small).

LARGE_COLUMNS=n, LARGE_LINES=n (پیش‌فرض: 40x8)

اندازه ترمینال در حالت "بزرگ" (large) که از طریق <toggle-size> تغییر می‌کند (فقط xterm و rxvt*).

FGCOLOR=color, BGCOLOR=color (پیش‌فرض: grey on black)

رنگ پیش‌زمینه و پس‌زمینه ترمینال. برای مقادیر ممکن به مستندات ترمینال خود مراجعه کنید.

PS1=[...] (پیش‌فرض: '>')

رشته اعلان (prompt)، به bash(1) مراجعه کنید.

HISTCONTROL (پیش‌فرض: ignoredups:erasedups)

تنظیمات تاریخچه، به bash(1) مراجعه کنید.

COMPLETION_TYPE=[complete|menu-complete|quiet-complete] (پیش‌فرض: menu-complete)

برای complete و menu-complete، به bash(1) مراجعه کنید. حالت quiet-complete از complete استفاده کرده و علاوه بر آن متغیرهای readline زیر را تنظیم می‌کند:


page-completions off
print-completions-horizontally on
completion-query-items -1

حالت quiet-complete زمانی مفید است که می‌خواهید تکمیل خودکار رفتاری شبیه به complete داشته باشد اما خطوط اعلان readline مزاحم آن نشوند. اگرچه گزینه‌های تکمیل در واقع چاپ می‌شوند، اما در یک ترمینال تک‌خطی عملاً آن‌ها را نخواهید دید.

ALTERNATIVE_COMPLETION_TYPE=[complete|menu-complete|quiet-complete] (پیش‌فرض: complete)

نوع تکمیل خودکار برای جابه‌جایی به آن در صورتی که LINES >= COMPLETION_THRESHOLD باشد، توضیحات زیر را ببینید.

COMPLETION_THRESHOLD=[num_lines] (پیش‌فرض: LARGE_LINES)

اگر تعداد LINES در ترمینال برابر یا بیشتر از این مقدار باشد، به ALTERNATIVE_COMPLETION_TYPE تغییر وضعیت می‌دهد. اگر مقدار کمتر از ۱ باشد، این قابلیت غیرفعال می‌شود.

(نکته: تنظیمات پیش‌فرض برای این گزینه‌ها منجر به استفاده از menu-complete در حالت "کوچک" و complete در حالت "بزرگ" می‌شود.)

USE_EXTENDED_BASH_COMPLETION=[yes|no] (پیش‌فرض: no)

آیا از تکمیل خودکار گسترش‌یافته bash استفاده شود یا خیر.

EXTENDED_BASH_COMPLETION_PATH=[path]

(پیش‌فرض: /etc/profile.d/bash_completion.sh) مسیر اسکریپتی که تکمیل خودکار گسترش‌یافته bash را فعال می‌کند. به مستندات توزیع خود مراجعه کنید.

POST_MAP_COMMAND=[command] (پیش‌فرض: تنظیم نشده)

دستوری که مستقیماً پس از نمایان ساختن پنجره توسط xdotool اجرا می‌شود. به عنوان مثال هنگام اجرای xcompmgr می‌توانید با استفاده از دستور transset -a 0.75 شفافیت پنجره را روی ۷۵٪ تنظیم کنید.

DICT_CLIENT=[command] (پیش‌فرض: dict --pager $PAGER)

کلاینت دیکشنری مورد استفاده برای کنش <dict-lookup>. در صورت لزوم، کلاینت خود را به TERMINAL_RULES اضافه کنید.

DIRHANDLER=[command] (پیش‌فرض: تنظیم نشده)

دستوری که هنگام وارد کردن مسیر یک دایرکتوری و در صورت خوانا بودن آن دایرکتوری اجرا می‌شود. مسیر به عنوان اولین آرگومان به دستور مشخص‌شده ارسال خواهد شد.

BROWSER=[command] (پیش‌فرض: firefox)

مرورگر مورد استفاده برای جستجوی گوگل و گرداننده‌های پیش‌فرض (توضیحات زیر را ببینید).

GOOGLE_FALLBACK=[yes|no] (پیش‌فرض: no)

اگر روی yes تنظیم شود، در صورتی که دستور واردشده قابل اجرا نباشد یا توسط HANDLERS یا DIRHANDLER مدیریت نشود، bashrun به طور خودکار خط فرمان را در گوگل جستجو می‌کند.

TERMINAL_RULES=('RUN:[progs]' 'PAGE:[progs]' 'HOLD:[progs]')

آرایه‌ای شامل رشته‌های قواعد که تعیین می‌کنند کدام برنامه‌ها باید همیشه در یک پنجره ترمینال اجرا شوند. فهرستی از نام برنامه‌ها را که با فاصله از هم جدا شده‌اند بعد از : در رشته قاعده مورد نظر وارد کنید. برنامه‌های موجود در قاعده RUN همیشه در یک ترمینال اجرا می‌شوند. برنامه‌های موجود در قاعده PAGE خروجی‌شان در PAGER صفحه‌بندی می‌شود. برای برنامه‌های موجود در قاعده HOLD، پنجره ترمینال پس از پایان برنامه باز می‌ماند.

مثال:


TERMINAL_RULES=(
"RUN:watch top htop less man info ncftp links"
"HOLD:ps su"
"PAGE:echo ls which uname lsusb lshal lsmod fortune"
)

HANDLERS=([regexp handler]...) (پیش‌فرض‌ها: در زیر آمده است)

آرایه‌ای شامل عبارات باقاعده bash و رشته‌های گرداننده مرتبط با آن‌ها. اگر خط فرمان واردشده در bashrun قابل اجرا نباشد (یعنی یک تابع، نام مستعار یا فایل اجرایی در PATH نباشد)، آن‌گاه تلاشی برای تطبیق پی‌درپی خط فرمان با الگوهای موجود در HANDLERS صورت می‌گیرد. اگر الگویی مطابقت داشته باشد، یا رشته گرداننده پس از الگو به عنوان دستور اجرا استفاده می‌شود و خود خط فرمان به عنوان آرگومان به آن ارسال می‌گردد، یا اگر عبارت باقاعده شامل زیرالگوهایی درون پرانتز باشد، تلاشی برای جایگزینی رخدادهای $[1-9] در رشته گرداننده با محتویات زیرالگوی منطبق متناظر صورت می‌گیرد. سپس رشته گرداننده تغییریافته به عنوان خط فرمان بدون افزودن آرگومان‌های بیشتر استفاده می‌شود.

اگر تعداد زیرالگوهای منطبق برای جایگزینی هر رخداد $[0-9] در رشته گرداننده کافی نباشد، گرداننده اجرا نخواهد شد و یک پیام خطا برای کاربر صادر می‌شود.

رشته گرداننده علاوه بر این می‌تواند با یک عبارت آزمون فایل پیشوند شود که مجموعه‌ای از آزمون‌های فایل را تعیین می‌کند که باید پیش از اعمال گرداننده روی محتویات خط فرمان انجام شوند. اگر هر یک از این آزمون‌ها شکست بخورد، گرداننده اعمال نخواهد شد.

عبارت آزمون مجموعه‌ای از کاراکترها است که متناظر با عملگرهای آزمون تک‌عضوی فایل تعریف‌شده در بخش عبارات شرطی (CONDITIONAL EXPRESSIONS) راهنمای bash(1) است و با علامت : خاتمه می‌یابد. آزمون‌های فایل را می‌توان با قرار دادن یک پیشوند ! منفرد نقیض کرد. به عنوان مثال، یک گرداننده با پیشوند f!x: تنها زمانی اعمال می‌شود که خط فرمان مسیری به یک فایل معمولی و غیرقابل اجرا باشد.

به عنوان مثال، برای تعریف ارتباط فایل‌ها برای فایل‌های jpeg می‌توانید از یک الگو و گرداننده مانند زیر استفاده کنید:


'\.jpe?g$' 'f!x:gimp'

این الگو خطوطی را که به .jpg یا .jpeg ختم می‌شوند با استفاده از gimp(1) باز می‌کند. آزمون فایل تضمین می‌کند که همچنان می‌توانید خطی مانند


$ convert foo.tif foo.jpg

را تایپ کنید و پردازش نشود، اگرچه این خط نیز به .jpg ختم می‌شود. این به این دلیل است که عبارت آزمون روی کل خط اعمال می‌شود، بنابراین آزمون f!x ناموفق خواهد بود.

برای باز کردن خطوطی که با http یا https شروع می‌شوند در BROWSER، خطی مانند زیر را به آرایه HANDLERS اضافه کنید:


'^https?' "$BROWSER"

برای پیاده‌سازی میانبرهای وب شبیه به مرورگر konqueror در KDE، از الگویی حاوی زیرالگو مانند زیر استفاده کنید:


'^gg:(.+)'

و از خطی مانند این به عنوان رشته گرداننده استفاده کنید:


"$BROWSER 'http://www.google.com/search?q=\$1'"

ابزار bashrun بخش $1 در رشته گرداننده را با هر آن‌چه کاربر پس از gg: وارد کرده باشد جایگزین خواهد کرد.

برای مثال‌های بیشتر به فایل پیکربندی پیش‌فرض کاربر مراجعه کنید. اگر گرداننده‌های شما طبق انتظار کار نمی‌کنند، حالت اشکال‌زدایی را فعال کنید تا متوجه شوید چه روندی در جریان است.

اگر از فایل پیکربندی پیش‌فرض استفاده شود یا HANDLERS در فایل پیکربندی کاربر تنظیم نشده باشد، گرداننده‌های زیر به طور پیش‌فرض تنظیم می‌شوند:

^www, ^https?
باز کردن خطوط شروع‌شده با www، http یا https در BROWSER
^gg:(.+)
جستجو در گوگل
^ggl:(.+)
جستجو در گوگل با استفاده از "I'm feeling lucky"
^fm:(.+)
جستجوی پروژه در freshmeat.net
^sf:(.+)
مشاهده صفحه پروژه در sourceforge.net
^sfw:(.+)
مشاهده وب‌سایت پروژه در sourceforge.net
\.jpe?g$
باز کردن فایل‌های JPEG در gimp، با استفاده از f!x به عنوان عبارت آزمون
^ftp:(.+)
شروع ncftp $1 در xterm
^\?(.+)
صفحه‌بندی $1 --help در xterm
^\?\?(.+)
نمایش man $1 در xterm

BOOKMARKS=([bookmark]...) (پیش‌فرض: مثال را ببینید)

آرایه‌ای از رشته‌ها که به گزینه‌های ممکن برای تکمیل دستور اضافه می‌شوند. اطمینان حاصل کنید که برای هر یک از رشته‌هایی که به عنوان نشانک استفاده می‌شوند، یک گرداننده در HANDLERS تعریف شده باشد. مثال:


BOOKMARKS=(
www.google.com
www.archlinux.org
www.slashdot.org
www.linux.com
http://bashrun.sourceforge.net
)

LOGFILE=[path] (پیش‌فرض: /dev/null)
خروجی دستورات (خروجی استاندارد و خطای استاندارد) به انتهای LOGFILE الحاق می‌شود. اگر فایل وجود نداشته باشد، bashrun برای ایجاد آن تلاش خواهد کرد. اگر قابل نوشتن نباشد، خروجی در عوض به /dev/null هدایت می‌شود.

ثبت وقایع (لاگینگ) برای دستوراتی که با دسترسی ریشه اجرا می‌شوند غیرفعال است.

$XDG_CONFIG_HOME/bashrun/rc

فایل پیکربندی کاربر. اگر وجود نداشته باشد، ایجاد شده و با پیکربندی پیش‌فرض مقداردهی اولیه می‌شود.

$XDG_CONFIG_HOME/bashrun/keys

فایل پیکربندی صفحه‌کلید. اگر وجود نداشته باشد، ایجاد شده و با کلیدهای میانبر پیش‌فرض مقداردهی اولیه می‌شود.

اگر از xdotool(1) استفاده می‌شود، برای اعمال تغییرات این فایل‌ها باید bashrun مجدداً راه‌اندازی شود.

اگر XDG_CONFIG_HOME تنظیم نشده یا خالی باشد، در عوض از ~/.config استفاده خواهد شد.

$XDG_DATA_HOME/bashrun/history

فایل تاریخچه استفاده‌شده توسط bashrun. اگر XDG_DATA_HOME تنظیم نشده یا خالی باشد، در عوض از ~/.local/share استفاده خواهد شد.

$XDG_CACHE_HOME/bashrun/

دایرکتوری فایل‌های موقت ایجاد شده توسط bashrun. اگر XDG_CACHE_HOME تنظیم نشده یا خالی باشد، در عوض از ~/.cache استفاده خواهد شد.

مشخصه‌های مدیر پنجره WM_CLASS و WM_NAME روی "bashrun" تنظیم می‌شوند. این مشخصه‌ها می‌توانند با امکانات مدیر پنجره شما برای پیکربندی بیشتر ظاهر bashrun استفاده شوند. توجه داشته باشید که اگر از xdotool(1) استفاده می‌کنید، توصیه می‌شود پنجره bashrun را چسبان (sticky) کنید تا مطمئن شوید همیشه در دسکتاپ فعلی ظاهر می‌شود.
گزینه پوسته extdebug فعال است. هر بار که خط فرمانی صادر می‌شود یک تله (trap) روی DEBUG تنظیم می‌گردد. این تله پس از پردازش خط فرمان دوباره غیرفعال می‌شود تا از تداخل آن با ویرایش تعاملی خط فرمان جلوگیری کند.

ارسال ^D (eof) روی یک خط خالی در صورتی که از xdotool(1) استفاده شود، پوسته را خاتمه نمی‌دهد. به stty(1) مراجعه کنید.

کنترل جریان XON/XOFF (تعلیق/ازسرگیری ترمینال از طریق C-s و C-q) غیرفعال است. در صورت استفاده از میانبرهای پیش‌فرض، C-s در بافر تاریخچه به سمت جلو جستجو می‌کند (پیش‌فرض readline) در حالی که C-q به کنش <quit> متصل است. به stty(1) مراجعه کنید.

برخی از ترمینال‌ها نیاز به نقل‌قول (quoting) خط فرمان در حال اجرا دارند. این بدان معنی است که اجرای خطوط فرمان با تعداد زیادی نقل‌قول ممکن است در این ترمینال‌ها با شکست مواجه شود، هرچند دو سطح از نقل‌قول معمولاً باید کار کند. می‌توانید از حالت اشکال‌زدایی برای یافتن دقیق دلیل و چگونگی شکست یک دستور با نقل‌قول‌های سنگین استفاده کنید.

تنها xterm(1) و *rxvt(1) از تغییر اندازه با استفاده از میانبرها پشتیبانی می‌کنند. مشاهده شده است که xterm گاهی اوقات در حین تغییر اندازه دچار انجماد (freeze) می‌شود که برای بستن آن دست‌کم به سیگنال SIGTERM نیاز است.

برای XTerm، منبع allowWindowOps باید روی True تنظیم شود تا امکان تغییر اندازه پنجره فراهم گردد. این قابلیت از نسخه 0.14 bashrun در پیکربندی پیش‌فرض xterm فعال شده است. توجه داشته باشید که تنظیم allowSendEvents روی True، منبع allowWindowOps را در XTerm اجباراً غیرفعال خواهد کرد.

برای این‌که کلیدهای میانبر متا (پیشوند با \e یا \M-) با کلید Alt یا Meta کار کنند، ترمینال باید طوری پیکربندی شود که کلید meta را به یک escape ترجمه کند. برای XTerm، این ویژگی را می‌توان با تنظیم منبع metaSendsEscape روی True فعال کرد. این ویژگی از نسخه 0.14 bashrun در پیکربندی پیش‌فرض xterm فعال است. برای URxvt، منبع meta8 باید روی False تنظیم شود (که تنظیم پیش‌فرض URxvt است).

لطفاً هرگونه خطایی را که پیدا می‌کنید با استفاده از نشانی رایانامه زیر گزارش دهید. نظرات و پیشنهادات نیز با کمال میل پذیرفته می‌شوند.

Henning Bekel <h.bekel at googlemail dot com> (انگلیسی و آلمانی)

میزبانی Sourceforge، طراحی وب‌سایت، بسته‌بندی ArchLinux
پیشنهادات، کد، گزارش خطاها
گزارش خطاها، بسته‌بندی OpenSuse
گزارش خطاها
پیشنهادات، کد
پیشنهادات، گزارش خطاها
پیشنهادات، گزارش خطاها

bashrun - http://bashrun.sourceforge.net

xdotool - http://www.semicomplete.com/projects/xdotool

dict - http://www.dict.org

Xorg(1), xterm(1), xdotool(1), dict(1), stty(1), bash(1), readline(3)

June 2009 Linux