dmenu patches
(last tallied 2024-09-27)

presentation

font

look and feel

bidi
Adds support for right-to-left languages such as Hebrew, Arabic and Farsi

border
Adds a border around the dmenu window

color themes

interaction

case-insensitive
Makes case-insensitive matching the default behaviour

positioning

center
Adds a command line option -c to center dmenu on the screen

functionality

input / output

emoji-highlight
Adds a different look and feel for list options with left hand emojis that have a different background colour when selected

fuzzyhighlight
Highlights characters of entry items that fuzzy matches the input (used with the fuzzymatch patch)

matching

multi-line

gridnav
Adds the ability to move left and right through a grid (for use with the grid patch)

highlight
Highlights characters of entry items that matches the input

highpriority
Makes dmenu sort the search result so that high priority items are shown first

dynamicoptions
Allows for the options to be dynamically updated during runtime

incremental
Makes dmenu output the current text each time a key is pressed

misc

fuzzymatch
Allows non-consecutive portions of the text to be matched

instant
Makes dmenu select an item immediately if there is only one option left

json
Adds support for reading options from json-files

line-height
Allows for the height of dmenu lines to be increased

lines below prompt
Duplicate of vertfull

listfullwidth
Duplicate of vertfull plus optionally removes the prompt colour

managed
Allows window managers to manage dmenu

morecolor
Adds a single additional colour scheme for highlighting entries adjacent to the selected item

mouse support
Adds basic mouse support (e.g. click to select)

multi-selection
Delays outputting selections until the final return is entered

navhistory
Adds the ability for history navigation for previously selected items

no sort
Adds option to disable sorting of menu items after matching

non-blocking stdin
Makes dmenu read stdin in a non blocking way, making it wait for input both from stdin and from X

numbers
Adds text which displays the number of matched and total items in the top right corner of dmenu

password
Allows dmenu to be used for password input

pipeout
Allows the selected text to be piped back out with dmenu

prefix completion
Changes the behaviour of matched items and the Tab key

preselect
Allows options to be preselected based on index

printindex
Quotation forthcoming

printinputtext
Adds a flag to ignore selection and output the input text instead

reject no match
Prevents typing in text that would result in no matching item

restrict return
Guarantees that dmenu will only output one item and that the item was read from standard in

scroll
Adds support for text scrolling (rather than adding ellipsis)

separator
Similar to the tsv patch, but doesn't output the displayed text

symbols
Allows for the < and > symbols, indicating too many options, to be replaced

topbar
Adds a command line option -t to force topbar

tsv
Split input lines at first tab character and only display first part, but it will perform matching on and output full lines as usual

vertfull
By default dmenu indents items at the same level as the prompt in list view, this patch removes that indent

xresources
Allows dmenu to be configured via Xresources

xresources alt
Allows dmenu to be configured via Xresources using arbitrary resources

xyw
Allows the position and width of dmenu to be controlled via command line arguments

ctrl+v to paste
Adds Ctrl+v to paste (in addition to Ctrl+y)

allow color font
Also known as the color emoji patch, allows font glyphs that contains colors

color emoji
Enables colour emoji by removing an Xft safeguard (requires the libxft-bgra library)

grid
Allows dmenu entries to be listed as a grid

barpadding
Adds horzontal and vertical padding between dmenu and the monitor edge, mimicing the barpadding patch for dwm

alpha
Adds translucency to the dmenu window while keeping the text opaque

initialtext
Adds an option to provide pretyped text

date
Adds a date/time row when listing items using multiple lines

desktoponly
Adds an alternative to dmenu_run that only reads .desktop options

bar height
Mimics the bar height patch for dwm; allows for the height to increased beyond the font height

colored caret
Adds support for using a different colour for the dmenu caret

no default select
Allows for moving in both the text and options when using grid + gridnav

no input
Allows for dmenu to open with no prompt

no escape
Prevents the escape key from exiting dmenu

utilities

qalc
Turns dmenu into a calculator

tidy
Specify the directories dmenu_run searches for executables

tmenu
Duplicate of the tsv and separator patch

tsv-alt
Variant of the tsv patch that behaves similarly to the separator patch

vi mode
Adds a mode where vi-like keybindings can be used to move around and edit text

xtheme
Scripted xresources theme management system for dmenu

powerline
Draws powerline separators between dmenu items