Today heralds the release of version 2.5 of the venerable yeganesh[1] menu. The suckless team produces a small program named dmenu[2] which acts like a normal Unix pipe program, accepting input on stdin and producing output on stdout, with the one caveat that it sticks the user in between. It launches a very small menu, presenting the user with each of the lines of stdin as choices, and prints the chosen text as a single line to stdout. This is very convenient for lightweight, GUI-less programs and scripts that need some minimal interaction; however, it is completely memoryless. Yeganesh wraps dmenu to add some memory: it records which choices the user has made in the past, and promotes popular choices to the front of the menu on future runs. See the website[1] for screenshots. New in this release: * Switching away from Read as the cache file parser reduced startup time by a factor of eight. (Caches in the old format will be transparently upgraded.) * When running in --executables mode, broken symlinks no longer sabotage their siblings in the filesystem tree. * Minor change to command-line parsing to preserve consistency with GNU-style command lines. (Any command line that used to work will still work, and will behave the same; however, some lines that were rejected before are now accepted and passed on to dmenu.) To try it out: 1. Install dmenu via your package manager, or from source (it's quite small!). wget http://dl.suckless.org/tools/dmenu-4.5.tar.gz tar xf dmenu-4.5.tar.gz cd dmenu-4.5 make install 2. Install yeganesh from Hackage. cabal install yeganesh 3. Run yeganesh; for example, to choose a file in your current directory, then see that file float to the top of your choices, try ls | yeganesh ls | yeganesh Features: * One common use case for choosing an executable from your $PATH to launch; yeganesh will scan your $PATH for you when launched in the --executables mode. * Multiple popularity profiles allow separate dmenu consumers to have separate memories. (For example, I have separate profiles for launching GUI and shell programs.) * Sometimes you say something embarassing; use the --filter mode to forget it. Enjoy! ~d [1] http://dmwit.com/yeganesh [2] http://tools.suckless.org/dmenu/
participants (1)
-
wagnerdm@seas.upenn.edu