.TH WMSL 1 "January 2026" "wmsl" "User Commands" .SH NAME wmsl \- Window Manager Status Line .SH SYNOPSIS .B wmsl [\fB\-C\fR \fIFILE\fR] [\fB\-h\fR] .SH DESCRIPTION .B wmsl is a simple and efficient status line program for window managers like dwm. It updates the X root window name with status information from configured block scripts. .PP Blocks can be updated on a timer interval or manually triggered via signals using .BR sigwmsl (1). .SH OPTIONS .TP .BR \-C " " \fIFILE\fR Specify an alternate configuration file. Default is .IR $HOME/.config/wmsl/wmslrc . .TP .BR \-h Display usage information and exit. .SH CONFIGURATION The configuration file uses a simple line-based format. Each line is one of: .TP .BI delim= STRING Set the delimiter between blocks (default: " | "). .TP .BI prefix= STRING Set the prefix before all blocks (default: ""). .TP .BI suffix= STRING Set the suffix after all blocks (default: " "). .TP .BI block= COMMAND Define a new block that executes the given command. .TP .BI block-id= ID Set the block ID for the current block (used with .BR sigwmsl ). A block-id of 0 means the block cannot be manually triggered. .TP .BI block-sleep= SECONDS Set the update interval in seconds for the current block. A value of 0 means the block only updates when manually triggered. .PP Lines starting with # are comments. Empty lines are ignored. .SH EXAMPLE CONFIGURATION .nf # ~/.config/wmsl/wmslrc delim= | prefix= suffix= block=wmsl-ip block-id=3 block-sleep=60 block=wmsl-battery block-id=2 block-sleep=10 block=wmsl-time block-id=1 block-sleep=1 .fi .SH FILES .TP .I ~/.config/wmsl/wmslrc Default configuration file. .TP .I /tmp/wmsl.pid PID file for signal-based updates. .SH SIGNALS .TP .B SIGUSR1 Trigger a specific block update (use .BR sigwmsl (1) for this). .TP .BR SIGINT ", " SIGTERM Clean up and exit gracefully. .SH SEE ALSO .BR sigwmsl (1) .SH AUTHORS Written for use with dwm and similar window managers. .SH BUGS Report bugs to the project repository.