Update docs, remove most .Xresources preferences

This commit is contained in:
Jacob 2023-07-11 16:53:26 +02:00
parent c6397915f4
commit 9d6ae13eae
8 changed files with 33 additions and 394 deletions

View file

@ -612,6 +612,20 @@ All of these keybinds can be overriden in the configuration file. Should you
unbind your switchmode key, you can always press `Ctrl+Alt+Delete` to unbind your switchmode key, you can always press `Ctrl+Alt+Delete` to
exit spmenu, allowing you to fix your spmenu configuration. exit spmenu, allowing you to fix your spmenu configuration.
## History buffer
spmenu allows you to specify a history file using the `-H` argument. When this
argument is specified, the selected item(s) will be appended to the file.
In spmenu.conf, you can specify a max number of entries, and whether you
want duplicate entries or not.
To access the history buffer, call `viewhist`. By default, the keybind for
that is Shift+h in normal mode. You can also access it by clicking the
match indicator. To hide the history buffer again, call `viewhist`.
If `-H` is not specified, the history buffer will not be available, and
calling `viewhist` will do nothing.
## -p option ## -p option
spmenu has a `-p` or `--prompt` option. It allows you to specify spmenu has a `-p` or `--prompt` option. It allows you to specify

View file

@ -1,207 +0,0 @@
! spmenu .Xresources file
!
! This is a .Xresources file with all possible .Xresources values defined, except global color values.
! Do note that it only works on X11, Wayland users cannot use it because .Xresources is X11 specific.
! To load it, run `xrdb /path/to/file` and then run spmenu as normal.
!! Fonts
spmenu.font: Noto Sans Mono 8
spmenu.textpadding: 0
spmenu.normitempadding: 0
spmenu.selitempadding: 0
spmenu.priitempadding: 0
!! Colors
spmenu.col_itemnormfg: #bbbbbb
spmenu.col_itemnormbg: #110f1f
spmenu.col_itemnormfg2: #bbbbbb
spmenu.col_itemnormbg2: #110f1f
spmenu.col_itemselfg: #110f1f
spmenu.col_itemselbg: #8e93c2
spmenu.col_itemmarkedfg: #110f1f
spmenu.col_itemmarkedbg: #8e93c2
spmenu.col_itemnormprifg: #110f1f
spmenu.col_itemnormpribg: #110f1f
spmenu.col_itemselprifg: #110f1f
spmenu.col_itemselpribg: #8e93c2
spmenu.col_menu: #110f1f
spmenu.col_promptfg: #110f1f
spmenu.col_promptbg: #c66e5b
spmenu.col_larrowfg: #bbbbbb
spmenu.col_rarrowfg: #bbbbbb
spmenu.col_larrowbg: #110f1f
spmenu.col_rarrowbg: #110f1f
spmenu.col_inputfg: #eeeeee
spmenu.col_inputbg: #110f1f
spmenu.col_numfg: #110f1f
spmenu.col_numbg: #2d3856
spmenu.col_hlnormfg: #ffffff
spmenu.col_hlnormbg: #000000
spmenu.col_hlselfg: #ffffff
spmenu.col_hlselbg: #000000
spmenu.col_caretfg: #ffffff
spmenu.col_caretbg: #110f1f
spmenu.col_border: #8e93c2
spmenu.col_modefg: #110f1f
spmenu.col_modebg: #92c94b
spmenu.col_capsfg: #110f1f
spmenu.col_capsbg: #f8d3e6
spmenu.col_sgr0: #20201d
spmenu.col_sgr1: #d73737
spmenu.col_sgr2: #60ac39
spmenu.col_sgr3: #cfb017
spmenu.col_sgr4: #6684e1
spmenu.col_sgr5: #b854d4
spmenu.col_sgr6: #1fad83
spmenu.col_sgr7: #a6a28c
spmenu.col_sgr8: #7d7a68
spmenu.col_sgr9: #d73737
spmenu.col_sgr10: #60ac39
spmenu.col_sgr11: #cfb017
spmenu.col_sgr12: #6684e1
spmenu.col_sgr13: #b854d4
spmenu.col_sgr14: #1fad83
spmenu.col_sgr15: #fefbec
!! Alpha
spmenu.alpha_itemnormfg: 255
spmenu.alpha_itemnormbg: 200
spmenu.alpha_itemnormfg2: 255
spmenu.alpha_itemnormbg2: 200
spmenu.alpha_itemselfg: 255
spmenu.alpha_itemselbg: 200
spmenu.alpha_itemmarkedfg: 255
spmenu.alpha_itemmarkedbg: 200
spmenu.alpha_itemnormprifg: 255
spmenu.alpha_itemnormpribg: 200
spmenu.alpha_itemselprifg: 255
spmenu.alpha_itemselpribg: 200
spmenu.alpha_inputfg: 255
spmenu.alpha_inputbg: 200
spmenu.alpha_menu: 200
spmenu.alpha_promptfg: 255
spmenu.alpha_promptbg: 200
spmenu.alpha_larrowfg: 255
spmenu.alpha_larrowbg: 200
spmenu.alpha_rarrowfg: 255
spmenu.alpha_rarrowbg: 200
spmenu.alpha_hlnormfg: 255
spmenu.alpha_hlnormbg: 200
spmenu.alpha_hlselfg: 255
spmenu.alpha_hlselbg: 200
spmenu.alpha_numfg: 255
spmenu.alpha_numbg: 200
spmenu.alpha_border: 255
spmenu.alpha_caretfgfg: 255
spmenu.alpha_caretfgbg: 200
spmenu.alpha_modefg: 255
spmenu.alpha_modebg: 200
spmenu.alpha_capsfg: 255
spmenu.alpha_capsbg: 200
!! Powerline
spmenu.powerlineprompt: 1
spmenu.powerlinecount: 1
spmenu.powerlinemode: 1
spmenu.powerlinecaps: 1
spmenu.powerlineitems: 1
spmenu.promptpwlstyle: 2
spmenu.matchcountpwlstyle: 2
spmenu.modepwlstyle: 2
spmenu.capspwlstyle: 2
spmenu.itempwlstyle: 2
!! Misc color
spmenu.globalcolors: 1
spmenu.alpha: 1
!! Lines and columns
spmenu.lineheight: 1
spmenu.lines: 0
spmenu.columns: 10
spmenu.overridelines: 1
spmenu.overridecolumns: 1
spmenu.preselected: 0
spmenu.indentitems: 0
!! History
spmenu.maxhist: 64
spmenu.histdup: 0
!! Caret
spmenu.caretwidth: 0
spmenu.caretheight: 0
spmenu.caretpadding: 0
!! Matches
spmenu.type: 1
spmenu.passwd: 0
spmenu.fuzzy: 1
spmenu.regex: 0
spmenu.sortmatches: 1
spmenu.mark: 1
spmenu.casesensitive: 0
!! Menu
spmenu.menuposition: 2
spmenu.menupaddingv: 0
spmenu.menupaddingh: 0
spmenu.menuwidth: 0
spmenu.menumarginv: 0
spmenu.menumarginh: 0
spmenu.xpos: 0
spmenu.ypos: 0
spmenu.minwidth: 1000
spmenu.borderwidth: 0
!! Properties
spmenu.dockproperty: 1
!! General
spmenu.fast: 0
spmenu.managed: 0
spmenu.mon: -1
spmenu.printindex: 0
spmenu.incremental: 0
spmenu.requirematch: 0
spmenu.coloritems: 1
spmenu.sgr: 1
!! Image
spmenu.imagewidth: 200
spmenu.imageheight: 200
spmenu.imageresize: 1
spmenu.imagegaps: 0
spmenu.imageposition: 0
spmenu.imagetype: 1
spmenu.generatecache: 1
spmenu.maxcache: 512
!! Mode options
spmenu.mode: 0
!! Hide options
spmenu.hidematchcount: 0
spmenu.hidemode: 0
spmenu.hidelarrow: 0
spmenu.hiderarrow: 0
spmenu.hideitem: 0
spmenu.hideprompt: 0
spmenu.hideinput: 0
spmenu.hidepowerline: 0
spmenu.hidecaps: 0
spmenu.hidecaret: 0
spmenu.hidehighlight: 0
spmenu.hideimage: 0
!! Pango markup toggles
spmenu.pango_item: 1
spmenu.pango_prompt: 1
spmenu.pango_input: 1
spmenu.pango_leftarrow: 0
spmenu.pango_rightarrow: 0
spmenu.pango_numbers: 0
spmenu.pango_mode: 0
spmenu.pango_caps: 0
spmenu.pango_password: 0
spmenu.pango_highlight: 1

