New features
- New options to specify the ellipsis string for fields (
-e
) and total width (-E
), thanks to Olivier Schneider. MultiCpu
: New option to specify fallback icon paths (--fallback-icon-pattern
), thanks to Reed Koser.
Bug fixes
CpuFreq
monitors honours-d
(number of digits) if no suffix is given (cf. [issue #335].
New features
- The X11 properties
WM_NAME
andWM_CLASS
for xmobar windows can be setup in either the configuration file (wmName
andwmClass
) or using the new flags-n
adn-w
(see issue #323). - New flag
with_weather
, to build sansWeather
monitor.
Bug fixes
- Honouring -x in MPris monitor (issue #325)
Bug fixes
- Fix for vertical bars (issue #303)
Infrastructure
- Whe have now an active Travis CI setup.
Bug fixes
- Reduce wakeups rate via rtsopts V0 (with new flag with_rtsopts to disable it) (see issue #89).
- Fix Net monitor for lage uptimes and bytecounts (Tomas Janoušek).
- Fix MultiCpu monitor for large uptimes (Zev Weiss).
- Fix compilation when XMP is disabled (Sergi Trofimovich).
- Better fatal error messages (Michael Bishop).
- More paths to read from in CoreTemp (see issue #291).
Bug fixes
- Battery monitor: fixes for cases where status is not consistently reported by the kernel (see issue #271).
Bug fixes
- New Weather plugin URL (see issue #270).
Bug fixes
- Restoring compatibility with GHC 7.6, (see issue #269).
New features
- Use the new compilation flag
with_conduit
to compile an implemetation of theWeather
plugin that will work behind proxies, by Dragos Boca. - New command line argument (
-p
) to specify xmobar's position, by Valentin Shirokov. - Wind speed in Km/h and m/s for the
Weather
plugin, by Michael Knabe. UVMeter
, a new optional plugin showing UV data for Australian users, by Roman Joost.- New template parameter
<date>
for theMPD
plugin (by Bruno Heridet) - New monitor argument
-T
to specify the maximum total width of the monitor text. - New $VAR parameter syntax for using env vars in pipe monitors, by Will Song (see issue #268).
Bug fixes
- The
Volume
plugin now supports capture devices (Antoine Eiche). - The
MPD
plugin will now automatically update on options changes (Ben Boeckel). - The
Battery
plugin does now a better job at tracking AC status and times (see issue #231). PipeReader
was polling too often (thanks to zlbruce).- The
MPris
monitor now honours field width and padding optons (-M, -w, etc.). Batt
: sensible thresholds for high/low power consumption (see issue #265).
Bug fixes
- Vertical alignment for icons, issue #216
- Improvements to vertical text alignment, with many thanks to Jan Palus (see ongoing discussion in issue #221).
- Better error handling in
Volume
monitor, issue #215 - Compilation with ghc 7.8 and 7.10 (thanks to Edward Tjörnhammar, see issue #225).
New features
- Xmobar can now use a (semi)transparent background: set it with the
new configuration option
alpha
(thanks to Edward Z. Yang, see issue #114). - Multiple fonts available by means of the new configuration
parameter
additionalFonts
and the template markers<fn=1>...</fn>
, by Markus Scherer. - New variables in
Mem
monitor for available memory as reported by Linux 3.14 and newer, by Samuli Thomasson. - New configuration parameters
textOffset
andiconOffset
(see discussion in issue #171 and issue #201). - New template variable
flags
inMPD
monitor, by Duncan Burke.
Bug fixes
- We honour the
-S
(show suffix) monitor flag inCpuFreq
. - Better
Weather
parsing of wind direction, by Dino Morelli (see pull #212).
Bug fixes
- Fix compilation in systems that don't need mtl newer than the one shipped with GHC.
New features
- New
MarqueePipeReader
plugin by Reto Hablützel. Network
monitor has now adaptive units (-S
is used now to switch them on), by Axel Angel.Weather
now offersdewPointC
anddewPointF
instead ofdewPoint
, and the newwindCardinal
,windAzimuth
,windMph
andwindKnots
variables, by Tony Morris.- Strings in the configuration file can now span multiple lines using Haskell-style multiline script, thanks to dunric
- Icons can now be also xpm files (if xmobar is compiled with
with_xpm
), thanks to Alexander Shabalin. - New
borderWidth
option to set xmobar's boder width, thanks to Travis Staton. - Support for multiple Xft fonts, thanks to Phil Xiaojun Hu and Cedric staub (see pull request #196).
- Icon patterns for several monitors, that allow you to specify a collection of icons to use for successive integer variable values, thanks to Alexander Shabalin (see pull request #192 and the documentation for details).
- Upgrade to libmpd 0.9.
Bug fixes
- Much more efficient implementation of the
Locks
plugin, thanks to Anton Vorontsov (see pull request #195). - Not colorizing total disk size in
DiskU
(issue #189). - Avoiding zombies on click actions, thanks to Phil Xiaojun Hu (issue #181).
New features
- Vertical bar indicators using unicode available for most monitors, by Eric Mrak.
CoreTemp
: support for linux 3.15, by Tomáš Janoušek.- New
CatInt
monitor, displaying integer values read from a file, by Nathaniel Wesley Filardo. - New
<raw>
tag for safer input parsing, also by Nathaniel. - New
UnsafeXMonadLog
monitor (by Eric Mrak) and their xproperty counterparts,UnsafeXPropertyLog
andUnsafeNamedXPropertyLog
.
Bug fixes
Network
now reports status for ppp connections (see issue #89).- Fix for very long running
Cpu
monitors, by Robert J Macomber.
New features
- Back to picking by default the first available screen, with a new
configuration option,
pickBroadest
, for choosing the broadest (see issue #158).
New features
- Mouse actions now support multiple buttons, by Marcin Mikołajczyk.
- Non supported monitors are ignored in configuration files (see issue #139), by Adam Vogt.
Bug fixes
Disk
monitor now ignores non-existent devices (Reto Hablützel).Weather
is now non-blocking and doesn't use curl (Ben Boeckel).- Fix for
Memory
monitor in 3.14 kernels (Ben Boeckel). - Fix for infinite loops in
AutoMPD
(issue #76, issue #111). - More robust AC readings in
BatteryP
. - Fix for
Top
monitor's readings for processes whose name contains blanks. - Fixes for geometry computation on multihead (Dmitry Malikov).
- Fixes for missing XDG configuration (Thiago Negri and James McCoy, see issue #133).
- Compatibility with latest
directory
(1.2.0.2).
As of this release, the old bug tracker at Google code is deprecated. Please use Github's tracker for new bugs.
New features
- New monitor
BatteryN
, a variant ofBatteryP
that lets you specify the name of the monitor in the template. - Support for configuration file living in
XDG_CONFIG_HOME
(see github #99). Com
uses saferrunInteractiveProcess
instead of spawning a shell (David McLean). If you're using shell expansion in yourCom
(e.g. "~/bin/script") here's a workaround:Run Com "/bin/bash" ["-c", "~/bin/script"]
(cf. github #127).- New plugin
UnsafeStdinReader
that allows actions from stdin. Now it's possible to have clickable workspaces! (Thiago Negri, see github #125). - New monitor configuration option (
-x
or--nastring
) that allows specifying what string to display when a monitor is not available (defaulting to "N/A"). Cf. github #119.
Bug fixes
- Using the width options
-w
,-m
and-M
in battery monitors watts display (github #118). - Using the
-d
option inCoreTemp
(github #115) - Fix for systems not supporting PCRE regular expressions: we use now BCEs, so regex-compat should be enough everywhere (see github #117).
- Weather monitor: support for stations without name (Sergei Trofimovich, issue #65).
New features
-
All extra argument monitors taking a string (e.g.
-O
forBatteryP
) accept now template variables (see github #109 and #110). Thanks to Todd Lunter. -
New battery monitor extra argument,
-i
, for the idle status.
Bug fixes
- Safer standard input parsing, avoiding injections.
New features
- Icons support: it's now possible to insert bitmaps in the template (Edward O'Callaghan, Alexander Polakov and Tomáš Janoušek).
- Initial support for reacting to mouse clicks (Alexander Polakov).
- New
TopP
andBottomP
alignments, taking left and right paddings (thanks to Dmitry Malikov). - New
<freeratio>
field for memory monitor (Peter Simons). - New
allDesktops
andoverrideRedirect
configuration options, providing dock behaviour in tiling WMs (when set to True and False respectively). Cf. discussion at github #105. - Experimental
-d
(start as a dock) option, may address github #67 in some window managers.
Bug fixes
- Partial (as reports go) fix for github #77.
- Safer volume plugin (Dmitry Malikov).
- Battery percentage capped at 100% (RJ Regenold).
New features
- New monitor
AutoMPD
, which uses asynchronous events to display MPD status (thanks to Ben Boeckel). - New monitor
BufferedPipeReader
displaying data from multiple pipes (thanks to Jochen Keil). - New monitor
DynNetwork
, which detects the active interface automatically, by Reto Hablützel - New monitor,
Locks
, displaying the status of lock keys, by Patrick Chilton. - Extension for DBUS signal handling (Jochen Keil)
- Hide/Reveal: one can send signals to xmobar and make it (un)hide itself (Jochen again).
PipeReader
's default text is now configurable, by Reto Hablützel.- Dependencies updated to latest mtl and libmpd (thanks to Sergei Trofimovich).
- Dependencies on the deprecated dbus-core removed in favour of dbus 0.10 (thanks to Jochen Keil).
- MPris2 now includes genre and composer among its fields.
Bug fixes
DiskIO
now can report overall activity in all partitions of a device which is not mounted itself (e.g., sda when sda1, sda3, etc. are the mounted partitions). Thanks to John Soros. See github #73.DiskU
, the disk usage monitor, works again correctly on Linux, instead of randomly crashing every now and then, and reporting wrong used size.- When using antialiased fonts, we were causing a memory leak in the X server by repeatedly allocating colors that, apparently, the server doesn't know how to get rid of (even when told so!). We're caching them now and X server memory doesn't grow.
- Compilation errors and warnings with GHC 7.6 removed (thanks to Raghavendra D Prabhu for his reports in github #71).
Known problems
Some users have reported problems with xmobar compiled with GHC 7.6 in ArchLinux: see github #78 and pointers therein. Please, send reports of any problems or successes in that regard so that we can fix any remaining issues. Thanks!
Incompatible changes
Batt
monitor no longer uses-c
to specify the charge file: it should figure things out by itself (cf. issue 69).
New features
- New command line option,
-C
, that allows adding commands to those specified in the configuration file (Ben Boeckel). - Dependency on GHC's threaded runtime has been eliminated.
- New MPRIS (versions 1 and 2) monitor, by Artem Tarasov.
- New monitor option
-d
to specify the number of decimal places to display for float numbers. Defaults to 0. See issue 58. - New compilation option
--with_threaded
, to use GHC's threaded runtime to compile xmobar. Disabled by default (cf. discussion in github #36).
Bug fixes
- Stricter build dependencies versioning in cabal file.
- issue 56 vertical alignment of text improved.
- issue 64 display of
watts
inBatt
monitor fixed. - issue 69 miscellaneous battery reporting issues.
- issue 67 compilation in DragonFly.
- DiskIO works also when device path in mtab are symbolic links to the real device file.
- Wireless monitor honours padding settings for ESSID names.
- CoreTemp monitor fixed for newer kernels (github #38).
New features
- New brightness monitor, courtesy of Martin Perner.
- New DateZone plugin, for configurable timezone and localized datetimes, also by Martin.
- New keyboard layout monitor (Kbd). Yes, by Martin.
- Rewrite of the event handling (issue 53, issue 57), you guessed it.
- Cpu monitor now also reports
iowait
field (issue 55). - Battery monitor: the full charge file is now settable in the
monitor arguments (olpc systems use
charge_full_design
; see issue 62).
Bug fixes
- issue 45 Fix for crashes with AC status changes in battery monitor.
- issue 48 The field of Wireless behaves like a percentage.
- issue 50/issue 61:
MPD
monitor now works with libmpd 0.6. - issue 60 Fixes for crashes on power resume for battery monitor.
- Template sections without fields are now correctly displayed.
- Catch errors when reading battery status (Ben Boeckel).
- Compilation issues with ghc 7.x (Sergei Trofimovich).
- Fixes for CoreTemp monitor in new kernels (Norbert Zeh).
- Fix for pulseaudio problems in volume monitor (Martin Perner).
- Fix for parsing errors when a
Run
entry ended in an array (Martin). - Fixed compilation in OpenBSD (Ivo van der Sangen).
New features
- New
Volume
monitor displaying ALSA soundcards information, by Thomas Tuegel. - New
ThermalZone
plugin substitutingThermal
and using linux's sysfs interface (you need this one if you're using a kernel version equal to or above 2.6.37). See issue 44. - xmobar app new has WM_CLASS, WM_NAME and _NET_WM_PID xprops (issue 38).
Incompatible changes
- In the process of solving issue 14, we've broken those
configurations that rely on including alignment separators in the
input fed to
StdinReader
. - The MPD plugin does not accept host and port options anymore: use the environment variables MPD_HOST and MPD_PORT instead.
- The
Mail
plugin now takes a second parameter (a string) specifying its alias. As a side-effect, this solves issue 30.
Bug fixes
- issue 14
StdinReader
and other plugins accepting external input don't get confused anymore when characters fromalignSep
appear in their input. - issue 27
BottomSize
placement now respects its width argument. - issue 28 Compilation in Mac OS X fixed.
- issue 30
Mail
plugin can be specified anywhere in commands list. - issue 36 Battery monitor now supports non-standard locations of
the
/sys/class/power_supply/AC/online
file. - issue 40 Battery monitor now supports the new power_now, that replaces current_now in linux kernels for v. 2.36 and above.
- issue 42 More accurate net monitor rates.
- DiskIO, Cpu and MultiCpu monitors are also more accurate now.
- Text is now correctly centered vertically.
FullBM
border spec fixed.
xmobar has a new maintainer, a new website, a new mailing list and uses a new source code repository.
Many thanks to Andrea Rossato, xmobar's author and maintainer so far, for creating xmobar in the first place, and for giving me the chance to become its maintainer. And a big thanks to Ben Boeckel, Petr Rockai and Norbert Zeh for their patches.
New features
- Window borders: configuration options
border
andborderColor
allow drawing borders around xmobar's window. - New monitor,
Uptime
, showing the system uptime. - New monitor argument (
-S
) to enable displaying the%
symbol in percentages or other suffixes (e.g., units in Uptime and Network); the symbol is now never included by default. - New 'run once' commands, by specifying a 0 refresh rate in
Run Com
(issue 26). - MPD monitor: updated to libmpd 1.5. New fields
ppos
(playlist position) andremaining
(remaining time). New configuration options to specify MPD's host, user name and password. - Battery monitor: new
watts
andtimeleft
fields (Petr Rockai), and specific arguments to control coloring and thresholds of the former. - MultiCPU monitor: new
auto*
fields that automatically detect all present CPUs (Ben Boeckel). - CpuFreq monitor uses just one decimal digit for GHz values (Petr Rockai).
- Mail plugin expands paths starting with "~/" (Ben Boeckel). Ditto MBox.
- Weather monitor now skips not retrieved fields, instead of displaying a long error message.
- New compilation flag,
all_extensions
. - Documentation and website updates.
Bug fixes
- issue 23 Wireless monitor is now compatible with iwlib 29.
- issue 24 Swap monitor's used ratio display fixed.
- issue 25 Percentages only include
%
if requested using-P
. - issue 31 MPD monitor now respects
-W
argument. - Fixes in CPU frequency formatting, string alignment and colour boxes in monitors (Norbert Zeh).
- TopMem and TopProc now use the
-L
and-H
options correctly for memory template fields. - MBox skips non-existent mbox paths instead of hanging.