TERMINOLOGY(1) Terminology man page TERMINOLOGY(1)

terminology - شبیه‌ساز ترمینال نوشته‌شده با EFL (کتابخانه‌های بنیاد Enlightenment)

terminology [گزینه‌ها]

این یک شبیه‌ساز ترمینال مبتنی بر EFL به‌همراه قابلیت‌ها و امکانات جذاب جانبی است. این برنامه دارای ویژگی‌های متعددی از جمله پشتیبانی از تقسیم صفحه ترمینال، پشتیبانی از تب‌ها، پیش‌نمایش آیکون برای فایل‌ها و موارد دیگر است...

دستور مورد نظر برای اجرا را مشخص می‌کند. پیش‌فرض $SHELL است (یا شل مشخص‌شده در passwd یا /bin/sh). هنگامی که همراه با -S/--split استفاده شود، هر آرگومان به‌عنوان دستوری برای یک بخش تقسیم‌شده استفاده می‌شود و آرگومان‌های اضافی نادیده گرفته می‌شوند. با ۳ بخش تقسیم‌شده، یکی عمودی با یک دستور در سمت راست، و یک تقسیم افقی در سمت چپ که فقط در بخش پایینی دستور دارد، باید از آرگومان‌های زیر استفاده شود: --split v-h-- -e command1 $SHELL command2
تغییر به دایرکتوری مشخص‌شده برای اجرای دستور ترمینال. نوع: STR.
استفاده از تم edje نام‌برده شده یا مسیر فایل تم. نوع: STR.
استفاده از فایل مشخص‌شده به‌عنوان تصویر پس‌زمینه برای terminology. نوع: STR.
ابعاد و موقعیت هندسی ترمینال مورد استفاده (مانند 80x24 یا 80x24+50+20 و غیره). نوع: STR.
تنظیم نام پنجره. نوع: STR.
تنظیم نقش پنجره (role). نوع: STR.
برنامه Terminology می‌تواند با تقسیم‌بندی‌های بازشده به شرح زیر آغاز به کار کند. آرگومان‌ها رشته‌ای از نویسه‌های زیر هستند:
-S v ترمینال را به‌صورت عمودی تقسیم می‌کند
-S h ترمینال را به‌صورت افقی تقسیم می‌کند
- جایگاهی را برای یک شل یا دستور هنگام استفاده همراه با
--exec/-e مشخص می‌کند
مثال‌ها:
______
| | |
$ terminology -S v |__|__|


______
|_____|
$ terminology -S h |_____|


______
|__| |
$ terminology -S vh |__|__|


______
| |__|
$ terminology -S v-h |__|__|


______
$ terminology -S vh--h |__|__|
hv--v |__|__|
نوع: STR.

تنظیم عنوان پنجره. نوع: STR.
تنظیم نام آیکون. نوع: STR.
تنظیم قلم (NAME/SIZE برای قلم‌های مقیاس‌پذیر، NAME برای قلم‌های بیت‌مپ). نوع: STR.
اجرای شل به‌عنوان یک شل ورود (login shell). نوع: BOOL.
تنظیم حالت بی‌صدا برای پخش ویدیو. نوع: BOOL.
تنظیم حالت چشمک‌زدن مکان‌نما. نوع: BOOL.
تنظیم حالت زنگ دیداری (visual bell). نوع: BOOL.
ورود به حالت تمام‌صفحه از بدو اجرا.
ورود به حالت کمینه‌شده (iconic) از بدو اجرا.
تبدیل شدن به یک پنجره مدیریت‌شده و بدون حاشیه.
تبدیل شدن به یک پنجره override-redirect.
بیشینه‌شدن پنجره از بدو اجرا.
اجرای Terminology بدون مدیر پنجره (wm).
عدم خروج از ترمینال هنگام پایان فرآیندِ دستور.
اجبار به اجرای تک‌برنامه‌ای در صورت فعال بودن حالت چندنمونه‌ای.
-2, --256color
تنظیم متغیر TERM روی xterm-256color به‌جای xterm.
تعیین اینکه پیوندها برجسته (highlight) شوند یا خیر. نوع: BOOL.
عدم نمایش ویزارد در زمان راه‌اندازی. نوع: BOOL.
ضریب مقیاس‌گذاری برای استفاده در رابط کاربری. نوع: DOUBLE.
استفاده از طرح رنگ (color scheme) مشخص‌شده. نوع: STR.
نمایش نسخه برنامه.
نمایش حق نشر (کپی‌رایت).
نمایش مجوز برنامه.
نمایش این پیام راهنما.

