fuzzel.ini(5) File Formats Manual fuzzel.ini(5)

fuzzel.ini - فایل پیکربندی لانچر برنامه Fuzzel

برنامه fuzzel از قالب استاندارد پیکربندی یونیکس بر پایه جفت‌های کلید/مقدار در بخش‌های مختلف استفاده می‌کند. بخش پیش‌فرض معمولاً بدون نام است، یعنی پیشوند [section] ندارد. با این حال، در صورتی که نیاز باشد پس از هر یک از بخش‌های دیگر مجدداً باز شود، می‌توان آن را صراحتاً [main] نامید.

برنامه fuzzel پرونده پیکربندی را به ترتیب در مکان‌های زیر جستجو می‌کند:

  • XDG_CONFIG_HOME/fuzzel/fuzzel.ini (در صورت تنظیم نشدن، به صورت پیش‌فرض ~/.config/fuzzel/fuzzel.ini)
  • XDG_CONFIG_DIRS/fuzzel/fuzzel.ini (در صورت تنظیم نشدن، به صورت پیش‌فرض /etc/xdg/fuzzel/fuzzel.ini)

یک نمونه پرونده پیکربندی که شامل تمام گزینه‌ها با مقادیر پیش‌فرض آن‌ها به صورت کامنت‌شده است، معمولاً در مسیر /etc/xdg/fuzzel/fuzzel.ini نصب می‌شود.

include

مسیر مطلق به پرونده پیکربندی برای وارد کردن (import).

پرونده واردشده محدوده بخش (section scope) مختص به خود را دارد. به این معنی که پیکربندی فراخوانی‌کننده، بدون توجه به اینکه پرونده واردشده در چه بخشی به پایان می‌رسد، پس از include همچنان در بخش پیش‌فرض باقی می‌ماند.

  • مسیر باید یک مسیر مطلق باشد، یا با ~/ آغاز شود.
  • استفاده از چندین دستور include مجاز است، اما در هر دستور فقط یک مسیر مجاز می‌باشد.
  • وارد کردن تودرتو (Nested imports) مجاز است.

پیش‌فرض: تنظیم نشده (not set).

namespace

فضای نام (Namespace) برای سطح پوسته لایه‌ای (layer shell surface) ایجادشده. این گزینه برای جلوگیری از ضبط شدن پنجره fuzzel در اسکرین‌کست‌های کامپوزیتور در صورت نمایش اطلاعات حساس، مانند گذرواژه‌ها، مفید است.

پیش‌فرض: launcher

output

خروجی (نمایشگر) برای نمایش برنامه. می‌توانید خروجی‌های موجود را با دستور wlr-randr یا در Sway با دستور swaymsg -t get_outputs فهرست کنید.

مثال: DP-1

پیش‌فرض: تنظیم نشده -- به کامپوزیتور اجازه داده می‌شود خروجی را انتخاب کند.

font

فهرستی از قلم‌های مورد استفاده که با کاما از هم جدا شده‌اند، در قالب fontconfig. به این صورت که نام قلم با فهرستی از گزینه‌ها که با دونقطه از هم جدا شده‌اند، دنبال می‌شود. مهم‌ترین آن‌ها :size=n است که برای تعیین اندازه قلم استفاده می‌شود. توجه داشته باشید که اندازه قلم تحت تأثیر گزینه dpi-aware نیز قرار می‌گیرد. برای جزئیات، بخش FONT CONFIG را در زیر ببینید.

مثال‌ها:

  • Dina:weight=bold:slant=italic
  • Courier New:size=12
  • Fantasque Sans Mono:fontfeatures=ss01

پیش‌فرض: monospace.

use-bold

بولی. در صورت تنظیم، fuzzel می‌تواند از قلم‌های توپر (bold) استفاده کند؛ مثلاً برای موردی که در حال حاضر انتخاب شده است. پیش‌فرض: no

dpi-aware

auto، yes یا no.

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

در این حالت، ضریب مقیاس (scaling factor) نمایشگر نادیده گرفته می‌شود؛ دو برابر شدن ضریب مقیاس، اندازه قلم را دو برابر نخواهد کرد.

هنگامی که روی no تنظیم شود، DPI نمایشگر نادیده گرفته می‌شود. در عوض، اندازه قلم با استفاده از ضریب مقیاس نمایشگر تعیین می‌شود؛ دو برابر شدن ضریب مقیاس، اندازه قلم را دو برابر می‌کند.

