.TH wofi 5 .SH "نام (NAME)" wofi \- فایل پیکربندی و استایل‌دهی .SH "توضیحات (DESCRIPTION)" قالب پیکربندی Wofi بسیار ساده بوده و از جفت‌های کلید\-مقدار با قالب snake_case تشکیل شده است. بخش اعظم گزینه‌های پیکربندی همان گزینه‌های خط فرمان هستند، با این حال تعداد اندکی از گزینه‌ها تنها از طریق فایل پیکربندی wofi در دسترس می‌باشند. گزینه‌های ویژه حالت‌های توکار در \fBwofi\fR(7) مستند شده‌اند. این گزینه‌ها در فایل پیکربندی با قالب \fBmode\-example_opt=val\fR قرار می‌گیرند. برای نمونه dmenu گزینه‌ای به نام \fBparse_action\fR دارد که در فایل پیکربندی به صورت \fBdmenu\-parse_action=true\fR درج می‌شود. هر متنی پس از نویسه # به عنوان توضیح (کامنت) در نظر گرفته می‌شود، مگر اینکه قبل از # یک \\ قرار گرفته باشد. به همین دلیل برای قرار دادن بک‌اسلش در فایل پیکربندی، باید آن را اسکیپ کرد و به صورت \\\\ نوشت. .SH "گزینه‌های پیکربندی (CONFIG OPTIONS)" بیشتر گزینه‌های موجود در اینجا همان فلگ‌های دستوری یافت‌شده در \fBwofi\fR(1) با قالب snake_case هستند، هرچند برخی از آن‌ها منحصراً مربوط به فایل پیکربندی می‌باشند. .TP .B style=\fIPATH\fR فایل CSS مورد استفاده به عنوان شیوه‌نامه (stylesheet) را مشخص می‌کند. .TP .B stylesheet=\fIPATH\fR فایل CSS مورد استفاده به عنوان شیوه‌نامه را مشخص می‌کند. این گزینه با \fBstyle\fR یکسان نیست. مسیرهای مطلق، مطلق هستند اما مسیرهای نسبی نسبت به مکان پوشه پیکربندی wofi یعنی $XDG_CONFIG_HOME/wofi سنجیده می‌شوند و برخلاف \fBstyle\fR نسبت به دایرکتوری کاری جاری محاسبه نمی‌شوند. همچنین نسبت به مسیر مشخص‌شده توسط \fB\-\-conf\fR نیز نسبی نیستند. این گزینه از rootbar به ارث رسیده است و احتمالاً بیشتر از آنکه مفید باشد گیج‌کننده است. بهتر است از \fBstyle\fR استفاده کنید مگر اینکه مطمئن باشید به این گزینه نیاز دارید. .TP .B color=\fIPATH\fR فایل رنگ‌های مورد استفاده را مشخص می‌کند. .TP .B colors=\fIPATH\fR فایل رنگ‌های مورد استفاده را مشخص می‌کند. این گزینه با \fBcolor\fR یکسان نیست. مسیرهای مطلق، مطلق هستند اما مسیرهای نسبی نسبت به مکان پوشه پیکربندی wofi یعنی $XDG_CONFIG_HOME/wofi سنجیده می‌شوند و برخلاف \fBcolor\fR نسبت به دایرکتوری کاری جاری محاسبه نمی‌شوند. همچنین نسبت به مسیر مشخص‌شده توسط \fB\-\-conf\fR نیز نسبی نیستند. این گزینه از rootbar به ارث رسیده است و احتمالاً بیشتر از آنکه مفید باشد گیج‌کننده است. بهتر است از \fBcolor\fR استفاده کنید مگر اینکه مطمئن باشید به این گزینه نیاز دارید. .TP .B show=\fIMODE\fR حالتی که wofi باید در آن اجرا شود را مشخص می‌کند. فهرستی از حالت‌ها را می‌توان در \fBwofi\fR(7) یافت. .TP .B mode=\fIMODE\fR همانند \fBshow\fR است. .TP .B width=\fIWIDTH\fR عرض منو را بر حسب پیکسل یا درصدی از اندازه صفحه نمایش مشخص می‌کند؛ مقدار پیش‌فرض 50% است. در صورتی که عدد به % ختم نشود، بر حسب پیکسل در نظر گرفته می‌شود. .TP .B height=\fIHEIGHT\fR ارتفاع منو را بر حسب پیکسل یا درصدی از اندازه صفحه نمایش مشخص می‌کند؛ مقدار پیش‌فرض 40% است. در صورتی که عدد به % ختم نشود، بر حسب پیکسل در نظر گرفته می‌شود. .TP .B prompt=\fIPROMPT\fR پیام اعلان (prompt) قابل نمایش در کادر جستجو را تنظیم می‌کند؛ مقدار پیش‌فرض نام حالت است. .TP .B xoffset=\fIOFFSET\fR میزان جابه‌جایی افقی (انحراف x) را نسبت به موقعیت بر حسب پیکسل تنظیم می‌کند؛ مقدار پیش‌فرض 0 است. .TP .B x=\fIOFFSET\fR همانند \fBxoffset\fR است. .TP .B yoffset=\fIOFFSET\fR میزان جابه‌جایی عمودی (انحراف y) را نسبت به موقعیت بر حسب پیکسل تنظیم می‌کند؛ مقدار پیش‌فرض 0 است. .TP .B y=\fIOFFSET\fR همانند \fByoffset\fR است. .TP .B normal_window=\fIBOOL\fR اگر مقدار true باشد، wofi به جای استفاده از wlr\-layer\-shell در یک پنجره معمولی اجرا می‌شود؛ مقدار پیش‌فرض false است. .TP .B allow_images=\fIBOOL\fR اگر مقدار true باشد، به توالی‌های گریز (escape sequences) تصویر اجازه پردازش و رندر داده می‌شود؛ مقدار پیش‌فرض false است. .TP .B allow_markup=\fIBOOL\fR اگر مقدار true باشد، به نشانه‌گذاری‌های pango اجازه پردازش و رندر داده می‌شود؛ مقدار پیش‌فرض false است. .TP .B cache_file=\fIPATH\fR فایل حافظه موقت (cache) را برای بارگذاری/ذخیره حافظه پنهان مشخص می‌کند؛ مقدار پیش‌فرض $XDG_CACHE_HOME/wofi\- است که در آن نام حالت می‌باشد؛ در صورتی که $XDG_CACHE_HOME مشخص نشده باشد از ~/.cache استفاده می‌شود. .TP .B term=\fITERM\fR شبیه‌ساز ترمینال مورد استفاده هنگام اجرای یک برنامه در ترمینال را مشخص می‌کند. این گزینه ترتیب پیش‌فرض اجرای ترمینال‌ها را که به ترتیب شامل kitty، alacritty، wezterm، foot، termite، gnome\-terminal و weston\-terminal است بازنویسی می‌کند. .TP .B password=\fICHARACTER\fR برنامه wofi را با استفاده از نویسه مشخص‌شده در حالت گذرواژه اجرا می‌کند؛ مقدار پیش‌فرض false است. .TP .B exec_search=\fIBOOL\fR اگر مقدار true باشد، فعال کردن جستجو با فشردن کلید enter خود عبارت جستجو را اجرا می‌کند، نه اولین نتیجه را؛ مقدار پیش‌فرض false است. .TP .B no_custom_entry=\fIBOOL\fR اگر مقدار true باشد، تنها ورودی‌های فهرست به حالت‌ها ارسال می‌شوند و هرگز محتوای کادر جستجو ارسال نخواهد شد؛ مقدار پیش‌فرض false است. .TP .B hide_scroll=\fIBOOL\fR اگر مقدار true باشد، نوارهای اسکرول پنهان می‌شوند؛ مقدار پیش‌فرض false است. .TP .B matching=\fIMODE\fR حالت تطبیق را مشخص می‌کند که می‌تواند یکی از موارد contains، strict-contains، multi-contains یا fuzzy باشد؛ مقدار پیش‌فرض contains است. .TP .B insensitive=\fIBOOL\fR اگر مقدار true باشد، جستجوی غیرحساس به حروف بزرگ و کوچک را فعال می‌کند؛ مقدار پیش‌فرض false است. .TP .B parse_search=\fIBOOL\fR اگر مقدار true باشد، توالی‌های گریز تصویر و نشانه‌گذاری‌های pango را از عبارت جستجو حذف کرده و مانع استفاده از آن‌ها در جستجو می‌شود؛ مقدار پیش‌فرض false است. .TP .B location=\fILOCATION\fR موقعیت قرارگیری را مشخص می‌کند. برای اطلاعات بیشتر \fBwofi\fR(7) را ببینید؛ مقدار پیش‌فرض center است. .TP .B no_actions=\fIBOOL\fR اگر مقدار true باشد، اقدامات چندگانه (multiple actions) را برای حالت‌هایی که از آن پشتیبانی می‌کنند غیرفعال می‌کند؛ مقدار پیش‌فرض false است. .TP .B lines=\fILINES\fR ارتفاع را به جای پیکسل بر حسب تعداد خطوط مشخص می‌کند. .TP .B columns=\fICOLUMNS\fR تعداد ستون‌های قابل نمایش را مشخص می‌کند؛ مقدار پیش‌فرض 1 است. .TP .B sort_order=\fIORDER\fR ترتیب مرتب‌سازی پیش‌فرض را تعیین می‌کند. در حال حاضر دو ترتیب default و alphabetical وجود دارد. برای جزئیات \fBwofi\fR(7) را ببینید. .TP .B gtk_dark=\fIBOOL\fR اگر مقدار true باشد، به wofi دستور می‌دهد از نگارش تیره تم جاری GTK (در صورت موجود بودن) استفاده کند؛ مقدار پیش‌فرض false است. .TP .B search=\fISTRING\fR رشته‌ای را برای جستجوی بلافاصله پس از باز شدن پنجره مشخص می‌کند. .TP .B monitor=\fISTRING\fR نمایشگری (مانیتوری) که پنجره باید روی آن باز شود را تعیین می‌کند. .TP .B pre_display_cmd=\fICOMMAND\fR یک رشته شبیه به printf را مشخص می‌کند که پیش از نمایش آیتم‌ها روی آن‌ها اعمال می‌شود. این دستور تنها برای نمایش رشته ویجت برچسب (label) به کار می‌رود و بر خروجی برچسب انتخاب‌شده تاثیری نمی‌گذارد. .TP .B orientation=\fIORIENTATION\fR جهت‌گیری را مشخص می‌کند که می‌تواند horizontal (افقی) یا vertical (عمودی) باشد؛ مقدار پیش‌فرض vertical است. .TP .B halign=\fIALIGN\fR تراز افقی کل ناحیه اسکرول‌شده را مشخص می‌کند که می‌تواند یکی از مقادیر fill، start، end یا center باشد؛ مقدار پیش‌فرض fill است. .TP .B content_halign=\fIALIGN\fR تراز افقی آیتم‌های منفرد را مشخص می‌کند که می‌تواند یکی از مقادیر fill، start، end یا center باشد؛ مقدار پیش‌فرض fill است. .TP .B valign=\fIALIGN\fR تراز عمودی کل ناحیه اسکرول‌شده را مشخص می‌کند که می‌تواند یکی از مقادیر fill، start، end یا center باشد؛ مقدار پیش‌فرض به جهت‌گیری بستگی دارد. اگر عمودی باشد مقدار پیش‌فرض start و اگر افقی باشد مقدار پیش‌فرض center است. .TP .B filter_rate=\fIRATE\fR نرخ به‌روزرسانی نتایج جستجو را بر حسب میلی‌ثانیه مشخص می‌کند؛ مقدار پیش‌فرض 100 است. .TP .B image_size=\fISIZE\fR اندازه تصاویر را بر حسب پیکسل در صورت فعال بودن تصاویر مشخص می‌کند؛ مقدار پیش‌فرض 32 است. .TP .B key_up=\fIKEY\fR کلید مورد استفاده برای حرکت به سمت بالا را مشخص می‌کند. مقدار پیش‌فرض Up (کلید جهت‌نمای بالا) است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_down=\fIKEY\fR کلید مورد استفاده برای حرکت به سمت پایین را مشخص می‌کند. مقدار پیش‌فرض Down (کلید جهت‌نمای پایین) است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_left=\fIKEY\fR کلید مورد استفاده برای حرکت به سمت چپ را مشخص می‌کند. مقدار پیش‌فرض Left (کلید جهت‌نمای چپ) است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_right=\fIKEY\fR کلید مورد استفاده برای حرکت به سمت راست را مشخص می‌کند. مقدار پیش‌فرض Right (کلید جهت‌نمای راست) است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_forward=\fIKEY\fR کلید مورد استفاده برای حرکت به جلو را مشخص می‌کند. مقدار پیش‌فرض Tab است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_backward=\fIKEY\fR کلید مورد استفاده برای حرکت به عقب را مشخص می‌کند. مقدار پیش‌فرض Shift-ISO_Left_Tab (ترکیب Shift+Tab) است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_submit=\fIKEY\fR کلید مورد استفاده برای ثبت و تایید یک اقدام را مشخص می‌کند. مقدار پیش‌فرض Return است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_exit=\fIKEY\fR کلید مورد استفاده برای خروج از wofi را مشخص می‌کند. مقدار پیش‌فرض Escape است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_pgup=\fIKEY\fR کلید مورد استفاده برای حرکت به اندازه یک صفحه به سمت بالا را مشخص می‌کند. مقدار پیش‌فرض Page_Up است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_pgdn=\fIKEY\fR کلید مورد استفاده برای حرکت به اندازه یک صفحه به سمت پایین را مشخص می‌کند. مقدار پیش‌فرض Page_Down است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_expand=\fIKEY\fR کلید مورد استفاده برای باز کردن/بستن آیتم‌های دارای اقدامات چندگانه را مشخص می‌کند. این گزینه مقدار پیش‌فرضی ندارد. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_hide_search=\fIKEY\fR کلید مورد استفاده برای پنهان کردن/نمایش نوار جستجو را مشخص می‌کند. این گزینه مقدار پیش‌فرضی ندارد. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_copy=\fIKEY\fR کلید مورد استفاده برای رونوشت از متن اقدام برای آیتم جاری را مشخص می‌کند. مقدار پیش‌فرض Ctrl-c است. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B key_custom_(n)=\fIKEY\fR امکان پیکربندی کدهای خروج سفارشی را فراهم می‌کند. برای مثال تنظیم key_custom_0=Ctrl-0 باعث می‌شود در صورت فشردن Ctrl-0 برنامه wofi وضعیت خروج خود را روی 10 تنظیم کند. این کار باعث خروج wofi نمی‌شود، بلکه تنها کد خروج را برای زمانی که برنامه بسته می‌شود تعیین می‌کند. ۲۰ کلید از این دست با شماره‌های ۰ تا ۱۹ قابل پیکربندی هستند. وضعیت خروج مورد استفاده 10+n است که در آن n عددی است که به key_custom_n ضمیمه شده است. این کلیدها مقدار پیش‌فرضی ندارند. برای کدهای کلید \fBwofi\-keys\fR(7) را ببینید. .TP .B line_wrap=\fIMODE\fR حالت شکستن خطوط را مشخص می‌کند. گزینه‌های موجود عبارتند از off، word، char و word_char؛ مقدار پیش‌فرض off است. .TP .B global_coords=\fIBOOL\fR مشخص می‌کند که آیا انحراف‌های x و y باید با استفاده از فضای سراسری کامپوزیتور به جای مانیتور فعلی محاسبه شوند یا خیر؛ مقدار پیش‌فرض false است. این ویژگی با موقعیت‌ها به خوبی هماهنگ نمی‌شود و استفاده همزمان از آن‌ها توصیه نمی‌شود. .TP .B hide_search=\fIBOOL\fR مشخص می‌کند که آیا نوار جستجو باید پنهان شود یا خیر؛ مقدار پیش‌فرض false است. .TP .B close_on_focus_loss=\fIBOOL\fR مشخص می‌کند که آیا wofi با از دست دادن تمرکز (focus) بسته شود یا خیر؛ مقدار پیش‌فرض false است. .TP .B dynamic_lines=\fIBOOL\fR مشخص می‌کند که آیا اندازه wofi باید به صورت پویا متناسب با تعداد خطوط قابل مشاهده کوچک شود یا اینکه همیشه هم‌اندازه باقی بماند؛ مقدار پیش‌فرض false است. .TP .B layer=\fILAYER\fR لایه‌ای را که پنجره باید روی آن باز شود مشخص می‌کند. گزینه‌ها عبارتند از background، bottom، top و overlay؛ مقدار پیش‌فرض top است. .TP .B copy_exec=\fIPATH\fR فایل اجرایی برای هدایت (pipe) داده‌های رونوشت به آن را مشخص می‌کند. متغیر $PATH بررسی خواهد شد؛ این مقدار به شل ارسال نمی‌شود و باید یک فایل اجرایی باشد؛ مقدار پیش‌فرض wl-copy است. .TP .B single_click=\fIBOOL\fR مشخص می‌کند که آیا اقدامات با یک کلیک اجرا شوند یا با دو بار کلیک (دابل کلیک)؛ مقدار پیش‌فرض false است. .TP .B pre_display_exec=\fIBOOL\fR این گزینه رفتار pre_display_cmd را تغییر داده و باعث می‌شود دستور مورد نظر به جای اجرا از طریق شل، مستقیماً از طریق فراخوانی fork/exec اجرا شود. .TP .B use_search_box=\fIBOOL\fR مشخص می‌کند که آیا wofi باید از یک GtkSearchEntry استفاده کند یا یک GtkEntry معمولی. ورودی جستجو دارای یک آیکون کوچک جستجو و یک دکمه پاک کردن متن است که ورودی معمولی فاقد آن می‌باشد؛ مقدار پیش‌فرض true است. .SH "انتخاب‌گرهای سی‌اس‌اس (CSS SELECTORS)" هر ویجت GTK را می‌توان با استفاده از نام گره CSS آن انتخاب کرد، هرچند ممکن است این نام‌ها در به‌روزرسانی‌ها تغییر کنند و ثابت ماندن آن‌ها تضمین نمی‌شود. همچنین wofi برای برخی ویجت‌ها نام‌ها و کلاس‌هایی را فراهم می‌کند که می‌توان از طریق CSS به آن‌ها ارجاع داد تا دسترسی به مهم‌ترین ویجت‌ها به سادگی میسر شود. بخش \fBwofi\fR(7) شامل چیدمان فعلی ویجت‌های مورد استفاده توسط wofi است، بنابراین اگر می‌خواهید با استفاده مستقیم از نام ویجت‌های GTK وارد تنظیمات CSS شوید، برای کسب اطلاعات به آنجا مراجعه کنید. .TP .B #window .br نام خود پنجره. .TP .B #outer\-box .br نام کادری که همه اجزا را در بر می‌گیرد. .TP .B #input .br نام نوار جستجو. .TP .B #scroll .br نام پنجره اسکرول‌شده حاوی تمامی ورودی‌ها. .TP .B #inner\-box .br نام کادر حاوی تمامی ورودی‌ها. .TP .B #img .br نام تمامی تصاویر موجود در ورودی‌هایی که در حالت تصویر نمایش داده می‌شوند. .TP .B #text .br نام تمامی متن‌های موجود در ورودی‌ها. .TP .B #unselected .br نام تمام ورودی‌هایی که در حال حاضر انتخاب نشده‌اند. روش بهتر برای انجام این کار استفاده از #entry و ترکیب آن با #entry:selected است. .TP .B #selected .br نام تمام ورودی‌هایی که در حال حاضر انتخاب شده‌اند. روش بهتر برای انجام این کار استفاده از #entry:selected است. .TP .B .entry .br کلاس اختصاص‌یافته به تمام ورودی‌ها. این کلاس به کادر ویژگی داخلی اختصاص دارد و قدیمی است؛ احتمالاً بهتر است به جای آن از #entry استفاده کنید. .TP .B #entry .br نام تمامی ورودی‌ها. .TP .B #expander-box .br نام تمامی کادرهایی که هنگام باز کردن ورودی‌های دارای اقدامات چندگانه نمایش داده می‌شوند. .SH "رنگ‌ها (COLORS)" فایل رنگ‌ها باید به صورت مقادیر هگزادسیمال (hex) که با خط جدید از یکدیگر جدا شده‌اند قالب‌بندی شود. این مقادیر باید در قالب استاندارد HTML بوده و با علامت هش (#) شروع شوند. این رنگ‌ها بارگذاری خواهند شد، اما wofi نمی‌داند کدام رنگ باید برای چه بخشی استفاده شود، بنابراین باید از درون CSS خود به آن‌ها ارجاع دهید. می‌توانید با استفاده از \-\-wofi\-color از درون CSS خود به آن‌ها ارجاع دهید که در آن شماره سطر منهای ۱ است. برای نمونه جهت ارجاع به رنگ سطر ۱، باید از \fB\-\-wofi\-color0\fR استفاده کنید. همچنین می‌توان با استفاده از \-\-wofi\-rgb\-color به رنگ‌ها ارجاع داد که در آن شماره سطر منهای ۱ است. تفاوت میان این دو در قالب مورد استفاده برای جایگزینی ماکرو است. عبارت \-\-wofi\-color با یک کد رنگ HTML در قالب #FFFFFF جایگزین می‌شود. عبارت \-\-wofi\-rgb\-color با مقادیر rgb جداشده با کاما در قالب 255, 255, 255 جایگزین می‌شود. شیوه صحیح استفاده از \-\-wofi\-rgb\-color قرار دادن آن درون تابع rgb() یا rgba() است. توجه داشته باشید که این متغیر مقدار آلفا (شفافیت) را برنمی‌گرداند، بنابراین ترکیب آن با rgba() باید به این صورت انجام شود: \fBrgba(\-\-wofi\-rgb\-color0, 0.8)\fR. این دستور رنگ سطر ۱ را با شفافیت ۸۰٪ تنظیم می‌کند.