پیمایش صفحه terminology یک صفحه به بالا.
پیمایش صفحه terminology یک صفحه به پایین.
پیمایش terminology یک خط به بالا.
پیمایش terminology یک خط به پایین.
پیمایش terminology به ابتدای تاریخچه پیشین (backlog).
بازنشانی موقعیت پیمایش در terminology.
تغییر فوکوس به ترمینال قبلی درون یک پنجره هنگام استفاده از تقسیم‌بندی‌ها، یا رفتن به تب قبلی.
تغییر فوکوس به ترمینال بعدی درون یک پنجره هنگام استفاده از تقسیم‌بندی‌ها، یا رفتن به تب بعدی.
چسباندن انتخاب کلیپ‌بورد (ctrl+v/c).
چسباندن انتخاب اولیه (متن برجسته‌شده).
افزایش اندازه قلم به میزان یک واحد.
کاهش اندازه قلم به میزان یک واحد.
بازنشانی اندازه قلم.
کپی کردن متن برجسته‌شده در کلیپ‌بورد (مانند ctrl+c در برنامه‌های گرافیکی).
تغییر فوکوس به ترمینال قبلی درون یک پنجره هنگام استفاده از تقسیم‌بندی‌ها، یا رفتن به تب قبلی.
تغییر فوکوس به ترمینال بعدی درون یک پنجره هنگام استفاده از تقسیم‌بندی‌ها، یا رفتن به تب بعدی.
تغییر وضعیت نمایش نمای بندانگشتی (miniview) تاریخچه.
تنظیم عنوان تب.
ایجاد یک ترمینال جدید بر روی پنجره فعلی (تب‌ها).
راه‌اندازی نمونه جدیدی از terminology.
بستن ترمینال فعلی.
باز کردن جابه‌جاکننده تب (tab switcher).
تقسیم افقی ترمینال (یک ترمینال بالای دیگری).
تقسیم عمودی ترمینال (یک ترمینال سمت چپ دیگری).
ورود به حالت فرمان (ورود دستورها برای کنترل خود terminology).
چسباندن انتخاب اولیه (primary).
ورودی گروهی: ارسال ورودی به تمام ترمینال‌های مرئی در پنجره.
ورودی گروهی: ارسال ورودی به تمام ترمینال‌های پنجره.
کپی کردن انتخاب در انتخاب اولیه (primary).
فوکوس روی ترمینال بالایی.
فوکوس روی ترمینال پایینی.
فوکوس روی ترمینال سمت چپ.
فوکوس روی ترمینال سمت راست.
کپی انتخاب فعلی در کلیپ‌بورد.
چسباندن انتخاب فعلی کلیپ‌بورد.
رفتن به تب‌های ترمینال ۱ تا ۱۰.
افزایش اندازه قلم. توجه داشته باشید این ویژگی فقط روی قلم‌های مقیاس‌پذیر کار می‌کند.
کاهش اندازه قلم. توجه داشته باشید این ویژگی فقط روی قلم‌های مقیاس‌پذیر کار می‌کند.
بازنشانی قلم به تنظیمات پیش‌فرض ذخیره‌شده در پیکربندی.
نمایش قلم در اندازه بزرگ (بیت‌مپ 10x20، یا اندازه ۲۰ در قلم‌های مقیاس‌پذیر).

