mirror of
				https://github.com/rad4day/Waybar.git
				synced 2025-11-04 09:42:42 +01:00 
			
		
		
		
	Merge branch 'master' into tray-fixes
This commit is contained in:
		@@ -1,3 +1,3 @@
 | 
			
		||||
FROM alpine:latest
 | 
			
		||||
 | 
			
		||||
RUN apk add --no-cache git meson alpine-sdk libinput-dev wayland-dev wayland-protocols mesa-dev libxkbcommon-dev eudev-dev pixman-dev gtkmm3-dev jsoncpp-dev libnl3-dev pulseaudio-dev libmpdclient-dev
 | 
			
		||||
RUN apk add --no-cache git meson alpine-sdk libinput-dev wayland-dev wayland-protocols mesa-dev libxkbcommon-dev eudev-dev pixman-dev gtkmm3-dev jsoncpp-dev libnl3-dev pulseaudio-dev libmpdclient-dev scdoc
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
FROM archlinux/base:latest
 | 
			
		||||
 | 
			
		||||
RUN pacman -Syu --noconfirm && \
 | 
			
		||||
    pacman -S git meson base-devel libinput wayland wayland-protocols pixman libxkbcommon mesa gtkmm3 jsoncpp --noconfirm
 | 
			
		||||
    pacman -S git meson base-devel libinput wayland wayland-protocols pixman libxkbcommon mesa gtkmm3 jsoncpp scdoc --noconfirm
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
FROM debian:sid
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && \
 | 
			
		||||
    apt-get install -y build-essential meson ninja-build git pkg-config libinput10 libinput-dev wayland-protocols libwayland-client0 libwayland-cursor0 libwayland-dev libegl1-mesa-dev libgles2-mesa-dev libgbm-dev libxkbcommon-dev libudev-dev libpixman-1-dev libgtkmm-3.0-dev libjsoncpp-dev && \
 | 
			
		||||
    apt-get clean
 | 
			
		||||
    apt-get install -y build-essential meson ninja-build git pkg-config libinput10 libinput-dev wayland-protocols libwayland-client0 libwayland-cursor0 libwayland-dev libegl1-mesa-dev libgles2-mesa-dev libgbm-dev libxkbcommon-dev libudev-dev libpixman-1-dev libgtkmm-3.0-dev libjsoncpp-dev scdoc && \
 | 
			
		||||
    apt-get clean
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
FROM fedora:30
 | 
			
		||||
 | 
			
		||||
RUN dnf install sway meson git libinput-devel wayland-devel wayland-protocols-devel egl-wayland-devel mesa-libEGL-devel mesa-libGLES-devel mesa-libgbm-devel libxkbcommon-devel libudev-devel pixman-devel gtkmm30-devel jsoncpp-devel -y && \
 | 
			
		||||
RUN dnf install sway meson git libinput-devel wayland-devel wayland-protocols-devel egl-wayland-devel mesa-libEGL-devel mesa-libGLES-devel mesa-libgbm-devel libxkbcommon-devel libudev-devel pixman-devel gtkmm30-devel jsoncpp-devel scdoc -y && \
 | 
			
		||||
    dnf group install "C Development Tools and Libraries" -y && \
 | 
			
		||||
    dnf clean all -y
 | 
			
		||||
 
 | 
			
		||||
@@ -2,4 +2,4 @@ FROM opensuse/tumbleweed:latest
 | 
			
		||||
 | 
			
		||||
RUN zypper -n up && \
 | 
			
		||||
    zypper -n install -t pattern devel_C_C++ && \
 | 
			
		||||
    zypper -n install git meson clang libinput10 libinput-devel libwayland-client0 libwayland-cursor0 wayland-protocols-devel wayland-devel Mesa-libEGL-devel Mesa-libGLESv2-devel libgbm-devel libxkbcommon-devel libudev-devel libpixman-1-0-devel gtkmm3-devel jsoncpp-devel
 | 
			
		||||
    zypper -n install git meson clang libinput10 libinput-devel libwayland-client0 libwayland-cursor0 wayland-protocols-devel wayland-devel Mesa-libEGL-devel Mesa-libGLESv2-devel libgbm-devel libxkbcommon-devel libudev-devel libpixman-1-0-devel gtkmm3-devel jsoncpp-devel scdoc
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										67
									
								
								man/waybar-backlight.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								man/waybar-backlight.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,67 @@
 | 
			
		||||
