Age | Commit message (Collapse) | Author |
|
1. use `unsigned int` to store the codepoints, this avoids waste on
common case where `long` is 64bits. and POSIX guarantees `int` to be
at least 32bits so there's no risk of truncation.
2. since switching to `unsigned int` cuts down the memory requirement by
half, double the cache size from 64 to 128.
3. instead of a linear search, use a simple hash-table for O(1) lookups.
|
|
- extract drawitem function (code deduplication)
- fix bug where inputw was not correctly calculated from the widest item, but
just from the one with the longest strlen() which is not the same. It's better
now, but does not account for fallback fonts, since it would be too slow to
calculate all the correct item widths on startup.
- minor code style fixes (indentation, useless line breaks)
|
|
... remove intermediary variables
|
|
- libdraw, util: add drw.{c,h}, util.{c,h} and update code.
- libdraw: fix drw_rect(): use w and h parameter.
- libdraw: print errstr if last character in string was ":" (sbase).
- libdraw: drw_clr_free() allow valid free(NULL).
- config.def.h: set default font to monospace.
- cleanup() on exit.
- LICENSE: update license string for dmenu -v to 2015.
- LICENSE: add myself to LICENSE
|