باز کردن منوهای کنترلی.
چسباندن انتخاب برجسته‌شده (انتخاب اولیه).
انتخاب و برجسته‌سازی متن.
ایجاد انتخاب بلوکی (block selection).
پیمایش به بالا یا پایین در تاریخچه.
بزرگ‌نمایی یا کوچک‌نمایی اندازه قلم.

برای ورود به حالت فرمان در terminology، کلیدهای Alt+Home را فشار دهید. در حال حاضر حالت فرمان دستورهای زیر را شناسایی می‌کند:

بازنشانی قلم به تنظیمات پیش‌فرض ذخیره‌شده در پیکربندی.
افزایش اندازه قلم. توجه داشته باشید این ویژگی فقط روی قلم‌های مقیاس‌پذیر کار می‌کند.
f-
کاهش اندازه قلم. توجه داشته باشید این ویژگی فقط روی قلم‌های مقیاس‌پذیر کار می‌کند.
نمایش قلم در اندازه بزرگ (بیت‌مپ 10x20، یا اندازه ۲۰ در قلم‌های مقیاس‌پذیر).
تنظیم اندازه ترمینال به ابعاد کاراکتری NxM (در صورت امکان). مانند g80x48 g40x20. اگر فقط یک عدد وارد شود، از میان‌برهای زیر استفاده خواهد شد: g0=80x24؛ g1=80x40؛ g2=80x60؛ g3=80x80؛ g4=120x24؛ g5=120x40؛ g6=120x60؛ g7=120x80؛ g8=120x120
بازنشانی پس‌زمینه (بدون رسانه).
تنظیم رسانه پس‌زمینه روی مسیر مطلق یک فایل (PATH).

علاوه بر مواردی که به‌همراه Terminology ارائه می‌شوند، تم‌ها را می‌توان در مسیر ~/.config/terminology/themes/ ذخیره کرد.

فهرست کردن محتویات دایرکتوری با امکانات و قابلیت‌های پیشرفته و جذاب
تنظیم میزان شفافیت پس‌زمینه
تغییر تصویر پس‌زمینه
نمایش درون‌خطی یک فایل چندرسانه‌ای یا URI
نمایش یک فایل چندرسانه‌ای یا URI در یک پنجره بازشو
صف‌بندی فایل‌های چندرسانه‌ای یا URI برای نمایش در پنجره بازشو
ارسال فایل‌ها به ترمینال (بسیار مفید هنگام کار با ssh)

[\033][}][COMMAND][\000]
یعنی:
۱. نویسه ESC (\033 یا 0x1b)
۲. نویسه }
۳... دنباله‌ای از نویسه‌های UTF8 به‌جز nul (\000 یا 0x00).
۴ نویسه \000 (بایت nul یا 0x00 برای نشان دادن پایان دنباله) برای مثال:
echo -n '\033}Hello world\000'

دستورها:

هر مقداری درون قلاب‌ها [] باید با محتوای مورد نظر (اعداد، رشته‌ها، مسیرها، نشانی‌های وب و غیره) جایگزین شود. مثال:

aa[PATH-OF-FILE] باید به چیزی مانند زیر تبدیل شود:
aa/tmp/file.png یا aa[true/false] باید به شکل زیر باشد:
aatrue یا
aafalse

---

pn[FULL-PATH-OR-URL]
نمایش فوری فایل رسانه‌ای/نشانی مورد نظر در یک پنجره بازشو.

pq[FULL-PATH-OR-URL]
قرار دادن نمایش فایل رسانه‌ای/نشانی مورد نظر در صف بازشو.

bt[FULL-PATH-OR-URL]
تنظیم موقت فایل رسانه‌ای/نشانی به‌عنوان پس‌زمینه ترمینال.