waybar-backlight(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - backlight module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *backlight* module displays the current backlight level.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
*interval* ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	default: 2 ++
 | 
			
		||||
	The interval in which information gets polled.
 | 
			
		||||
 | 
			
		||||
*format* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: {percent}% ++
 | 
			
		||||
	The format, how information should be displayed. On {} data gets inserted.
 | 
			
		||||
 | 
			
		||||
*max-length* ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in characters the module should display.
 | 
			
		||||
 | 
			
		||||
*rotate* ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*states* ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	A number of backlight states which get activated on certain brightness levels.
 | 
			
		||||
 | 
			
		||||
*on-click* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when the module is clicked.
 | 
			
		||||
 | 
			
		||||
*on-click-right* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when the module is right clicked.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when performing a scroll up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down* ++
 | 
			
		||||
	typeof: string
 | 
			
		||||
	Command to execute when performing a scroll down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold* ++
 | 
			
		||||
	typeof: double
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
# EXAMPLE:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"backlight": {
 | 
			
		||||
    "device": "intel_backlight",
 | 
			
		||||
    "format": "{percent}% {icon}",
 | 
			
		||||
    "format-icons": ["", ""]
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#backlight*
 | 
			
		||||
							
								
								
									
										123
									
								
								man/waybar-battery.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										123
									
								
								man/waybar-battery.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,123 @@
 | 
			
		||||
waybar-battery(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - battery module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *battery* module displays the current capacity and state (eg. charging) of your battery.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
*bat* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	The battery to monitor, as in /sys/class/power_supply/ instead of auto detect.
 | 
			
		||||
 | 
			
		||||
*adapter* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	The adapter to monitor, as in /sys/class/power_supply/ instead of auto detect.
 | 
			
		||||
 | 
			
		||||
*interval* ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	default: 60 ++
 | 
			
		||||
	The interval in which the information gets polled.
 | 
			
		||||
 | 
			
		||||
*states* ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	A number of battery states which get activated on certain capacity levels. See *waybar-states(5)*.
 | 
			
		||||
 | 
			
		||||
*format* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: {capacity}% ++
 | 
			
		||||
	The format, how the time should be displayed.
 | 
			
		||||
 | 
			
		||||
*format-icons*
 | 
			
		||||
	typeof: array/object
 | 
			
		||||
	Based on the current capacity, the corresponding icon gets selected. ++
 | 
			
		||||
	The order is *low* to *high*. Or by the state if it is an object.
 | 
			
		||||
 | 
			
		||||
*max-length* ++
 | 
			
		||||
	typeof: integer++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*rotate* ++
 | 
			
		||||
	typeof: integer++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*on-click* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold* ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip* ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{capacity}*: Capacity in percentage
 | 
			
		||||
 | 
			
		||||
*{icon}*: Icon, as defined in *format-icons*.
 | 
			
		||||
 | 
			
		||||
*{time}*: Estimate of time until full or empty. Note that this is based on the power draw at the last refresh time, not an average.
 | 
			
		||||
 | 
			
		||||
# CUSTOM FORMATS
 | 
			
		||||
 | 
			
		||||
The *battery* module allows to define custom formats based on up to two factors. The best fitting format will be selected.
 | 
			
		||||
 | 
			
		||||
*format-<state>*: With *states*, a custom format can be set depending on the capacity of your battery.
 | 
			
		||||
 | 
			
		||||
*format-<status>*: With the status, a custom format can be set depending on the status in /sys/class/power_supply/<bat>/status (in lowercase).
 | 
			
		||||
 | 
			
		||||
*format-<status>-<state>*: You can also set a custom format depending on both values.
 | 
			
		||||
 | 
			
		||||
# STATES
 | 
			
		||||
 | 
			
		||||
- Every entry (*state*) consists of a *<name>* (typeof: *string*) and a *<value>* (typeof: *integer*).
 | 
			
		||||
	- The state can be addressed as a CSS class in the *style.css*. The name of the CSS class is the *<name>* of the state.	Each class gets activated when the current capacity is equal or below the configured *<value>*.
 | 
			
		||||
	- Also each state can have its own *format*. Those con be configured via *format-<name>*. Or if you want to differentiate a bit more even as *format-<status>-<state>*. For more information see *custom-formats*.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"battery": {
 | 
			
		||||
    "bat": "BAT2",
 | 
			
		||||
    "interval": 60,
 | 
			
		||||
    "states": {
 | 
			
		||||
        "warning": 30,
 | 
			
		||||
        "critical": 15
 | 
			
		||||
    },
 | 
			
		||||
    "format": "{capacity}% {icon}",
 | 
			
		||||
    "format-icons": ["", "", "", "", ""],
 | 
			
		||||
    "max-length": 25
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#battery*
 | 
			
		||||
- *#battery.<status>*
 | 
			
		||||
	- *<status>* is the value of /sys/class/power_supply/<bat>/status in lowercase.
 | 
			
		||||
- *#battery.<state>*
 | 
			
		||||
	- *<state>* can be defined in the *config*. For more information see *states*.
 | 
			
		||||
- *#battery.<status>.<state>*
 | 
			
		||||
	- Combination of both *<status>* and *<state>*.
 | 
			
		||||
							
								
								
									
										65
									
								
								man/waybar-clock.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								man/waybar-clock.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,65 @@
 | 
			
		||||
waybar-clock(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - clock module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *clock* module displays the current date and time.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
*interval*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	default: 60 ++
 | 
			
		||||
	The interval in which the information gets polled.
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: {:%H:%M} ++
 | 
			
		||||
	The format, how the date and time should be displayed.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
View all valid format options in *strftime(3)*.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"clock": {
 | 
			
		||||
    "interval": 60,
 | 
			
		||||
    "format": "{:%H:%M}",
 | 
			
		||||
    "max-length": 25
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#clock*
 | 
			
		||||
							
								
								
									
										78
									
								
								man/waybar-cpu.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								man/waybar-cpu.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,78 @@
 | 
			
		||||
waybar-cpu(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - cpu module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *cpu* module displays the current cpu utilization.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
*interval*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	default: 10 ++
 | 
			
		||||
	The interval in which the information gets polled.
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string  ++
 | 
			
		||||
	default: {usage}% ++
 | 
			
		||||
	The format, how information should be displayed. On {} data gets inserted.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*states*: ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	A number of cpu usage states which get activated on certain usage levels. See *waybar-states(5)*.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string  ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{load}*: Current cpu load.
 | 
			
		||||
 | 
			
		||||
*{usage}*: Current cpu usage.
 | 
			
		||||
 | 
			
		||||
# EXAMPLE
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"cpu": {
 | 
			
		||||
	"interval": 10,
 | 
			
		||||
	"format": "{}% ",
 | 
			
		||||
	"max-length": 10
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#cpu*
 | 
			
		||||
							
								
								
									
										190
									
								
								man/waybar-custom.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										190
									
								
								man/waybar-custom.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,190 @@
 | 
			
		||||
waybar-custom(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - custom module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *custom* module displays either the output of a script or static text.
 | 
			
		||||
To display static text, specify only the *format* field.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *custom/<name>*
 | 
			
		||||
 | 
			
		||||
*exec*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	The path to the script, which should be executed.
 | 
			
		||||
 | 
			
		||||
*exec-if*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	The path to a script, which determines if the script in *exec* should be executed.
 | 
			
		||||
	*exec* will be executed if the exit code of *exec-if* equals 0.
 | 
			
		||||
 | 
			
		||||
*return-type*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	See *return-type*
 | 
			
		||||
 | 
			
		||||
*interval*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The interval (in seconds) in which the information gets polled.
 | 
			
		||||
	Use *once* if you want to execute the module only on startup.
 | 
			
		||||
	You can update it manually with a signal. If no *interval* is defined,
 | 
			
		||||
	it is assumed that the out script loops it self.
 | 
			
		||||
 | 
			
		||||
*signal*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The signal number used to update the module.
 | 
			
		||||
	The number is valid between 1 and N, where *SIGRTMIN+N* = *SIGRTMAX*.
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: {} ++
 | 
			
		||||
	The format, how information should be displayed. On {} data gets inserted.
 | 
			
		||||
 | 
			
		||||
*format-icons*: ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	Based on the set percentage, the corresponding icon gets selected. The order is *low* to *high*.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
*escape*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: false ++
 | 
			
		||||
	Option to enable escaping of script output.
 | 
			
		||||
 | 
			
		||||
# RETURN-TYPE
 | 
			
		||||
 | 
			
		||||
When *return-type* is set to *json*, Waybar expects the *exec*-script  to output its data in JSON format.
 | 
			
		||||
This should look like this:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
{"text": "$text", "tooltip": "$tooltip", "class": "$class", "percentage": $percentage }
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
The *class* parameter also accepts an array of strings.
 | 
			
		||||
 | 
			
		||||
If nothing or an invalid option is specified, Waybar expects i3blocks style output. Values are *newline* separated.
 | 
			
		||||
This should look like this:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
$text\\n$tooltip\\n$class*
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
*class* is a CSS class, to apply different styles in *style.css*
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{}*: Output of the script.
 | 
			
		||||
 | 
			
		||||
*{percentage}* Percentage which can be set via a json return-type.
 | 
			
		||||
 | 
			
		||||
*{icon}*: An icon from 'format-icons' according to percentage.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
## Spotify:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"custom/spotify": {
 | 
			
		||||
	"format": " {}",
 | 
			
		||||
	"max-length": 40,
 | 
			
		||||
	"interval": 30, // Remove this if your script is endless and write in loop
 | 
			
		||||
	"exec": "$HOME/.config/waybar/mediaplayer.sh 2> /dev/null", // Script in resources folder
 | 
			
		||||
	"exec-if": "pgrep spotify"
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## mpd:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"custom/mpd": {
 | 
			
		||||
	"format": "♪ {}",
 | 
			
		||||
	//"max-length": 15,
 | 
			
		||||
	"interval": 10,
 | 
			
		||||
	"exec": "mpc current",
 | 
			
		||||
	"exec-if": "pgrep mpd",
 | 
			
		||||
	"on-click": "mpc toggle",
 | 
			
		||||
	"on-click-right": "sonata"
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## cmus:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"custom/cmus": {
 | 
			
		||||
	"format": "♪ {}",
 | 
			
		||||
	//"max-length": 15,
 | 
			
		||||
	"interval": 10,
 | 
			
		||||
	"exec": "cmus-remote -C \"format_print '%a - %t'\"", // artist - title
 | 
			
		||||
	"exec-if": "pgrep cmus",
 | 
			
		||||
	"on-click": "cmus-remote -u",                        //toggle pause
 | 
			
		||||
	"escape": true                                       //handle markup entities
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Pacman
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
"custom/pacman": {
 | 
			
		||||
	"format": "{}  ",
 | 
			
		||||
	"interval": "once",
 | 
			
		||||
	"exec": "pacman_packages",
 | 
			
		||||
	"on-click": "update-system",
 | 
			
		||||
	"signal": 8
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Alternate Pacman
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"custom/pacman": {
 | 
			
		||||
	"format": "{}  ",
 | 
			
		||||
	"interval": 3600,                     // every hour
 | 
			
		||||
	"exec": "checkupdates | wc -l",       // # of updates
 | 
			
		||||
	"exec-if": "exit 0",                  // always run; consider advanced run conditions
 | 
			
		||||
	"on-click": "termite -e 'sudo pacman -Syu'; pkill -SIGRTMIN+8 waybar", // update system
 | 
			
		||||
	"signal": 8
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
You can use the signal and update the number of available packages with *pkill -RTMIN+8 waybar*.
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#custom-<name>*
 | 
			
		||||
- *#custom-<name>.<class>*
 | 
			
		||||
- *<class>* can be set by the script. For more information see *return-type*
 | 
			
		||||
							
								
								
									
										71
									
								
								man/waybar-idle-inhibitor.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								man/waybar-idle-inhibitor.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,71 @@
 | 
			
		||||
waybar-idle-inhibitor(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - idle_inhibitor module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *idle_inhibitor* module can inhibiting the idle behavior such as screen blanking, locking, and
 | 
			
		||||
screensaving, also known as "presentation mode".
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	The format, how the state should be displayed.
 | 
			
		||||
 | 
			
		||||
*format-icons*: ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	Based on the current state, the corresponding icon gets selected.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module. A click also toggles the state
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{status}*: status (*activated* or *deactivated*)
 | 
			
		||||
 | 
			
		||||
*{icon}*: Icon, as defined in *format-icons*
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"idle_inhibitor": {
 | 
			
		||||
	"format": "{icon}",
 | 
			
		||||
	"format-icons": {
 | 
			
		||||
	    "activated": "",
 | 
			
		||||
	    "deactivated": ""
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
							
								
								
									
										93
									
								
								man/waybar-memory.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								man/waybar-memory.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,93 @@
 | 
			
		||||
waybar-memory(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - memory module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *memory* module displays the current date and time.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *memory*
 | 
			
		||||
 | 
			
		||||
*interval*: ++
 | 
			
		||||
	typeof: integer++
 | 
			
		||||
	default: 30 ++
 | 
			
		||||
	The interval in which the information gets polled.
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: {percentage}% ++
 | 
			
		||||
	The format, how information should be displayed.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*states*: ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	A number of memory utilization states which get activated on certain percentage thresholds. See *waybar-states(5)*.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{percentage}*: Percentage of memory in use.
 | 
			
		||||
 | 
			
		||||
*{total}*: Amount of total memory available in GiB.
 | 
			
		||||
 | 
			
		||||
*{used}*: Amount of used memory in GiB.
 | 
			
		||||
 | 
			
		||||
*{avail}*: Amount of available memory in GiB.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"memory": {
 | 
			
		||||
	"interval": 30,
 | 
			
		||||
	"format": "{}% ",
 | 
			
		||||
	"max-length": 10
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## FORMATTED MEMORY VALUES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"memory": {
 | 
			
		||||
	"interval": 30,
 | 
			
		||||
	"format": "{used:0.1f}G/{total:0.1f}G "
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#memory*
 | 
			
		||||
							
								
								
									
										200
									
								
								man/waybar-mpd.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										200
									
								
								man/waybar-mpd.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,200 @@
 | 
			
		||||
waybar-mpd(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - mpd module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *mpd* module displays information about a running "Music Player Daemon" instance.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *mpd*
 | 
			
		||||
 | 
			
		||||
*server*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    The network address or Unix socket path of the MPD server. If empty, connect to the default host.
 | 
			
		||||
 | 
			
		||||
*port*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    The port MPD listens to. If empty, use the default port.
 | 
			
		||||
 | 
			
		||||
*interval*: ++
 | 
			
		||||
    typeof: integer++
 | 
			
		||||
    default: 5 ++
 | 
			
		||||
    The interval in which the connection to the MPD server is retried
 | 
			
		||||
 | 
			
		||||
*timeout*: ++
 | 
			
		||||
    typeof: integer++
 | 
			
		||||
    default: 30 ++
 | 
			
		||||
    The timeout for the connection. Change this if your MPD server has a low `connection_timeout` setting
 | 
			
		||||
 | 
			
		||||
*unknown-tag*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    default: "N/A" ++
 | 
			
		||||
    The text to display when a tag is not present in the current song, but used in `format`
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    default: "{album} - {artist} - {title}" ++
 | 
			
		||||
    Information displayed when a song is playing or paused
 | 
			
		||||
 | 
			
		||||
*format-stopped*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    default: "stopped" ++
 | 
			
		||||
    Information displayed when the player is stopped.
 | 
			
		||||
 | 
			
		||||
*format-disconnected*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    default: "disconnected" ++
 | 
			
		||||
    Information displayed when the MPD server can't be reached.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: true ++
 | 
			
		||||
    Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
*tooltip-format*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    default: "MPD (connected)" ++
 | 
			
		||||
    Tooltip information displayed when connected to MPD.
 | 
			
		||||
 | 
			
		||||
*tooltip-format-disconnected*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    default: "MPD (disconnected)" ++
 | 
			
		||||
    Tooltip information displayed when the MPD server can't be reached.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
    typeof: double ++
 | 
			
		||||
    Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*state-icons*: ++
 | 
			
		||||
    typeof: object ++
 | 
			
		||||
    default: {} ++
 | 
			
		||||
    Icon to show depending on the play/pause state of the player (*{ "playing": "...", "paused": "..." }*)
 | 
			
		||||
 | 
			
		||||
*consume-icons*: ++
 | 
			
		||||
    typeof: object ++
 | 
			
		||||
    default: {} ++
 | 
			
		||||
    Icon to show depending on the "consume" option (*{ "on": "...", "off": "..." }*)
 | 
			
		||||
 | 
			
		||||
*random-icons*: ++
 | 
			
		||||
    typeof: object ++
 | 
			
		||||
    default: {} ++
 | 
			
		||||
    Icon to show depending on the "random" option (*{ "on": "...", "off": "..." }*)
 | 
			
		||||
 | 
			
		||||
*repeat-icons*: ++
 | 
			
		||||
    typeof: object ++
 | 
			
		||||
    default: {} ++
 | 
			
		||||
    Icon to show depending on the "repeat" option (*{ "on": "...", "off": "..." }*)
 | 
			
		||||
 | 
			
		||||
*single-icons*: ++
 | 
			
		||||
    typeof: object ++
 | 
			
		||||
    default: {} ++
 | 
			
		||||
    Icon to show depending on the "single" option (*{ "on": "...", "off": "..." }*)
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
## WHEN PLAYING/PAUSED
 | 
			
		||||
 | 
			
		||||
*{artist}*: The artist of the current song
 | 
			
		||||
 | 
			
		||||
*{albumArtist}*: The artist of the current album
 | 
			
		||||
 | 
			
		||||
*{album}*: The album of the current song
 | 
			
		||||
 | 
			
		||||
*{title}*: The title of the current song
 | 
			
		||||
 | 
			
		||||
*{date}*: The date of the current song
 | 
			
		||||
 | 
			
		||||
*{elapsedTime}*: The current position of the current song. To format as a date/time (see example configuration)
 | 
			
		||||
 | 
			
		||||
*{totalTime}*: The length of the current song. To format as a date/time (see example configuration)
 | 
			
		||||
 | 
			
		||||
*{stateIcon}*: The icon corresponding the playing or paused status of the player (see *state-icons* option)
 | 
			
		||||
 | 
			
		||||
*{consumeIcon}*: The icon corresponding the "consume" option (see *consume-icons* option)
 | 
			
		||||
 | 
			
		||||
*{randomIcon}*: The icon corresponding the "random" option (see *random-icons* option)
 | 
			
		||||
 | 
			
		||||
*{repeatIcon}*: The icon corresponding the "repeat" option (see *repeat-icons* option)
 | 
			
		||||
 | 
			
		||||
*{singleIcon}*: The icon corresponding the "single" option (see *single-icons* option)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## WHEN STOPPED
 | 
			
		||||
 | 
			
		||||
*{consumeIcon}*: The icon corresponding the "consume" option (see *consume-icons* option)
 | 
			
		||||
 | 
			
		||||
*{randomIcon}*: The icon corresponding the "random" option (see *random-icons* option)
 | 
			
		||||
 | 
			
		||||
*{repeatIcon}*: The icon corresponding the "repeat" option (see *repeat-icons* option)
 | 
			
		||||
 | 
			
		||||
*{singleIcon}*: The icon corresponding the "single" option (see *single-icons* option)
 | 
			
		||||
 | 
			
		||||
## WHEN DISCONNECTED
 | 
			
		||||
 | 
			
		||||
Currently, no format replacements when disconnected.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"mpd": {
 | 
			
		||||
	"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ",
 | 
			
		||||
	"format-disconnected": "Disconnected ",
 | 
			
		||||
	"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
 | 
			
		||||
	"interval": 2,
 | 
			
		||||
	"consume-icons": {
 | 
			
		||||
		"on": " " // Icon shows only when "consume" is on
 | 
			
		||||
	},
 | 
			
		||||
	"random-icons": {
 | 
			
		||||
		"off": "<span color=\"#f53c3c\"></span> ", // Icon grayed out when "random" is off
 | 
			
		||||
		"on": " "
 | 
			
		||||
	},
 | 
			
		||||
	"repeat-icons": {
 | 
			
		||||
		"on": " "
 | 
			
		||||
	},
 | 
			
		||||
	"single-icons": {
 | 
			
		||||
		"on": "1 "
 | 
			
		||||
	},
 | 
			
		||||
	"state-icons": {
 | 
			
		||||
		"paused": "",
 | 
			
		||||
		"playing": ""
 | 
			
		||||
	},
 | 
			
		||||
	"tooltip-format": "MPD (connected)",
 | 
			
		||||
	"tooltip-format-disconnected": "MPD (disconnected)"
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#mpd*
 | 
			
		||||
- *#mpd.disconnected*
 | 
			
		||||
- *#mpd.stopped*
 | 
			
		||||
- *#mpd.playing*
 | 
			
		||||
- *#mpd.paused*
 | 
			
		||||
							
								
								
									
										143
									
								
								man/waybar-network.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										143
									
								
								man/waybar-network.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,143 @@
 | 
			
		||||
waybar-network(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - network module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *network* module displays information about the current network connections.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *network*
 | 
			
		||||
 | 
			
		||||
*interface*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Use the defined interface instead of auto detection. Accepts wildcard.
 | 
			
		||||
 | 
			
		||||
*interval*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	default: 60 ++
 | 
			
		||||
	The interval in which the network information gets polled (e.g. signal strength).
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string  ++
 | 
			
		||||
	default: *{ifname}* ++
 | 
			
		||||
	The format, how information should be displayed. This format is used when other formats aren't specified.
 | 
			
		||||
 | 
			
		||||
*format-ethernet*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when a ethernet interface is displayed.
 | 
			
		||||
 | 
			
		||||
*format-wifi*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when a wireless interface is displayed.
 | 
			
		||||
 | 
			
		||||
*format-linked*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when a linked interface with no ip address is displayed.
 | 
			
		||||
 | 
			
		||||
*format-disconnected*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when the displayed interface is disconnected.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: *true* ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
*tooltip-format*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	The format, how information should be displayed in the tooltip. This format is used when other formats aren't specified.
 | 
			
		||||
 | 
			
		||||
*tooltip-format-ethernet*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when a ethernet interface is displayed.
 | 
			
		||||
 | 
			
		||||
*tooltip-format-wifi*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when a wireless interface is displayed.
 | 
			
		||||
 | 
			
		||||
*tooltip-format-disconnected*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when the displayed interface is disconnected.
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{ifname}*: Name of the network interface.
 | 
			
		||||
 | 
			
		||||
*{ipaddr}*: The first IP of the interface.
 | 
			
		||||
 | 
			
		||||
*{netmask}*: The subnetmask corresponding to the IP.
 | 
			
		||||
 | 
			
		||||
*{cidr}*: The subnetmask corresponding to the IP in CIDR notation.
 | 
			
		||||
 | 
			
		||||
*{essid}*: Name (SSID) of the wireless network.
 | 
			
		||||
 | 
			
		||||
*{signalStrength}*: Signal strength of the wireless network.
 | 
			
		||||
 | 
			
		||||
*{signaldBm}*: Signal strength of the wireless network in dBm.
 | 
			
		||||
 | 
			
		||||
*{frequency}*: Frequency of the wireless network in MHz.
 | 
			
		||||
 | 
			
		||||
*{bandwidthUpBits}*: Instant up speed in bits/seconds.
 | 
			
		||||
 | 
			
		||||
*{bandwidthDownBits}*: Instant down speed in bits/seconds.
 | 
			
		||||
 | 
			
		||||
*{bandwidthUpOctets}*: Instant up speed in octets/seconds.
 | 
			
		||||
 | 
			
		||||
*{bandwidthDownOctets}*: Instant down speed in octets/seconds.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"network": {
 | 
			
		||||
	"interface": "wlp2s0",
 | 
			
		||||
	"format": "{ifname}",
 | 
			
		||||
	"format-wifi": "{essid} ({signalStrength}%) ",
 | 
			
		||||
	"format-ethernet": "{ifname} ",
 | 
			
		||||
	"format-disconnected": "", //An empty format will hide the module.
 | 
			
		||||
	"tooltip-format": "{ifname}",
 | 
			
		||||
	"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
 | 
			
		||||
	"tooltip-format-ethernet": "{ifname} ",
 | 
			
		||||
	"tooltip-format-disconnected": "Disconnected",
 | 
			
		||||
	"max-length": 50
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#network*
 | 
			
		||||
- *#network.disconnected*
 | 
			
		||||
- *#network.linked*
 | 
			
		||||
- *#network.ethernet*
 | 
			
		||||
- *#network.wifi*
 | 
			
		||||
							
								
								
									
										132
									
								
								man/waybar-pulseaudio.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										132
									
								
								man/waybar-pulseaudio.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,132 @@
 | 
			
		||||
waybar-pulseaudio(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - pulseaudio module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *pulseaudio* module displays the current volume reported by PulseAudio.
 | 
			
		||||
 | 
			
		||||
Additionally you can control the volume by scrolling *up* or *down* while the cursor is over the module.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string  ++
 | 
			
		||||
	default: {volume}% ++
 | 
			
		||||
	The format, how information should be displayed. This format is used when other formats aren't specified.
 | 
			
		||||
 | 
			
		||||
*format-bluetooth*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when using bluetooth speakers.
 | 
			
		||||
 | 
			
		||||
*format-muted*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when the sound is muted.
 | 
			
		||||
 | 
			
		||||
*format-source*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: {volume}% ++
 | 
			
		||||
	This format used for the source.
 | 
			
		||||
 | 
			
		||||
*format-source-muted*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	This format is used when the source is muted.
 | 
			
		||||
 | 
			
		||||
*format-icons*: ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	Based on the current port-name and volume, the corresponding icon gets selected. The order is *low* to *high*. See [`Icons`](#module-pulseaudio-config-icons)
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*states*: ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	A number of volume states which get activated on certain volume levels. See *waybar-states(5)*
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*scroll-step*: ++
 | 
			
		||||
	typeof: float ++
 | 
			
		||||
	default: 1.0 ++
 | 
			
		||||
	The speed in which to change the volume when scrolling.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module. This replaces the default behaviour of volume control.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module. This replaces the default behaviour of volume control.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{volume}*: Volume in percentage.
 | 
			
		||||
 | 
			
		||||
*{icon}*: Icon, as defined in `format-icons`.
 | 
			
		||||
 | 
			
		||||
*{format_source}*: Source format, `format-source`, `format-source-muted`.
 | 
			
		||||
 | 
			
		||||
# ICONS:
 | 
			
		||||
 | 
			
		||||
The following strings for `format-icons` are supported.
 | 
			
		||||
If they are found in the current PulseAudio port name, the corresponding icons will be selected.
 | 
			
		||||
 | 
			
		||||
- *default* (Shown, when no other port is found)
 | 
			
		||||
- *headphones*
 | 
			
		||||
- *speaker*
 | 
			
		||||
- *hdmi*
 | 
			
		||||
- *headset*
 | 
			
		||||
- *handsfree*
 | 
			
		||||
- *portable*
 | 
			
		||||
- *car*
 | 
			
		||||
- *hifi*
 | 
			
		||||
- *phone*
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"pulseaudio": {
 | 
			
		||||
	"format": "{volume}% {icon}",
 | 
			
		||||
	"format-bluetooth": "{volume}% {icon}",
 | 
			
		||||
	"format-muted": "",
 | 
			
		||||
	"format-icons": {
 | 
			
		||||
		"headphones": "",
 | 
			
		||||
		"handsfree": "",
 | 
			
		||||
		"headset": "",
 | 
			
		||||
		"phone": "",
 | 
			
		||||
		"portable": "",
 | 
			
		||||
		"car": "",
 | 
			
		||||
		"default": ["", ""]
 | 
			
		||||
	},
 | 
			
		||||
	"scroll-step": 1,
 | 
			
		||||
	"on-click": "pavucontrol"
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#pulseaudio*
 | 
			
		||||
- *#pulseaudio.bluetooth*
 | 
			
		||||
- *#pulseaudio.muted*
 | 
			
		||||
							
								
								
									
										43
									
								
								man/waybar-states.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								man/waybar-states.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,43 @@
 | 
			
		||||
waybar-states(5)
 | 
			
		||||
 | 
			
		||||
# OVERVIEW
 | 
			
		||||
 | 
			
		||||
Some modules support 'states' which allows percentage values to be used as styling triggers to
 | 
			
		||||
apply a class when the value matches the declared state value.
 | 
			
		||||
 | 
			
		||||
# STATES
 | 
			
		||||
 | 
			
		||||
- Every entry (*state*) consits of a *<name>* (typeof: *string*) and a *<value>* (typeof: *integer*).
 | 
			
		||||
 | 
			
		||||
	- The state can be addressed as a CSS class in the *style.css*. The name of the CSS class is the *<name>* of the state.
 | 
			
		||||
	  Each class gets activated when the current capacity is equal or below the configured *<value>*.
 | 
			
		||||
 | 
			
		||||
	- Also each state can have its own *format*.
 | 
			
		||||
	  Those con be configured via *format-<name>*.
 | 
			
		||||
	  Or if you want to differentiate a bit more even as *format-<status>-<state>*.
 | 
			
		||||
 | 
			
		||||
# EXAMPLE
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"battery": {
 | 
			
		||||
	"bat": "BAT2",
 | 
			
		||||
	"interval": 60,
 | 
			
		||||
	"states": {
 | 
			
		||||
		"warning": 30,
 | 
			
		||||
		"critical": 15
 | 
			
		||||
	},
 | 
			
		||||
	"format": "{capacity}% {icon}",
 | 
			
		||||
	"format-icons": ["", "", "", "", ""],
 | 
			
		||||
	"max-length": 25
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLING STATES
 | 
			
		||||
 | 
			
		||||
- *#battery.<state>*
 | 
			
		||||
  - *<state>* can be defined in the *config*.
 | 
			
		||||
 | 
			
		||||
# EXAMPLE:
 | 
			
		||||
 | 
			
		||||
- *#battery.warning: { background: orange; }*
 | 
			
		||||
- *#battery.critical: { background: red; }*
 | 
			
		||||
							
								
								
									
										64
									
								
								man/waybar-sway-mode.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								man/waybar-sway-mode.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,64 @@
 | 
			
		||||
waybar-sway-mode(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - sway mode module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *mode* module displays the current binding mode of Sway
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *sway/mode*
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string  ++
 | 
			
		||||
	default: {} ++
 | 
			
		||||
	The format, how information should be displayed. On {} data gets inserted.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"sway/window": {
 | 
			
		||||
    "format": " {}",
 | 
			
		||||
    "max-length": 50
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#mode*
 | 
			
		||||
							
								
								
									
										67
									
								
								man/waybar-sway-window.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								man/waybar-sway-window.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,67 @@
 | 
			
		||||
waybar-sway-window(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - sway window module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *window* module displays the title of the currently focused window in Sway
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *sway/window*
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: {} ++
 | 
			
		||||
	The format, how information should be displayed. On {} data gets inserted.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	The maximum length in character the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
	typeof: double ++
 | 
			
		||||
	Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
	typeof: bool ++
 | 
			
		||||
	default: true ++
 | 
			
		||||
	Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"sway/window": {
 | 
			
		||||
    "format": "{}",
 | 
			
		||||
    "max-length": 50
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#window*
 | 
			
		||||
- *window#waybar.empty* When no windows is in the workspace
 | 
			
		||||
- *window#waybar.solo* When one window is in the workspace
 | 
			
		||||
- *window#waybar.<app_id>* Where *app_id* is the app_id or *instance* name like (*chromium*) of the only window in the workspace
 | 
			
		||||
							
								
								
									
										123
									
								
								man/waybar-sway-workspaces.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										123
									
								
								man/waybar-sway-workspaces.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,123 @@
 | 
			
		||||
waybar-sway-workspaces(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - sway workspaces module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *workspaces* module displays the currently used workspaces in Sway.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *sway/workspaces*
 | 
			
		||||
 | 
			
		||||
*all-outputs*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: false ++
 | 
			
		||||
    If set to false, workspaces will only be shown on the output they are on. If set to true all workspaces will be shown on every output.
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    default: {name} ++
 | 
			
		||||
    The format, how information should be displayed.
 | 
			
		||||
 | 
			
		||||
*format-icons*: ++
 | 
			
		||||
    typeof: array ++
 | 
			
		||||
    Based on the workspace name and state, the corresponding icon gets selected. See *icons*.
 | 
			
		||||
 | 
			
		||||
*disable-scroll*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: false ++
 | 
			
		||||
    If set to false, you can scroll to cycle through workspaces. If set to true this behaviour is disabled.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
    typeof: double ++
 | 
			
		||||
    Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*disable-scroll-wraparound*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: false ++
 | 
			
		||||
    If set to false, scrolling on the workspace indicator will wrap around to the first workspace when reading the end, and vice versa. If set to true this behavior is disabled.
 | 
			
		||||
 | 
			
		||||
*enable-bar-scroll*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: false ++
 | 
			
		||||
    If set to false, you can't scroll to cycle throughout workspaces from the entire bar. If set to true this behaviour is enabled.
 | 
			
		||||
 | 
			
		||||
*disable-markup*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: false ++
 | 
			
		||||
    If set to true, button label will escape pango markup.
 | 
			
		||||
 | 
			
		||||
*current-only*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: false ++
 | 
			
		||||
    If set to true. Only focused workspaces will be shown.
 | 
			
		||||
 | 
			
		||||
*persistent_workspaces*: ++
 | 
			
		||||
    typeof: json (see below) ++
 | 
			
		||||
    default: empty ++
 | 
			
		||||
    Lists workspaces that should always be shown, even when non existent
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{name}*: Name of the workspace, as defined by sway.
 | 
			
		||||
 | 
			
		||||
*{icon}*: Icon, as defined in *format-icons*.
 | 
			
		||||
 | 
			
		||||
*{index}*: Index of the workspace.
 | 
			
		||||
 | 
			
		||||
# ICONS
 | 
			
		||||
 | 
			
		||||
Additional to workspace name matching, the following *format-icons* can be set.
 | 
			
		||||
 | 
			
		||||
- *default*: Will be shown, when no string matches is found.
 | 
			
		||||
- *urgent*: Will be shown, when workspace is flagged as urgent
 | 
			
		||||
- *focused*: Will be shown, when workspace is focused
 | 
			
		||||
 | 
			
		||||
# PERSISTANT WORKSPACES
 | 
			
		||||
 | 
			
		||||
Each entry of *persistant_workspace* names a workspace that should always be shown.
 | 
			
		||||
Associated with that value is a list of outputs indicating *where* the workspace should be shown,
 | 
			
		||||
an empty list denoting all outputs.
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"sway/workspaces": {
 | 
			
		||||
    "persistant_workspaces": {
 | 
			
		||||
        "3": [], // Always show a workspace with name '3', on all outputs if it does not exists
 | 
			
		||||
        "4": ["eDP-1"], // Always show a workspace with name '4', on output 'eDP-1' if it does not exists
 | 
			
		||||
        "5": ["eDP-1", "DP-2"] // Always show a workspace with name '5', on outputs 'eDP-1' and 'DP-2' if it does not exists
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
n.b.: the list of outputs can be obtained from command line using *swaymsg -t get_outputs*
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"sway/workspaces": {
 | 
			
		||||
    "disable-scroll": true,
 | 
			
		||||
    "all-outputs": true,
 | 
			
		||||
    "format": "{name}: {icon}",
 | 
			
		||||
    "format-icons": {
 | 
			
		||||
        "1": "",
 | 
			
		||||
        "2": "",
 | 
			
		||||
        "3": "",
 | 
			
		||||
        "4": "",
 | 
			
		||||
        "5": "",
 | 
			
		||||
        "urgent": "",
 | 
			
		||||
        "focused": "",
 | 
			
		||||
        "default": ""
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# Style
 | 
			
		||||
 | 
			
		||||
- *#workspaces button*
 | 
			
		||||
- *#workspaces button.visible*
 | 
			
		||||
- *#workspaces button.focused*
 | 
			
		||||
- *#workspaces button.urgent*
 | 
			
		||||
- *#workspaces button.persistant*
 | 
			
		||||
							
								
								
									
										99
									
								
								man/waybar-temperature.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										99
									
								
								man/waybar-temperature.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,99 @@
 | 
			
		||||
waybar-temperature(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - temperature module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The *temperature* module displays the current temperature from a thermal zone.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *temperature*
 | 
			
		||||
 | 
			
		||||
*thermal-zone*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    The thermal zone, as in */sys/class/thermal/*.
 | 
			
		||||
 | 
			
		||||
*hwmon-path*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    The temperature path to use, e.g. */sys/class/hwmon/hwmon2/temp1_input* instead of one in */sys/class/thermal/*.
 | 
			
		||||
 | 
			
		||||
*critical-threshold*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    The threshold before it is considered critical (Celcius).
 | 
			
		||||
 | 
			
		||||
*interval*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    default: 10 ++
 | 
			
		||||
    The interval in which the information gets polled.
 | 
			
		||||
 | 
			
		||||
*format-critical*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    The format to use when temperature is considered critical
 | 
			
		||||
 | 
			
		||||
*format*: ++
 | 
			
		||||
    typeof: string  ++
 | 
			
		||||
    default: {temperatureC}°C ++
 | 
			
		||||
    The format (Celcius/Farenheit) in which the temperature should be displayed.
 | 
			
		||||
 | 
			
		||||
*format-icons*: ++
 | 
			
		||||
    typeof: array ++
 | 
			
		||||
    Based on the current temperature (Celcius) and *critical-threshold* if available, the corresponding icon gets selected. The order is *low* to *high*.
 | 
			
		||||
 | 
			
		||||
*rotate*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    Positive value to rotate the text label.
 | 
			
		||||
 | 
			
		||||
*max-length*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    The maximum length in characters the module should display.
 | 
			
		||||
 | 
			
		||||
*on-click*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when you clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-click-right*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when you right clicked on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-up*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when scrolling up on the module.
 | 
			
		||||
 | 
			
		||||
*on-scroll-down*: ++
 | 
			
		||||
    typeof: string ++
 | 
			
		||||
    Command to execute when scrolling down on the module.
 | 
			
		||||
 | 
			
		||||
*smooth-scrolling-threshold*: ++
 | 
			
		||||
    typeof: double ++
 | 
			
		||||
    Threshold to be used when scrolling.
 | 
			
		||||
 | 
			
		||||
*tooltip*: ++
 | 
			
		||||
    typeof: bool ++
 | 
			
		||||
    default: true ++
 | 
			
		||||
    Option to disable tooltip on hover.
 | 
			
		||||
 | 
			
		||||
# FORMAT REPLACEMENTS
 | 
			
		||||
 | 
			
		||||
*{temperatureC}*: Temperature in Celcius.
 | 
			
		||||
 | 
			
		||||
*{temperatureF}*: Temperature in Fahrenheit.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 "temperature": {
 | 
			
		||||
	// "thermal-zone": 2,
 | 
			
		||||
	// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
 | 
			
		||||
	// "critical-threshold": 80,
 | 
			
		||||
	// "format-critical": "{temperatureC}°C ",
 | 
			
		||||
	"format": "{temperatureC}°C "
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#temperature*
 | 
			
		||||
- *#temperature.critical*
 | 
			
		||||
							
								
								
									
										35
									
								
								man/waybar-tray.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								man/waybar-tray.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
waybar-tray(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - tray module
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
_WARNING_ *tray* is still in beta. There may me bugs. Breaking changes may occur.
 | 
			
		||||
 | 
			
		||||
# CONFIGURATION
 | 
			
		||||
 | 
			
		||||
Addressed by *tray*
 | 
			
		||||
 | 
			
		||||
*icon-size*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    Defines the size of the tray icons.
 | 
			
		||||
 | 
			
		||||
*spacing*: ++
 | 
			
		||||
    typeof: integer ++
 | 
			
		||||
    Defines the spacing between the tray icons.
 | 
			
		||||
 | 
			
		||||
# EXAMPLES
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"tray": {
 | 
			
		||||
    "icon-size": 21,
 | 
			
		||||
    "spacing": 10
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# STYLE
 | 
			
		||||
 | 
			
		||||
- *#tray*
 | 
			
		||||
							
								
								
									
										193
									
								
								man/waybar.5.scd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										193
									
								
								man/waybar.5.scd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,193 @@
 | 
			
		||||
waybar(5)
 | 
			
		||||
 | 
			
		||||
# NAME
 | 
			
		||||
 | 
			
		||||
waybar - configuration file
 | 
			
		||||
 | 
			
		||||
# DESCRIPTION
 | 
			
		||||
 | 
			
		||||
The configuration uses the JSON file format and is named *config*.
 | 
			
		||||
 | 
			
		||||
Valid locations for this file are:
 | 
			
		||||
 | 
			
		||||
- *$XDG_CONFIG_HOME/waybar/config*
 | 
			
		||||
- *~/.config/waybar/config*
 | 
			
		||||
- *~/waybar/config*
 | 
			
		||||
- */etc/xdg/waybar/config*
 | 
			
		||||
 | 
			
		||||
A good starting point is the default configuration found at https://github.com/Alexays/Waybar/blob/master/resources/config.
 | 
			
		||||
Also a minimal example configuration can be found on the at the bottom of this man page.
 | 
			
		||||
 | 
			
		||||
# BAR CONFIGURATION
 | 
			
		||||
 | 
			
		||||
*layer* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: bottom ++
 | 
			
		||||
	Decide if the bar is displayed in front of the windows or behind them.
 | 
			
		||||
 | 
			
		||||
*output* ++
 | 
			
		||||
	typeof: string|array ++
 | 
			
		||||
	Specifies on which screen this bar will be displayed.
 | 
			
		||||
 | 
			
		||||
*position* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	default: top ++
 | 
			
		||||
	Bar position, can be *top*, *bottom*, *left*, *right*.
 | 
			
		||||
 | 
			
		||||
*height* ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Height to be used by the bar if possible. Leave blank for a dynamic value.
 | 
			
		||||
 | 
			
		||||
*width* ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Width to be used by the bar if possible. Leave blank for a dynamic value.
 | 
			
		||||
 | 
			
		||||
*modules-left* ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	Modules that will be displayed on the left.
 | 
			
		||||
 | 
			
		||||
*modules-center* ++
 | 
			
		||||
	typeof: array ++
 | 
			
		||||
	Modules that will be displayed in the center.
 | 
			
		||||
 | 
			
		||||
*modules-right* ++
 | 
			
		||||
	typeof: array
 | 
			
		||||
	Modules that will be displayed on the right.
 | 
			
		||||
 | 
			
		||||
*margin* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Margins value using the CSS format without units.
 | 
			
		||||
 | 
			
		||||
*margin-<top\|left\|bottom\|right>* ++
 | 
			
		||||
	typeof: integer ++
 | 
			
		||||
	Margins value without units.
 | 
			
		||||
 | 
			
		||||
*name* ++
 | 
			
		||||
	typeof: string ++
 | 
			
		||||
	Optional name added as a CSS class, for styling multiple waybars.
 | 
			
		||||
 | 
			
		||||
# MODULE FORMAT
 | 
			
		||||
 | 
			
		||||
You can use PangoMarkupFormat (See https://developer.gnome.org/pango/stable/PangoMarkupFormat.html#PangoMarkupFormat).
 | 
			
		||||
 | 
			
		||||
e.g.
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"format": "<span style=\"italic\">{}</span>"
 | 
			
		||||
```
 | 
			
		||||
# MULTIPLE INSTANCES OF A MODULE
 | 
			
		||||
 | 
			
		||||
If you want to have a second instance of a module, you can suffix it by a '#' and a custom name.
 | 
			
		||||
For example if you want a second battery module, you can add *"battery#bat2"* to your modules.
 | 
			
		||||
To configure the newly added module, you then also add a module configuration with the same name.
 | 
			
		||||
 | 
			
		||||
This could then look something like this *(this is an incomplete example)*:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
"modules-right": ["battery", "battery#bat2"],
 | 
			
		||||
"battery": {
 | 
			
		||||
	"bat": "BAT1"
 | 
			
		||||
},
 | 
			
		||||
"battery#bat2": {
 | 
			
		||||
	"bat": "BAT2"
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# MINIMAL CONFIGURATION
 | 
			
		||||
 | 
			
		||||
A minimal *config* file could look like this:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
{
 | 
			
		||||
	"layer": "top",
 | 
			
		||||
	"modules-left": ["sway/workspaces", "sway/mode"],
 | 
			
		||||
	"modules-center": ["sway/window"],
 | 
			
		||||
	"modules-right": ["battery", "clock"],
 | 
			
		||||
	"sway/window": {
 | 
			
		||||
		"max-length": 50
 | 
			
		||||
	},
 | 
			
		||||
	"battery": {
 | 
			
		||||
		"format": "{capacity}% {icon}",
 | 
			
		||||
		"format-icons": ["", "", "", "", ""]
 | 
			
		||||
	},
 | 
			
		||||
	"clock": {
 | 
			
		||||
		"format-alt": "{:%a, %d. %b  %H:%M}"
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# MULTI OUTPUT CONFIGURATION
 | 
			
		||||
 | 
			
		||||
## Limit a configuration to some outputs
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
{
 | 
			
		||||
	"layer": "top",
 | 
			
		||||
	"output": "eDP-1",
 | 
			
		||||
	"modules-left": ["sway/workspaces", "sway/mode"],
 | 
			
		||||
	...
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
{
 | 
			
		||||
	"layer": "top",
 | 
			
		||||
	"output": ["eDP-1", "VGA"],
 | 
			
		||||
	"modules-left": ["sway/workspaces", "sway/mode"],
 | 
			
		||||
	...
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Configuration of multiple outputs
 | 
			
		||||
 | 
			
		||||
Don't specify an output to create multiple bars on the same screen.
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
[{
 | 
			
		||||
	"layer": "top",
 | 
			
		||||
	"output": "eDP-1",
 | 
			
		||||
	"modules-left": ["sway/workspaces", "sway/mode"],
 | 
			
		||||
	...
 | 
			
		||||
}, {
 | 
			
		||||
	"layer": "top",
 | 
			
		||||
	"output": "VGA",
 | 
			
		||||
	"modules-right": ["clock"],
 | 
			
		||||
	...
 | 
			
		||||
}]
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Rotating modules
 | 
			
		||||
 | 
			
		||||
When positioning Waybar on the left or right side of the screen, sometimes it's useful to be able to rotate the contents of a module so the text runs vertically. This can be done using the "rotate" property of the module. Example:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
{
 | 
			
		||||
	"clock": {
 | 
			
		||||
		"rotate": 90
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Valid options for the "rotate" property are: 0, 90, 180 and 270.
 | 
			
		||||
 | 
			
		||||
# SUPPORTED MODULES
 | 
			
		||||
 | 
			
		||||
- *waybar-backlight(5)*
 | 
			
		||||
- *waybar-battery(5)*
 | 
			
		||||
- *waybar-clock(5)*
 | 
			
		||||
- *waybar-cpu(5)*
 | 
			
		||||
- *waybar-custom(5)*
 | 
			
		||||
- *waybar-idle-inhibitor(5)*
 | 
			
		||||
- *waybar-memory(5)*
 | 
			
		||||
- *waybar-mdp(5)*
 | 
			
		||||
- *waybar-network(5)*
 | 
			
		||||
- *waybar-pulseaudio(5)*
 | 
			
		||||
- *waybar-sway-mode(5)*
 | 
			
		||||
- *waybar-sway-window(5)*
 | 
			
		||||
- *waybar-sway-workspaces(5)*
 | 
			
		||||
- *waybar-temperature(5)*
 | 
			
		||||
- *waybar-tray(5)*
 | 
			
		||||
							
								
								
									
										46
									
								
								meson.build
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								meson.build
									
									
									
									
									
								
							@@ -72,7 +72,7 @@ src_files = files(
 | 
			
		||||
    'src/modules/clock.cpp',
 | 
			
		||||
    'src/modules/custom.cpp',
 | 
			
		||||
    'src/modules/cpu.cpp',
 | 
			
		||||
	'src/modules/idle_inhibitor.cpp',
 | 
			
		||||
    'src/modules/idle_inhibitor.cpp',
 | 
			
		||||
    'src/modules/temperature.cpp',
 | 
			
		||||
    'src/main.cpp',
 | 
			
		||||
    'src/bar.cpp',
 | 
			
		||||
@@ -153,6 +153,50 @@ install_data(
 | 
			
		||||
    install_dir: join_paths(get_option('out'), 'etc/xdg/waybar')
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
scdoc = dependency('scdoc', version: '>=1.9.2', native: true, required: false)
 | 
			
		||||
 | 
			
		||||
if scdoc.found()
 | 
			
		||||
    scdoc_prog = find_program(scdoc.get_pkgconfig_variable('scdoc'), native: true)
 | 
			
		||||
    sh = find_program('sh', native: true)
 | 
			
		||||
    mandir = get_option('mandir')
 | 
			
		||||
    man_files = [
 | 
			
		||||
        'waybar.5.scd',
 | 
			
		||||
        'waybar-backlight.5.scd',
 | 
			
		||||
        'waybar-battery.5.scd',
 | 
			
		||||
        'waybar-clock.5.scd',
 | 
			
		||||
        'waybar-cpu.5.scd',
 | 
			
		||||
        'waybar-custom.5.scd',
 | 
			
		||||
        'waybar-idle-inhibitor.5.scd',
 | 
			
		||||
        'waybar-memory.5.scd',
 | 
			
		||||
        'waybar-mpd.5.scd',
 | 
			
		||||
        'waybar-network.5.scd',
 | 
			
		||||
        'waybar-pulseaudio.5.scd',
 | 
			
		||||
        'waybar-sway-mode.5.scd',
 | 
			
		||||
        'waybar-sway-window.5.scd',
 | 
			
		||||
        'waybar-sway-workspaces.5.scd',
 | 
			
		||||
        'waybar-temperature.5.scd',
 | 
			
		||||
        'waybar-tray.5.scd',
 | 
			
		||||
        'waybar-states.5.scd',
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
    foreach filename : man_files
 | 
			
		||||
        topic = filename.split('.')[-3].split('/')[-1]
 | 
			
		||||
        section = filename.split('.')[-2]
 | 
			
		||||
        output = '@0@.@1@'.format(topic, section)
 | 
			
		||||
 | 
			
		||||
        custom_target(
 | 
			
		||||
            output,
 | 
			
		||||
            input: 'man/@0@'.format(filename),
 | 
			
		||||
            output: output,
 | 
			
		||||
            command: [
 | 
			
		||||
                sh, '-c', '@0@ < @INPUT@ > @1@'.format(scdoc_prog.path(), output)
 | 
			
		||||
            ],
 | 
			
		||||
            install: true,
 | 
			
		||||
            install_dir: '@0@/man@1@'.format(mandir, section)
 | 
			
		||||
        )
 | 
			
		||||
    endforeach
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
clangtidy = find_program('clang-tidy', required: false)
 | 
			
		||||
 | 
			
		||||
if clangtidy.found()
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user