My local login name is tc in examples below. I have no plans to submit a 32 bit package so unable to create a wiki page
I include links to some screenshots taken by hand held camera. I can not type screenshot.sh while menu is active.
What is it?dmenu is a tool that searches your PATH or executables against your keyboard input and displays hits for you to choose from.
The first entry by default is highlighted, so if you press Enter, dmenu will attempt to launch that executable
and the menu will disappear. You can type more letters or use arrow keys to change the highlighted item.
You may see this inside your terminal
dmenu_run
tc@box:~$ /home/tc/.cache/dmenu_run: No such file or directory
https://imgur.com/a/xGmDWkJThis is informational as "/home/tc/.cache/dmenu_run" is not created until you run dmenu.
If you run dmenu_run a second time, this session you will not see that info again.
dmenu can be used with wbar running.....but it works well without it. It is not designed to
replace wbar. wbar can launch desktop entries that are displayed, while dmenu launches more.
There is nothing stopping you from not loading wbar or dmenu and knowing how a command is spelt,
type the beginning of that command and use the TAB key to auto-complete the command and
then press Enter key to launch it.
Search resultsIt is not a fuzzy search but an exact search for keyboard input. Some examples follow:
input "le" hits will show multiple hits starting with the left hit hightlighted against
leafpad
and list is in spell order hits including loca
le and s
leep. Second image with my monitor
so wide....is not showing the left hand hits.
https://imgur.com/a/noWiFm3https://imgur.com/a/uLGLYjmObviously if you input more letters you get fewer results or no results. eg
leaf gives me only one hit for leafpad
top or bottom display$ dmenu_run
defaults to menu showing at top of monitor
$ dmenu_run -b
displays menu at botton of monitor
https://imgur.com/a/Fv4Ma19Horizontal or vertical display of hitsThe default behaviour is for hits to show on one line, horizontally. The number of hits may be so
large you might have to use navigation keys to scroll thru list. You can change that to
$ dmenu_run -l <number of lines>
eg
dmenu_run -l 20
https://imgur.com/a/J3z3DIWIn this example it does not matter that your opened terminal is covered up, partially or completely.
When you launch something like a terminal command eg ls, dmenu closes and launches the ls command
inside your terminal.
Use arrow keys to navigateIf you are not sure the exact spelling of a command, you can use left or right arrows keys to scroll horizontal menu. Or up or down arrows for vertical menu. Obvously if you know more of the spelling input more letters to reduce hits displayed.
keyboard is controlled by active dmenuBe aware that while the menu is displayed on the monitor, dmenu thinks all input is meant for dmenu and attempts to search for those keyboard inputs. If you use a mouse to open another terminal, it is useless until you either press Escape key to exit dmenu or press Enter key to launch a highlighted selection, in the menu
press Enter after successful launchIf I launch a command like ls....dmenu closes and outputs ls results in the terminal
But for me, I have to press Enter key to get back an input prompt. YMMV
https://imgur.com/a/yirmvIyread the man page pleaseIf after your initial tests, you feel this might be an useful tool, I suggest you read the man page.
Keyboard combosAfter reading the man page you will know various keyboard combinations. Let me reveal one. Say in your web browser, you read about a command worth investigating...eg dmesg So copy that term into your clipboard. Then when you run dmenu_run use kb combo of Ctrl (AND) y to paste directly into search input area.
Actually you have 2 clipboards. Lets pretend you have something in your terminal so you highlight selection with your mouse. So depending what is in your clipboard either Ctrl Shift y .....or Ctrl y will paste the correct terms.
Font stuffI sometimes forget to wear my googles, so prefer to increase font size. man page to the rescue? But as we TC users, better still I use a .local/bin script to do this like a wrapper script. Naturally you have to have a font TCZ loaded. Try out some fonts and sizes eg
dmenu_run -fn DejaVuSans-18
Suggest you use LOCAL BIN to save typing etcCreate a local bin file to save above that as a shortcut command, first use dmenu to see if you can use rare letters like jj
echo '#!/bin/sh
dmenu_run -fn DejaVuSans-18' > /home/tc/.local/bin/jj
chmod +x /home/tc/.local/bin/jj
and to test it
jj
https://imgur.com/a/p1zIkkoOf course you might add -b or other options to your local bin file.
There is nothing stopping you from using your command history and pressing the up arrow a number of times
to find your preferred command.
Hope that helps