lemonbar - Featherweight lemon-scented bar
lemonbar [-h | -g
widthxheight+x+y | -b | -d
| -f font | -p | -n name | -u pixel | -B color |
-F color | -U color]
lemonbar (formerly known as bar) is a lightweight
bar entirely based on XCB. Provides full UTF-8 support, basic formatting,
RandR and Xinerama support and EWMH compliance without wasting your precious
memory.
- -h
- Display the help and exit.
- -g
widthxheight+x+y
- Set the window geometry. If a parameter is omitted it's filled with the
default value. If the y parameter is specified along with the
-b switch then the position is relative to the bottom of the
screen.
- -b
- Dock the bar at the bottom of the screen.
- -d
- Force docking without asking the window manager. This is needed if the
window manager isn't EWMH compliant.
- -f font
- Define the font to load into one of the five slots (the number of slots is
hardcoded and can be tweaked by changing the MAX_FONT_COUNT parameter in
the source code).
- -a number
- Set number of clickable areas (default is 10)
- -p
- Make the bar permanent, don't exit after the standard input is
closed.
- -n name
- Set the WM_NAME atom value for the bar.
- -u pixel
- Sets the underline width in pixels. The default is 1.
- -B color
- Set the background color of the bar. color must be specified in the
hex format (#aarrggbb, #rrggbb, #rgb). If no compositor such as compton or
xcompmgr is running the alpha channel is silently ignored.
- -F color
- Set the foreground color of the bar. Accepts the same color formats as
-B.
- -U color
- Set the underline color of the bar. Accepts the same color formats as
-B.
lemonbar provides a screenrc-inspired formatting syntax to allow
full customization at runtime. Every formatting block is opened with
"%{" and closed by
"}" and accepts the following commands,
the parser tries its best to handle malformed input. Use
"%%" to get a literal percent sign
("%").
- R
- Swap the current background and foreground colors.
- l
- Aligns the following text to the left side of the screen.
- c
- Aligns the following text to the center of the screen.
- r
- Aligns the following text to the right side of the screen.
- Owidth
- Offset the current position by width pixels in the alignment
direction.
- Bcolor
- Set the text background color. The parameter color can be -
or a color in one of the formats mentioned before. The special value
- resets the color to the default one.
- Fcolor
- Set the text foreground color. The parameter color can be -
or a color in one of the formats mentioned before. The special value
- resets the color to the default one.
- Tindex
- Set the font used to draw the following text. The parameter index
can either be - or the 1-based index of the slot which contains the
desired font. If the parameter is - lemonbar resets to the normal
behavior (matching the first font that can be used for the character). If
the selected font can't be used to draw a character, lemonbar will fall
back to normal behavior for that character
- Ucolor
- Set the text underline color. The parameter color can be -
or a color in one of the formats mentioned before. The special value
- resets the color to the default one.
- Abutton:command:
- Create a clickable area starting from the current position, when the area
is clicked command is printed on stdout. The area is closed when a
A token, not followed by : is encountered.
Eg. %{A:reboot:} Click here to reboot %{A}
The button field is optional, it defaults to the left
button, and it's a number ranging from 1 to 5 which maps to the left,
middle, right, scroll up and scroll down movements. Your mileage may
vary.
Nested clickable areas can trigger different commands.
Eg. %{A:reboot:}%{A3:halt:} Left click to reboot, right
click to shutdown %{A}%{A}
- Sdir
- Change the monitor the bar is rendered to. dir can be either
- +/-
- Next/previous monitor.
- f/l
- First/last monitor.
- 0-9
- Nth monitor.
Attribute modifiers
- +attribute
- Set the attribute attribute for the following text.
- -attribute
- Unset the attribute attribute for the following text.
- !attribute
- Toggle the attribute attribute for the following text.
Where attribute is one of the following
- o
- Draw a line over the text.
- u
- Draw a line under the text.
Clicking on an area makes lemonbar output the command to stdout,
followed by a newline, allowing the user to pipe it into a script, execute
it or simply ignore it. Simple and powerful, that's it.
git repository <https://github.com/LemonBoy/bar>
2012-2017 (C) The Lemon Man
Xinerama support was kindly contributed by Stebalien
RandR support was kindly contributed by jvvv
Clickable areas support was heavily based off u-ra
contribution