bp[FULL-PATH-OR-URL]
تنظیم دائمی فایل رسانه‌ای/نشانی به‌عنوان پس‌زمینه ترمینال.

at[on/true/yes/off/false/no]
تنظیم موقت وضعیت آلفا (شفافیت) ترمینال روی روشن یا خاموش.

ap[on/true/yes/off/false/no]
تنظیم دائمی وضعیت آلفا (شفافیت) ترمینال روی روشن یا خاموش.

qs
پرس‌وجوی اندازه شبکه و قلم. در ورودی استاندارد (stdin) مقادیر زیر نوشته خواهند شد:
W;H;FW;FH
که در آن W عرض شبکه ترمینال بر حسب کاراکتر است
که در آن H ارتفاع شبکه ترمینال بر حسب کاراکتر است
که در آن FW عرض ۱ خانه کاراکتر بر حسب پیکسل است
که در آن FH ارتفاع ۱ خانه کاراکتر بر حسب پیکسل است

is[CW;H;FULL-PATH-OR-URL]
درج رسانه کشیده‌شده (STRETCHED - جایی که تصویر برای پر کردن ناحیه خانه کشیده می‌شود) و تعریف ناحیه مورد انتظار خانه به عرض W خانه و ارتفاع H خانه، با تصویر/رسانه/نشانی اینترنتی.
که در آن C نویسه جایگزین برای شناسایی در متن‌های بعدی است، W عرض بر حسب خانه‌های کاراکتری (تا ۵۱۱)،
و H ارتفاع بر حسب خانه‌های کاراکتری است (تا ۵۱۱).


توجه داشته باشید که این دنباله گریز به‌تنهایی اثری ندارد و تنها بیانگر قصد آینده برای درج رسانه در ترمینال است. ترمینال انتظار یک شبکه WxH از "نویسه‌های جایگزین" را خواهد داشت، که هر دنباله از چنین نویسه‌های جایگزینی با یک دستور گریز ib آغاز شده و با یک دستور گریز ie پایان می‌یابد.


مقدار FULL-PATH-OR-URL برای تمام دستورهای i (is،
ic، if، it) می‌تواند به شکل زیر باشد:


/full/path/to/file.png


یا


/full/path/to/link0full/path/to/file.png


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


مثال:


printf("\ 33}is#5;3;%s 00"
"\ 33}ib#####\ 33}ie\0
"\ 33}ib#####\ 33}ie\0
"\ 33}ib#####\ 33}ie\0, "/tmp/icon.png");


توجه داشته باشید که # نویسه جایگزین است، و نویسه‌های بعدی # اگر درون دنباله‌های گریز آغاز/پایان قرار گیرند، با رسانه مشخص‌شده در دنباله گریز درج رسانه جایگزین خواهند شد.

ic[CW;H;FULL-PATH-OR-URL]
درج رسانه وسط‌چین‌شده (CENTERED - وسط‌چین در ناحیه خانه). در غیر این صورت پارامترها با دستور is یکسان هستند، اما نسبت ابعاد تصویر حفظ شده و اطراف آن با فضای خالی پر می‌شود.

if[CW;H;FULL-PATH-OR-URL]
درج رسانه پرکننده (FILLED - پر کردن کل ناحیه خانه). در غیر این صورت پارامترها با دستور is یکسان هستند اما تضمین می‌کند که کل ناحیه مانند یک پس‌زمینه پر شود، حتی اگر رسانه از مرزهای خانه فراتر رفته و برش بخورد.

it[CW;H;FULL-PATH-OR-URL]
درج رسانه بندانگشتی (THUMB - ناحیه خانه بندانگشتی). در غیر این صورت پارامترها با دستور is یکسان هستند، اما از تولید تصویر بندانگشتی برای ساخت نسخه‌ای سریع در بارگذاری ولی با وضوح پایین (کَش‌شده) از رسانه استفاده می‌کند.

it[CW;H;LINK\nFULL-PATH-OR-URL]
درج رسانه بندانگشتی دارای پیوند (ناحیه خانه بندانگشتی). در غیر این صورت پارامترها با دستور is یکسان هستند، اما از تولید بندانگشتی برای ساخت نسخه‌ای سریع در بارگذاری ولی با وضوح پایین (کَش‌شده) از رسانه استفاده می‌کند.
LINK یک مسیر (یا نشانی اینترنتی) است که هنگام کلیک کاربر روی تصویر بندانگشتی باز می‌شود.

ij[CW;H;FULL-PATH\nGROUP][\n][cmd1][\r\n][cmd2]...
درج شیء EDJE با مسیر فایل و نام گروه داده‌شده.
فهرست دستورها (و جداکننده فاصله خالی \n قبل از فهرست) اختیاری است، اما قبل از نمایش شیء اصلی به‌منظور انجام کارهایی مانند مقداردهی اولیه وضعیت آن اجرا و تجزیه می‌شود. برای جزئیات بیشتر در مورد فهرست دستورها، دستور `iC` را ببینید.


توجه داشته باشید به محض اینکه یک شیء با شناسه کانال اختصاصی داشته باشید، می‌تواند از طریق دنباله‌های گریز روی ورودی استاندارد (stdin) سیگنال‌ها و پیام‌هایی ارسال کند. این دنباله‌های گریز از قالب دنباله گریز توسعه‌یافته terminology پیروی می‌کنند
(ESC + } ...  00)، و محتوای آن یکی از موارد زیر خواهد بود:


