| Age | Commit message (Collapse) | Author | 
|---|
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | Conflicts:
	src/Config.hs
	src/Main.hs
	src/Parsers.hs
	src/XUtil.hsc
	src/Xmobar.hs | 
|  |  | 
|  |  | 
|  | Displays playback flags in the style of ncmpcpp. | 
|  |  | 
|  | Conflicts:
	src/Xmobar.hs | 
|  | Available memory is determined from meminfo's `MemAvailable:` on 3.14 and
newer, and falls back to `free + buffer + cache` on older systems.
Introduces new variables `<available{,ratio,bar,vbar,ipat}>`. | 
|  | Thanks to Apollon Oikonomopoulos!! | 
|  |  | 
|  |  | 
|  |  | 
|  | For all <icon=path/> if path does not start with "/", "./", "../"
it will have iconRoot ++ "/" prepended to it. | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | This commit does more fundamental rework of the "Locks" plug-in: now the
plug-in is fully event-driven and thus extremely power-efficient,
effectively zero CPU consumption while idling. | 
|  | The extremely useful "Locks" plugin eats quite a lot of CPU (>2% here on a
old-ish laptop), unfortunately. The plug-in unnecessary reopens the
display, which is quite expensive operation. It results into 16 syscalls:
     socket(PF_LOCAL)      -> connect(sun_path=@"/tmp/.X11-unix/X0"})
  -> getpeername()         -> uname()
  -> access(".Xauthority") -> open(".Xauthority")
  -> fstat()               -> mmap()
  -> read()                -> close()
  -> munmap()              -> getsockname()
  -> fcntl(F_SETFD)        -> fcntl(F_SETFL)
  -> shutdown()            -> close()
This is almost half of all the syscalls that we ought to execute for the
plug-in to work. Now, considering the useful work and that "Locks" runs
every 200 milliseconds, it gives us >300 syscalls (and a lot more
wake-ups) per second.
This commit fixes the reopening issue, effectively halving the CPU
consumption (down to ~1%). The patch also makes it easier to implement
event-driven indicators that will reduce the idle CPU consumption to 0. | 
|  |  | 
|  |  | 
|  | * Batt
* Bright
* Cpu
* Disk
* MPD
* Mem
* MultiCpu
* Net
* Volume
* Wireless | 
|  | * DynamicString is an Int -> String which takes a value from 0..8
  and produces a string with this value embedded. Usefull for replacing
  vbars with icons: an icon per one of 9 states.
* API is similar to that of vbar.
* Default parser of DynamicString produces a function of `i` to a string
  that replaces all occurences of "%%" with `show i` | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | * Adds a new flag with_xpm to enable compilation with xpm support
* Adds a module XPMFile only exporting readXPMFile which almost mirrors
  Graphics.X11.Xlib.Misc.readBitmapFile
* During loadBitmap a file is first tried with readBitmapFile and if it
  fails with readXPMFile | 
|  |  | 
|  | * Wind cardinal direction (`windCardinal`)
* Wind azimuth direction (`windAzimuth`)
* Wind speed (MPH) (`windMph`)
* Wind speed (knots) (`windKnots`) | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | Display a long text from a pipe with marquee. It wraps around
    with a given separator and the length may be specified as well
    as the delay in 10th seconds. See readme for an example. | 
|  | Adaptive units are computed only if suffix is enabled
Otherwise we fall back to the old computation (KB) | 
|  | After running long enough, the numbers in /proc/stat get big enough
that they will not fit in a Float without loss of precision, which
leads to erratic results such as reporting "NaN%" CPU usage.
This commit simply keeps the numbers integral until producing the final
percentage result. | 
|  | I'd like to be able to choose which punctuation to use. All my other xmobar plugins use a colon and a space (e.g. `B: 100%` for battery), but this one leaves the space out (e.g. `E:1`) which is mildly annoying. It would be nice to let the user choose if he/she would like to use something other than a colon or to add extra whitespace. | 
|  | the baseline (valign) is now set so the font will render with
equal vertical margin above and below the font extents |