You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Ashish Kumar Yadav 3fb75e8ae9 Improved block colors and added battery_button 4 years ago
blocks Improved block colors and added battery_button 4 years ago
daemons Change dash to sh in shebang 4 years ago
patches fixed dwm patch 4 years ago
.gitignore Added gitignore 4 years ago
LICENSE Added license 4 years ago
Makefile Improvements in Makefile 4 years ago
README.md Coding style improvement in readme 4 years ago
blocks.h Updated blocks.h 4 years ago
dwmblocks.c Replaced signal masking with signal blocking 4 years ago
sigdwmblocks.c Improved usage directives 4 years ago
xgetrootname Did some cleanup 4 years ago
xgetrootname.c Did some cleanup 4 years ago

README.md

dwmblocks

Modular status monitor for dwm written in C with features including clickability, cursor hinting and color.

Usage

dwmblocks [-d <delimiter>]

Modifying blocks

Blocks are added and removed by editing the blocks.h file. Read it for more info.

Colored output and Clickability

The patches folder contains a patch for dwm which is required for dwmblocks to function properly. It adds support for colored text, clickability and cursor hinting when hovering on text output of clickable blocks (inspired by polybar).

Clickability is inspired by the statuscmd patch for dwm. On clicking on text corresponding to a clickable block, the program specified to handle clicks for that block is executed with the first argument specifying which button was clicked (1 for left, 2 for middle and 3 for right by default).

Colored output is inspired by the statuscolors patch for dwm. To add colors, have your programs for the blocks output raw characters from '\x0b' to '\x31'. '\x0b' in status text switches the active colorscheme to the first one in the scheme array in dwm and so on. See statuscolors patch for more info. Keep in mind that you have to start from '\x0b' instead of '\x01' as instructed on the page.

Signaling changes

To signal a specific block to update, run sigdwmblocks <signal> [<sigval>]. <sigval> is optional and must be an integer. If provided, it is passed as the first argument to the program specified for updating the block.

xgetrootname

It is a tiny program to get the current root name. May prove helpful in debugging.

Installation

Clone the repository and run make clean install after getting in the project directory. By default the program is installed in $HOME/.local/bin. If xgetrootname is required run make xgetrootname.

Acknowledgements

Some ideas and code was taken from other projects. Credits for those go to -

See also

  • dsblocks - A clone of this project with the only difference being that C functions instead of external programs are used to update blocks and handle clicks.