;CHID\ndrag\nPART NAME\nVAL1\nVAL2
;CHID\ndrag,start\nPART NAME\nVAL1\nVAL2
;CHID\ndrag,stop\nPART NAME\nVAL1\nVAL2
;CHID\ndrag,step\nPART NAME\nVAL1\nVAL2
;CHID\drag,set\nPART NAME\nVAL1\nVAL2
signal;CHID\nSIGNAL STRING\nSOURCE STRING
message;CHID\nOPCODE ID\nstring\nSTRING1
message;CHID\nOPCODE ID\nint\nINT1
message;CHID\nOPCODE ID\nfloat\nFLOAT1
message;CHID\nOPCODE ID\nstring_set\nSTRING1\nSTRING2\nSTRING3...
message;CHID\nOPCODE ID\nint_set\nINT1\nINT2\nINT3...
message;CHID\nOPCODE ID\nfloat_set\nFLOAT1\nFLOAT2\nFLOAT3...
message;CHID\nOPCODE ID\nstring_int\nSTRING1\nINT1
message;CHID\nOPCODE ID\nstring_float\nSTRING1\nFLOAT1
message;CHID\nOPCODE ID\nstring_int_set\nSTRING1\nINT1\nINT2\nINT3...
message;CHID\nOPCODE ID\nstring_float_set\nSTRING1\nFLOAT1\nFLOAT2\nFLOAT3...

iC[CHID]\n[cmd1][\r\n][cmd2][\r\n][cmd3]...
ارسال یک دستور (cmd1, cmd2, cmd3 و غیره) به یک شناسه کانال نام‌گذاری‌شده موجود CHID. این می‌تواند فهرستی از ۱ یا چند رشته دستور باشد که هر رشته با یک دنباله پیوسته از ۱ یا چند نویسه \r و/یا \n جدا شده است؛ مانند "\n"، "\r"، "\r\n"، "\n\r"، "\n\r\n\n\n" و غیره.


دستورهای پشتیبانی‌شده عبارتند از:


text\nPART NAME\nTEXT STRING
تنظیم متن "PART NAME" روی رشته "TEXT STRING"


emit\nSIGNAL STRING\nSOURCE STRING
انتشار سیگنال "SIGNAL STRING" با منبع "SOURCE STRING"


