.\" Generated by scdoc 1.11.5
.\" Complete documentation for this program is not available as a GNU info page
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.nh
.ad l
.\" Begin generated content:
.TH "labwc\-menu" "5" "2026\-08\-22"
.PP
.SH "نام (NAME)"
labwc\-menu \- پروندههای منوی labwc
.PP
.SH "توضیحات (DESCRIPTION)"
.PP
منوهای ایستا بر اساس فایل menu.\&xml قرار گرفته در
"\(ti/.\&config/labwc"
و دایرکتوریهای پایه معادل XDG ساخته میشوند.\&
.PP
.SH "قواعد دستوری (SYNTAX)"
.PP
فایل منو باید بهطور کامل درون تگهای و
محصور باشد.\& در داخل این تگها، منوها به شکل زیر مشخص میشوند:
.PP
.nf
.RS 4
.fi
.RE
.PP
\fBmenu.\&id\fR (هنگام قرارگیری در سطح بالا)
.RS 4
تعریف یک درخت منو.\& به هر منو باید یک id اختصاص داده شود، که یک شناسه یکتا برای منو است.\& از این id برای ارجاع به منو در اکشن ShowMenu استفاده میشود.\& شناسههای پیشفرض عبارتند از:
.RS 4
.PD 0
.IP \(bu 4
"root\-menu" برای منوی زمینه پنجره ریشه (root window)
.IP \(bu 4
"client\-menu" برای منوی زمینه نوار عنوان پنجره
.IP \(bu 4
"client\-list\-combined\-menu" برای فهرستی از تمام پنجرهها در تمام فضاهای کاری.\& فوکوس را به برنامهای که انتخاب میشود تغییر میدهد یا در صورت انتخاب "Go there" بدون فعالکردن هیچ برنامهای به فضای کاری میرود.\&
.IP \(bu 4
"client\-send\-to\-menu" تمام فضاهای کاری را نمایش میدهد و پنجره فعلی را هنگام انتخاب به آن فضای کاری میفرستد.\&
.PD
.PP
.RE
.RE
\fBmenu.\&id\fR (هنگام قرارگیری به عنوان زیرمجموعه عنصر \fB\fR دیگر)
.RS 4
پیوند به زیرمنویی که در جای دیگری تعریف شده است (توسط یک \fB\fR در سطح بالا).\&
.PP
.RE
\fBmenu.\&label\fR
.RS 4
عنوان منو که در والد آن نمایش داده میشود.\& هنگام تعریف یک منو باید یک label مشخص شود مگر اینکه بالاترین عنصر منو باشد.\&
.PP
توجه داشته باشید که Openbox نیازمند تعریف label="" برای بالاترین عناصر نیز هست، اما labwc برای سادگی با وجود یا عدم وجود صفت label با آنها رفتار میکند.\&
.PP
.RE
\fBmenu.\&icon\fR
.RS 4
آیکونی برای نمایش در والد آن.\& این آرگومان اختیاری است.\& برای جزئیات بیشتر به \fBmenu.\&item.\&icon\fR مراجعه کنید.\&
.PP
.RE
\fBmenu.\&item.\&label\fR
.RS 4
نام نمایشی آیتم منو.\&
.PP
.RE
\fBmenu.\&item.\&icon\fR
.RS 4
نام آیکونی که در جلوی مدخل منو نمایش داده میشود.\& این صفت اختیاری است.\& این نام از قراردادهای نامگذاری ورودیهای "Icon=" در فایلهای .\&desktop پیروی میکند.\& در صورت استفاده، توصیه میشود تنها از نام آیکون استفاده شود تا یک مسیر کامل.\& این امر تضمین میکند که آیکون در مقیاس خروجی محل نمایش منو جستجو خواهد شد.\& برای مثال، استفاده از icon="vlc" بر استفاده از
icon="/usr/share/icons/hicolor/16x16/apps/vlc.\&png" ترجیح داده میشود.\&
.PP
.RE
\fBmenu.\&item.\&action\fR
.RS 4
به labwc\-actions(5) مراجعه کنید.\& نکته: برای حفظ سازگاری با obmenu\-generator، قابلیت XML CDATA برای این گره پشتیبانی میشود.\&
.PP
.RE
\fBmenu.\&separator\fR
.RS 4
خط افقی.\&
.PP
.RE
\fBmenu.\&separator.\&label\fR
.RS 4
در یک عنصر "separator"، صفت label جداکننده را از یک خط افقی به یک عنوان منو (تیتر) همراه با متن مشخصشده در label تبدیل میکند.\&
.PP
.RE
\fBmenu.\&execute\fR
.RS 4
دستوری که برای پایپمنو اجرا میشود.\& جزئیات را در ادامه ببینید.\&
.PP
.RE
.SH "پایپمنوها (PIPE MENUS)"
.PP
پایپمنوها، منوهایی هستند که به صورت پویا بر اساس خروجی اسکریپتها یا باینریها تولید میشوند.\& این منوها از آنجا به این نام خوانده میشوند که خروجی برنامه اجرایی به منوی labwc پایپ میشود.\&
.PP
برای هر مدخل \fB\fR در menu.\&xml، دستور COMMAND در اولین باری که آیتم انتخاب میشود (برای مثال با مکاننما یا ورودی صفحهکلید) اجرا خواهد شد.\& خروجی XML دستور تجزیه شده و به عنوان یک زیرمنو نمایش داده میشود.\& محتوای پایپمنوها تا زمانی که کل منو (نه فقط پایپمنو) بسته شود در حافظه موقت (کش) نگهداری میشود.\&
.PP
محتوای خروجی باید به طور کامل درون تگهای \fB\fR محصور باشد.\& در داخل این تگها، منوها دقیقاً به همان روش منوهای ایستا (عادی) مشخص میشوند، برای مثال:
.PP
.nf
.RS 4
-
.fi
.RE
.PP
زیرمنوهای درونخطی و پایپمنوهای تو در تو پشتیبانی میشوند.\&
.PP
توجه داشته باشید که اطمینان از یکتا بودن صفتهای ID بر عهده برنامه اجرایی پایپمنو است.\& شناسههای تکراری نادیده گرفته میشوند.\&
.PP
هنگام نوشتن اسکریپتهای پایپمنو، اطمینان حاصل کنید که کاراکترهای خاص XML مانند "&" ("&")، "<" ("<")، و ">" (">") را اسکیپ کنید.\&
.PP
یک پایپمنو همچنین میتواند برای تعریف عنصر سطح بالای \fB\fR استفاده شود.\& در این حالت کل فایل menu.\&xml به چیزی شبیه به این خلاصه میشود (با جایگزینی obmenu\-generator با تولیدکننده منوی دلخواه شما):
.PP
.nf
.RS 4
.fi
.RE
.PP
.SH "شتابدهندهها / کلیدهای میانبر (ACCELERATORS / MNEMONICS)"
.PP
شتابدهندههای منو، میانبرهای تکحرفی برای انتخاب یا اجرای سریع آیتمها از منوی فعلی هستند.\& برای هر آیتم منو، شتابدهنده به عنوان اولین کاراکتر برچسب آیتم تعریف میشود که به حروف کوچک تبدیل شده است.\& یک شتابدهنده متفاوت را میتوان به صراحت در menu.\&xml با قرار دادن کاراکتر ویژه '\&_'\& پیش از حرف مورد نظر تعیین کرد.\& شتابدهندهها میتوانند هر نویسه یونیکد باشند و محدود به ASCII نیستند.\& یک زیرخط (underscore) معمولی را میتوان با تکرار آن نشان داد.\&
.PP
اگر منو تنها شامل یک نمونه از شتابدهنده فشردهشده باشد، آن آیتم بلافاصله اجرا میشود.\& در غیر این صورت، بین تمام آیتمهای منطبق گردش انجام خواهد شد.\&
.PP
مثال:
شتابدهنده برای یک آیتم با برچسب "e_Macs" نویسه '\&m'\& است.\&
.PP
.SH "بومیسازی (LOCALISATION)"
.PP
بومیسازی موجود برای "client\-menu" پیشفرض تنها زمانی نمایش داده میشود که هیچ "client\-menu" در menu.\&xml وجود نداشته باشد.\& هرگونه تعریف منو در menu.\&xml به عنوان بازنویسی توسط کاربر در نظر گرفته میشود.\&
.PP
.SH "همچنین ببینید (SEE ALSO)"
.PP
labwc(1), labwc\-actions(5), labwc\-config(5), labwc\-theme(5)