در نهایت، اگر روی auto تنظیم شود، در صورتی که همه نمایشگرها ضریب مقیاس ۱ داشته باشند، اندازه قلم با استفاده از DPI نمایشگر تعیین می‌شود. اگر حداقل یک نمایشگر ضریب مقیاسی بزرگتر از ۱ داشته باشد (صرف‌نظر از اینکه پنجره fuzzel روی آن نمایشگر قرار گرفته باشد یا خیر)، اندازه قلم‌ها بر اساس ضریب مقیاس تغییر خواهد کرد.

توجه داشته باشید که این گزینه معمولاً با قلم‌های بیتی (bitmap) که فقط شامل مجموعه‌ای از اندازه‌های از پیش تعریف‌شده هستند و نمی‌توان آن‌ها را به صورت پویا مقیاس‌بندی کرد، کار نمی‌کند. از بین اندازه‌های موجود، هر اندازه‌ای که بهترین تطابق را با DPI یا ضریب مقیاس داشته باشد، استفاده خواهد شد.

همچنین توجه داشته باشید که اگر اندازه قلم بر حسب پیکسل مشخص شده باشد (:pixelsize=N به‌جای :size=N)، مقیاس‌بندی DPI (dpi-aware=yes) هیچ تأثیری نخواهد داشت (اندازه پیکسلی مشخص‌شده بدون تغییر استفاده می‌شود). اما اگر ضریب مقیاس نمایشگر برای تعیین اندازه قلم استفاده شود (dpi-aware=no)، اندازه پیکسلی قلم در ضریب مقیاس ضرب خواهد شد.

پیش‌فرض: auto.

gamma-correct-blending

بولی. در صورت فعال بودن، fuzzel ترکیب تصحیح گاما (gamma-correct blending) را در فضای رنگی خطی انجام می‌دهد. گلیف‌های قلم در اصل باید این‌گونه رندر شوند، اما از آنجا که تقریباً هیچ برنامه یا ابزار گرافیکی (toolkit) در لینوکس این کار را انجام نمی‌دهد، ممکن است نتیجه شبیه آنچه به آن عادت کرده‌اید نباشد.

در مقایسه با حالت پیش‌فرض (غیرفعال)، گلیف‌های روشن روی پس‌زمینه تیره ضخیم‌تر به نظر می‌رسند و گلیف‌های تیره روی پس‌زمینه روشن نازک‌تر دیده خواهند شد.

فناوری FreeType می‌تواند با روشی به نام «تیره‌سازی ساقه‌ها» (stem darkening) تأثیر مورد دوم را محدود کند. این قابلیت فقط برای قلم‌های CFF (فرمت‌های OpenType و .otf) در دسترس است و به طور پیش‌فرض (در FreeType) غیرفعال است. می‌توانید قبل از اجرای fuzzel با تنظیم متغیر محیطی FREETYPE_PROPERTIES="cff:no-stem-darkening=0" آن را فعال کنید.

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

برای نمایش دقیق رنگ‌ها، به بافرهای تصویر با دقت بالاتر نیاز است. به همین دلیل، fuzzel هنگام فعال بودن ترکیب تصحیح گاما، از بافرهای تصویر ۱۶ بیتی (به‌جای ۸ بیتی) استفاده می‌کند.

در نسخه‌های کامپایل‌شده fuzzel با پشتیبانی از cairo امکان فعال‌سازی ترکیب تصحیح گاما وجود ندارد، زیرا cairo از بافرهای تصویر ۱۶ بیتی پشتیبانی نمی‌کند.

placeholder

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

prompt

رشته‌ای که به عنوان اعلان ورودی استفاده می‌شود. توجه داشته باشید که فاصله‌های انتهایی حذف می‌شوند، مگر اینکه رشته داخل گیومه قرار گیرد. پیش‌فرض: "> ".

message

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

message-mode

یکی از مقادیر wrap و expand.

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

expand: اگر طولانی‌ترین خط در message طولانی‌تر از width باشد، کادر محاوره عریض‌تر می‌شود تا پیام message در آن جا گیرد.

icon-theme

تم آیکون. توجه داشته باشید که نام به حروف بزرگ و کوچک حساس است. پیش‌فرض: default.