drag\nPART NAME\n[value|size|step|page]\nVAL1\nVAL2
دستکاری بخش قابل‌کشیدن (dragable) با نام "PART NAME" و تنظیم ویژگی‌های "value"، "size"، "step" یا "page" روی مقادیر "VAL1" و "VAL2" برای x و y، که در آن VAL1 و VAL2 مقادیر ممیز شناور هستند


chid\nCHANNEL ID
تنظیم شناسه کانال شیء edje داده‌شده (تنها در دستورهای راه‌اندازی برای شیء edje درون‌خطی معتبر است) روی "CHANNEL ID" به‌طوری که بعداً بتوان به آن ارجاع داد.


message\nOPCODE ID\n[string|int|float|string_set|int_set|...
float_set|string|int|string_float|string_int_set|...
string_float_set]\n[message data]
ارسال پیامی با شناسه opcode (عدد صحیح) "OPCODE ID" از یکی از انواع پشتیبانی‌شده ("string"، "int"، "float" و غیره) و سپس با "message data" داده‌شده در انتها.
قالب message data به نوع پیام بستگی دارد:
string: STRING1
int: INT1
float: FLOAT1
string_set: STRING1\nSTRING2\nSTRING3...
int_set: INT1\nINT2\nINT3...
float_set: FLOAT1\nFLOAT2\nFLOAT3...
string_int: STRING1\nINT1
string_float: STRING1\nFLOAT1
string_int_set: STRING1\nINT1\nINT2\nINT3...
string_float_set: STRING1\nFLOAT1\nFLOAT2\nFLOAT3...

ib
آغاز اجرای دنباله جایگزینی رسانه.

ie
پایان اجرای دنباله جایگزینی رسانه.

fr[PATH/FILE]
آغاز ارسال فایل برای فایلی با نام PATH / FILE

fs[SIZE_BYTES]
تنظیم اندازه بر حسب بایت برای ارسال فایلی که با دنباله گریز fr بالا آغاز شده است

fd[CHECKSUM DATA]
بلوک داده برای انتقال فایل جاری به‌همراه مجموع مقابله‌ای (checksum) به‌صورت یک رشته ده‌دهی که مجموع تمام بایت‌ها با در نظر گرفتن هر بایت به‌عنوان unsigned char است. مجموع مقابله‌ای یک عدد صحیح ۳۲ بیتی علامت‌دار است. مجموع مقابله‌ای، مجموع داده‌ها پس از اعمال نویسه‌های گریز است. ۴ بیت در هر بار برای هر بایت داده کدگذاری می‌شود، با بیت‌های بالا در یک بایت و سپس بیت‌های پایین؛ با بیت‌های کدگذاری‌شده به‌عنوان مقدار ۴ بیتی به‌صورت 0x40 + مقدار ۴ بیتی در هر بایت. (@ == 0x0, A == 0x1, B == 0x2, ... N == 0xe, O == 0xf). بنابراین برای بازسازی یک بایت، عبارت (((bytes[0] - 0x40) & 0xf) << 4) | ((bytes[1] - 0x40) & 0xf) به ازای هر جفت بایت در بلوک داده اعمال می‌شود.

fx
خروج از حالت ارسال فایل (معمولاً در انتهای فایل یا پس از تکمیل آن)

اگر باگی پیدا کردید، یا برای مشکلات شناخته‌شده، باگ‌ها و درخواست امکانات جدید، لطفاً به enlightenment-devel@lists.sourceforge.net ایمیل بفرستید یا به نشانی http://phab.enlightenment.org که تمام کارهای اصلی در آن انجام می‌شود مراجعه کنید.

برنامه Terminology توسط Carsten Haitzler <raster@rasterman.com> و دیگران نوشته شده است. این نرم‌افزار توسط Boris Faure <boris@fau.re> و دیگران نگهداری می‌شود. برای مشاهده سایر مشارکت‌کنندگان فایل AUTHORS را ببینید.

March 23, 2025 1.14.0