The i3 FAQ has migrated to All content here is read-only.
Ask Your Question

Making i3-input, dmenu_run, faster

asked 2015-04-21 17:11:24 +0000

Rojo gravatar image

Is there a simple way to make those open faster? Maybe increasing its priority/niceness, or having them always on RAM or some other smart way?

I doubt it would waste much resources and would improve my experience, which pretty often involves waiting a couple of seconds after pressing those things. This also disallows me to just press the keys without thinking in order to get some program started or switch to some workspace, because whatever I type before those programs open gets dropped.


edit retag flag offensive close merge delete


If i3input takes *seconds* to open on your machine, I would say your machine is either thirty years old or there is something wrong with it. dmenu_run (note: *not* dmenu) can be a bit slower, but even there several seconds sounds odd to me. How do other applications perform?

airblader gravatar imageairblader ( 2015-04-21 17:42:42 +0000 )edit

I don't know what the reason on your machine might be, but one thing you might want to try is [preloading]( If you do, let us know how it went.

i3convert gravatar imagei3convert ( 2015-04-21 17:43:13 +0000 )edit

@airblader It is not such a bad machine but I use it near its RAM limit. Usually i3-input takes a second or two the first time if I hadn't used it in several minutes, but its fast if I run it again just afterwards.

Rojo gravatar imageRojo ( 2015-04-21 17:47:39 +0000 )edit

@i3convert Reading up on that, I'll keep you posted

Rojo gravatar imageRojo ( 2015-04-21 17:48:09 +0000 )edit

@Rojo That's really odd. i3input is such a lightweight application that barely does anything. It literally just opens a small window, even without any heavy GUI toolkit, but basic XCB.

airblader gravatar imageairblader ( 2015-04-21 17:50:56 +0000 )edit

3 answers

Sort by ยป oldest newest most voted

answered 2015-04-28 00:18:37 +0000

hes gravatar image

updated 2015-04-28 01:51:53 +0000

j4-dmenu-desktop is specifically intended to be a faster replacement for i3-dmenu-desktop:

They say over 25 times faster. . . I have no idea, but it may be worth trying.

edit flag offensive delete link more


Note that i3-dmenu-desktop serves a different purpose than dmenu_run. dmenu_run lists all available commands. i3-dmenu-desktop lists programs that are specified as menu entries by having a *.desktop file somewhere.

i3convert gravatar imagei3convert ( 2015-04-29 05:10:40 +0000 )edit

answered 2015-04-26 16:00:05 +0000

teto gravatar image

Or you could put dmenu in a scratchpad and display it when needed.

edit flag offensive delete link more


dmenu isn't a managed window, so you can't put it into the scratchpad.

Airblader gravatar imageAirblader ( 2015-04-26 16:26:42 +0000 )edit

answered 2015-04-21 19:46:20 +0000

Michael gravatar image

You can use to keep binaries in RAM. As others have pointed out in the comments to your question, i3-input is already as lightweight as it gets. dmenu_run however traverses your $PATH, so it is bound by how fast your filesystem is. Using an SSD will help for dmenu_run.

edit flag offensive delete link more


`dmenu_run` (or rather `dmenu_path`) usually caches the found binaries in a file (usually `~/.cache/dmenu_run` or `~/.dmenu_cache`) and only traverses `PATH` if any of the directories have been updated since when the cache file was created.

Adaephon gravatar imageAdaephon ( 2015-04-21 21:00:21 +0000 )edit

Question Tools


Asked: 2015-04-21 17:11:24 +0000

Seen: 490 times

Last updated: Apr 28