icons-enabled

بولی. در صورت فعال بودن، آیکون برنامه‌ها (از تم انتخاب‌شده در icon-theme) رندر خواهد شد. پیش‌فرض: yes.

hide-before-typing

بولی. در صورت فعال بودن، فهرست برنامه‌ها تا زمانی که اولین حرف تایپ شود پنهان خواهد ماند. با پاک شدن دوباره اعلان، فهرست دوباره نمایان می‌شود. پیش‌فرض: no.

fields

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

اگرچه fuzzel فقط نام برنامه‌ها را نمایش می‌دهد، عملیات تطبیق می‌تواند (و به صورت پیش‌فرض نیز چنین است) بر روی فیلدهای دیگر نیز انجام شود. فیلدهای پشتیبانی‌شده عبارتند از:

  • filename
  • name
  • generic
  • exec
  • categories
  • keywords
  • comment

فیلد "filename" نام فایل ".desktop" است.

پیش‌فرض: filename,name,generic.

password-character

نویسه پیش‌فرض برای استفاده به همراه گزینه خط فرمان --password. توجه داشته باشید که می‌توان این گزینه را در خط فرمان با تعیین صریح نویسه به صورت --password=X بازنویسی کرد. پیش‌فرض: *.

match-mode

یکی از مقادیر exact، fzf و fuzzy.

exact: آنچه تایپ می‌کنید به طور دقیق با هر یک از فیلدهای موجود در فهرست fields تطبیق داده می‌شود.

fzf: تطبیق به سبک fzf، که در آن زیررشته‌های متن تایپ‌شده با هر فیلد در فهرست fields مطابقت داده می‌شوند.

fuzzy: تطبیق فازی مبتنی بر الگوریتم لون‌اشتاین (levenshtein) برای متن تایپ‌شده در برابر هر فیلد در فهرست fields.

پیش‌فرض: fzf

sort-result

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

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

پیش‌فرض: yes

match-counter

بولی. در صورت فعال بودن، تعداد موارد منطبق و تعداد کل در سمت راست اعلان ورودی نمایش داده می‌شود. غیرفعال کردن این شمارنده همچنین عملکرد بارگذاری تعداد بسیار زیادی از مدخل‌های dmenu را از ورودی استاندارد (STDIN) بهبود می‌بخشد.

پیش‌فرض: no.

filter-desktop

بولی. فیلتر کردن پرونده‌های دسکتاپ بر اساس مقدار متغیر محیطی XDG_CURRENT_DESKTOP. پیش‌فرض: no.

show-actions

بولی. برخی از پرونده‌های دسکتاپ علاوه بر خود برنامه، «اقدامات» (actions) را نیز تعریف می‌کنند؛ مانند «new window» (پنجره جدید)، «preferences» (ترجیحات) و غیره. هنگامی که این گزینه فعال باشد، این اقدامات توسط fuzzel فهرست خواهند شد. پیش‌فرض: no.

terminal

دستور ترمینال برای استفاده هنگام اجرای برنامه‌های «ترمینالی».

دستور می‌تواند حاوی جای‌نگهدار {cmd} باشد که با دستور واقعی برای اجرا جایگزین خواهد شد. هنگامی که {cmd} وجود داشته باشد، دستور تنها در همان مکان‌ها جایگزین می‌شود و به انتهای آن اضافه نمی‌شود.

مثال‌ها:

  • foot -a '{cmd}' -T '{cmd}' {cmd} شناسه برنامه (app-id) و عنوان را روی نام دستور تنظیم کرده و سپس آن را اجرا می‌کند
  • xterm -e {cmd} دستور را در xterm اجرا می‌کند
  • xterm -e (بدون {cmd}) از رفتار قدیمی استفاده می‌کند: دستور را پس از آرگومان‌های ترمینال می‌افزاید

پیش‌فرض: $TERMINAL -e.

list-executables-in-path

بولی. در صورت فعال بودن، فهرست شامل برنامه‌های اجرایی از متغیر محیطی PATH خواهد بود. پیش‌فرض: no.

launch-prefix

