| J4-DMENU-DESKTOP(1) | General Commands Manual | J4-DMENU-DESKTOP(1) |
نام (NAME)
j4-dmenu-desktop —
منوی
سریع
دسکتاپ
خلاصه دستور (SYNOPSIS)
j4-dmenu-desktop [OPTIONS]
توضیحات (DESCRIPTION)
j4-dmenu-desktop یک
جایگزین
سریعتر
برای i3-dmenu-desktop
است.
هدف آن یافتن فایلهای .desktop و ارائه یک منو برای راهاندازی برنامهها با استفاده از dmenu است.
آرگومانها به شرح زیر هستند:
-b,--display-binary- نمایش نام باینری پس از هر ورودی (بهطور پیشفرض غیرفعال است).
-f,--display-binary-base- نمایش نام پایه (basename) باینری پس از هر ورودی (بهطور پیشفرض غیرفعال است).
-d,--dmenucommand- دستور مورد
استفاده
برای
فراخوانی dmenu
را تعیین
میکند.
توسط پوسته
شما (
$SHELL) یا /bin/sh اجرا میشود. --no-exec- دستور انتخابشده را اجرا نکن، بهجای آن به stdout بفرست.
--no-generic- نام عمومی (generic name) ورودیهای دسکتاپ را شامل نکن.
-t,--termcommand- شبیهساز ترمینال مورد استفاده برای اجرای برنامههای ترمینالی را تعیین میکند.
--term-modemode- به
j4-dmenu-desktopدستور میدهد که چگونه شبیهساز ترمینال را اجرا کند. این فلگ مقدار پیشفرض فلگ--termرا نیز تغییر میدهد.مقادیر ممکن عبارتند از:
default|xterm|alacritty|kitty|terminator|gnome-terminal|customبرای اطلاعات بیشتر TERM MODE را ببینید.
--usage-logfile- باید به یک فایل با قابلیت خواندن و نوشتن اشاره کند (در صورت عدم وجود ایجاد خواهد شد). در این حالت، ورودیها بر اساس بسامد و تعداد استفاده مرتب میشوند.
--prune-bad-usage-log-entries- حذف
نامهای
ثبتشده در
گزارش
استفاده که
j4-dmenu-desktopقادر به یافتن فایل دسکتاپ برای آنها نبوده است. این مورد زمانی رخ میدهد که برنامهای که در لاگ استفاده ثبت شده دیگر وجود ندارد زیرا حذف نصب شده است. -x,--use-xdg-de- خواندن
$XDG_CURRENT_DESKTOPرا برای تعیین محیط رومیزی فعال میکند. --wait-onpath- باید به
مسیری
اشاره کند
که بتوان در
آن فایلی
ایجاد کرد.
در این حالت
هیچ منویی
نمایش داده
نخواهد شد.
در عوض
برنامه
منتظر
میماند تا
در path
نوشته شود
(از ‘
echo > path’ استفاده کنید). هر بار که این اتفاق بیفتد، منو نمایش داده خواهد شد. فایلهای دسکتاپ از قبل تجزیه (parse) میشوند. اجرای ‘echo -n q > path’ باعث خروج از برنامه میشود. --wrapperwrapper- یک باینری
پوششدهنده
(wrapper). استفاده
از ‘
--wrapper "i3 exec"’ و ‘--wrapper "sway exec"’ منسوخ شده است، بهجای آن از--i3-ipcاستفاده کنید. -I,--i3-ipc- اجرای ورودیهای دسکتاپ از طریق i3 IPC یا Sway IPC. نیازمند این است که یا i3 یا Sway در حال اجرا باشند.
--skip-i3-exec-check- غیرفعال
کردن بررسی
برای
--wrapper"i3 exec" یا--wrapper"sway exec". برنامه j4-dmenu-desktop پشتیبانی مستقیم از i3/Sway از طریق فلگ-Iدارد که باید بهجای گزینه--wrapperاستفاده شود. j4-dmenu-desktop این مورد را تشخیص داده و خارج میشود. این فلگ این رفتار را نادیده میگیرد. -i,--case-insensitive- مرتبسازی برنامهها بدون حساسیت به حروف بزرگ و کوچک (case-insensitive)
-v- پرگویی
بیشتر (verbose).
هنگامی که
یک بار مشخص
شود، سطح
INFOاستفاده میشود، و هنگامی که دو بار مشخص شود، سطحDEBUGاستفاده میشود. بخش LOG LEVELS را ببینید. --log-levelERROR | WARNING | INFO | DEBUG- یک نسخه
صریحتر از
-v. این فلگ بر-vاولویت دارد. --log-filefile- یک فایل لاگ
را مشخص
میکند.
محتوای
file کوتاه
(truncate) خواهد شد.
بهطور
پیشفرض،
سطح لاگ
INFOاستفاده میشود. --log-file-levelERROR | WARNING | INFO | DEBUG- تنظیم سطح لاگ فایل.
--desktop-file-quirksARGS- سازوکار
تجزیه فایل
دسکتاپ در
j4-dmenu-desktopرا تغییر میدهد تا فایلهای دسکتاپی که با مشخصات Desktop Entry Specification سازگار نیستند پذیرفته شوند. چندین حالت را میتوان مشخص کرد. آنها باید با کاما (,) از هم جدا شوند. هرmodeدارای یک همتایnomodeاست که حالت مربوطه را غیرفعال میکند. برای غیرفعال کردن تمام حالتها، از--strict-parsingاستفاده کنید. هنگامی که یک فایل دسکتاپ از یک قلق (quirk) فعال استفاده کند، یک هشدار چاپ میشود. ARGS میتواند شامل حالتهای زیر باشد:- wine
- تحمل
کدهای
گریز (escape codes)
نامعتبر
(مانند
اسکیپ
کردن یک
فاصله
برای
جلوگیری
از تفکیک
آرگومانها)
در کلید
Execفایلهای دسکتاپ. بهطور پیشفرض فعال است. - multispace
- تحمل
استفاده
از چندین
فاصله
برای
تفکیک
آرگومانها
در کلید
Execفایلهای دسکتاپ. برای فایلهای دسکتاپ ایجاد شده توسط distrobox مفید است. بهطور پیشفرض فعال است.
اگر این فلگ چندین بار مشخص شود، فقط آخرین مقدار اعمال میشود. آنها به هیچ وجه ادغام یا ترکیب نمیشوند.
این فلگ با
--strict-parsingناسازگار و مانعةالجمع است. --strict-parsing- پایبندی
دقیق به
مشخصات Desktop Entry
Specification هنگام
تجزیه
فایلهای
دسکتاپ.
بهطور
پیشفرض
فعال نیست.
این فلگ با
--desktop-file-quirksناسازگار و مانعةالجمع است. --version- نمایش نسخه برنامه.
-h,--help- نمایش پیام راهنما.
LOG LEVELS
برخی
آرگومانها
از تنظیم
سطح لاگ
پشتیبانی
میکنند.
j4-dmenu-desktop از
سطوح لاگ
زیر
استفاده
میکند:
ERROR, WARNING,
INFO و DEBUG.
سطوح لاگ
WARNING (و ERROR)
بهطور
پیشفرض
نمایش داده
میشوند.
سطوح لاگ
پایینتر
بهطور
خودکار
سطوح
بالاتر را
فعال
میکنند.
TERM MODE
چندین
حالت برای
فلگ --term-mode
در دسترس
است:
default- حالت
پیشفرض. یک
اسکریپت شل
موقت حاوی
دستور
انتخابشده
ایجاد
میشود.
اسکریپت پس
از اجرا خود
را حذف
میکند،
j4-dmenu-desktopهرگز خودش آن را حذف نمیکند. این حالت عنوان شبیهساز ترمینال را با استفاده از توالیهای گریز OSC تنظیم میکند (console_codes(4) را ببینید). شبیهساز ترمینال به شرح زیر اجرا میشود:[terminal emulator]-e[generated temporary script]سایر حالتها ترجیح داده میشوند. این رویکرد عمومی اما شکننده است.
مقدار پیشفرض
--termبرابر است باi3-sensible-terminal. xterm- استفاده از
قرارداد
فراخوانی
xterm:[terminal emulator]-title[desktop app Name]-e[command line]مقدار پیشفرض
--termبرابر است باxterm. سایر شبیهسازهای ترمینال سازگار عبارتند از:rxvt-unicode. alacritty- استفاده از
قرارداد
فراخوانی
alacritty:[terminal emulator]-T[desktop app Name]-e[command line]مقدار پیشفرض
--termبرابر است باalacritty. سایر شبیهسازهای ترمینال سازگار عبارتند از:st,foot. kitty- استفاده از
قرارداد
فراخوانی
kitty:[terminal emulator]-T[desktop app Name] [command line]مقدار پیشفرض
--termبرابر است باkitty. سایر شبیهسازهای ترمینال سازگار عبارتند از:foot. terminator- استفاده از
قرارداد
فراخوانی
terminator:[terminator emulator]-T[desktop app Name]-x[command line]مقدار پیشفرض
--termبرابر است باterminator. سایر شبیهسازهای ترمینال سازگار عبارتند از:xfce4-terminal. gnome-terminal- استفاده از
قرارداد
فراخوانی
gnome-terminal:[terminal emulator]--title[desktop app Name]--[command line]مقدار پیشفرض
--termبرابر است باgnome-terminal. custom- امکان
مدیریت
کاملاً
سفارشی
--term. هنگامی که--term-modecustomداده شود، یک سیستم جایگزین برای مدیریت--termاستفاده میشود. این مورد به عنوان فهرستی از آرگومانها که با فاصله ( ) از هم جدا شدهاند مدیریت میشود. هیچ نویسه فضای خالی دیگری به عنوان جداکننده آرگومان عمل نمیکند (این رفتار با پوسته متفاوت است).چندین نویسه فاصله متوالی به عنوان یک فاصله واحد در نظر گرفته میشوند (به جز فاصلههای اسکیپشده). فاصلههای ابتدا و انتهای
--termنادیده گرفته میشوند. این بدان معنی است که امکان ارسال آرگومانهای با طول صفر به--termوجود ندارد.محتویات
--termاز طریق پوسته اجرا نمیشوند. این بدان معنی است که ساختارهای پوسته مانند تغییر مسیر (redirection)، زنجیرهسازی&&و||و موارد دیگر کار نخواهند کرد. اگر به این موارد نیاز دارید، میتوانید یک اسکریپت پوششی پوسته بسازید و آن را از طریق--termفراخوانی کنید یا میتوانید/bin/sh -cیا پوسته دیگری را مستقیماً از--termصدا بزنید (هرچند استفاده از یک اسکریپت پوششی باید ترجیح داده شود، زیرا واضحتر و استفاده از آن سادهتر است).متغیرهای جانشین (placeholders) زیر شناخته میشوند:
- {
name} - نام برنامه دسکتاپ. برای تنظیم عنوان مفید است.
- {
cmdline@} - خط دستور
جهت اجرا،
که به صورت
آرگومانهای
جداگانه
باز
میشود (expand).
این باید
یک
آرگومان
مستقل
باشد؛
‘
’ نامعتبر است.j4-dmenu-desktop--term-modecustom--term"-e={cmdline@}" - {
cmdline*} - خط دستور
جهت اجرا،
که به صورت
یک
آرگومان
واحد باز
میشود.
{
cmdline@} باید بر {cmdline*} ترجیح داده شود. آرگومانها اسکیپ خواهند شد؛ محتویات {cmdline*} را میتوان با خیال راحت به/bin/sh -cارسال کرد. - {
script} - نام فایل
اسکریپت
تولید شده
توسط
j4-dmenu-desktop. این همان اسکریپتی است که توسط--term-modedefaultاستفاده میشود. اسکریپت تنها در صورتی ایجاد میشود که این جانشین حداقل یک بار در--termمشخص شده باشد. اسکریپت عنوان ترمینال را خودش تنظیم میکند، نباید لازم باشد آن را به صورت دستی تنظیم کنید.{
cmdline@} و {cmdline*} باید بر {script} ترجیح داده شوند.
توالیهای گریز (escape sequences) زیر شناخته میشوند:
- \\
- نویسه واقعی \.
- \{
- نویسه واقعی {.
- \
- (بکاسلش به همراه فاصله) فاصله بعدی را به عنوان جداکننده آرگومان تلقی نکن.
توالیهای گریز و جانشینهای تعریفنشده منجر به پیام خطا و خاتمه برنامه میشوند.
مقدار پیشفرض
--termهمانند حالت ترمینالdefaultاست.سایر حالتها در صورت نوشتن با حالت
customبه این شکل خواهند بود:default- ‘
j4-dmenu-desktop --term-mode custom --term "i3-sensible-terminal -e {script}"’ xterm- ‘
j4-dmenu-desktop --term-mode custom --term "xterm -title {name} -e {cmdline@}"’ alacritty- ‘
j4-dmenu-desktop --term-mode custom --term "alacritty -T {name} -e {cmdline@}"’ kitty- ‘
j4-dmenu-desktop --term-mode custom --term "kitty -T {name} {cmdline@}"’ terminator- ‘
j4-dmenu-desktop --term-mode custom --term "terminator -T {name} -x {cmdline@}"’ gnome-terminal- ‘
j4-dmenu-desktop --term-mode custom --term "gnome-terminal --title {name} -- {cmdline@}"’
نحوه استفاده از فلگ منسوخشده -e در gnome-terminal به این شکل است:
j4-dmenu-desktop --term-mode custom --term "gnome-terminal --title {name} -e {cmdline*}"نحوه اسکیپ کردن جانشینها به این صورت است:
j4-dmenu-desktop --term-mode custom --term "echo \{name}\ \{cmdline*}"--termدو آرگومان دریافت میکند: ‘echo’ و ‘{name} {cmdline*}’, هیچ جانشینی جایگزین نمیشود. اگر \ دوم ارسال نمیشد،j4-dmenu-desktopبهجای دو آرگومان، سه آرگومان را میدید. - {
محیط (ENVIRONMENT)
I3SOCK- این متغیر مسیر سوکت i3/Sway IPC را بازنویسی میکند.
XDG_DATA_HOME- دایرکتوری اصلی حاوی فایلهای دسکتاپ.
XDG_DATA_DIRS- دایرکتوریهای اضافی حاوی فایلهای دسکتاپ.
XDG_CURRENT_DESKTOP- محیط
رومیزی
فعلی که
برای
فعال/غیرفعال
کردن
فایلهای
دسکتاپ
وابسته به
محیط
رومیزی
استفاده
میشود.
باید توسط
--use-xdg-deفعال شود.
علاوه بر
متغیرهای
فهرستشده
در بالا،
متغیرهای
محیطی
استاندارد
برای
محلیسازی
(locales) نیز
شناسایی
میشوند.
متغیرهای
محیطی دقیق
استفاده
شده به
پیادهسازی
بستگی
دارند، اما
تنظیم
LC_MESSAGES, LC_ALL
یا LANG
بهطور کلی
باید کار
کند.
همچنین ببینید (SEE ALSO)
حق نشر (COPYRIGHT)
حق نشر (C) 2013 enkore <public+j4-dmenu-desktop@enkore.de>
این برنامه نرمافزار آزاد است: شما میتوانید آن را تحت شرایط مجوز عمومی همگانی گنو (GNU GPL) که توسط بنیاد نرمافزارهای آزاد منتشر شده است، چه نسخه ۳ مجوز یا (به انتخاب خودتان) هر نسخه بعدی، بازتوزیع کرده و/یا تغییر دهید.
این برنامه با این امید توزیع شده است که مفید واقع شود، اما بدون هیچگونه ضمانتی؛ حتی بدون ضمانت ضمنی قابل فروش بودن یا مناسب بودن برای یک هدف خاص. برای جزئیات بیشتر به مجوز عمومی همگانی گنو مراجعه کنید.
شما باید همراه با این برنامه یک نسخه از مجوز عمومی همگانی گنو را دریافت کرده باشید. در غیر این صورت، ببینید: <http://www.gnu.org/licenses>.
| January 10, 2024 | Linux 6.12.107+deb13-amd64 |