98 lines
3.0 KiB
Markdown
98 lines
3.0 KiB
Markdown
# [ wms ]
|
|
[w]indow [m]manipulation [s]hellscripts.
|
|
|
|
A bunch of shellscripts around **wmutils**.
|
|
|
|
Well, not only is wms not a wm per se, it's also not an original project. What is it then you ask. It's my implementation of some tools from the wmutils project in a **bunch of horrible shell scripts**. As a clear requirement, you should have the wmutils binaries. Namely:
|
|
https://github.com/wmutils.
|
|
|
|
|
|
Also wms is a derivative of [ ! wm]:
|
|
https://git.disroot.org/root_sti/nowm.git (dead at birth)
|
|
|
|
|
|
|
|
This one is designed to maintain and incorporate from that one, things that are essential for my workflow. Also, this must contain future experiments around the configuration of my scripts.
|
|
I am learning, discovering, experimenting. This makes these scripts very volatile.
|
|
Some of the scripts have other crap as dependencies which I have made available at:
|
|
https://git.disroot.org/root_sti/others.git
|
|
|
|
**HISTORY**
|
|
I have left the three main scripts, which are the ones I use daily, as the fundamental option. I've put the others, which are mostly experimental features, in a folder called opt, for optional.
|
|
|
|
**My thanks and credits to the wmutils project. I wish you luck on your way.**
|
|
|
|
|
|
**THE CORE SCRIPTS:**
|
|
|
|
**[wms_voyeur.sh]**
|
|
watch xorg events and do things.
|
|
|
|
**[wms_focuser.sh]**
|
|
manage focus and colors.
|
|
|
|
**[wms_usher.sh]**
|
|
move / resize windows.
|
|
-fullsize.
|
|
-half screen (north, south, est, west).
|
|
-centered.
|
|
|
|
|
|
**THE OPT SCRIPTS**
|
|
|
|
**[wms_jumper.sh]**
|
|
jump across windows with menú. (dmenu, fzfmenu, etc.)
|
|
-next / prev / wid.
|
|
|
|
**[wms_shepperd.sh]**
|
|
herds (group windows by herd).
|
|
-add individual window.
|
|
-add all windows.
|
|
-togle herds.
|
|
|
|
**[wms_layout.sh]**
|
|
window arrangements.
|
|
-monocule.
|
|
-widespread.
|
|
-tiled.
|
|
|
|
|
|
**THE FETICHES**
|
|
|
|
**[wms_batlarm.sh]**
|
|
alternate color borders according to the state of the battery (only on laptops, depends on power.sh)
|
|
|
|
**[wms_termrename.sh]**
|
|
change terminal name.
|
|
|
|
**[wms_clearer.sh]**
|
|
clear desktop maping and unmaping windows.
|
|
|
|
**[wms_mimic.sh]**
|
|
extract colors from the desktop content and use them for decorations, background and more.
|
|
|
|
**[wms_backgroundize.sh]**
|
|
send windows to the background and ingore them.
|
|
|
|
**[wms_screensaver.sh]**
|
|
experimental scripts that keps windows in a loop of random movements.
|
|
|
|
|
|
**SETUP STEPS**
|
|
1 - download, compile and install wmutils/core and wmutils/opt.
|
|
|
|
2 - clone this repo and put at least the main scripts in some executable path.
|
|
|
|
3 - install a daemon for keyboard events, I have used sxhkd. Copy your configuration file, sxhkdrc, from wms/config to .config/sxhkd/.
|
|
|
|
4 - copy the wms variables file, wms_var, contained in wms/config to .config/wms/.
|
|
|
|
5 - add the following lines in .xinitrc or sxrc:
|
|
sxhkd &
|
|
exec wms_voyeur.sh
|
|
|
|
!! In the case of using a Display Manager, copy the wms.desktop file contained in wms/config to /usr/share/xsessions and add the file wms.sh to the executable path.
|
|
|
|
|
|
**This spawn doesn't have mouse support**
|
|
**Sorry for the verbosity of the comments, the idea is to explain each script in general terms so that it can be easier to hack them** |