پیشوندی که قبل از argv برنامه اجراشده افزوده می‌شود. در صورت تنظیم، fuzzel فراداده‌های پرونده دسکتاپ را از طریق متغیرهای محیطی منتقل می‌کند:
  • DESKTOP_ENTRY_ID (همچنین برای سازگاری با نسخه‌های پیشین با نام FUZZEL_DESKTOP_FILE_ID صادر می‌شود)
  • DESKTOP_ENTRY_PATH
  • DESKTOP_ENTRY_NAME
  • DESKTOP_ENTRY_COMMENT
  • DESKTOP_ENTRY_NAME_L (بومی‌سازی‌شده)
  • DESKTOP_ENTRY_COMMENT_L (بومی‌سازی‌شده)
  • DESKTOP_ENTRY_ICON
و در صورت اجرای یک اقدام:
  • DESKTOP_ENTRY_ACTION (شناسه اقدام)
  • DESKTOP_ENTRY_ACTION_NAME
  • DESKTOP_ENTRY_ACTION_NAME_L (بومی‌سازی‌شده)
  • DESKTOP_ENTRY_ACTION_ICON

پیش‌فرض: تنظیم نشده (not set).

anchor

تنظیم مهار یا لنگرگاه (anchor) پنجره، یعنی موقعیتی روی صفحه نمایش که پنجره در آنجا نمایش داده می‌شود. می‌توانید یکی از موارد زیر را انتخاب کنید:
  • top-left
  • top
  • top-right
  • left
  • center
  • right
  • bottom-left
  • bottom
  • bottom-right

پیش‌فرض: center

x-margin

حاشیه افقی از نقطه لنگرگاه بر حسب پیکسل. پیش‌فرض: 0.

نکته: این گزینه هنگامی که anchor برابر با center، top یا bottom باشد تأثیری ندارد.

y-margin

حاشیه عمودی از نقطه لنگرگاه بر حسب پیکسل. پیش‌فرض: 0.

نکته: این گزینه هنگامی که anchor برابر با center، left یا right باشد تأثیری ندارد.

lines

تعداد موارد منطبق برای نمایش. پیش‌فرض: 15.

hide-prompt

بولی. در صورت تنظیم، خط اعلان را پنهان کرده و پنجره را کوچک‌تر می‌کند. ورودی همچنان پذیرفته می‌شود، اگرچه خط اعلان نمایش داده نمی‌شود. نمی‌توان همراه با prompt-only استفاده کرد. پیش‌فرض: no.

minimal-lines

بولی. تعداد خطوط نمایشی را به حداقلِ مقدار lines و تعداد خطوط ورودی تنظیم می‌کند. فقط در حالت dmenu مؤثر است. این قابلیت به fuzzel امکان می‌دهد تا به جای نمایش همیشگی تمام سطر‌های lines، اندازه خود را با تعداد واقعی خطوط ورودی تطبیق دهد. پیش‌فرض: no.

width

عرض پنجره بر حسب نویسه‌ها. حاشیه‌ها و کادر دور را شامل نمی‌شود. برای قلم‌های با عرض متغیر، این مقدار تقریبی است؛ زیرا تعداد دقیق نویسه‌هایی که جا می‌شوند به نوع نویسه‌های نمایش‌داده‌شده بستگی دارد. پیش‌فرض: 30.

tabs

تعداد فاصله‌هایی که یک کلید Tab به آن تبدیل می‌شود. پیش‌فرض: 8.

horizontal-pad

فاصله درونی (padding) افقی بین کادر و محتوا بر حسب پیکسل. پیش‌فرض: 40.

vertical-pad

فاصله درونی (padding) عمودی بین کادر و محتوا بر حسب پیکسل. پیش‌فرض: 8.

inner-pad

فاصله درونی (padding) عمودی بین خط اعلان و فهرست نتایج بر حسب پیکسل. پیش‌فرض: 0.

image-size-ratio

نسبت تصویر بزرگی که هنگام وجود تنها «چند» مورد منطبق نمایش داده می‌شود، در مقایسه با اندازه کامل پنجره. برای غیرفعال کردن تصاویر بزرگ، مقدار آن را روی 0 یا 1 تنظیم کنید. پیش‌فرض: 0.5.

line-height

بازنویسی ارتفاع خط بر اساس معیارهای قلم (font metrics). پیش‌فرض: استفاده از معیارهای قلم.

letter-spacing

فاصله اضافی بین حروف. مقادیر منفی نیز مجاز هستند. پیش‌فرض: 0.

layer

