User Commands

NAME

 icesh - control properties of windows

SYNOPSIS

icesh [OPTIONS] ACTIONS

DESCRIPTION

icesh provides commands for use by shell scripts that affect a window's state, similar to wmctrl(1) or xdotool(1), except mostly limited to GNOME WinWM/WMH properties and icewm(1) specific commands.

OPTIONS

icesh recognizes the following options:

COMMAND OPTIONS

Command options are mutually exclusive. Only one command option can be specified per invocation. If no command option is specified, action argument parsing and processing is performed.

-w, -window WINDOW_ID

Specifies the identifier of the window, WINDOW_ID, for which the action applies. Special identifiers are root for the root window and focus for the currently focused window. When no WINDOW_ID or WM_CLASS is specified, a selection crossbar is invoked to select the desired window.

-c, -class WM_CLASS

Specifies the window manager class, WM_CLASS, for which the action applies. If WM_CLASS contains a period, only windows with exactly the same WM_CLASS property are matched. If there is no period, windows of the same class and windows of the same instance (aka. -name) are selected. When no WINDOW_ID or WM_CLASS is specified, a selection crossbar is invoked to select the desired window.

-r, -root

Is equivalent to -window root.

-f, -focus

Is equivalent to -window focus.

GENERAL OPTIONS

-d, -display DISPLAY

Specifies the X11 DISPLAY to use. When unspecified, defaults to the $DISPLAY environment variable.

-h, --help

Print a brief usage statement to stdout and exit.

-V, --version

Print the program version to stdout and exit.

-C, --copying

Print copying permissions to stdout for the program and exit.

ARGUMENTS

icesh accepts the following arguments:

ACTIONS ::= ACTION [ACTION]*

Actions can be one of:

setIconTitle TITLE

Set the icon title for the specified window to TITLE.

setWindowTitle TITLE

Set the window title for the specified window to TITLE

setGeometry GEOMETRY

Set the window geometry for the specified window to GEOMETRY.

setState MASK STATE

Set the GNOME window state for the specified window to STATE. Only the bits selected by MASK are affected. STATE and MASK are expressions of the domain GNOME window state. See "GNOME window state", below, for STATE and MASK symbols.

toggleState STATE

Toggle the GNOME window state bits specified by the STATE expression for the specified window. See "GNOME window state", below, for STATE symbols.

setHints HINTS

Set the GNOME window hints for the specified window to HINTS. See "GNOME window hints", below, for HINTS symbols.

setLayer LAYER

Moves the specified window to another GNOME window layer. See "GNOME window layer", below, for LAYER symbols.

setWorkspace WORKSPACE

Moves the specified window to another workspace. Select the root window to change the current workspace. If WORKSPACE is All then the specified window becomes visible on all workspaces.

listWorkspaces

Lists the names of all workspaces.

setTrayOption TRAYOPTION

Set the IceWM tray option hint for the specified window to TRAYOPTION. See "IceWM tray options", below, for TRAYOPTION symbols.

The following actions do not require a window or class option:

check

Prints information about the current window manager, like name, version, class, locale, command, host name and pid.

clients

Lists all managed client windows, their titles and geometries.

shown

Lists all managed client windows for the current desktop, their titles and geometries.

windows

Lists all toplevel windows, their titles and geometries.

logout

Ask IceWM to execute the LogoutCommand.

reboot

Ask IceWM to execute the RebootCommand.

shutdown

Ask IceWM to execute the ShutdownCommand.

cancel

Ask IceWM to cancel the logout/reboot/shutdown.

about

Ask IceWM to show the about window.

windowlist

Ask IceWM to show the window list window.

restart

Ask IceWM to restart.

suspend

Ask IceWM to execute the SuspendCommand.

guievents

Monitor the ICEWM_GUI_EVENT property and report all changes.

colormaps

Monitor which colormap is installed.

runonce program [arguments...]

This action is meant to be used together with the -class option. Only if no window is matched by WM_CLASS then program [arguments...] is executed.

Some actions require one or two EXPRESSION arguments.

EXPRESSION ::= SYMBOL | EXPRESSION { + | | } SYMBOL

Each SYMBOL may be from one of the following applicable domains:

GNOME window state

Named symbols of the domain GNOME window state (numeric range: 0-1023):

    AllWorkspaces          (1)
    Sticky                 (1)
    Minimized              (2)
    Maximized             (12)
    MaximizedVert          (4)
    MaximizedVertical      (4)
    MaximizedHoriz         (8)
    MaximizedHorizontal    (8)
    Hidden                (16)
    All                 (1023)

These symbols are used with the MASK and STATE arguments to the setState and toggleState actions.

GNOME window hint

Named symbols of the domain GNOME window hint (numeric range: 0-63):

    SkipFocus              (1)
    SkipWindowMenu         (2)
    SkipTaskBar            (4)
    FocusOnClick          (16)
    DoNotCover            (32)
    All                   (63)

These symbols are used with the HINTS argument to the setHints action.

GNOME window layer

Named symbols of the domain GNOME window layer (numeric range: 0-15):

    Desktop                (0)
    Below                  (2)
    Normal                 (4)
    OnTop                  (6)
    Dock                   (8)
    AboveDock             (10)
    Menu                  (12)

These symbols are used with the LAYER argument to the setLayer action.

IceWM tray option

Named symbols of the domain IceWM tray option (numeric range: 0-2):

    Ignore                 (0)
    Minimized              (1)
    Exclusive              (2)

These symbols are used with the TRAYOPTION argument to the setTrayOption action.

USAGE

The purpose of icesh is to provide commands that can be used from a shell script (see sh(1)) to affect the state, geometry and hints associated with a window, or to list and parse information about existing windows.

It should be noted that icesh works on any window manager that is compliant with the GNOME WinWM/WMH specification. Some commands, like setTrayOption and the actions, however, are IceWM specific.

EXAMPLES

The following command lists all workspace names:

    icesh listWorkspaces

Example output:

    workspace #0: `main'
    workspace #1: `web'
    workspace #2: `doc'
    workspace #3: `dev'
    workspace #4: `scr'
    workspace #5: `gfx'
    workspace #6: `misc'
    workspace #7: `'

ENVIRONMENT

The following environment variables are set or examined by icesh:

DISPLAY

Which display to use, in case the -display option is not specified.

COMPLIANCE

While icesh is largely compliant with the GNOME WinWM/WMH specification, it does not support NetWM/EWMH.

BUGS

icesh had no known bugs at the time of release. Please report bugs for current versions to the source code repository at https://github.com/bbidulock/icewm/issues.

HISTORY

icesh is historical and deprecated. The command only supports the GNOME WinWM/WMH specification and IceWM specific commands. Unlike wmctrl(1) and xdotool(1), support for NetWM/EWMH was never included. For most of the supported commands, wmctrl(1) and xdotool(1) are quite capable of performing the necessary functions and more.

AUTHOR

Brian Bidulock mailto:bidulock@openss7.org.

See --copying for full copyright notice and copying permissions.

LICENSE

IceWM is licensed under the GNU Library General Public License. See the COPYING file in the distribution or use the --copying flag to display copying permissions.

 User Commands