SUBTLER(1)

NAME
subtler - a commandline interface for subtle

SYNOPSIS
subtler [GENERIC|MODIFIER] GROUP ACTION [ARG1] [ARG2]

DESCRIPTION
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
    Create a ruby proc from the given argument and yield 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

BUGS
Report bugs at http://subforge.org/projects/subtle/issues
Homepage: http://subtle.subforge.org

COPYRIGHT
Copyright (c) Christoph Kappel <unexist@subforge.org>

SEE ALSO
subtle(1), subtlext(1), sur(1), surserver(1)