لایه‌ای که پنجره fuzzel روی آن رندر می‌شود. مقادیر معتبر top و overlay هستند.

مقدار top پنجره را بالاتر از پنجره‌های عادی، اما معمولاً زیر پنجره‌های تمام‌صفحه و صفحه قفل رندر می‌کند.

مقدار overlay پنجره را روی پنجره‌های عادی و همچنین پنجره‌های تمام‌صفحه رندر می‌کند. توجه داشته باشید که اگر چندین پنجره از یک لایه مشترک استفاده کنند، ترتیب قرارگیری نامشخص خواهد بود. از آنجا که صفحه‌های قفل معمولاً از overlay استفاده می‌کنند، این بدان معناست که fuzzel ممکن است روی صفحه قفل ظاهر شود یا نشود.

پیش‌فرض: overlay

keyboard-focus

حالت فوکوس صفحه‌کلید؛ حالت‌های معتبر عبارتند از exclusive و on-demand.

حالت exclusive فوکوس صفحه‌کلید را روی fuzzel قفل می‌کند و تا زمان بسته شدن، تمام ورودی‌های صفحه‌کلید را دریافت می‌نماید.

حالت on-demand فوکوس fuzzel را مانند یک پنجره معمولی تنظیم می‌کند و به سایر پنجره‌ها اجازه می‌دهد مثلاً با کلیک کردن روی آن‌ها، فوکوس صفحه‌کلید را به دست آورند. به طور پیش‌فرض، تغییر فوکوس صفحه‌کلید بلافاصله باعث بسته شدن fuzzel می‌شود؛ با استفاده از exit-on-keyboard-focus-loss=no می‌توانید در حین باز بودن fuzzel با سایر پنجره‌ها تعامل داشته باشید.

پیش‌فرض: exclusive

exit-on-keyboard-focus-loss

بولی. در صورت فعال بودن (true)، با از دست رفتن فوکوس صفحه‌کلید توسط پنجره fuzzel، برنامه بسته می‌شود.

غیرفعال کردن این گزینه می‌تواند در کامپوزیتورهایی که در آن‌ها فعال بودن قابلیت «focus-follows-mouse» با حرکت موش‌واره روی پنجره دیگر باعث خروج فوری fuzzel می‌شود، مفید باشد. به عنوان مثال، در Sway (نسخه ۱٫۷ یا قدیمی‌تر) چنین رفتاری دیده می‌شود.

پیش‌فرض: yes

render-workers

تعداد نخ‌ها (threads) برای رندرینگ. برای غیرفعال کردن چندنخی مقدار آن را روی 0 بگذارید. پیش‌فرض: تعداد پردازنده‌های منطقی موجود (شامل SMT). توجه داشته باشید که این مقدار همیشه بهترین انتخاب نیست؛ در برخی موارد، تعداد هسته‌های فیزیکی نتیجه بهتری دارد.

در صورتی که تعداد بسیار زیادی هسته یا نخ پردازشی دارید، محدود کردن تعداد render-workers را مد نظر قرار دهید؛ زیرا fuzzel نمی‌تواند بیش از تعداد موارد نمایش‌داده‌شده را به صورت موازی پردازش کند.

match-workers

تعداد نخ‌ها برای عملیات تطبیق. برای غیرفعال کردن چندنخی مقدار آن را روی 0 بگذارید. پیش‌فرض: تعداد پردازنده‌های منطقی موجود (شامل SMT). توجه داشته باشید که این مقدار همیشه بهترین انتخاب نیست؛ در برخی موارد، تعداد هسته‌های فیزیکی نتیجه بهتری دارد.

در صورتی که تعداد بسیار زیادی هسته یا نخ پردازشی دارید، محدود کردن تعداد match-workers را مد نظر قرار دهید؛ زیرا fuzzel نمی‌تواند بیش از تعداد مدخل‌های موجود را به صورت موازی پردازش کند.

delayed-filter-ms

مدت زمان، بر حسب میلی‌ثانیه، برای تأخیر در فیلتر کردن مجدد زمانی که تعداد نتایج بیشتر از delayed-filter-limit باشد. پیش‌فرض: 300.

delayed-filter-limit

هنگامی که تعداد موارد منطبق بیشتر از این مقدار باشد، از فیلتر کردن فوری به فیلتر کردن با تأخیر تغییر وضعیت داده می‌شود (گزینه delayed-filter-ms را ببینید). پیش‌فرض: 20000.

