Hey all,

I've been tinkering with dmenu the last few days. I think it would be
good to get a 4.3 release out at some point soon, so if anyone could
report any bugs to me that would be swell.
A brief list of changes:

In terms of SLOC, tip is about the size of 4.0 and most of the 3.x
series, with a current count of 683 lines of C and 7 of shell script.
(Which is quite small, considering it now has a cursor, vertical
lines, and paste.)

It ought to be a lot faster. The main data structure now uses an
array, and I've optimised incremental search, so the longer you type
the quicker matching will become; and jumping to the last menu item is
now O(1). It only starts to get noticeably sluggish on an Atom netbook
when dealing with half a million items or so.

dmenu_path is a shell script again. Based on my tests it's slightly
slower than the C version, but is still a lot faster than the original
script, so I think that's acceptable -- I don't notice a cache miss,
with a few thousand executables. (Use '-f' or a watcher process and
you're golden.)

For portability, dmenu is now ANSI C90, which more compilers support
than C99, and dmenu_path is POSIX compliant, whereas the old script
wasn't. I also checked the Makefile is POSIX compliant and works with
BSD make. ;)

Any bugs, tell me!

Thanks,
cls

Reply via email to