spmenu-wiki/articles/spmenu.conf documentation.md

772 lines
25 KiB
Markdown
Raw Normal View History

# spmenu.conf documentation
**NOTE: A list of modes, modifiers, keys, functions and what arguments
those functions expect can be found in [[Configurable keybinds]].**
The spmenu.conf configuration file (usually located in
~/.config/spmenu/spmenu.conf and is XDG Base Directory compliant) can
be used to configure all exposed spmenu options, including theming.
The config file is not created by default though, but a default config
file can be found in /usr/share/spmenu/spmenu.conf and copied to said
location. It will then be loaded on startup. This example config file
contains all the default options. (file a bug report if it doesn't)
spmenu.conf is rarely specified by scripts, and shouldn't ideally not
be used with scripts if possible. binds.conf and theme.conf exist for
a reason. spmenu.conf should be dedicated to options that the user has
full control over.
## Config file loading
When spmenu is loaded, it loads these files in this order:
- Built in options -> spmenu.conf -> binds.conf -> theme.conf -> .Xresources
This means if spmenu.conf does not exist the default options
will be used. If it does exist, it will be loaded. Then, if a
binds.conf exists its binds will override the ones spmenu.conf provide.
Then, if a theme exists it will override options provided by spmenu.conf
or built in options. Finally, the `xrdb` will be loaded if X11 is used and
any colors are specified.
## Syntax
NOTE: libconfig is used for the configuration file.
Any valid spmenu.conf will start with `spmenu = {` (optionally after comments).
If not, spmenu will not bother trying to load any options. The spmenu
configuration files all resemble C mixed with JSON, and are quite simple.
spmenu config files contain a setting with the value being a group.
In this case, it's named `spmenu`. It (like all settings) ends with
a semicolon.
The shell of a spmenu configuration file would look something like this:
2023-07-20 04:28:22 +02:00
```C
spmenu = {
};
```
The setting needs to be filled with something though, as in the above
example it's completely empty. So the setting will usually contain
another setting with the value this time being a list. The value of
the list will usually be a group. This group often (but not always)
contains settings that spmenu will load.
Below is a simple example changing the default protocol from Wayland
to X11.
2023-07-20 04:28:22 +02:00
```C
spmenu = {
option = ( {
option1 = 0;
option2 = 1;
option3 = "Hello world!";
} );
};
```
As you can tell, everything is built around a setting. Note that
indentation or spaces/tabs geneerally don't matter, and spmenu
can usually load it anyway, even if it's unreadable to the user.
Just like C, comments can be in `//` form or `/* */` form.
In practice, keybinds may be set like this:
2023-07-20 04:28:22 +02:00
```C
spmenu = {
keys = (
{
mode = <mode>;
modifier = "<modifier>";
key = "<key>";
function = "<function>";
argument = "<argument>";
},
),
};
```
Or a mouse bind:
2023-07-20 04:28:22 +02:00
```C
spmenu = {
mouse = (
{
click = "<click>";
button = "<button>";
function = "<function>";
argument = "<argument>";
},
};
```
## Supported strings
Tip: Use `Ctrl+f` to search this list, because it is quite long.
- **spmenu.window.position**
- Description: Position to spawn spmenu in (0: Bottom, 1: Top, 2: Center)
- Type: Integer
- **spmenu.window.monitor**
- Description: Monitor index to spawn spmenu on (-1, 0, 1, ...)
- Type: Integer
- Note: Only applies for X11
- **spmenu.window.protocol**
- Description: Protocol to try first (0: X11, 1: Wayland)
- Type: Integer
- **spmenu.window.border**
- Description: Window border size (in pixels)
- Type: Integer
- Note: Only applies for X11
- **spmenu.window.margin-vertical**
- Description: Inner vertical padding (in pixels)
- Type: Integer
- **spmenu.window.margin-horizontal**
- Description: Inner horizontal padding (in pixels)
- Type: Integer
- **spmenu.window.padding-vertical**
- Description: Outer vertical padding (in pixels)
- Type: Integer
- Note: Only applies for X11
- **spmenu.window.padding-horizontal**
- Description: Outer horizontal padding (in pixels)
- Type: Integer
- Note: Only applies for X11
- **spmenu.window.width**
- Description: spmenu window width (in pixels)
- Type: Integer
- Note: Only applied when the spmenu window position isn't center
- **spmenu.window.managed**
- Description: Allow the window manager to manage spmenu as a window (0/1)
- Type: Integer
- Note: Only applies for X11
- **spmenu.window.alpha**
- Description: Enable alpha (transparency) for spmenu
- Type: Integer
- **spmenu.window.x**
- Description: X position offset (in pixels)
- Type: Integer
- Note: Only applies for X11
- **spmenu.window.y**
- Description: Y position offset (in pixels)
- Type: Integer
- Note: Only applies for X11
- **spmenu.properties.class**
- Description: \_WM_CLASS property
- Type: String
- Note: Only applies for X11
- **spmenu.properties.dock**
- Description: Set \_WM_NET_WINDOW_TYPE_DOCK (0/1)
- Type: Integer
- Note: Only applies for X11
- **spmenu.text.font**
- Description: Primary font to use when drawing text
- Type: String
- **spmenu.text.padding**
- Description: Horizontal padding around all text (in pixels)
- Type: Integer
- **spmenu.text.normitempadding**
- Description: Horizontal padding around normal items (in pixels)
- Type: Integer
- **spmenu.text.selitempadding**
- Description: Horizontal padding around selected items (in pixels)
- Type: Integer
- **spmenu.text.priitempadding**
- Description: Horizontal padding around high priority items (in pixels)
- Type: Integer
- **spmenu.text.leftarrow**
- Description: Character/text to draw when drawing the left arrow
- Type: String
- **spmenu.text.rightarrow**
- Description: Character/text to draw when drawing the right arrow
- Type: String
- **spmenu.text.password**
- Description: Character to draw for each hidden character in the input when -P
- Type: String
- **spmenu.text.prompt**
- Description: Prompt to display when one was not specified
- Type: String
2023-07-24 15:22:45 +02:00
- **spmenu.text.pretext**
- Description: Pretext to display when one was not specified
- Type: String
- **spmenu.text.input**
- Description: Input to start spmenu with
- Type: String
- **spmenu.text.normal**
- Description: Text to display when in Normal mode
- Type: String
- **spmenu.text.insert**
- Description: Text to display when in Insert mode
- Type: String
- **spmenu.text.regex**
- Description: Text to display when regex matching is enabled
- Type: String
- **spmenu.text.capslockon**
- Description: Text to display when Caps Lock is on
- Type: String
- **spmenu.text.capslockoff**
- Description: Text to display when Caps Lock is off
- Type: String
- **spmenu.color.itemnormfg**
- Description: Normal item foreground color (#RRGGBB)
- Type: String
- **spmenu.color.itemnormbg**
- Description: Normal item background color (#RRGGBB)
- Type: String
- **spmenu.color.itemnormfg2**
- Description: Normal next item foreground color (#RRGGBB)
- Type: String
- **spmenu.color.itemnormbg2**
- Description: Normal next item background color (#RRGGBB)
- Type: String
- **spmenu.color.itemselfg**
- Description: Selected item foreground color (#RRGGBB)
- Type: String
- **spmenu.color.itemselbg**
- Description: Selected item background color (#RRGGBB)
- Type: String
- **spmenu.color.itemmarkedfg**
- Description: Marked item foreground color (#RRGGBB)
- Type: String
- **spmenu.color.itemmarkedbg**
- Description: Marked item background color (#RRGGBB)
- Type: String
- **spmenu.color.itemnormprifg**
- Description: Normal priority item foreground color (#RRGGBB)
- Type: String
- **spmenu.color.itemnormpribg**
- Description: Normal priority item background color (#RRGGBB)
- Type: String
- **spmenu.color.itemselprifg**
- Description: Selected priority item foreground color (#RRGGBB)
- Type: String
- **spmenu.color.itemselpribg**
- Description: Selected priority item background color (#RRGGBB)
- Type: String
- **spmenu.color.inputfg**
- Description: Input foreground color (#RRGGBB)
- Type: String
- **spmenu.color.inputbg**
- Description: Input background color (#RRGGBB)
- Type: String
- **spmenu.color.menu**
- Description: Menu color (#RRGGBB)
- Type: String
- **spmenu.color.promptfg**
- Description: Prompt foreground color (#RRGGBB)
- Type: String
- **spmenu.color.promptbg**
- Description: Prompt background color (#RRGGBB)
- Type: String
2023-07-24 15:22:45 +02:00
- **spmenu.color.pretextfg**
- Description: Pretext foreground color (#RRGGBB)
- Type: String
- **spmenu.color.pretextbg**
- Description: Pretext background color (#RRGGBB)
- Type: String
- **spmenu.color.larrowfg**
- Description: Left arrow foreground color (#RRGGBB)
- Type: String
- **spmenu.color.larrowbg**
- Description: Left arrow background color (#RRGGBB)
- Type: String
- **spmenu.color.rarrowfg**
- Description: Right arrow foreground color (#RRGGBB)
- Type: String
- **spmenu.color.rarrowbg**
- Description: Right arrow background color (#RRGGBB)
- Type: String
- **spmenu.color.hlnormfg**
- Description: Normal highlight foreground color (#RRGGBB)
- Type: String
- **spmenu.color.hlnormbg**
- Description: Normal highlight background color (#RRGGBB)
- Type: String
- **spmenu.color.hlselfg**
- Description: Selected highlight foreground color (#RRGGBB)
- Type: String
- **spmenu.color.hlselbg**
- Description: Selected highlight background color (#RRGGBB)
- Type: String
- **spmenu.color.numfg**
- Description: Match count foreground color (#RRGGBB)
- Type: String
- **spmenu.color.numbg**
- Description: Match count background color (#RRGGBB)
- Type: String
- **spmenu.color.modefg**
- Description: Mode indicator foreground color (#RRGGBB)
- Type: String
- **spmenu.color.modebg**
- Description: Mode indicator background color (#RRGGBB)
- Type: String
- **spmenu.color.capsfg**
- Description: Caps Lock foreground color (#RRGGBB)
- Type: String
- **spmenu.color.capsbg**
- Description: Caps Lock background color (#RRGGBB)
- Type: String
- **spmenu.color.border**
- Description: Border color (#RRGGBB)
- Type: String
- Note: Only applies for X11
- **spmenu.color.caretfg**
- Description: Caret foreground color (#RRGGBB)
- Type: String
- **spmenu.color.caretbg**
- Description: Caret background color (#RRGGBB)
- Type: String
- **spmenu.color.sgr0**
- Description: SGR 0 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr1**
- Description: SGR 1 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr2**
- Description: SGR 2 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr3**
- Description: SGR 3 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr4**
- Description: SGR 4 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr5**
- Description: SGR 5 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr6**
- Description: SGR 6 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr7**
- Description: SGR 7 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr8**
- Description: SGR 8 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr9**
- Description: SGR 9 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr10**
- Description: SGR 10 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr11**
- Description: SGR 11 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr12**
- Description: SGR 12 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr13**
- Description: SGR 13 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr14**
- Description: SGR 14 color (#RRGGBB)
- Type: String
- **spmenu.color.sgr15**
- Description: SGR 15 color (#RRGGBB)
- Type: String
- **spmenu.color.coloritems**
- Description: Color the selected items (0/1)
- Type: Integer
- **spmenu.color.sgr**
- Description: Interpret SGR sequences (0/1)
- Type: Integer
- **spmenu.alpha.itemnormfg**
- Description: Normal item foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemnormbg**
- Description: Normal item background alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemnormfg2**
- Description: Normal next item foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemnormbg2**
- Description: Normal next item background alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemselfg**
- Description: Selected item foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemselbg**
- Description: Selected item background alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemmarkedfg**
- Description: Marked item foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemmarkedbg**
- Description: Marked item background alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemnormprifg**
- Description: Normal priority item foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemnormpribg**
- Description: Normal priority item background alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemselprifg**
- Description: Selected priority item foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.itemselpribg**
- Description: Selected priority item background alpha (0-255)
- Type: Integer
- **spmenu.alpha.inputfg**
- Description: Input foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.inputbg**
- Description: Input background alpha (0-255)
- Type: Integer
- **spmenu.alpha.menu**
- Description: Menu alpha (0-255)
- Type: Integer
- **spmenu.alpha.promptfg**
- Description: Prompt foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.promptbg**
- Description: Prompt background alpha (0-255)
- Type: Integer
2023-07-24 15:22:45 +02:00
- **spmenu.alpha.pretextfg**
- Description: Pretext foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.pretextbg**
- Description: Pretext background alpha (0-255)
- Type: Integer
- **spmenu.alpha.larrowfg**
- Description: Left arrow foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.larrowbg**
- Description: Left arrow background alpha (0-255)
- Type: Integer
- **spmenu.alpha.rarrowfg**
- Description: Right arrow foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.rarrowbg**
- Description: Right arrow background alpha (0-255)
- Type: Integer
- **spmenu.alpha.hlnormfg**
- Description: Normal highlight foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.hlnormbg**
- Description: Normal highlight background alpha (0-255)
- Type: Integer
- **spmenu.alpha.hlselfg**
- Description: Selected highlight foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.hlselbg**
- Description: Selected highlight background alpha (0-255)
- Type: Integer
- **spmenu.alpha.numfg**
- Description: Match count foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.numbg**
- Description: Match count background alpha (0-255)
- Type: Integer
- **spmenu.alpha.modefg**
- Description: Mode indicator foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.modebg**
- Description: Mode indicator background alpha (0-255)
- Type: Integer
- **spmenu.alpha.capsfg**
- Description: Caps Lock foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.capsbg**
- Description: Caps Lock background alpha (0-255)
- Type: Integer
- **spmenu.alpha.border**
- Description: Border alpha (0-255)
- Type: Integer
- Note: Only applies for X11
- **spmenu.alpha.caretfg**
- Description: Caret foreground alpha (0-255)
- Type: Integer
- **spmenu.alpha.caretbg**
- Description: Caret background alpha (0-255)
- Type: Integer
- **spmenu.powerline.promptstyle**
- Description: Prompt powerline style (0: >, 1: \, 2: ))
- Type: Integer
- **spmenu.powerline.matchcountstyle**
- Description: Match count powerline style (0: >, 1: \, 2: ))
- Type: Integer
- **spmenu.powerline.modestyle**
- Description: Mode indicator powerline style (0: >, 1: \, 2: ))
- Type: Integer
- **spmenu.powerline.capsstyle**
- Description: Caps Lock indicator powerline style (0: >, 1: \, 2: ))
- Type: Integer
- **spmenu.powerline.itemstyle**
- Description: Item powerline style (0: >, 1: \, 2: ))
- Type: Integer
- **spmenu.powerline.prompt**
- Description: Enable prompt powerline (0/1)
- Type: Integer
- **spmenu.powerline.matchcount**
- Description: Enable match count powerline (0/1)
- Type: Integer
- **spmenu.powerline.mode**
- Description: Enable mode indicator powerline (0/1)
- Type: Integer
- **spmenu.powerline.caps**
- Description: Enable caps lock indicator powerline (0/1)
- Type: Integer
- **spmenu.powerline.item**
- Description: Enable item powerline (0/1)
- Type: Integer
- **spmenu.hide.input**
- Description: Hide input (0/1)
- Type: Integer
- **spmenu.hide.larrow**
- Description: Hide left arrow (0/1)
- Type: Integer
- **spmenu.hide.rarrow**
- Description: Hide right arrow (0/1)
- Type: Integer
- **spmenu.hide.items**
- Description: Hide items (0/1)
- Type: Integer
- **spmenu.hide.prompt**
- Description: Hide prompt (0/1)
- Type: Integer
2023-07-24 15:22:45 +02:00
- **spmenu.hide.pretext**
- Description: Hide pretext (0/1)
- Type: Integer
- **spmenu.hide.powerline**
- Description: Hide powerline (0/1)
- Type: Integer
- **spmenu.hide.caret**
- Description: Hide caret (0/1)
- Type: Integer
- **spmenu.hide.highlight**
- Description: Hide highlighting (0/1)
- Type: Integer
- **spmenu.hide.matchcount**
- Description: Hide match count (0/1)
- Type: Integer
- **spmenu.hide.mode**
- Description: Hide mode indicator (0/1)
- Type: Integer
- **spmenu.hide.caps**
- Description: Hide caps lock indicator (0/1)
- Type: Integer
- **spmenu.hide.image**
- Description: Hide images (0/1)
- Type: Integer
- **spmenu.match.sort**
- Description: Sort items when matching (0/1)
- Type: Integer
- **spmenu.match.casesensitive**
- Description: Enable case sensitivity when matching (0/1)
- Type: Integer
- **spmenu.match.fuzzy**
- Description: Enable fuzzy finding by default (0/1)
- Type: Integer
- **spmenu.match.regex**
- Description: Enable regex matching by default (0/1)
- Type: Integer
- **spmenu.match.preselected**
- Description: Preselect an item, 0 is the first item (number)
- Type: Integer
- **spmenu.match.mark**
- Description: Allow marking/selecting multiple items (0/1)
- Type: Integer
- **spmenu.match.delimiters**
- Description: Work delimiter(s), used to delete words
- Type: String
- **spmenu.match.listfile**
- Description: File to read entries from. NULL means stdin will be read
- Type: String
2023-07-25 00:20:43 +02:00
- **spmenu.line.itemposition**
- Description: Position to place items in (0: Bottom, 1: Top)
- Type: Integer
- **spmenu.line.height**
- Description: Height of each line (in pixels)
- Type: Integer
- **spmenu.line.lines**
- Description: Number of lines (number)
- Type: Integer
- **spmenu.line.columns**
- Description: Number of columns (number)
- Type: Integer
- **spmenu.line.overridelines**
- Description: Allow overriding lines using keybinds (0/1)
- Type: Integer
- **spmenu.line.overridecolumns**
- Description: Allow overriding columns using keybinds (0/1)
- Type: Integer
- **spmenu.line.indentitems**
- Description: Indent item X position to prompt width (0/1)
- Type: Integer
- **spmenu.history.max**
- Description: Max number of history entries the history buffer can contain (number)
- Type: Integer
- **spmenu.history.duplicate**
- Description: Save duplicate entries to the file (0/1)
- Type: Integer
- **spmenu.center.width**
- Description: Menu width when centered (in pixels)
- Type: Integer
- **spmenu.image.width**
- Description: Default image width (in pixels)
- Type: Integer
- **spmenu.image.height**
- Description: Default image height (in pixels)
- Type: Integer
- **spmenu.image.gaps**
- Description: Image gaps (in pixels)
- Type: Integer
- **spmenu.image.resize**
- Description: Allow spmenu to resize itself to fit the image (0/1)
- Type: Integer
- **spmenu.image.position**
- Description: Image position (0: Top, 1: Bottom, 2: Center, 3: Top center)
- Type: Integer
- **spmenu.image.type**
- Description: Image type (0: Icon, 1: Image)
- Type: Integer
- **spmenu.image.cache**
- Description: Enable caching of images (0/1)
- Type: Integer
- **spmenu.image.maxcache**
- Description: Max image size to cache (in pixels)
- Type: Integer
- **spmenu.image.cachedir**
- Description: Cache directory
- Type: String
- **spmenu.file.xresources**
- Description: Load .Xresources colors on startup (0/1)
- Type: Integer
- **spmenu.file.global**
- Description: Load \*.color\* colors on startup (0/1)
- Type: Integer
- **spmenu.file.theme**
- Description: Load theme file on runtime (0/1)
- Type: Integer
- **spmenu.file.binds**
- Description: Load binds file on runtime (0/1)
- Type: Integer
- **spmenu.file.themefile**
- Description: Path to the theme file to load on runtime. NULL means default
- Type: String
- **spmenu.file.bindsfile**
- Description: Path to the binds file to load on runtime. NULL means default
- Type: String
- **spmenu.file.screenshotfile**
- Description: Screenshot file path. NULL means default
- Type: String
- **spmenu.file.screenshotname**
- Description: Screenshot file name. NULL means default
- Type: String
- **spmenu.file.screenshotdir**
- Description: Screenshot file directory. NULL means default
- Type: String
- **spmenu.input.fast**
- Description: Grab keyboard before reading entries (0/1)
- Type: Integer
- Note: Only applies for X11
- **spmenu.input.type**
- Description: Allow typing (0/1)
- Type: Integer
- **spmenu.input.password**
- Description: Replace all characters with the password character (0/1)
- Type: Integer
2023-08-08 17:28:05 +02:00
- **spmenu.input.width**
- Description: Width reserved for user input (menu width * width)
- Type: Float
- **spmenu.caret.width**
- Description: Caret width, 0 means default (in pixels)
- Type: Integer
- **spmenu.caret.height**
- Description: Caret height, 0 means default (in pixels)
- Type: Integer
- **spmenu.caret.padding**
- Description: Caret padding (in pixels)
- Type: Integer
- **spmenu.output.printindex**
- Description: Print index instead of output text (0/1)
- Type: Integer
- **spmenu.output.incremental**
- Description: Print input text on every keypress (0/1)
- Type: Integer
- **spmenu.mode.default**
- Description: Mode to start spmenu in (0: Normal mode, 1: Insert mode)
- Type: Integer
- **spmenu.pango.item**
- Description: Interpret Pango markup for items (0/1)
- Type: Integer
- **spmenu.pango.prompt**
- Description: Interpret Pango markup for the prompt (0/1)
- Type: Integer
2023-07-24 15:22:45 +02:00
- **spmenu.pango.pretext**
- Description: Interpret Pango markup for the pretext (0/1)
- Type: Integer
- **spmenu.pango.input**
- Description: Interpret Pango markup for the input (0/1)
- Type: Integer
- **spmenu.pango.leftarrow**
- Description: Interpret Pango markup for the left arrow (0/1)
- Type: Integer
- **spmenu.pango.rightarrow**
- Description: Interpret Pango markup for the right arrow (0/1)
- Type: Integer
- **spmenu.pango.numbers**
- Description: Interpret Pango markup for the match count (0/1)
- Type: Integer
- **spmenu.pango.mode**
- Description: Interpret Pango markup for the mode indicator (0/1)
- Type: Integer
- **spmenu.pango.caps**
- Description: Interpret Pango markup for the caps lock indicator (0/1)
- Type: Integer
- **spmenu.pango.password**
- Description: Interpret Pango markup for the password input (0/1)
- Type: Integer
- **spmenu.keys.modifier**
- Description: Modifier that must be pressed for the function to be executed
- Type: String
- **spmenu.keys.mode**
- Description: Mode that must be in use for the function to be executed
- Type: Integer
- **spmenu.keys.key**
- Description: Key that must be pressed for the function to be executed
- Type: String
- **spmenu.keys.function**
- Description: Function to execute when the conditions are met
- Type: String
- **spmenu.keys.argument**
- Description: Argument passed to the function
- Type: String
- **spmenu.keys.ignoreglobalkeys**
- Description: Ignore hardcoded keybinds
- Type: Integer
- **spmenu.keys.forceinsertmode**
- Type: Integer
- **spmenu.mouse.click**
- Description: Area where the click must have been for the function to be executed
- Type: String
- **spmenu.mouse.button**
- Description: Mouse button that must have been used to click for the
function to be executed
- Type: String
- **spmenu.mouse.function**
- Description: Function to execute when all conditions are met
- Type: string
- **spmenu.mouse.argument**
- Description: Argument passed to the function
- Type: String
- **spmenu.mouse.ignoreglobalmouse**
- Description: Ignore hardcoded mouse binds
- Type: Integer
2023-07-22 18:36:02 +02:00
- **spmenu.mouse.scrolldistance**
- Description: Distance to scroll for a scroll action to count
- Type: Integer
- Note: Only applies for Wayland
## See also
- [[Configurable keybinds]]
- [[binds.conf documentation]]
- [[theme.conf documentation]]
- [libconfig documentation](https://hyperrealm.github.io/libconfig/libconfig_manual.pdf)