scaling-filter

فیلتر مقیاس‌بندی برای استفاده هنگام کوچک کردن اندازه تصاویر PNG. یکی از مقادیر none، nearest، bilinear، box، linear، cubic، lanczos2، lanczos3 و lanczos3-stretched.

گزینه‌های none، nearest و bilinear سریع‌ترین گزینه‌ها هستند، اما کمترین کیفیت خروجی را نیز دارند.

گزینه‌های cubic، lanczos2، lanczos3 و lanczos3-stretched کندترین گزینه‌ها بوده و بهترین کیفیت خروجی را دارند.

گزینه box و تا حدودی linear از نظر کارایی در حد وسط قرار دارند، در حالی که در بیشتر موارد کیفیت آن‌ها به اندازه یا نزدیک به cubic و فیلترهای lanczos است.

پیش‌فرض: box

cache

تعیین محل پیش‌فرض حافظه موقت (کش). در صورت تنظیم نشدن، از $XDG_CACHE_HOME/fuzzel استفاده می‌شود. برای غیرفعال کردن حافظه موقت، آن را روی /dev/null قرار دهید. پیش‌فرض: تنظیم نشده (not set).

auto-select

بولی. هنگامی که فقط یک مورد باقی بماند، آن را به طور خودکار انتخاب می‌کند. پیش‌فرض: no.

enable-mouse

بولی. فعال‌سازی ورودی موش‌واره. پیش‌فرض: yes.

تمامی مقادیر رنگ‌ها در قالب RGBA هستند.

background

رنگ پس‌زمینه. پیش‌فرض: fdf6e3ff.

text

رنگ متن (پیش‌زمینه) مواردی که انتخاب نشده‌اند. پیش‌فرض: 657b83ff.

message

رنگ متن (پیش‌زمینه) رشته پیام. پیش‌فرض: 657b83ff.

prompt

رنگ متن (پیش‌زمینه) نویسه(های) اعلان ورودی. پیش‌فرض: 586e75ff.

placeholder

رنگ متن (پیش‌زمینه) رشته جای‌نگهدار. پیش‌فرض: 93a1a1ff.

input

رنگ متن (پیش‌زمینه) رشته ورودی. پیش‌فرض: 657b83ff.

match

رنگ متن (پیش‌زمینه) زیررشته منطبق. پیش‌فرض: cb4b16ff.

selection

رنگ پس‌زمینه مورد انتخاب‌شده. پیش‌فرض: eee8d5ff.

selection-text

رنگ متن (پیش‌زمینه) مورد انتخاب‌شده. پیش‌فرض: 586e75ff.

selection-match

رنگ متن (پیش‌زمینه) زیررشته منطبق از مورد انتخاب‌شده. پیش‌فرض: cb4b16ff.

counter=HEX

رنگ آمار تعداد موارد منطبق که در سمت راست اعلان ورودی چاپ می‌شود. بخش COLORS را ببینید. پیش‌فرض: 93a1a1ff.

border

رنگ کادر دور. پیش‌فرض: 002b36ff.

width

عرض کادر دور بر حسب پیکسل. پیش‌فرض: 1.

radius

میزان گردی گوشه‌ها. پیش‌فرض: 10.

selection-radius

میزان گردی گوشه‌ها برای مورد انتخاب‌شده. پیش‌فرض: 0.

mode

یکی از مقادیر text یا index. تعیین می‌کند که هنگام انتخاب یک مورد، fuzzel چه چیزی را در خروجی استاندارد (stdout) چاپ کند: text خود مورد را چاپ می‌کند، و index نمایه (ایندکس) مورد انتخاب‌شده را چاپ می‌نماید. مقادیر ایندکس از صفر برای اولین مورد شروع می‌شوند. پیش‌فرض: text.

exit-immediately-if-empty

بولی. در صورت فعال بودن، اگر چیزی در ورودی استاندارد (stdin) نباشد، fuzzel اصلاً اجرا نخواهد شد (یعنی هیچ پنجره‌ای باز نمی‌کند و هیچ چیزی در stdout چاپ نمی‌کند). پیش‌فرض: no.

این بخش به شما امکان می‌دهد کلیدهای میانبر پیش‌فرض را بازنویسی کنید.