View file

@ -7,6 +7,7 @@
* *
* Example: @include "config.conf" * Example: @include "config.conf"
*/ */
spmenu = { spmenu = {
/* General window options */ /* General window options */
window = ( { position = 2; // Menu position (0: Bottom, 1: Top, 2: Center) window = ( { position = 2; // Menu position (0: Bottom, 1: Top, 2: Center)

View file

@ -41,9 +41,6 @@ void load_xresources(void) {
return; return;
db = XrmGetStringDatabase(resm); db = XrmGetStringDatabase(resm);
for (p = resources; p < resources + LENGTH(resources); p++)
resource_load(db, p->name, p->type, p->dst);
// recognize global colors // recognize global colors
if (globalcolors) { if (globalcolors) {
for (p = cols; p < cols + LENGTH(cols); p++) for (p = cols; p < cols + LENGTH(cols); p++)

View file

@ -2,188 +2,8 @@
// This .Xresources array is read and compared to the xrdb. Simply add to the array if you need to. // This .Xresources array is read and compared to the xrdb. Simply add to the array if you need to.
#if USEXRESOURCES #if USEXRESOURCES
ResourcePref resources[] = {
{ "font", STRING, &font },
{ "col_caretfg", STRING, &col_caretfg },
{ "col_caretbg", STRING, &col_caretbg },
{ "col_larrowfg", STRING, &col_larrowfg },
{ "col_rarrowfg", STRING, &col_rarrowfg },
{ "col_larrowbg", STRING, &col_larrowbg },
{ "col_rarrowbg", STRING, &col_rarrowbg },
{ "col_itemnormfg", STRING, &col_itemnormfg },
{ "col_itemnormbg", STRING, &col_itemnormbg },
{ "col_itemnormfg2", STRING, &col_itemnormfg2 },
{ "col_itemnormbg2", STRING, &col_itemnormbg2 },
{ "col_itemselfg", STRING, &col_itemselfg },
{ "col_itemselbg", STRING, &col_itemselbg },
{ "col_itemmarkedfg", STRING, &col_itemmarkedfg },
{ "col_itemmarkedbg", STRING, &col_itemmarkedbg },
{ "col_itemnormprifg", STRING, &col_itemnormprifg },
{ "col_itemnormpribg", STRING, &col_itemnormpribg },
{ "col_itemselprifg", STRING, &col_itemselprifg },
{ "col_itemselpribg", STRING, &col_itemselpribg },
{ "col_inputbg", STRING, &col_inputbg },
{ "col_inputfg", STRING, &col_inputfg },
{ "col_menu", STRING, &col_menu },
{ "col_numfg", STRING, &col_numfg },
{ "col_numbg", STRING, &col_numbg },
{ "col_modefg", STRING, &col_modefg },
{ "col_modebg", STRING, &col_modebg },
{ "col_hlnormfg", STRING, &col_hlnormfg },
{ "col_hlnormbg", STRING, &col_hlnormbg },
{ "col_hlselfg", STRING, &col_hlselfg },
{ "col_hlselbg", STRING, &col_hlselbg },
{ "col_border", STRING, &col_border },
{ "col_promptfg", STRING, &col_promptfg },
{ "col_promptbg", STRING, &col_promptbg },
{ "col_capsfg", STRING, &col_capsfg },
{ "col_capsbg", STRING, &col_capsbg },
// Alpha
{ "alpha_itemnormfg", INTEGER, &alpha_itemnormfg },
{ "alpha_itemnormbg", INTEGER, &alpha_itemnormbg },
{ "alpha_itemnormfg2", INTEGER, &alpha_itemnormfg2 },
{ "alpha_itemnormbg2", INTEGER, &alpha_itemnormbg2 },
{ "alpha_itemselfg", INTEGER, &alpha_itemselfg },
{ "alpha_itemselbg", INTEGER, &alpha_itemselbg },
{ "alpha_itemmarkedfg", INTEGER, &alpha_itemmarkedfg },
{ "alpha_itemmarkedbg", INTEGER, &alpha_itemmarkedbg },
{ "alpha_itemnormprifg", INTEGER, &alpha_itemnormprifg },
{ "alpha_itemnormpribg", INTEGER, &alpha_itemnormpribg },
{ "alpha_itemselprifg", INTEGER, &alpha_itemselprifg },
{ "alpha_itemselpribg", INTEGER, &alpha_itemselpribg },
{ "alpha_inputfg", INTEGER, &alpha_inputfg },
{ "alpha_inputbg", INTEGER, &alpha_inputbg },
{ "alpha_menu", INTEGER, &alpha_menu },
{ "alpha_promptfg", INTEGER, &alpha_promptfg },
{ "alpha_promptbg", INTEGER, &alpha_promptbg },
{ "alpha_larrowfg", INTEGER, &alpha_larrowfg },
{ "alpha_larrowbg", INTEGER, &alpha_larrowbg },
{ "alpha_rarrowfg", INTEGER, &alpha_rarrowfg },
{ "alpha_rarrowbg", INTEGER, &alpha_rarrowbg },
{ "alpha_hlnormfg", INTEGER, &alpha_hlnormfg },
{ "alpha_hlnormbg", INTEGER, &alpha_hlnormbg },
{ "alpha_hlselfg", INTEGER, &alpha_hlselfg },
{ "alpha_hlselbg", INTEGER, &alpha_hlselbg },
{ "alpha_numfg", INTEGER, &alpha_numfg },
{ "alpha_numbg", INTEGER, &alpha_numbg },
{ "alpha_border", INTEGER, &alpha_border },
{ "alpha_caretfg", INTEGER, &alpha_caretfg },
{ "alpha_caretbg", INTEGER, &alpha_caretbg },
{ "alpha_modefg", INTEGER, &alpha_modefg },
{ "alpha_modebg", INTEGER, &alpha_modebg },
{ "alpha_capsfg", INTEGER, &alpha_capsfg },
{ "alpha_capsbg", INTEGER, &alpha_capsbg },
// SGR sequence colors
{ "col_sgr0", STRING, &col_sgr0 },
{ "col_sgr1", STRING, &col_sgr1 },
{ "col_sgr2", STRING, &col_sgr2 },
{ "col_sgr3", STRING, &col_sgr3 },
{ "col_sgr4", STRING, &col_sgr4 },
{ "col_sgr5", STRING, &col_sgr5 },
{ "col_sgr6", STRING, &col_sgr6 },
{ "col_sgr7", STRING, &col_sgr7 },
{ "col_sgr8", STRING, &col_sgr8 },
{ "col_sgr9", STRING, &col_sgr9 },
{ "col_sgr10", STRING, &col_sgr10 },
{ "col_sgr11", STRING, &col_sgr11 },
{ "col_sgr12", STRING, &col_sgr12 },
{ "col_sgr13", STRING, &col_sgr13 },
{ "col_sgr14", STRING, &col_sgr14 },
{ "col_sgr15", STRING, &col_sgr15 },
// General options
{ "promptpwlstyle", INTEGER, &promptpwlstyle },
{ "matchcountpwlstyle", INTEGER, &matchcountpwlstyle },
{ "modepwlstyle", INTEGER, &modepwlstyle },
{ "capspwlstyle", INTEGER, &capspwlstyle },
{ "itempwlstyle", INTEGER, &itempwlstyle },
{ "powerlineprompt", INTEGER, &powerlineprompt },
{ "powerlinecount", INTEGER, &powerlinecount },
{ "powerlinemode", INTEGER, &powerlinemode },
{ "powerlinecaps", INTEGER, &powerlinecaps },
{ "powerlineitems", INTEGER, &powerlineitems },
{ "dockproperty", INTEGER, &dockproperty },
{ "globalcolors", INTEGER, &globalcolors },
{ "coloritems", INTEGER, &coloritems },
{ "sgr", INTEGER, &sgr },
{ "requirematch", INTEGER, &requirematch },
{ "menuposition", INTEGER, &menuposition },
{ "xpos", INTEGER, &xpos },
{ "ypos", INTEGER, &ypos },
{ "caretpadding", INTEGER, &caretpadding },
{ "caretwidth", INTEGER, &caretwidth },
{ "caretheight", INTEGER, &caretheight },
{ "menuwidth", INTEGER, &menuwidth },
{ "menupaddingv", INTEGER, &menupaddingv },
{ "menupaddingh", INTEGER, &menupaddingh },
{ "menumarginv", INTEGER, &menumarginv },
{ "menumarginh", INTEGER, &menumarginh },
{ "textpadding", INTEGER, &textpadding },
{ "normitempadding", INTEGER, &normitempadding },
{ "selitempadding", INTEGER, &selitempadding },
{ "priitempadding", INTEGER, &priitempadding },
{ "indentitems", INTEGER, &indentitems },
{ "alpha", INTEGER, &alpha },
{ "type", INTEGER, &type },
{ "passwd", INTEGER, &passwd },
{ "minwidth", INTEGER, &minwidth },
{ "preselected", INTEGER, &preselected },
{ "borderwidth", INTEGER, &borderwidth },
{ "lines", INTEGER, &lines },
{ "lineheight", INTEGER, &lineheight },
{ "columns", INTEGER, &columns },
{ "overridelines", INTEGER, &overridelines },
{ "overridecolumns", INTEGER, &overridecolumns },
{ "maxhist", INTEGER, &maxhist },
{ "hideitem", INTEGER, &hideitem },
{ "hidematchcount", INTEGER, &hidematchcount },
{ "hidehighlight", INTEGER, &hidehighlight },
{ "hidemode", INTEGER, &hidemode },
{ "hideimage", INTEGER, &hideimage },
{ "hidelarrow", INTEGER, &hidelarrow },
{ "hiderarrow", INTEGER, &hiderarrow },
{ "hideprompt", INTEGER, &hideprompt },
{ "hideinput", INTEGER, &hideinput },
{ "hidepowerline", INTEGER, &hidepowerline },
{ "hidecaret", INTEGER, &hidecaret },
{ "hidecursor", INTEGER, &hidecaret },
{ "hidecaps", INTEGER, &hidecaps },
{ "histdup", INTEGER, &histdup },
{ "casesensitive", INTEGER, &casesensitive },
{ "imagewidth", INTEGER, &imagewidth },
{ "imageheight", INTEGER, &imageheight },
{ "imagegaps", INTEGER, &imagegaps },
{ "imageposition", INTEGER, &imageposition },
{ "imageresize", INTEGER, &imageresize },
{ "imagetype", INTEGER, &imagetype },
{ "generatecache", INTEGER, &generatecache },
{ "maxcache", INTEGER, &maxcache },
{ "mode", INTEGER, &mode },
{ "fast", INTEGER, &fast },
{ "managed", INTEGER, &managed },
{ "mark", INTEGER, &mark },
{ "mon", INTEGER, &mon },
{ "sortmatches", INTEGER, &sortmatches },
{ "printindex", INTEGER, &printindex },
{ "incremental", INTEGER, &incremental },
{ "fuzzy", INTEGER, &fuzzy },
{ "regex", INTEGER, &regex },
{ "pango_item", INTEGER, &pango_item },
{ "pango_prompt", INTEGER, &pango_prompt },
{ "pango_input", INTEGER, &pango_input },
{ "pango_leftarrow", INTEGER, &pango_leftarrow },
{ "pango_rightarrow", INTEGER, &pango_rightarrow },
{ "pango_numbers", INTEGER, &pango_numbers },
{ "pango_mode", INTEGER, &pango_mode },
{ "pango_caps", INTEGER, &pango_caps },
{ "pango_password", INTEGER, &pango_password },
{ "pango_highlight", INTEGER, &pango_highlight },
};
// global colors
ResourcePref cols[] = { ResourcePref cols[] = {
{ "font", STRING, &font },
{ "color10", STRING, &col_caretfg }, { "color10", STRING, &col_caretfg },
{ "color0", STRING, &col_caretbg }, { "color0", STRING, &col_caretbg },
{ "color4", STRING, &col_larrowfg }, { "color4", STRING, &col_larrowfg },

View file

@ -97,8 +97,6 @@ project_target = executable(
install_man('spmenu.1') install_man('spmenu.1')
install_man('spmenu_run.1') install_man('spmenu_run.1')
install_man('spmenu_test.1') install_man('spmenu_test.1')
install_data(sources : 'docs/docs.md', install_dir : 'share/spmenu')
install_data(sources : 'docs/example.Xresources', install_dir : 'share/spmenu')
install_data(sources : 'docs/spmenu.conf', install_dir : 'share/spmenu') install_data(sources : 'docs/spmenu.conf', install_dir : 'share/spmenu')
install_data(sources : 'docs/spmenu_run.desktop', install_dir : 'share/applications') install_data(sources : 'docs/spmenu_run.desktop', install_dir : 'share/applications')
install_data(sources : 'docs/spmenu_desktop.desktop', install_dir : 'share/applications') install_data(sources : 'docs/spmenu_desktop.desktop', install_dir : 'share/applications')

View file

@ -154,7 +154,7 @@ print_help() {
cat << EOF | $RUNLAUNCHER "${rl_help[@]}" "${rl_ex[@]}" > /dev/null cat << EOF | $RUNLAUNCHER "${rl_help[@]}" "${rl_ex[@]}" > /dev/null
Start typing in keywords to list out entries. Press Enter to select an entry. The selected entry will be run through a shell. Start typing in keywords to list out entries. Press Enter to select an entry. The selected entry will be run through a shell.
To set spmenu options, you pass arguments to 'spmenu_run' directly. See 'spmenu --help' for a list of valid arguments. To set spmenu options, you pass arguments to 'spmenu_run' directly. See 'spmenu --help' for a list of valid arguments.
To configure spmenu, you may also copy ${DESTDIR}${PREFIX}/share/spmenu/example.Xresources to $CONFDIR/spmenu/spmenurc and edit that. To configure spmenu, you may also copy ${DESTDIR}${PREFIX}/share/spmenu/spmenu.conf to $CONFDIR/spmenu/spmenu.conf and edit that.
- Type in '?' to show this help screen at any time. - Type in '?' to show this help screen at any time.
- If the entry selected starts with 'www', it will instead be treated as a link and spawned in a web browser (\$BROWSER) - If the entry selected starts with 'www', it will instead be treated as a link and spawned in a web browser (\$BROWSER)

View file

@ -650,6 +650,22 @@ All of these keybinds can be overriden in the configuration file.
Should you unbind your switchmode key, you can always press Should you unbind your switchmode key, you can always press
\f[V]Ctrl+Alt+Delete\f[R] to exit spmenu, allowing you to fix your \f[V]Ctrl+Alt+Delete\f[R] to exit spmenu, allowing you to fix your
spmenu configuration. spmenu configuration.
.SS History buffer
.PP
spmenu allows you to specify a history file using the \f[V]-H\f[R]
argument.
When this argument is specified, the selected item(s) will be appended
to the file.
In spmenu.conf, you can specify a max number of entries, and whether you
want duplicate entries or not.
.PP
To access the history buffer, call \f[V]viewhist\f[R].
By default, the keybind for that is Shift+h in normal mode.
You can also access it by clicking the match indicator.
To hide the history buffer again, call \f[V]viewhist\f[R].
.PP
If \f[V]-H\f[R] is not specified, the history buffer will not be
available, and calling \f[V]viewhist\f[R] will do nothing.
.SS -p option .SS -p option
.PP .PP
spmenu has a \f[V]-p\f[R] or \f[V]--prompt\f[R] option. spmenu has a \f[V]-p\f[R] or \f[V]--prompt\f[R] option.