{"id":1381,"date":"2021-12-11T22:34:31","date_gmt":"2021-12-11T17:04:31","guid":{"rendered":"https:\/\/smarttech101.com\/?p=1381"},"modified":"2023-03-25T00:50:08","modified_gmt":"2023-03-24T19:20:08","slug":"dmenu-what-it-is-and-how-i-use-it","status":"publish","type":"post","link":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/","title":{"rendered":"Dmenu &#8211; What It Is and How I Use It"},"content":{"rendered":"\n<p>Dmenu enables us to create something like right-click menu in Windows OS. You can use it in your <a href=\"https:\/\/smarttech101.com\/how-to-create-shell-scripts-in-linux-unix\/\" target=\"_blank\" rel=\"noreferrer noopener\">shell scripts<\/a>. In these scripts, you just need to supply your list of menus to dmenu, and then you can choose any one of them. Now, based on the chosen menu, you can take any action.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"120\" height=\"182\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/window_right_click_menu-1.png?resize=120%2C182&#038;ssl=1\" alt=\"Right-Click Menu in Win\" class=\"wp-image-1421\"\/><figcaption class=\"wp-element-caption\"><em>Figure: Right-click menu in Windows. Source: docs.microsoft.com <\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"600\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_as_right_click_menu-1.jpg?resize=800%2C600&#038;ssl=1\" alt=\"dmenu as right click menu used with sxiv\" class=\"wp-image-1384\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_as_right_click_menu-1.jpg?w=800&amp;ssl=1 800w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_as_right_click_menu-1.jpg?resize=768%2C576&amp;ssl=1 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Dmenu like right-click menu<\/em> <em>used with sxiv<\/em><\/figcaption><\/figure>\n\n\n\n<p>And it also comes with additional benefits:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>It is based on keyboard so no hassel of going back and forth between mouse and keyboards.<\/li>\n\n\n\n<li>You can use arrow keys or <strong>emacs key bindings<\/strong> &#8211; one of the widely used key bindings. Therefore, you don&#8217;t have to memorize any new key bindings.<\/li>\n\n\n\n<li>For minimal dekstop environments such as those using tiling window managers, it is a gold mine. You will need it to create required features like power-menu, and application launcher such as i3-dmenu-desktop.<\/li>\n\n\n\n<li>Despite Being <a href=\"https:\/\/suckless.org\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">a suckless utility <\/a>in nature, it works out of the box. Just supply your menu items using <strong>echo <\/strong>or <strong>printf<\/strong> and you are done.<\/li>\n\n\n\n<li>It is a modular tool so it can be used with many other modular tools like sxiv. <\/li>\n<\/ol>\n\n\n\n<p><strong>Modularity<\/strong> brings many advantages. You can combine it with many modular packages like sxiv (an image viewer), <strong>systemctl<\/strong> suspend\/poweroff\/reboot, etc., and create your own package! This is one of the features I like about Linux. You don&#8217;t have to stay dependent on big corporates. They first create an application\/software which we want. At the start, they sell it for free or at a low cost to lure us in. And when we get dependent on these applications, they keep increasing the price. On top of that, you will have to wait for these big corporates to bring additional features you like. For example, you need to buy a whole new copy of Windows 11 for a feature called Tiling Windows available in Linux for decades. <\/p>\n\n\n\n<p>In this article, you will learn about installation, available features, patches, modern-day useful examples, and how dmenu can replace many packages.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"table-of-contents\">Table of Contents<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"#1-installation\">1. Installation<\/a><\/li>\n\n\n\n<li><a href=\"#2-getting-familar-with-dmenu\">2. Getting Familar with Dmenu<\/a><\/li>\n\n\n\n<li><a href=\"#3-options-available\">3. Options Available<\/a>\n<ul class=\"wp-block-list\">\n<li><a href=\"#3-1-case-insensitive-matching-in-the-search-bar\">3.1. Case Insensitive Matching in the Search Bar<\/a><\/li>\n\n\n\n<li><a href=\"#3-2-bottom-placement-of-dmenu\">3.2. Bottom Placement of Dmenu<\/a><\/li>\n\n\n\n<li><a href=\"#3-3-vertical-placement-of-menus\">3.3. Vertical Placement of Menus<\/a><\/li>\n\n\n\n<li><a href=\"#3-4-font-configuration-in-dmenu\">3.4. Font Configuration in Dmenu<\/a><\/li>\n\n\n\n<li><a href=\"#3-5-dmenu-no-more-black-and-blue\">3.5. Dmenu No More &#8220;Black and Blue&#8221;<\/a><\/li>\n\n\n\n<li><a href=\"#3-6-dmenu-in-multi-monitor-setup\">3.6 Dmenu in Multi-Monitor Setup<\/a><\/li>\n\n\n\n<li><a href=\"#3-7-prompt-in-dmenu\">3.7. Prompt in Dmenu<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><a href=\"#4-setting-default-colors-fonts-and-other-options\">4. Setting Default Colors, Fonts, and Other Options<\/a><\/li>\n\n\n\n<li><a href=\"#5-shortcut-keys-available-in-dmenu\">5. Shortcut Keys Available in Dmenu<\/a><\/li>\n\n\n\n<li><a href=\"#6-patches-in-dmenu\">6. Patches in Dmenu<\/a><\/li>\n\n\n\n<li><a href=\"#7-how-i-find-dmenu-useful\">7. How I Find Dmenu Useful<\/a><\/li>\n\n\n\n<li><a href=\"#8-way-ahead\">8. Way Ahead<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"1-installation\">1. Installation<\/h2>\n\n\n\n<p><strong>Debian\/Ubuntu\/Raspbian<\/strong>\/<strong>Kali Linux<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ sudo apt-get install suckless-tools<\/code><\/pre>\n\n\n\n<p><strong>Archlinux:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ sudo pacman -S dmenu<\/code><\/pre>\n\n\n\n<p><strong>Alpine<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ sudo apk add dmenu<\/code><\/pre>\n\n\n\n<p><strong>Fedora<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ sudo dnf install dmenu<\/code><\/pre>\n\n\n\n<p>Now that we have installed the dmenu on our system, we will familiarize ourselves with some terms in the dmenu.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"2-getting-familar-with-dmenu\">2. Getting Familar with Dmenu<\/h2>\n\n\n\n<p>Dmenu reads a list of newline-separated items from standard input. For the stdin, use either <code><strong>pipe (|)<\/strong> or <strong>&lt;<\/strong><\/code><strong>. <\/strong><\/p>\n\n\n\n<p><strong>Example Syntax: <\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | dmenu <\/code><\/pre>\n\n\n\n<p><strong>Output:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1919\" height=\"1079\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/Dmenu_Basics-1.png?resize=1919%2C1079&#038;ssl=1\" alt=\"Search Bar and Menus in Dmenu\" class=\"wp-image-1412\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/Dmenu_Basics-1.png?w=1919&amp;ssl=1 1919w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/Dmenu_Basics-1.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/Dmenu_Basics-1.png?resize=1536%2C864&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Search Bar and Menus in dmenu<\/em><\/figcaption><\/figure>\n\n\n\n<p>At the top left corner, you will get a search bar. Right next to it, you will get all of your menu items. In the above example, I have three menu items &#8211; poweroff, reboot, and suspend. You can choose one of the items using either arrow keys or by typing in the Search Bar. Then hit Enter key. The chosen item will be printed out on the terminal. You can take further action on this choice using another <strong>pipe<\/strong>. To continue with the above example, if I add <strong>xargs systemctl<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | dmenu | xargs systemctl<\/code><\/pre>\n\n\n\n<p>Here, the xargs just takes your choice and adds it next to the systemctl, and then executes it. So, if you choose the &#8216;suspend&#8217; menu, xargs will execute a command &#8216;systemctl suspend&#8217;. And then your system will be suspended. <\/p>\n\n\n\n<p>So in just one line, we created a power-menu which, like any desktop OS, can power off, reboot and suspend your system.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"3-options-available\">3. Options Available<\/h2>\n\n\n\n<p>Using options, you can set dmenu&#8217;s fonts, colors, vertical\/horizontal placement, and top\/bottom placement, etc.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"3-1-case-insensitive-matching-in-the-search-bar\">3.1. Case Insensitive Matching in the Search Bar<\/h3>\n\n\n\n<p>As I told you earlier, in the dmenu you can type out in the search bar to select your menu. By default, it is case-sensitive. So, for example, if you type &#8216;test&#8217; in the search bar, it will match only those menus which have &#8216;test&#8217; in them. If you want to include &#8216;Test&#8217; as well, use case-insensitive matching. For this, you need to use<strong> <\/strong>the<strong> <code>-i<\/code> <\/strong>flag.<\/p>\n\n\n\n<p><strong>Example:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | dmenu -i<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"3-2-bottom-placement-of-dmenu\">3.2. Bottom Placement of Dmenu<\/h3>\n\n\n\n<p>By default, the dmenu places itself on top of the screen. You can use the <strong><code>-b<\/code><\/strong> flag to put it at the bottom.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1919\" height=\"1078\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_at_bottom.png?resize=1919%2C1078&#038;ssl=1\" alt=\"Dmenu at bottom of the screen\" class=\"wp-image-1396\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_at_bottom.png?w=1919&amp;ssl=1 1919w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_at_bottom.png?resize=768%2C431&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_at_bottom.png?resize=1536%2C863&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Dmenu at bottom of the screen<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"3-3-vertical-placement-of-menus\">3.3. Vertical Placement of Menus <\/h3>\n\n\n\n<p>By default, dmenu places menus in a horizontal bar. To place them vertically, use<strong> <code>-l<\/code> <\/strong>flag<strong>:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ ps -e | dmenu -l 10<\/code><\/pre>\n\n\n\n<p>Here, in the above command, <code>ps -e<\/code> lists the processes running on your computer. And the <code>-l 10<\/code> flag places the dmenu vertically with a maximum of 10 items in it. This way you will not lose sight of your existing window.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1919\" height=\"1079\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/vertical_dmenu.png?resize=1919%2C1079&#038;ssl=1\" alt=\"Vertical Dmenu\" class=\"wp-image-1398\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/vertical_dmenu.png?w=1919&amp;ssl=1 1919w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/vertical_dmenu.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/vertical_dmenu.png?resize=1536%2C864&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Vertical dmenu<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"3-4-font-configuration-in-dmenu\">3.4. Font Configuration in Dmenu<\/h3>\n\n\n\n<p>As you have been seeing, the default size of the font is very small. You need to increase the font size. At the same time, you can also change the font. For this purpose we use the <strong><code>-fn<\/code><\/strong> flag:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | dmenu -fn \"Ubuntu-18\"<\/code><\/pre>\n\n\n\n<p>As you might have guessed, 18 is font size and Ubuntu is the name of the font. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1919\" height=\"1079\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_changing_font.png?resize=1919%2C1079&#038;ssl=1\" alt=\"Changing font size and fonts in dmenu\" class=\"wp-image-1399\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_changing_font.png?w=1919&amp;ssl=1 1919w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_changing_font.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_changing_font.png?resize=1536%2C864&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Changing font size and fonts in dmenu<\/em><\/figcaption><\/figure>\n\n\n\n<p>Note: To find font names,  you can use <strong><code>fc-list<\/code><\/strong> command.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"3-5-dmenu-no-more-black-and-blue\">3.5. Dmenu No More &#8220;Black and Blue&#8221;<\/h3>\n\n\n\n<p>The default color is black and blue which is a little off-putting. You can change it using color flags <strong><code>-nb, -nf, -sb, and -sf<\/code><\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Flag<\/th><th>Meaning<\/th><\/tr><\/thead><tbody><tr><td><code>-nb<\/code><\/td><td>normal background-color<\/td><\/tr><tr><td><code>-nf<\/code><\/td><td>normal foreground-color<\/td><\/tr><tr><td><code>-sb<\/code><\/td><td>selected background-color<\/td><\/tr><tr><td><code>-sf<\/code><\/td><td>selected foreground-color<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>These flags accept HTML color codes as is shown in the <strong>example<\/strong> given below:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | dmenu -nb \"#EBCB8B\" -nf \"#2E3440\" -sb \"#2E3440\" -sf \"#EBCB8B\"<\/code><\/pre>\n\n\n\n<p><strong>Output:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1919\" height=\"1078\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/color_config_dmenu.png?resize=1919%2C1078&#038;ssl=1\" alt=\"Color Configuration in Dmenu\" class=\"wp-image-1401\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/color_config_dmenu.png?w=1919&amp;ssl=1 1919w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/color_config_dmenu.png?resize=768%2C431&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/color_config_dmenu.png?resize=1536%2C863&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Color configuration in dmenu<\/em><\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"3-6-dmenu-in-multi-monitor-setup\">3.6 Dmenu in Multi-Monitor Setup<\/h3>\n\n\n\n<p>To display it over a given monitor use<strong> <code>-m<\/code><\/strong> flag. Monitor numbers start from 0.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | dmenu -m 0<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"3-7-prompt-in-dmenu\">3.7. Prompt in Dmenu<\/h3>\n\n\n\n<p>To set up a prompt, we use <code><strong>-p \"Your_PROMPT<\/strong>\"<\/code>. <strong>Example<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | dmenu -p \"Power Options\"<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"76\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_prompt-1.png?resize=1920%2C76&#038;ssl=1\" alt=\"Prompt in dmenu\" class=\"wp-image-1422\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_prompt-1.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_prompt-1.png?resize=768%2C30&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_prompt-1.png?resize=1536%2C61&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Prompt in dmenu<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"4-setting-default-colors-fonts-and-other-options\">4. Setting Default Colors, Fonts, and Other Options<\/h2>\n\n\n\n<p>Using <code>-nb, -nf, -sb, -sf, and -fn<\/code> flags each time we want to use the dmenu is kind of repetitive and hence boring. What we need to do is a wrapper script called <strong>mydmenu <\/strong>with the following contents in it:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/sh\n\ndmenu -nb \"#EBCB8B\" -nf \"#2E3440\" -sb \"#2E3440\" -sf \"#EBCB8B\" -fn \"Ubuntu-18\" \"$@\"<\/code><\/pre>\n\n\n\n<p>Now, put it in your script directory and set appropriate execution bits using <strong>chmod.<\/strong><\/p>\n\n\n\n<p>Now, you don&#8217;t need to apply these flags anymore. Just set the colors according to your computer&#8217;s themes and you are done. Use the <strong>mydmenu<\/strong> instead like the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ echo -e \"poweroff\\nreboot\\nsuspend\" | mydmenu -l 30<\/code><\/pre>\n\n\n\n<p>Similarly, you can also add your own flags like <strong><code>-i<\/code><\/strong>, and <strong><code>-m 0<\/code><\/strong> in your wrapper script.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"5-shortcut-keys-available-in-dmenu\">5. Shortcut Keys Available in Dmenu<\/h2>\n\n\n\n<p>You can use <strong>Enter<\/strong> button to select one of the menus and get out of the dmenu. <strong>Arrow keys, Ctrl-Left Arrow, Ctrl-Right Arrow, Home, End, Backspace, and Delete<\/strong> keys work as expected.<\/p>\n\n\n\n<p>Moreover, many of the<strong> emacs key bindings <\/strong>are also available here. You might already be using these key bindings in your <strong>bash, zsh, ranger command line, fzf<\/strong>, and other packages. Personally, I prefer the emacs key bindings over the traditional key bindings (arrow keys mentioned above) because they are easy on my fingers. Some of the key bindings I use very often are:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Shortcut <\/th><th>Action<\/th><\/tr><\/thead><tbody><tr><td>Ctrl-n<\/td><td>Go to the next menu<\/td><\/tr><tr><td>Ctrl-p<\/td><td>Go to the previous menu<\/td><\/tr><tr><td>Ctrl-m<\/td><td>Equivalent to Enter button<\/td><\/tr><tr><td>Ctrl-a<\/td><td>Equivalent to Home button<\/td><\/tr><tr><td>Ctrl-e<\/td><td>Equivalent to End button<\/td><\/tr><tr><td>Ctrl-b<\/td><td>Equivalent to Left Arrow<\/td><\/tr><tr><td>Ctrl-f<\/td><td>Equivalent to Right Arrow<\/td><\/tr><tr><td>Ctrl-d<\/td><td>Equivalent to Delete button<\/td><\/tr><tr><td>Ctrl-h<\/td><td>Equivalent to Backspace button<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">source: <code>man dmenu<\/code>; for more, see the man page.<\/figcaption><\/figure>\n\n\n\n<p>That is another feature I love about Linux. In Windows and other Operating Systems, developers find it hard to include other packages&#8217; key bindings given license issues but the Linux community is an open community. There are no such restrictions.<\/p>\n\n\n\n<p>All the features and options mentioned above are sufficient for me. They are available in the default installation of dmenu in most of the distributions. But just for the sake of completion, I  will also talk about how we can have more features and options using <strong>patches<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"6-patches-in-dmenu\">6. Patches in Dmenu<\/h2>\n\n\n\n<p>As dmenu is a suckless tool, you can bring additional features and options to it. You can use patches to bring mouse support, transparency, fuzzy match, multiselection,  Xresources based configurations, etc. Just head over to this <a href=\"https:\/\/tools.suckless.org\/dmenu\/patches\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">suckless.org link and download the required patches.<\/a><\/p>\n\n\n\n<p>Now that I have covered all the basics we need, we will learn more about it using my own commands\/scripts in the next heading.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"7-how-i-find-dmenu-useful\">7. How I Find Dmenu Useful<\/h2>\n\n\n\n<p>I find it highly useful to list the available <strong>man pages<\/strong> and open one of them using my favorite pdf viewer. [Courtesy: Luke Smith&#8217;s blog]<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ man --apropos . | dmenu -l 30 | awk '{print $1}' | xargs man --troff-device=pdf | zathura -<\/code><\/pre>\n\n\n\n<p><strong>Explanation of the above command:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong><code>man --apropos .<\/code><\/strong> lists out all the available man pages  and their short descriptions into dmenu.<\/li>\n\n\n\n<li><code>awk '{print $1}<\/code> cuts out only the first word from the chosen option. So, for example, if I choose the first item shown in the below figure, the awk command will cut out only the <code>anki<\/code> part out of it.<\/li>\n\n\n\n<li><code>xargs man --troff-device=pdf<\/code>: xargs, as mentioned above, is used to build and execute the command from the standard input. So, for the <code>anki<\/code> example, xargs executes the command <code>man --troff-device=pdf anki<\/code>. <\/li>\n\n\n\n<li>The output of the <code>man --troff-device=pdf anki<\/code> is in pdf format which can be read only by a pdf reader like zathura.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"589\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_opening_man_pages.png?resize=1920%2C589&#038;ssl=1\" alt=\"Dmenu listing man pages available in your system\" class=\"wp-image-1395\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_opening_man_pages.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_opening_man_pages.png?resize=768%2C236&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_opening_man_pages.png?resize=1536%2C471&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Dmenu listing man pages available in your system<\/em><\/figcaption><\/figure>\n\n\n\n<p>Further, I use it to <strong>kill unresponsive programs<\/strong> &#8211; a handy replacement command to <strong>top<\/strong> and <strong>htop<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ ps -e -o comm | dmenu -l 30 | xargs kill -9<\/code><\/pre>\n\n\n\n<p>Explanation of the above command:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><code>ps -e -o comm<\/code> prints out all the running program.<\/li>\n\n\n\n<li><code>kill -9 &lt;programme&gt;<\/code> is used to kill the program<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"589\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_killing_everything.png?resize=1920%2C589&#038;ssl=1\" alt=\"Dmenu used as htop replacement\" class=\"wp-image-1394\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_killing_everything.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_killing_everything.png?resize=768%2C236&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu_killing_everything.png?resize=1536%2C471&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Dmenu used as htop replacement<\/em><\/figcaption><\/figure>\n\n\n\n<p>Moreover, My favorite clipboard manager <strong>clipmenu<\/strong> (<a href=\"https:\/\/github.com\/cdown\/clipmenu\" target=\"_blank\" rel=\"noreferrer noopener\">cdown\/clipmenu on github<\/a>) uses dmenu. This clipboard manager is just a shell script and therefore you can modify the script to fulfill your own needs.<\/p>\n\n\n\n<p>Furthermore, One user created a whole<strong> file manager called dmenufm<\/strong> using dmenu (<a href=\"https:\/\/github.com\/huijunchen9260\/dmenufm\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">huijunchen9260\/dmenufm on github<\/a>).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1918\" height=\"1078\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenufm_1.gif?resize=1918%2C1078&#038;ssl=1\" alt=\"\" class=\"wp-image-1430\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenufm_1.gif?w=1918&amp;ssl=1 1918w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenufm_1.gif?resize=1536%2C863&amp;ssl=1 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: Dmenufm using dmenu as file manager<\/em><\/figcaption><\/figure>\n\n\n\n<p>Similarly, dmenu can be used as a <strong>launcher<\/strong>. For this purpose, the dmenu available in many distributions already includes a script called <strong>dmenu_run<\/strong>. Just execute it from your terminal and you can launch any program.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~$ dmenu_run<\/code><\/pre>\n\n\n\n<p>At the same time, dmenu can be used as a task manager. For this, I use <a href=\"https:\/\/tools.suckless.org\/dmenu\/scripts\/todo\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">todo<\/a>. Just select a task to remove it after its completion, or type a new one to add that.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/todo_dmenu.png?resize=650%2C51&#038;ssl=1\" alt=\"Figure: dmenu as task manager\" class=\"wp-image-1433\" width=\"650\" height=\"51\" srcset=\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/todo_dmenu.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/todo_dmenu.png?resize=768%2C61&amp;ssl=1 768w, https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/todo_dmenu.png?resize=1536%2C122&amp;ssl=1 1536w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><figcaption class=\"wp-element-caption\"><em>Figure: dmenu as the task manager<\/em><\/figcaption><\/figure>\n\n\n\n<p>Besides, <a href=\"https:\/\/tools.suckless.org\/dmenu\/scripts\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">many such scripts (password manager, clipboard manager, file manager, bookmark manager, music player, and more) are also hosted on suckless.org<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"8-way-ahead\">8. Way Ahead<\/h2>\n\n\n\n<p>Dmenu is a very small package with tremendous potential. Through this article, I tried to give you a small glimpse of these potential applications. To explore more, go through the man pages, patches, and scripts hosted on suckless.org.<\/p>\n\n\n\n<p>And also, I tried my best to be as clear as possible without committing any mistakes. But I am also a human. And because of that, some mistakes are bound to occur. Therefore, I humbly request you to notify me about these mistakes in the comment section below. If you have any questions, feel free to ask in the comment section. I will be pleased to answer such questions.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A comprehensive guide to dmenu &#8211; installation, available features, patches, modern day useful examples, and dmenu replacing many packages.<\/p>\n","protected":false},"author":2,"featured_media":1428,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[48],"tags":[],"class_list":["post-1381","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux-desktop-tools"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Dmenu - What It Is and How I Use It | SmartTech101<\/title>\n<meta name=\"description\" content=\"A comprehensive guide to dmenu - installation, available features, patches, modern day useful examples, and dmenu replacing many packages.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dmenu - What It Is and How I Use It | SmartTech101\" \/>\n<meta property=\"og:description\" content=\"A comprehensive guide to dmenu - installation, available features, patches, modern day useful examples, and dmenu replacing many packages.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/\" \/>\n<meta property=\"og:site_name\" content=\"SmartTech101\" \/>\n<meta property=\"article:published_time\" content=\"2021-12-11T17:04:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-24T19:20:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1919\" \/>\n\t<meta property=\"og:image:height\" content=\"1079\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ajay\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ajay_yadav\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ajay\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/\"},\"author\":{\"name\":\"Ajay\",\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/2edfee738a82f9c963210f8cdb438334\"},\"headline\":\"Dmenu &#8211; What It Is and How I Use It\",\"datePublished\":\"2021-12-11T17:04:31+00:00\",\"dateModified\":\"2023-03-24T19:20:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/\"},\"wordCount\":1836,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/e8d5aebc510d698e11e9df6291381633\"},\"image\":{\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1\",\"articleSection\":[\"Linux Desktop Tools\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/\",\"url\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/\",\"name\":\"Dmenu - What It Is and How I Use It | SmartTech101\",\"isPartOf\":{\"@id\":\"https:\/\/smarttech101.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1\",\"datePublished\":\"2021-12-11T17:04:31+00:00\",\"dateModified\":\"2023-03-24T19:20:08+00:00\",\"description\":\"A comprehensive guide to dmenu - installation, available features, patches, modern day useful examples, and dmenu replacing many packages.\",\"breadcrumb\":{\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage\",\"url\":\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1\",\"width\":1919,\"height\":1079,\"caption\":\"Comprehensive Guide to Dmenu\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/smarttech101.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dmenu &#8211; What It Is and How I Use It\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/smarttech101.com\/#website\",\"url\":\"https:\/\/smarttech101.com\/\",\"name\":\"SmartTech101\",\"description\":\"Do Everything in Linux\",\"publisher\":{\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/e8d5aebc510d698e11e9df6291381633\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/smarttech101.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/e8d5aebc510d698e11e9df6291381633\",\"name\":\"Ajay Yadav\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2022\/09\/cropped-ST101_logo.png?fit=180%2C60&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2022\/09\/cropped-ST101_logo.png?fit=180%2C60&ssl=1\",\"width\":180,\"height\":60,\"caption\":\"Ajay Yadav\"},\"logo\":{\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/2edfee738a82f9c963210f8cdb438334\",\"name\":\"Ajay\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/smarttech101.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6eea348caae2173954765a7cdf6cd107?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6eea348caae2173954765a7cdf6cd107?s=96&d=mm&r=g\",\"caption\":\"Ajay\"},\"sameAs\":[\"https:\/\/x.com\/ajay_yadav\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dmenu - What It Is and How I Use It | SmartTech101","description":"A comprehensive guide to dmenu - installation, available features, patches, modern day useful examples, and dmenu replacing many packages.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/","og_locale":"en_US","og_type":"article","og_title":"Dmenu - What It Is and How I Use It | SmartTech101","og_description":"A comprehensive guide to dmenu - installation, available features, patches, modern day useful examples, and dmenu replacing many packages.","og_url":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/","og_site_name":"SmartTech101","article_published_time":"2021-12-11T17:04:31+00:00","article_modified_time":"2023-03-24T19:20:08+00:00","og_image":[{"width":1919,"height":1079,"url":"https:\/\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png","type":"image\/png"}],"author":"Ajay","twitter_card":"summary_large_image","twitter_creator":"@ajay_yadav","twitter_misc":{"Written by":"Ajay","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#article","isPartOf":{"@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/"},"author":{"name":"Ajay","@id":"https:\/\/smarttech101.com\/#\/schema\/person\/2edfee738a82f9c963210f8cdb438334"},"headline":"Dmenu &#8211; What It Is and How I Use It","datePublished":"2021-12-11T17:04:31+00:00","dateModified":"2023-03-24T19:20:08+00:00","mainEntityOfPage":{"@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/"},"wordCount":1836,"commentCount":2,"publisher":{"@id":"https:\/\/smarttech101.com\/#\/schema\/person\/e8d5aebc510d698e11e9df6291381633"},"image":{"@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1","articleSection":["Linux Desktop Tools"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/","url":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/","name":"Dmenu - What It Is and How I Use It | SmartTech101","isPartOf":{"@id":"https:\/\/smarttech101.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage"},"image":{"@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1","datePublished":"2021-12-11T17:04:31+00:00","dateModified":"2023-03-24T19:20:08+00:00","description":"A comprehensive guide to dmenu - installation, available features, patches, modern day useful examples, and dmenu replacing many packages.","breadcrumb":{"@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#primaryimage","url":"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1","contentUrl":"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1","width":1919,"height":1079,"caption":"Comprehensive Guide to Dmenu"},{"@type":"BreadcrumbList","@id":"https:\/\/smarttech101.com\/dmenu-what-it-is-and-how-i-use-it\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/smarttech101.com\/"},{"@type":"ListItem","position":2,"name":"Dmenu &#8211; What It Is and How I Use It"}]},{"@type":"WebSite","@id":"https:\/\/smarttech101.com\/#website","url":"https:\/\/smarttech101.com\/","name":"SmartTech101","description":"Do Everything in Linux","publisher":{"@id":"https:\/\/smarttech101.com\/#\/schema\/person\/e8d5aebc510d698e11e9df6291381633"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/smarttech101.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/smarttech101.com\/#\/schema\/person\/e8d5aebc510d698e11e9df6291381633","name":"Ajay Yadav","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/smarttech101.com\/#\/schema\/person\/image\/","url":"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2022\/09\/cropped-ST101_logo.png?fit=180%2C60&ssl=1","contentUrl":"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2022\/09\/cropped-ST101_logo.png?fit=180%2C60&ssl=1","width":180,"height":60,"caption":"Ajay Yadav"},"logo":{"@id":"https:\/\/smarttech101.com\/#\/schema\/person\/image\/"}},{"@type":"Person","@id":"https:\/\/smarttech101.com\/#\/schema\/person\/2edfee738a82f9c963210f8cdb438334","name":"Ajay","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/smarttech101.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6eea348caae2173954765a7cdf6cd107?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6eea348caae2173954765a7cdf6cd107?s=96&d=mm&r=g","caption":"Ajay"},"sameAs":["https:\/\/x.com\/ajay_yadav"]}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/smarttech101.com\/wp-content\/uploads\/2021\/12\/dmenu.png?fit=1919%2C1079&ssl=1","_links":{"self":[{"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/posts\/1381"}],"collection":[{"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/comments?post=1381"}],"version-history":[{"count":5,"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/posts\/1381\/revisions"}],"predecessor-version":[{"id":2670,"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/posts\/1381\/revisions\/2670"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/media\/1428"}],"wp:attachment":[{"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/media?parent=1381"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/categories?post=1381"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/smarttech101.com\/wp-json\/wp\/v2\/tags?post=1381"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}