subtler1
A commandline interface for subtle
Usage
subtler [{GENERIC | MODIFIER}]
GROUP
ACTION
[ARG1]
[ARG2]
Overview
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:
Format
Input
- •
-
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.
Output
- •
-
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>
Fields
- •
-
<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)
Options
Generic
- •
-
-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 }"
Modifier
- •
-
-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
Groups
- •
-
-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
Actions for clients
- •
-
-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
Actions for gravities
- •
-
-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
Actions for screens
- •
-
-l,--list
List all screens
-
Example: subtler -el
- •
-
-f,--find=> ID
Find a screen
-
Example: subtler -ef 0
Actions for sublets
- •
-
-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
Actions for tags
- •
-
-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
Actions for trays
- •
-
-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
Actions for views
- •
-
-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
Releases
Unchanged in 6 releases since Debian 7 (Wheezy).