قالب کلی به صورت action=combo1...comboN است. یعنی هر عمل (action) می‌تواند یک یا چند ترکیب کلید داشته باشد که با فاصله از هم جدا می‌شوند. هر ترکیب به شکل mod1+mod2+key است. نام کلیدهای تبدیل‌کننده (modifiers) و کلید اصلی باید نام‌های معتبر کلید در XKB باشند.

توجه داشته باشید که اگر Shift یکی از کلیدهای تبدیل‌کننده باشد، نام کلید نباید با حروف بزرگ نوشته شود. برای مثال، Control+Shift+V هرگز فعال نخواهد شد، اما Control+Shift+v کار خواهد کرد.

توجه داشته باشید که کلید Alt معمولاً Mod1 نامیده می‌شود.

دستور xkbcli interactive-wayland می‌تواند برای یافتن نام کلیدها (keysym) مفید باشد.

یک ترکیب کلید فقط می‌تواند به یک عمل اختصاص یابد. فرض کنید می‌خواهید Control+k را به عمل next اختصاص دهید. از آنجا که این کلید میانبر پیش‌فرض برای delete-line-forward است، باید نگاشت پیش‌فرض را لغو کنید. این کار با تنظیم action=none قابل انجام است؛ مثلاً delete-line-forward=none.

cancel

خروج از fuzzel بدون اجرای هیچ چیز. پیش‌فرض: Control+g Control+c Control+bracketleft Escape.

execute

اجرای موردی که در حال حاضر انتخاب شده است. یا در حالت dmenu، چاپ مورد انتخاب‌شده در stdout. پیش‌فرض: Return KP_Enter Control+y.

execute-or-next

اگر فقط یک مورد منطبق وجود داشته باشد، آن را اجرا می‌کند. یا در حالت dmenu، مورد انتخاب‌شده را در stdout چاپ می‌کند. اگر بیش از یک مورد منطبق وجود داشته باشد، مورد بعدی را انتخاب می‌کند. هنگامی که به آخرین مورد برسد، دوباره از ابتدا شروع می‌کند (wrap around). پیش‌فرض: Tab.

execute-input

اجرای مستقیم ورودی خام همان‌طور که هست، صرف‌نظر از اینکه با موردی در فهرست مطابقت داشته باشد یا خیر. در حالت dmenu، در عوض مورد انتخاب‌شده را در stdout چاپ می‌کند. پیش‌فرض: Shift+Return Shift+KP_Enter.

cursor-left

مکان‌نما را یک نویسه به چپ می‌برد. پیش‌فرض: Left Control+b.

cursor-left-word

مکان‌نما را یک کلمه به چپ می‌برد. پیش‌فرض: Control+Left Mod1+b.

cursor-right

مکان‌نما را یک نویسه به راست می‌برد. پیش‌فرض: Right Control+f.

cursor-right-word

مکان‌نما را یک کلمه به راست می‌برد. پیش‌فرض: Control+Right Mod1+f.

cursor-home

مکان‌نما را به ابتدای ورودی می‌برد. پیش‌فرض: Home Control+a.

cursor-end

مکان‌نما را به انتهای ورودی می‌برد. پیش‌فرض: End Control+e.

delete-line-backward

همه چیز را قبل از مکان‌نما حذف می‌کند. پیش‌فرض: Control+u.

delete-line-forward

همه چیز را بعد از مکان‌نما حذف می‌کند. پیش‌فرض: Control+k.

delete-line

تمام ورودی را حذف می‌کند. پیش‌فرض: Control+Shift+BackSpace.

delete-prev

نویسه قبل از مکان‌نما را حذف می‌کند. پیش‌فرض: BackSpace Control+h.

delete-prev-word

کلمه قبل از مکان‌نما را حذف می‌کند. پیش‌فرض: Mod1+BackSpace Control+BackSpace Control+w.

delete-next

نویسه بعد از مکان‌نما را حذف می‌کند. پیش‌فرض: Delete.

delete-next-word

کلمه بعد از مکان‌نما را حذف می‌کند. پیش‌فرض: Mod1+d Control+Delete.

insert-selected

مورد انتخاب‌شده را در اعلان ورودی کپی کرده و جایگزین اعلان فعلی می‌کند. در حالت برنامه‌ها، خط Exec درج می‌شود، و در حالت dmenu خود مدخل به کار می‌رود. پیش‌فرض: Control+Tab.

