subtler - a commandline interface for subtle
subtler [GENERIC|MODIFIER] GROUP ACTION [ARG1] [ARG2]
subtler is a commandline tool, that allows interacting with
a EWMH/NetWM compatible window manager and especially with subtle(1)
from a shell.
The arguments of subtler are quite complex and allow a
variety of spellings and different number of arguments. Most of the commands
require at least one argument and return output of following format:
- DISPLAY :<display number>
- ID <number>
- GEOMETRY <x>x<y>+<width>+<height>
- NAME <string|number>
- DATA <string|number>
- PATTERN
Matching works either via plaintext, regex(7), id or window id if
applicable. If a pattern matches more than once ALL matches are used.
- If the PATTERN is - subtler will read from stdin.
-
- Client listing <window id> <visibility> <view id>
<geometry> <gravity> <flags> <instance name>
(<class name>)
- Gravity listing <gravity id> <geometry>
- Screen listing <screen id> <geometry>
- Tag listing <tag name>
- Tray listing <window id> <instance name> (<class
name>)
- View listing <window id> <visibility> <view id>
<view name>
-
- <window id> Numeric (hex) id (e.g. 0xa00009)
- <visibility> - = not visible, * = visible
- <view id> Numeric id (e.g. 5)
- <geometry> x x y + width + height
- <flags> - = not set, + = fullscreen, ^ = float, * = stick, ~ =
resize, = = zaphod, ! = fixed
- <instance name> Window instance/resource name
- <class name> Window class name
- <gravity id> Numeric id of gravity (e.g. 2)
- <screen id> Numeric id of a screen (e.g. 1)
- <tag name> Name of a tag (e.g. terms)
-
- -d, --display=DISPLAY
Connect to DISPLAY (default: :0)
- -h, --help
Show this help and exit
- -V, --version
Show version info and exit
- -p, --proc
This creates a ruby proc from the given argument and yields the result of
the group to it as parameter param.
- Examples:
- subtler -cl -p "puts param.name"
subtler -cC -p "param.gravity = { terms: :left }"
-
- -r, --reload
Reload subtle
- -R, --restart
Restart subtle
- -q, --quit
Quit subtle
- -C, --current
Select current active window/view instead of passing it via argument.
- Example: subtler -cCf
- •
- -X, --select
Select a window via pointer instead of passing it via argument.
- Example: subtler -cXf
-
- -c, --Client
Use client group
- -g, --Gravity
Use gravity group
- -e, --Screen
Use screen group
- -s, --Sublet
Use sublet group
- -t, --Tag
Use tag group
- -y, --Tray
Use tray group
- -v, --View
Use views group
-
- •
- -f, --find => PATTERN
Find client
- Example: subtler -cf urxvt
- •
- -o, --focus => PATTERN
Set focus to client
- Example: subtler -co urxvt
- •
- -F, --full => PATTERN
Toggle full
- Example: subtler -cF urxvt
- •
- -O, --float => PATTERN
Toggle float
- Example: subtler -cO urxvt
- •
- -S, --stick => PATTERN
Toggle stick
- Example: subtler -cS urxvt
- •
- -N, --urgent => PATTERN
Toggle urgent
- Example: subtler -cN urxvt
- -l, --list
List all clients
- -T, --tag => PATTERN
Add tag to client
- Example: subtler -cT urxvt tag
- •
- -U, --untag => PATTERN NAME
Remove tag from client
- Example: subtler -cU urxvt tag
- •
- -G, --tags => PATTERN
Show client tags
- Example: subtler -cG urxvt
- •
- -Y, --gravity => PATTERN PATTERN
Set client gravity
- Example: subtler -cY urxvt gravity
- •
- -E, --raise => PATTERN
Raise client window
- Example: subtler -cE urxvt
- •
- -L, --lower => PATTERN
Lower client window
- Example: subtler -cL urxvt
- •
- -k, --kill => PATTERN
Kill client
- Example: subtler -ck urxvt
-
- •
- -a, --add => NAME GEOMETRY
Create new gravity
- Example: subtler -ga test 0x0+100+100
- •
- -l, --list
List all gravities
- Example: subtler -gl
- •
- -f, --find => PATTERN
Find a gravity
- Example: subtler -gf center
- •
- -k, --kill => PATTERN
Kill gravity
- Example: subtler -gk center
-
- •
- -l, --list
List all screens
- Example: subtler -el
- •
- -f, --find => ID
Find a screen
- Example: subtler -ef 0
-
- •
- -l, --list
List all sublets
- Example: subtler -sl
- •
- -f, --find => PATTERN
Find sublet
- Example: subtler -sf sublet
- •
- -u, --update
Updates value of sublet
- Example: subtler -su
- •
- -D, --data => PATTERN DATA
Send data to sublet
- Example: subtler -sD sublet something
- •
- -k, --kill => PATTERN
Kill sublet
- Example: subtler -sk PATTERN
-
- •
- -a, --add => NAME
Create new tag
- Example: subtler -ta tag
- •
- -f, --find => PATTERN
Find all clients/views by tag
- Example: subtler -ta tag
- •
- -l, --list
List all tags
- Example: subtler -tl
- •
- -I, --clients
Show clients with tag
- Example: subtler -tI
- •
- -k, --kill => PATTERN
Kill tag
- Example: subtler -tk PATTERN
-
- •
- -f, --find => PATTERN
Find a tray
- Example: subtler -yf PATTERN
- •
- -l, --list
List all trays
- Example: subtler -yl
- •
- -k, --kill => PATTERN
Kill tray
- Example: subtler -yk PATTERN
-
- •
- -a, --add => NAME
Create new view
- Example: subtler -va NAME
- •
- -f, --find => PATTERN
Find a view
- Example: subtler -vf PATTERN
- •
- -l, --list
List all views
- Example: subtler -vl
- •
- -T, --tag => PATTERN NAME
Add tag to view
- Example: subtler -vT terms tag
- •
- -U, --untag => PATTERN NAME
Remove tag from view
- Example: subtler -vT terms tag
- •
- -G, --tags
Show view tags
- Example: subtler -vG terms
- •
- -I, --clients
Show clients on view
- Example: subtler -vI terms
- •
- -k, --kill => PATTERN
Kill view
- Example: subtler -vk terms
-
Report bugs at http://subforge.org/projects/subtle/issues
Homepage: http://subtle.subforge.org
Copyright (c) Christoph Kappel <unexist@subforge.org>