Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
sway-bar(5)		      File Formats Manual		   sway-bar(5)

NAME
       sway-bar	- bar configuration file and commands

DESCRIPTION
       Sway allows configuring swaybar in the sway configuration file.

COMMANDS
       The following commands may only be used in the configuration file.

       id <bar_id>
	   Sets	the ID of the bar.

       swaybar_command <command>
	   Executes custom bar command.	Default	is swaybar.

       The  following commands may be used either in the configuration file or
       at runtime.

       bindcode	[--release] <event-code> <command>
	   Executes command when the mouse button has been pressed (or if  re-
	   leased  is  given,  when the	button has been	released). The buttons
	   can be given	as an event code, which	can be obtaining from libinput
	   debug-events. To disable the	default	behavior for a button, use the
	   command nop.

       bindsym [--release] button[1-9]|<event-name> <command>
	   Executes command when the mouse button has been pressed (or if  re-
	   leased  is  given,  when the	button has been	released). The buttons
	   can be given	as a x11 button	number or an event name, which can  be
	   obtained  from libinput debug-events. To disable the	default	behav-
	   ior for a button, use the command nop.

       binding_mode_indicator yes|no
	   Enable or disable binding mode indicator. Default is	yes.

       font <font>
	   Specifies the font to be used in the	bar. font should be  specified
	   as a	pango font description.	For more information on	pango font de-
	   scriptions,	see  https://docs.gtk.org/Pango/type_func.FontDescrip-
	   tion.from_string.html#description

       gaps <all> | <horizontal> <vertical> | <top> <right> <bottom> <left>
	   Sets	the gaps from the edge of the screen for the bar. Gaps can ei-
	   ther	be set all at once, per	direction, or per side.	Note that only
	   sides that touch an edge of the screen can have gaps. For the  side
	   that	 does not touch	an edge	of the screen, per-side	outer gaps for
	   workspaces may be of	use.

       height <height>
	   Sets	the height of the bar. Default height (0) will match the  font
	   size.

       hidden_state hide|show [<bar-id>]
	   Specifies  the  behaviour  of the bar when it is in hide mode. When
	   the hidden state is hide, then it is	normally hidden, and only  un-
	   hidden  by  pressing	 the modifier key or in	case of	urgency	hints.
	   When	the hidden state is show,  then	 it  is	 permanently  visible,
	   drawn on top	of the currently visible workspace. Default is hide.

	   For compatibility with i3, bar hidden_state hide|show [<bar-id>] is
	   supported  along  with  the	sway  only  bar	 <bar-id> hidden_state
	   hide|show syntax. When using	the i3 syntax, if bar-id  is  omitted,
	   the	hidden_state  will  be changed for all bars. Attempting	to use
	   bar <bar-id1> hidden_state hide|show	<bar-id2> will	result	in  an
	   error due to	conflicting bar	ids.

       mode dock|hide|invisible|overlay	[<bar-id>]
	   Specifies  the  visibility  of  the bar. In dock mode, it is	perma-
	   nently visible at one edge of the screen. In	hide mode, it is  hid-
	   den	unless	the modifier key is pressed, though this behaviour de-
	   pends on the	hidden state. In invisible  mode,  it  is  permanently
	   hidden.  In overlay mode, it	is permanently visible on top of other
	   windows. (In	overlay	mode the bar is	transparent to input  events.)
	   Default is dock.

	   For	compatibility  with  i3,  bar mode <mode> [<bar-id>] syntax is
	   supported along with	the sway only bar <bar-id> mode	<mode> syntax.
	   When	using the i3 syntax, if	bar-id is omitted, the	mode  will  be
	   changed  for	 all bars. Attempting to use bar <bar-id1> mode	<mode>
	   <bar-id2> will result in an error due to conflicting	bar ids.

       modifier	<Modifier>|none
	   Specifies the modifier key that shows  a  hidden  bar.  Default  is
	   Mod4.

       output <output>|*
	   Restrict  the  bar  to  a certain output, can be specified multiple
	   times. If the output	command	is omitted, the	bar will be  displayed
	   on all outputs. * can be given at any point to reset	it back	to all
	   outputs.

       pango_markup enabled|disabled
	   Enables  or disables	pango markup for status	lines. This has	no ef-
	   fect	on status lines	using the i3bar	JSON protocol.

       position	top|bottom
	   Sets	position of the	bar. Default is	bottom.

       separator_symbol	<symbol>
	   Specifies the separator symbol to separate blocks on	the bar.

       status_command <status command>
	   Executes the	bar status command with	 sh  -c.  Each	line  of  text
	   printed to stdout from this command will be displayed in the	status
	   area	of the bar. You	may also use swaybar's JSON status line	proto-
	   col.	See swaybar-protocol(7)	for more information on	the protocol

	   If  running	this command via IPC, you can disable a	running	status
	   command by setting the command to a single dash: swaybar bar	 bar-0
	   status_command -

       status_edge_padding <padding>
	   Sets	 the padding that is used when the status line is at the right
	   edge	of the bar. This value will be multiplied by the output	scale.
	   The default is 3.

       status_padding <padding>
	   Sets	the vertical padding that is used for the status line. The de-
	   fault is 1. If padding is 0,	blocks will be able  to	 take  up  the
	   full	height of the bar. This	value will be multiplied by the	output
	   scale.

       strip_workspace_name yes|no
	   If  set to yes, then	workspace names	will be	omitted	from the work-
	   space button	and only the custom number will	be shown.  Default  is
	   no.

       strip_workspace_numbers yes|no
	   If  set  to	yes,  then  workspace numbers will be omitted from the
	   workspace button and	only the custom	name will be shown. Default is
	   no.

       unbindcode [--release] <event-code>
	   Removes the binding with the	given <event-code>.

       unbindsym [--release] button[1-9]|<event-name>
	   Removes the binding with the	given <button> or <event-name>.

       wrap_scroll yes|no
	   Enables or disables wrapping	when scrolling through workspaces with
	   the scroll wheel. Default is	no.

       workspace_buttons yes|no
	   Enables or disables workspace buttons on the	bar. Default is	yes.

       workspace_min_width <px>	[px]
	   Specifies the minimum width for the workspace buttons on  the  bar.
	   Default is 0.

	   This	setting	also applies to	the current binding mode indicator.

       The following commands may only be used at runtime.

       mode toggle [<bar_id>]
	   Toggles  the	 current mode between hide and dock. Any other mode is
	   treated as hide.

   TRAY
       Swaybar provides	a system tray where third-party	applications may place
       icons. The following commands configure the tray.

       tray_bindcode	 <event-code>	   ContextMenu|Activate|SecondaryActi-
       vate|ScrollDown|ScrollLeft|ScrollRight|ScrollUp|nop
	   Executes  the  action  when	the mouse button has been pressed. The
	   buttons can be given	as an event code, which	can be	obtained  from
	   libinput  debug-events.  To disable the default behavior for	a but-
	   ton,	use the	command	nop.

       tray_bindsym button[1-9]|<event-name> ContextMenu|Activate|SecondaryAc-
       tivate|ScrollDown|ScrollLeft|ScrollRight|ScrollUp|nop
	   Executes the	action when the	mouse button  has  been	 pressed.  The
	   buttons can be given	as a x11 button	number or an event name, which
	   can	be obtained from libinput debug-events.	Use the	command	nop to
	   disable the default action (Activate	for button1,  ContextMenu  for
	   button2 and SecondaryActivate for button3).

       tray_padding <px> [px]
	   Sets	 the  pixel padding of the system tray.	This padding will sur-
	   round the tray on all sides and  between  each  item.  The  default
	   value for px	is 2.

       tray_output none|<output>|*
	   Restrict  the  tray	to a certain output, can be specified multiple
	   times. If omitted, the tray will be displayed on all	 outputs.  Un-
	   like	 i3bar,	 swaybar can show icons	on any number of bars and out-
	   puts	without	races. * can be	given at any point to reset it to dis-
	   play	on all outputs.

       icon_theme <name>
	   Sets	the icon theme that sway will look for item icons in. This op-
	   tion	has no default value, because sway will	always default to  the
	   fallback theme, hicolor.

   COLORS
       Colors  are  defined  within a colors { } block inside a	bar { }	block.
       Colors must be defined in hex: #RRGGBB or #RRGGBBAA.

       background <color>
	   Background color of the bar.

       statusline <color>
	   Text	color to be used for the statusline.

       separator <color>
	   Text	color to be used for the separator.

       focused_background <color>
	   Background color of the bar on the currently	focused	 monitor  out-
	   put.	If not used, the color will be taken from background.

       focused_statusline <color>
	   Text	 color	to be used for the statusline on the currently focused
	   monitor output. If not used,	the color  will	 be  taken  from  sta-
	   tusline.

       focused_separator <color>
	   Text	 color	to  be used for	the separator on the currently focused
	   monitor output. If not used,	the color will be taken	 from  separa-
	   tor.

       focused_workspace <border> <background> <text>
	   Border,  background	and text color for a workspace button when the
	   workspace has focus.

       active_workspace	<border> <background> <text>
	   Border, background and text color for a workspace button  when  the
	   workspace  is  active (visible) on some output, but the focus is on
	   another one.	You can	only tell this apart from  the	focused	 work-
	   space when you are using multiple monitors.

       inactive_workspace <border> <background>	<text>
	   Border,  background	and text color for a workspace button when the
	   workspace does not have focus and is	not active  (visible)  on  any
	   output. This	will be	the case for most workspaces.

       urgent_workspace	<border> <background> <text>
	   Border,  background	and text color for a workspace button when the
	   workspace contains a	window with the	urgency	hint set.

       binding_mode <border> <background> <text>
	   Border, background and text color for the binding  mode  indicator.
	   If not used,	the colors will	be taken from urgent_workspace.

SEE ALSO
       sway(5) swaybar-protocol(7)

				  2025-11-03			   sway-bar(5)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=sway-bar&sektion=5&manpath=FreeBSD+Ports+15.0>

home | help