expunge

مورد انتخاب‌شده فعلی را از حافظه موقت (برنامه‌هایی که بیشترین اجرا را داشته‌اند) پاک می‌کند. پیش‌فرض: Shift+Delete.

clipboard-paste

جای‌گذاری متن از کلیپ‌بورد (clipboard). پیش‌فرض: Control+v XF86Paste.

primary-paste

جای‌گذاری متن از انتخاب اولیه (primary selection). این عمل همچنین به کلید میانی موش‌واره اختصاص یافته است (در حال حاضر قابل پیکربندی نیست). پیش‌فرض: Shift+Insert Shift+KP_Insert.

prev

انتخاب مورد قبلی. هنگامی که به اولین مورد برسد، به انتها باز نمی‌گردد. پیش‌فرض: Up Control+p.

prev-with-wrap

انتخاب مورد قبلی. هنگامی که به اولین مورد برسد، به انتها بازمی‌گردد (wrap around). پیش‌فرض: ISO_Left_Tap. (Shift+Tab)

prev-page

رفتن به صفحه قبلی. پیش‌فرض: PageUp KP_PageUp.

next

انتخاب مورد بعدی. هنگامی که به آخرین مورد برسد، به ابتدا باز نمی‌گردد. پیش‌فرض: Down Control+n.

next-with-wrap

انتخاب مورد بعدی. هنگامی که به آخرین مورد برسد، به ابتدا بازمی‌گردد (wrap around). پیش‌فرض: unbound (اختصاص نیافته).

next-page

رفتن به صفحه بعدی. پیش‌فرض: Page_Down KP_Page_Down.

first

انتخاب اولین مورد در اولین صفحه. پیش‌فرض: Control+Home.

last

انتخاب آخرین مورد در آخرین صفحه. پیش‌فرض: Control+End.

custom-1, custom-2, ..., custom-19

اجرای موردی که در حال حاضر انتخاب شده است، و سپس خروج با یک کد خروج غیرصفر. گزینه custom-1 با کد خروج ۱۰ خارج می‌شود، custom-2 با ۱۱، custom-3 با ۱۲، و به همین ترتیب.

پیش‌فرض:

  • custom-1: Mod1+1
  • custom-2: Mod1+2
  • custom-3: Mod1+3
  • custom-4: Mod1+4
  • custom-5: Mod1+5
  • custom-6: Mod1+6
  • custom-7: Mod1+7
  • custom-8: Mod1+8
  • custom-9: Mod1+9
  • custom-10: Mod1+10
  • custom-11: Mod1+11
  • custom-12: Mod1+12
  • custom-13: Mod1+13
  • custom-14: Mod1+14
  • custom-15: Mod1+15
  • custom-16: Mod1+16
  • custom-17: Mod1+17
  • custom-18: Mod1+18
  • custom-19: Mod1+19

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

"Family Name:style=Style:weight=Weight:size=Size"

مشخصه‌های رایج:

  • family - نام خانواده قلم
  • style - italic، oblique، roman
  • weight - light، normal، bold، black (یا مقادیر عددی ۱۰۰-۹۰۰)
  • size - اندازه قلم بر حسب پوینت (Point size)
  • slant - italic، oblique، roman
  • width - condensed، normal، expanded

فناوری Fontconfig از قلم‌های جایگزین (fallback fonts) پشتیبانی می‌کند. می‌توانید چندین خانواده قلم را که با کاما از هم جدا شده‌اند، مشخص کنید. قلم‌های جایگزین به همان ترتیبی که نوشته شده‌اند جستجو می‌شوند. اگر گلیفی در هیچ‌یک از قلم‌های جایگزین پیدا نشود، فهرست پویای قلم‌های جایگزین در fontconfig (برای قلم اصلی) جستجو می‌شود. مثال:

"My Custom Font, DejaVu Sans:weight=bold, sans-serif"

ابزار Fontconfig صرف‌نظر از نام قلمی که به آن می‌دهید، همیشه مقداری را برمی‌گرداند مگر اینکه هیچ قلمی روی سیستم شما نصب نشده باشد. با دستور `fc-match -s YourFontName` می‌توانید قلم‌هایی را که تطبیق داده می‌شوند، بررسی کنید.

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

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

2026-09-03