Nimbin[12]?Sway / SwBr / config.example

SwBr git · main

SwBr - status bar for sway

sway wayland c bar · first commit 2026-08-27 · last commit 2026-10-05 (4 days ago) · synced 3 days ago · upstream: github.com/nimbin2/SwBr

C 95.9% Markdown 3.7%
git clone https://git.christianimmanuel.de/sway/SwBr.gitwget https://git.christianimmanuel.de/sway/SwBr/archive/SwBr.tar.gz
config.example 4.3 KB · 100 lines raw
# swbr config  —  ~/.config/swbr/config
#
# The short one: each thing swbr can do, once, with nothing clever.
# config.advanced.example is the full version.
#
# key=value, '#' after a space starts a comment. Every key also works on the
# command line: swbr position=bottom height=32

# --- the bar itself ---------------------------------------------------------
position=top       # top | bottom
height=0           # 0 = from the text size
exclusive=0        # 0 = float over the windows, 1 = reserve the space
min_width=0        # 0 = the full width of the output
radius=10
# outputs=         # empty = every monitor

# --- colours ----------------------------------------------------------------
# Or set them once for swov and swas too, in ~/.config/sw/config
bg=0d1117e6
text=e1eeff
dim=5a6b7a
accent=89afc4
hl=cb9b00
urgent=e0533c

refresh=0.25       # how often the bar may redraw, in seconds. Cell updates
                   # inside one window are merged into a single frame; 1 is
                   # fine for a bar of clocks and gauges. Animations and
                   # hovers ignore it

# --- workspaces -------------------------------------------------------------
ws_names=1         # 1 = names, 0 = numbers only
ws_other=1         # also the workspaces of your other monitors, as short pills
ws_cpu=1           # a column of dots: how busy each workspace is, in cores
ws_border=0        # 1 = a thin outline around every button. 0 = none, just
                   # the gap between them
ws_slots=10        # always show the numbers 1..10, open or not; a free one
                   # is faint and clicking it opens that workspace. 0 = only
                   # the ones that are open. The folded strip follows this
ws_empty_alpha=35  # how visible a free number is, percent

# --- folding ----------------------------------------------------------------
hide_key=space     # hover the bar and press this to fold it to a thin strip
collapsed_px=5
slim_align=1       # folded, each mark keeps its cell's place and width
slim_ws_slots=10   # only with slim_align=0: slots in the packed strip
slim_bar_segs=10   # folded gauges are split into ten blocks, so four lit
                   # blocks reads as forty percent. 0 = one solid bar
slim_bar_gap=2     # px between those blocks
slim_bar_pad=3     # px either side of a folded gauge, so it does not sit
                   # flush against its neighbours
slim_ws_w=0        # folded slot width in px. 0 = each slot copies its own
                   # button in the open bar, so nothing moves or resizes

# --- a plain cell: a command, every few seconds ------------------------------
cell=clock
clock.cmd=date '+%H:%M  %a %d.%m'
clock.interval=5
clock.slim=clock       # folded: twelve bars, lit up to the hour
clock.hover_cal=1      # click it for this month, with today marked
clock.hover_click=1

# --- a cell swbr fills in itself --------------------------------------------
cell=battery
battery.source=battery # 83+ filling, 83- draining; reads /sys, spawns nothing
battery.interval=10
battery.slim=bar
battery.warn=<30:cecb00
battery.crit=<12:ff2222
battery.hover=%w  %h %e    # click it: 21.5W  1.7h left
battery.hover_click=1

# it can shout, too. Each level fires once on the way down and rearms when
# the charge comes back or the cable goes in
battery.alert=30,20,10,5,1
battery.alert_msg=BATTERY %c%%
battery.alert_tone=250     # Hz, 0 for silence. The last levels beep longer
battery.alert_gain=35      # loudness of the tone, percent of full scale
battery.alert_play=aplay -q -f cd -
# battery.alert_vol_min=50 # if the mixer is lower, raise it for the tone only
#                          # and put it back. 0 = leave the mixer alone
# battery.alert_cmd=[ %c -le 1 ] && poweroff   # only runs AT a level, so 1
                           # has to be in the list. Needs root for poweroff

# --- music, if cmus is running ----------------------------------------------
cell=music
music.source=cmus      # runs cmus-remote itself; playing vs paused is a fact
music.slim=media
music.min_w=180

# --- a program and the workspaces it is on ----------------------------------
cell=mpv
mpv.source=window
mpv.program=mpv        # prints  mpv [3|5]
mpv.slim=presence

# --- where everything goes --------------------------------------------------
# || splits left / center / right, ',' separates, (a,b) glues two together.
# Keep this last.
bar={workspaces||music,mpv,clock,battery}