DWM bar with Pages!
*Bar content is changing dynamically
More imgs are available inside
src/
Git-Clone repository.
git clone https://github.com/Randomguy-8/PageBar
cd PageBar
chmod 777 pagebar.sh
./pagebar.sh
There are alot of bar-scripts available for DWM. PageBar is Just one of them, but unlike other dwm-bar scripts that are static in terns of modules they show, Pagebar can dynamically change the modules it displays with few added keybindings of DWM.
Quick Reference: Pages here refers to individual files in
page/
directory. Eaxh file is a collection of different modules to show on screen.
Refresh rate can be defined Individualy in evey Page by setting variable UPDATE=<int-num>
anywhere outside the page_(){...}
function.
eg:-
UPDATE=1 # i.e sleep for 500 milliseconds
page_(){
....
}
UPDATE=2 means Sleep for 1 second
Every page is configured Indvidualy, therfore you can add/define custom Functions, Actions, Colors and Icons for every page separately.
Basic Structure of a Page:
## Your Custom page
UPDATE=<int>
functions_(){
...
# Add needed modules here and use functions to take
# full control over the execution of those functions.
...
func_skip_ 2 Clock_ # Clock will be updated after skip two loops.
}
pages_(){
...
# Edit the Information recived from processing those modules
# or add gylmps/icons in from of those informations to define them on bar.
...
Status+="Time: $Clock"
}
You can Call a custom page on your bar by these methods:
By Defining in Pagebar
Define the location of your Custom page inside Pagebar to make it easily accessible from anywhere.
eg:-
$ ls $HOME/PageBar/pages
page_main page_clock page_custom
pagebar.sh:-
...
Page_Name+=("$HOME/PageBar/pages/page_main")
Page_Name+=("$HOME/PageBar/pages/page_clock")
Page_Name+=("$HOME/PageBar/pages/page_custom")
...
now you can call your custom page from anywhere using ```pagebar.sh```.
By using command line argumments
$ ./pagebar.sh {location-of-custom-page}
Reference
Todo...(Module are yet to be completed.)Add tese keybinding inside key[]
function of your dwm config.h
file.
static Key keys[] = {
...
/* Custom Bar Functions */
{ MODKEY, XK_F1, spawn, SHCMD("./$HOME/PageBar/pagebar.sh -p")}, // Previous Page
{ MODKEY, XK_F2, spawn, SHCMD("./$HOME/PageBar/pagebar.sh -n")}, // next Page
{ MODKEY, XK_F3, spawn, SHCMD("./$HOME/PageBar/pagebar.sh -r")}, // Refresh
...
}
- More Modules.
- Time based execution of modules.
All kind of Contributions are welcomed.
Thx to:
chadwm's bar for Inspiration.
dwmbar by @thythom and dwm-bar by @joestandring for modules reference.