.\" Generated by scdoc 1.11.3 .\" 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 "fuzzel.ini" "5" "2025-09-23" .PP .SH NAME fuzzel.\&ini - configuration file for \fBfuzzel\fR(1) .PP .PP .SH DESCRIPTION .PP \fBfuzzel\fR uses the standard \fIunix configuration format\fR, with section based key/value pairs.\& The default section is usually unnamed, i.\&e.\& not prefixed with a \fI[section]\fR.\& However it can also be explicitly named \fI[main]\fR, say if it needs to be reopened after any of the other sections.\& .PP fuzzel will search for a configuration file in the following locations, in this order: .PP .RS 4 .PD 0 .IP \(bu 4 \fBXDG_CONFIG_HOME/fuzzel/fuzzel.\&ini\fR (defaulting to \fB\(ti/.\&config/fuzzel/fuzzel.\&ini\fR if unset) .IP \(bu 4 \fBXDG_CONFIG_DIRS/fuzzel/fuzzel.\&ini\fR (defaulting to \fB/etc/xdg/fuzzel/fuzzel.\&ini\fR if unset) .PD .PP .RE An example configuration file containing all options with their default value commented out will usually be installed to \fB/etc/xdg/fuzzel/fuzzel.\&ini\fR.\& .PP .SH SECTION: main .PP \fBinclude\fR .RS 4 Absolute path to configuration file to import.\& .PP The import file has its own section scope.\& I.\&e.\& the including configuration is still in the default section after the include, regardless of which section the included file ends in.\& .PP .RS 4 .PD 0 .IP \(bu 4 The path must be an absolute path, or start with \fB\(ti/\fR.\& .IP \(bu 4 Multiple include directives are allowed, but only one path per directive.\& .IP \(bu 4 Nested imports are allowed.\& .PD .PP .RE Default: \fInot set\fR.\& .PP .RE \fBnamespace\fR .RS 4 Namespace for the spawned layer shell surface.\& Useful for blocking fuzzel out from screencasts in your compositor if it shows sensitive information, such as passwords.\& .PP Default: \fIlauncher\fR .PP .RE \fBoutput\fR .RS 4 Output (monitor) to display on.\& You can list the available outputs with \fBwlr-randr\fR or with Sway using \fBswaymsg -t get_outputs\fR.\& .PP Example: \fIDP-1\fR .PP Default: Not set-- let the compositor choose output.\& .PP .RE \fBfont\fR .RS 4 Comma separated list of fonts to use, in fontconfig format.\& That is, a font name followed by a list of colon-separated options.\& Most noteworthy is \fB:size=n\fR, which is used to set the font size.\& Note that the font size is also affected by the \fBdpi-aware\fR option.\& See \fBFONT CONFIG\fR below for details.\& .PP Examples: .RS 4 .PD 0 .IP \(bu 4 Dina:weight=bold:slant=italic .IP \(bu 4 Courier New:size=12 .IP \(bu 4 Fantasque Sans Mono:fontfeatures=ss01 .PD .PP .RE Default: \fImonospace\fR.\& .PP .RE \fBuse-bold\fR .RS 4 Boolean.\& When set, fuzzel may use bold fonts.\& For example, for the currently selected item.\& Default: \fIno\fR .PP .RE \fBdpi-aware\fR .RS 4 \fBauto\fR, \fByes\fR, or \fBno\fR.\& .PP When set to \fByes\fR, fonts are sized using the monitor'\&s DPI, making a font of a given size have the same physical size, regardless of monitor.\& .PP In this mode, the monitor'\&s scaling factor is ignored; doubling the scaling factor will \fBnot\fR double the font size.\& .PP When set to \fBno\fR, the monitor'\&s DPI is ignored.\& The font is instead sized using the monitor'\&s scaling factor; doubling the scaling factor \fBdoes\fR double the font size.\& .PP Finally, if set to \fBauto\fR, fonts will be sized using the monitor'\&s DPI if \fIall\fR monitors have a scaling factor of 1.\& If at least one monitor as a scaling factor larger than 1 (regardless of whether the fuzzel window is mapped on that monitor or not), fonts will be scaled using the scaling factor.\& .PP Note that this option typically does not work with bitmap fonts, which only contains a pre-defined set of sizes, and cannot be dynamically scaled.\& Whichever size (of the available ones) that best matches the DPI or scaling factor, will be used.\& .PP Also note that if the font size has been specified in pixels (\fB:pixelsize=\fR\fIN\fR, instead of \fB:size=\fR\fIN\fR), DPI scaling (\fBdpi-aware=yes\fR) will have no effect (the specified pixel size will be used as is).\& But, if the monitor'\&s scaling factor is used to size the font (\fBdpi-aware=no\fR), the font'\&s pixel size will be multiplied with the scaling factor.\& .PP Default: \fIauto\fR.\& .PP .RE \fBgamma-correct\fR .RS 4 Boolean.\& When enabled, fuzzel will do gamma-correct blending in linear color space.\& This is how font glyphs are supposed to be rendered, but since nearly no applications or toolkits are doing it on Linux, the result may not look like you are used to.\& .PP Compared to the default (disabled), bright glyphs on a dark background will appear thicker, and dark glyphs on a light background will appear thinner.\& .PP FreeType can limit the effect of the latter, with a technique called stem darkening.\& It is only available for CFF fonts (OpenType, .\&otf) and disabled by default (in FreeType).\& You can enable it by setting the environment variable \fBFREETYPE_PROPERTIES="cff:no-stem-darkening=0"\fR before starting fuzzel.\& .PP Also be aware that many fonts have been developed on systems that do not do gamma-correct blending, and may therefore look thicker than intended when rendered with gamma-correct blending, since the font designer set the font weight based on incorrect rendering.\& .PP In order to represent colors faithfully, higher precision image buffers are required.\& For this reason, fuzzel uses 16-bit image buffers (instead of 8-bit) when gamma-correct blending is enabled.\& .PP It is not possible to enable gamma-correct blending in cairo enabled builds of fuzzel, since cairo does not support 16-bit image buffers.\& .PP .RE \fBplaceholder\fR .RS 4 Text to display as placeholder in the input box.\& Default: empty.\& .PP .RE \fBprompt\fR .RS 4 String to use as input prompt.\& Note that trailing spaces are trimmed, unless the string is quoted.\& Default: \fI"> "\fR.\& .PP .RE \fBicon-theme\fR .RS 4 Icon theme.\& Note that the name is case sensitive.\& Default: \fIdefault\fR.\& .PP .RE \fBicons-enabled\fR .RS 4 Boolean.\& When enabled, application icons (from the selected \fBicon-theme\fR) will be rendered.\& Default: \fIyes\fR.\& .PP .RE \fBhide-before-typing\fR .RS 4 Boolean.\& When enabled, application list will be hidden until the first letter is typed.\& When the prompt is cleared again, the list will appear.\& Default: \fIno\fR.\& .PP .RE \fBfields\fR .RS 4 Comma separated list of XDG Desktop entry fields to match against.\& .PP Even though fuzzel only displays the application names, matching can (and by default is) be done against other fields as well.\& Supported fields are: .PP .PD 0 .IP \(bu 4 filename .IP \(bu 4 name .IP \(bu 4 generic .IP \(bu 4 exec .IP \(bu 4 categories .IP \(bu 4 keywords .IP \(bu 4 comment .PD .PP "filename" is the ".\&desktop" file name.\& .PP Default: \fIfilename,name,generic\fR.\& .PP .RE \fBpassword-character\fR .RS 4 Default character to use with the command line option \fB--password\fR.\& Note that this can be overridden on the command line, by explicitly specifying the character with \fB--password=X\fR.\& Default: \fI*\fR.\& .PP .RE \fBmatch-mode\fR .RS 4 One of \fBexact\fR, \fBfzf\fR and \fBfuzzy\fR.\& .PP \fBexact\fR: what you type is matched exactly against each field in the \fBfields\fR list.\& .PP \fBfzf\fR: fzf-style matching, where substrings from what you have typed are matched against each field in the \fBfields\fR list.\& .PP \fBfuzzy\fR: levenshtein-based fuzzy matching of what you have typed against each field in the \fBfields\fR list.\& .PP Default: \fIfzf\fR .PP .RE \fBsort-result\fR .RS 4 Boolean.\& Whether to sort the result or not.\& Disabling sorting means no comparisons will be made between match results.\& I.\&e.\& launch count, match length, etc will be ignored.\& This effectively disables the cache (though, the cache is still updated on exit).\& .PP Disabling this can improve search latency when searching very large data sets.\& .PP Default: \fIyes\fR .PP .RE \fBmatch-counter\fR .RS 4 Boolean.\& When enabled, the match count and total count is displayed on the right-hand side of the input prompt.\& Disabling the counter also improves performance when loading a very large number of dmenu entries from STDIN.\& .PP Default: \fIno\fR.\& .PP .RE \fBfilter-desktop\fR .RS 4 Boolean.\& Filter desktop files based on the value of XDG_CURRENT_DESKTOP.\& Default: \fIno\fR.\& .PP .RE \fBshow-actions\fR .RS 4 Boolean.\& Some desktop files define "actions", in addition to the application itself.\& Examples are "new window", "preferences", etc.\& When this option is enabled, those actions will be listed by fuzzel.\& Default: \fIno\fR.\& .PP .RE \fBterminal\fR .RS 4 terminal command to use when launching '\&terminal'\& programs.\& .PP The command may contain the placeholder \fI{cmd}\fR which will be replaced with the actual command to be run.\& When \fI{cmd}\fR is present, the command is \fB\fRonly\fB\fR substituted in those locations and is \fB\fRnot\fB\fR appended at the end.\& .PP Examples: .PD 0 .IP \(bu 4 \fIfoot -a '\&{cmd}'\& -T '\&{cmd}'\& {cmd}\fR sets app-id and title to the command name, then executes it .IP \(bu 4 \fIxterm -e {cmd}\fR executes the command in xterm .IP \(bu 4 \fIxterm -e\fR (no {cmd}) uses old behavior: appends command after terminal args .PD .PP Default: \fI$TERMINAL -e\fR.\& .PP .RE \fBlist-executables-in-path\fR .RS 4 Boolean.\& When enabled, the list will include executables from the PATH environment variable.\& Default: \fIno\fR.\& .PP .RE \fBlaunch-prefix\fR .RS 4 Prefix to add before argv of executed program.\& If set, fuzzel will pass the Desktop File ID of the chosen application (see the Desktop Entry specification) in the FUZZEL_DESKTOP_FILE_ID environment variables.\& Default: \fInot set\fR.\& .PP .RE \fBanchor\fR .RS 4 Set window anchor, i.\&e.\& where on screen the window will be displayed.\& You can choose one from: .PP .PD 0 .IP \(bu 4 top-left .IP \(bu 4 top .IP \(bu 4 top-right .IP \(bu 4 left .IP \(bu 4 center .IP \(bu 4 right .IP \(bu 4 bottom-left .IP \(bu 4 bottom .IP \(bu 4 bottom-right .PD .PP Default: \fIcenter\fR .PP .RE \fBx-margin\fR .RS 4 Horizontal margin away from the anchor point in pixels.\& Default: \fI0\fR.\& .PP Note: this option has no effect when anchor=center, top or bottom.\& .PP .RE \fBy-margin\fR .RS 4 Vertical margin away from the anchor point in pixels.\& Default: \fI0\fR.\& .PP Note: this option has no effect when anchor=center, left or right.\& .PP .RE \fBlines\fR .RS 4 Number of matches to show.\& Default: \fI15\fR.\& .PP .RE \fBhide-prompt\fR .RS 4 Boolean.\& When set, hides the prompt line, making the window smaller.\& Input is still accepted though the prompt line is not displayed.\& Cannot be used with \fBprompt-only\fR.\& Default: \fIno\fR.\& .PP .RE \fBminimal-lines\fR .RS 4 Boolean.\& Adjust the number of lines to display to the minimum of \fIlines\fR and the number of input lines.\& Only effective in dmenu mode.\& This allows fuzzel to size itself to the actual number of input lines rather than always showing the full \fIlines\fR rows.\& Default: \fIno\fR.\& .PP .RE \fBwidth\fR .RS 4 Window width, in characters.\& Margins and borders not included.\& For variable width fonts this is an estimate, as the exact number of characters that will fit depends on which characters are being displayed.\& Default: \fI30\fR.\& .PP .RE \fBtabs\fR .RS 4 Number of spaces a tab is expanded to.\& Default: \fI8\fR.\& .PP .RE \fBhorizontal-pad\fR .RS 4 Horizontal padding, in pixels, between border and content.\& Default: \fI40\fR.\& .PP .RE \fBvertical-pad\fR .RS 4 Vertical padding, in pixels, between border and content.\& Default: \fI8\fR.\& .PP .RE \fBinner-pad\fR .RS 4 Vertical padding between prompt and match list, in pixels.\& Default: \fI0\fR.\& .PP .RE \fBimage-size-ratio\fR .RS 4 The ratio of the large image displayed when there are only a "few" matches, compared to the full window size.\& Set to 1 to disable the the large images.\& Default: \fI0.\&5\fR.\& .PP .RE \fBline-height\fR .RS 4 Override line height from font metrics.\& Default: use font metrics.\& .PP .RE \fBletter-spacing\fR .RS 4 Additional letter spacing.\& Negative values are allowed.\& Default: \fI0\fR.\& .PP .RE \fBlayer\fR .RS 4 Which layer to render the fuzzel window on.\& Valid values are \fBtop\fR and \fBoverlay\fR.\& .PP \fBtop\fR renders above normal windows, but typically below fullscreen windows and lock screens.\& .PP \fBoverlay\fR renders on top of both normal windows and fullscreen windows.\& Note that the order is undefined if several windows use the same layer.\& Since e.\&g.\& lock screens typically use \fBoverlay\fR, that means fuzzel may or may not appear on top of a lock screen.\& .PP Default: \fIoverlay\fR .PP .RE \fBkeyboard-focus\fR .RS 4 Keyboard focusing mode, valid modes are \fBexclusive\fR and \fBon-demand\fR.\& .PP \fBexclusive\fR locks keyboard focus to fuzzel, receiving all keyboard input until closed.\& .PP \fBon-demand\fR makes fuzzel focus like a regular window, allowing other windows to take keyboard focus by e.\&g.\& clicking on them.\& By default switching keyboard focus will immediately close fuzzel, using \fBexit-on-keyboard-focus-loss=no\fR allows interacting with other windows while fuzzel is open.\& .PP Default: \fIexclusive\fR .PP .RE \fBexit-on-keyboard-focus-loss\fR .RS 4 Boolean.\& If true, exit when the fuzzel window loses keyboard focus.\& .PP Setting this to false can be useful on compositors where enabling "focus-follows-mouse" causes fuzzel to exit as soon as the mouse is moved over another window.\& Sway (<= 1.\&7) exhibits this behavior, for example.\& .PP Default: \fIyes\fR .PP .RE \fBrender-workers\fR .RS 4 Number of threads to use for rendering.\& Set to 0 to disable multithreading.\& Default: the number of available logical CPUs (including SMT).\& Note that this is not always the best value.\& In some cases, the number of physical \fIcores\fR is better.\& .PP In case you have a ridiculous amount of cores and/or threads, consider limiting the number of \fBrender-workers\fR, since fuzzel cannot parallelize more than the number of displayed entries.\& .PP .RE \fBmatch-workers\fR .RS 4 Number of threads to use for matching.\& Set to 0 to disable multithreading.\& Default: the number of available logical CPUs (including SMT).\& Note that this is not always the best value.\& In some cases, the number of physical \fIcores\fR is better.\& .PP In case you have a ridiculous amount of cores and/or threads, consider limiting the number of \fBmatch-workers\fR, since fuzzel cannot parallelize more than the number of available entries.\& .PP .RE \fBdelayed-filter-ms\fR .RS 4 Time, in milliseconds, to delay refiltering when there are more matches than \fBdelayed-filter-limit\fR.\& Default: \fI300\fR.\& .PP .RE \fBdelayed-filter-limit\fR .RS 4 When there are more matches than this, switch from immediate refiltering to delayed refiltering (see \fBdelayed-filter-ms\fR).\& Default: \fI20000\fR.\& .PP .RE \fBscaling-filter\fR .RS 4 Scaling filter to use when down scaling PNGs.\& One of \fBnone\fR, \fBnearest\fR, \fBbilinear\fR, \fBbox\fR, \fBlinear\fR, \fBcubic\fR, \fBlanczos2\fR, \fBlanczos3\fR and \fBlanczos3-stretched\fR.\& .PP \fBnone\fR, \fBnearest\fR and \fBbilinear\fR are the fastest options, but also have the worst looking results.\& .PP \fBcubic\fR, \fBlanczos2\fR, \fBlanczos3\fR and \fBlanczos3-stretched\fR are the slowest options, with the best looking results.\& .PP \fBbox\fR, and to some degree, \fBlinear\fR, are in the middle, performance wise, while in most cases still being just as, or close to, as good as \fBcubic\fR and the lanczos filters.\& .PP Default: \fIbox\fR .PP .RE \fBcache\fR .RS 4 Specify the default cache location.\& If unset, \fB$XDG_CACHE_HOME/fuzzel\fR will be used.\& Set to \fB/dev/null\fR to disable caching.\& Default: \fInot set\fR.\& .PP .RE \fBauto-select\fR .RS 4 Boolean.\& When one entry is left, automatically select it.\& Default: \fIno\fR.\& .PP .RE \fBenable-mouse\fR .RS 4 Boolean.\& Enable mouse input.\& Default: \fIyes\fR.\& .PP .RE .SH SECTION: colors .PP All color values are in RGBA.\& .PP \fBbackground\fR .RS 4 Background color.\& Default: \fIfdf6e3ff\fR.\& .PP .RE \fBtext\fR .RS 4 Text (foreground) color of unselected entries.\& Default: \fI657b83ff\fR.\& .PP .RE \fBprompt\fR .RS 4 Text (foreground) color of prompt character(s).\& Default: \fI586e75ff\fR.\& .PP .RE \fBplaceholder\fR .RS 4 Text (foreground) color of the placeholder string.\& Default: \fI93a1a1ff\fR.\& .PP .RE \fBinput\fR .RS 4 Text (foreground) color of input string.\& Default: \fI657b83ff\fR.\& .PP .RE \fBmatch\fR .RS 4 Text (foreground) color of the matched substring.\& Default: \fIcb4b16ff\fR.\& .PP .RE \fBselection\fR .RS 4 Background color of the selected entry.\& Default: \fIeee8d5ff\fR.\& .PP .RE \fBselection-text\fR .RS 4 Text (foreground) color of the selected entry.\& Default: \fI586e75ff\fR.\& .PP .RE \fBselection-match\fR .RS 4 Text (foreground) color of the matched substring of the selected entry.\& Default: \fIcb4b16ff\fR.\& .PP .RE \fBcounter\fR=\fIHEX\fR .RS 4 The color of the match count stats printed at the right-hand side of the input prompt.\& See \fBCOLORS\fR.\& Default: \fI93a1a1ff\fR.\& .PP .RE \fBborder\fR .RS 4 Border color.\& Default: \fI002b36ff\fR.\& .PP .PP .RE .SH SECTION: border .PP \fBwidth\fR .RS 4 Width of the border, in pixels.\& Default: \fI1\fR.\& .PP .RE \fBradius\fR .RS 4 Amount of corner "roundness".\& Default: \fI10\fR.\& .PP .RE \fBselection-radius\fR .RS 4 Amount of corner "roundness" for the selected entry.\& Default: \fI0\fR.\& .PP .PP .RE .SH SECTION: dmenu .PP \fBmode\fR .RS 4 One of \fBtext\fR or \fBindex\fR.\& Determines what fuzzel prints on stdout when an entry is selected: \fBtext\fR prints the entry itself, \fBindex\fR prints the index of the selected entry.\& Index values start at zero for the first entry.\& Default: \fItext\fR.\& .PP .RE \fBexit-immediately-if-empty\fR .RS 4 Boolean.\& If enabled, fuzzel will not run at all (i.\&e.\& it will not open a window, and will not print anything on stdout) if there'\&s nothing on stdin.\& Default: \fIno\fR.\& .PP .PP .RE .SH SECTION: key-bindings .PP This section lets you override the default key bindings.\& .PP The general format is \fIaction=combo1.\&.\&.\&comboN\fR.\& That is, each action may have one or more key combinations, space separated.\& Each combination is in the form \fImod1+mod2+key\fR.\& The names of the modifiers and the key \fBmust\fR be valid XKB key names.\& .PP Note that if \fBShift\fR is one of the modifiers, the \fIkey\fR \fBmust not\fR be in upper case.\& For example, \fBControl+Shift+V\fR will never trigger, but \fBControl+Shift+v\fR will.\& .PP Note that \fBAlt\fR is usually called \fBMod1\fR.\& .PP \fBxkbcli interactive-wayland\fR can be useful for finding keysym names.\& .PP A key combination can only be mapped to \fBone\fR action.\& Lets say you want to bind \fBControl+k\fR to \fBnext\fR.\& Since this is the default shortcut for \fBdelete-line-forward\fR, you must unmap the default binding.\& This can be done by setting \fIaction=none\fR; e.\&g.\& \fBdelete-line-forward=none\fR.\& .PP \fBcancel\fR .RS 4 Quit fuzzel without executing anything.\& Default: \fIControl+g Control+c Control+bracketleft Escape\fR.\& .PP .RE \fBexecute\fR .RS 4 Execute the currently selected entry.\& Or, in dmenu mode, print the selected entry on stdout.\& Default: \fIReturn KP_Enter Control+y\fR.\& .PP .RE \fBexecute-or-next\fR .RS 4 If there is a single match, execute it.\& Or, in dmenu mode, print the selected entry on stdout.\& If there are more than one match, select the next entry.\& Wraps around when the last entry has been reached.\& Default: \fITab\fR.\& .PP .RE \fBexecute-input\fR .RS 4 Execute the raw input as is, regardless of whether it matches anything in the list or not.\& In dmenu mode, prints the selected entry on stdout instead.\& Default: \fIShift+Return Shift+KP_Enter\fR.\& .PP .RE \fBcursor-left\fR .RS 4 Moves the cursor one \fB\fRcharacter\fB\fR to the left.\& Default: \fILeft Control+b\fR.\& .PP .RE \fBcursor-left-word\fR .RS 4 Moves the cursor one \fB\fRword\fB\fR to the left.\& Default: \fIControl+Left Mod1+b\fR.\& .PP .RE \fBcursor-right\fR .RS 4 Moves the cursor one \fB\fRcharacter\fB\fR to the right.\& Default: \fIRight Control+f\fR.\& .PP .RE \fBcursor-right-word\fR .RS 4 Moves the cursor one \fB\fRword\fB\fR to the right.\& Default: \fIControl+Right Mod1+f\fR.\& .PP .RE \fBcursor-home\fR .RS 4 Moves the cursor to the beginning of the input.\& Default: \fIHome Control+a\fR.\& .PP .RE \fBcursor-end\fR .RS 4 Moves the cursor to the end of the input.\& Default: \fIEnd Control+e\fR.\& .PP .RE \fBdelete-input\fR .RS 4 There is no standalone binding to clear the input.\& Use \fBcursor-home\fR (\fIControl+a\fR) to go into the beginning of the input, followed the \fBdelete-line-forward\fR binding (\fIControl+k\fR).\& Alternatively, if you are at the end of the input, use \fBdelete-line-backward\fR (\fIControl+u\fR).\& These are alternatives to using "select all" to highlight text (not supported by fuzzel) and then delete it.\& .PP .RE \fBdelete-line-backward\fR .RS 4 Deletes everything before the cursor.\& Default: \fIControl+u\fR.\& .PP .RE \fBdelete-line-forward\fR .RS 4 Deletes everything after the cursor.\& Default: \fIControl+k\fR.\& .PP .RE \fBdelete-prev\fR .RS 4 Deletes the \fB\fRcharacter before\fB\fR the cursor.\& Default: \fIBackSpace Control+h\fR.\& .PP .RE \fBdelete-prev-word\fR .RS 4 Deletes the \fB\fRword before\fB\fR the cursor.\& Default: \fIMod1+BackSpace Control+BackSpace Control+w\fR.\& .PP .RE \fBdelete-next\fR .RS 4 Deletes the \fB\fRcharacter after\fB\fR the cursor.\& Default: \fIDelete\fR.\& .PP .RE \fBdelete-next-word\fR .RS 4 Deletes the \fB\fRword after\fB\fR the cursor.\& Default: \fIMod1+d Control+Delete\fR.\& .PP .RE \fBdelete-line-forward\fR .RS 4 Deletes everything after the cursor.\& Default: \fIControl+k\fR.\& .PP .RE \fBdelete-line\fR .RS 4 Deletes the entire input.\& Default: \fIControl+Shift+BackSpace\fR.\& .PP .RE \fBinsert-selected\fR .RS 4 Copies the selected entry to the prompt, replacing the current prompt.\& In application mode, the \fBExec\fR line is inserted, and in dmenu mode the entry itself is used.\& Default: \fIControl+Tab\fR.\& .PP .RE \fBexpunge\fR .RS 4 Removes the currently selected entry from the cache (of most commonly launched applications).\& Default: \fIShift+Delete\fR.\& .PP .RE \fBclipboard-paste\fR .RS 4 Pastes from the \fIclipbard\fR.\& Default: \fIControl+v\fR \fIXF86Paste\fR.\& .PP .RE \fBprimary-paste\fR .RS 4 Pastes from the \fIprimary selection\fR.\& This action is also bound to the middle mouse button (this is currently not configurable).\& Default: \fIShift+Insert\fR \fIShift+KP_Insert\fR.\& .PP .RE \fBprev\fR .RS 4 Select the previous entry.\& Does \fBnot\fR wrap around when the first entry has been reached.\& Default: \fIUp Control+p\fR.\& .PP .RE \fBprev-with-wrap\fR .RS 4 Select the previous entry.\& Wraps around when the first entry has been reached.\& Default: \fIISO_Left_Tap\fR.\& (Shift+Tab) .PP .RE \fBprev-page\fR .RS 4 Switch to the previous page.\& Default: \fIPageUp KP_PageUp\fR.\& .PP .RE \fBnext\fR .RS 4 Select the next entry.\& Does \fBnot\fR wrap around when the last entry has been reached.\& Default: \fIDown Control+n\fR.\& .PP .RE \fBnext-with-wrap\fR .RS 4 Select the next entry.\& Wraps around when the last entry has been reached.\& Default: \fIunbound\fR.\& .PP .RE \fBnext-page\fR .RS 4 Switch to the next page.\& Default: \fIPage_Down KP_Page_Down\fR.\& .PP .RE \fBfirst\fR .RS 4 Select the first entry, on the first page.\& Default: \fIControl+Home\fR.\& .PP .RE \fBlast\fR .RS 4 Select the last entry, on the last page.\& Default: \fIControl+End\fR.\& .PP .RE \fBcustom-1\fR, \fBcustom-2\fR, .\&.\&.\&, \fBcustom-19\fR .RS 4 Execute the currently selected entry, then exit with a non-zero exit code.\& \fBcustom-1\fR exits with exit code 10, \fBcustom-2\fR with 11, \fBcustom-3\fR with 12, and so on.\& .PP Default: .RS 4 .PD 0 .IP \(bu 4 custom-1: \fIMod1+1\fR .IP \(bu 4 custom-2: \fIMod1+2\fR .IP \(bu 4 custom-3: \fIMod1+3\fR .IP \(bu 4 custom-4: \fIMod1+4\fR .IP \(bu 4 custom-5: \fIMod1+5\fR .IP \(bu 4 custom-6: \fIMod1+6\fR .IP \(bu 4 custom-7: \fIMod1+7\fR .IP \(bu 4 custom-8: \fIMod1+8\fR .IP \(bu 4 custom-9: \fIMod1+9\fR .IP \(bu 4 custom-10: \fIMod1+10\fR .IP \(bu 4 custom-11: \fIMod1+11\fR .IP \(bu 4 custom-12: \fIMod1+12\fR .IP \(bu 4 custom-13: \fIMod1+13\fR .IP \(bu 4 custom-14: \fIMod1+14\fR .IP \(bu 4 custom-15: \fIMod1+15\fR .IP \(bu 4 custom-16: \fIMod1+16\fR .IP \(bu 4 custom-17: \fIMod1+17\fR .IP \(bu 4 custom-18: \fIMod1+18\fR .IP \(bu 4 custom-19: \fIMod1+19\fR .PD .PP .RE .RE .SH FONT CONFIG .PP Fontconfig uses a flexible string format for specifying fonts that allows you to define font families, styles, weights, and various properties.\& The basic syntax follows this pattern: .PP .RS 4 "Family Name:style=Style:weight=Weight:size=Size" .PP .RE Common Properties: .PP .PD 0 .IP \(bu 4 \fBfamily\fR - Font family name .IP \(bu 4 \fBstyle\fR - italic, oblique, roman .IP \(bu 4 \fBweight\fR - light, normal, bold, black (or numeric values 100-900) .IP \(bu 4 \fBsize\fR - Point size .IP \(bu 4 \fBslant\fR - italic, oblique, roman .IP \(bu 4 \fBwidth\fR - condensed, normal, expanded .PD .PP .PP Fontconfig supports fallback fonts.\& You can specify multiple font families separated by commas.\& The fallback fonts are searched in the order they appear.\& If a glyph cannot be found in any of the fallback fonts, the dynamic fallback list from fontconfig (for the primary font) is searched.\& Ex: .PP .RS 4 "My Custom Font, DejaVu Sans:weight=bold, sans-serif" .PP .RE Fontconfig always returns something unless you don'\&t have any fonts installed, regardless of what font name you give it.\& You can check fonts that would be matched with `fc-match -s YourFontName`.\& .PP The font library Fuzzel uses, fcft, will search the explicit fallbacks whenever a glyph cannot be found in the primary font.\& When it cannot find a glyph in the explicit fallbacks, then it searches the fontconfig fallbacks of the first font in Fuzzel'\&s list.\& .PP This design allows a custom fallback sequence as well as custom font options for each fallback.\& .PP .SH SEE ALSO .PP .PD 0 .IP \(bu 4 \fBfuzzel\fR(1) .IP \(bu 4 \fBhttps://specifications.\&freedesktop.\&org/desktop-entry-spec/desktop-entry-spec-latest.\&html\fR .IP \(bu 4 \fBhttps://codeberg.\&org/dnkl/fuzzel\fR