tAdd manpages for glazier(1) and ewmh(1) - glazier - window management experiments
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 02bf3132d43b0aa1d34948615201a0613dc94462
 (DIR) parent 45b166725ed0c4586d76dd7779942f3fca9ec734
 (HTM) Author: Willy Goiffon <dev@z3bra.org>
       Date:   Sun,  7 Jun 2020 17:17:28 +0200
       
       Add manpages for glazier(1) and ewmh(1)
       
       Diffstat:
         A ewmh.1                              |      77 +++++++++++++++++++++++++++++++
         A glazier.1                           |     100 +++++++++++++++++++++++++++++++
       
       2 files changed, 177 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/ewmh.1 b/ewmh.1
       t@@ -0,0 +1,77 @@
       +.Dd 2020-06-07
       +.Dt EWMH 1
       +.Os POSIX.1
       +.Sh NAME
       +.Nm ewmh
       +.Nd EWMH compliance daemon
       +.Sh SYNOPSIS
       +.Nm ewmh
       +.Op Fl h
       +.Sh DESCRIPTION
       +.Nm
       +is a user-space daemon that listens for X notify events, and respond to
       +them by setting Extended Window Manager Hints on the root window, as specified by
       +the specification.
       +.Pp
       +Some applications require an EWMH compliant window manager in order to
       +function properly. Many window managers, however do not comply to the
       +specification, which end up with unexpected behavior for these
       +applications, when they even start at all.
       +.Pp
       +.Nm
       +aims to provide a sane amount of hints, so that most
       +applications can function properly with a non EWMH compliant window
       +manager.
       +.Sh IMPLEMENTATION NOTES
       +.Ss _NET_SUPPORTED
       +The whole specification cannot be fully implemented in an external tool,
       +for multiple reasons (need to redirect root window events, keep track
       +of window states, …).
       +.Pp
       +Only the following atoms are supported by
       +.Nm :
       +.Pp
       +.Bl -bullet -compact
       +.It
       +_NET_SUPPORTED
       +.It
       +_NET_CLIENT_LIST
       +.It
       +_NET_CLIENT_LIST_STACKING
       +.It
       +_NET_SUPPORTING_WM_CHECK
       +.It
       +_NET_ACTIVE_WINDOW
       +.It
       +_NET_WM_WINDOW_TYPE (all types)
       +.El
       +.Ss _NET_SUPPORTING_WM_CHECK
       +The specification require that a running window manager creates a window and point the hint to this window.
       +.Nm
       +will set the override_redirect property on this window so that non-EWMH compliant window manager will ignore it as well.
       +.Ss _NET_CLIENT_LIST
       +.Ss _NET_CLIENT_LIST_STACKING
       +These atoms hold the list of windows that are managed by the window manager
       +(override_redirect unset), and/or have the hint _NET_WM_WINDOW_TYPE set to one of those values
       +.Pp
       +.Bl -bullet -compact
       +.It
       +_NET_WM_WINDOW_TYPE_UTILITY
       +.It
       +_NET_WM_WINDOW_TYPE_DIALOG
       +.It
       +_NET_WM_WINDOW_TYPE_NORMAL
       +.El
       +.Pp
       +Because we don't know the order in which the running window manager is
       +storing the windows, _NET_CLIENT_LIST also displays the window IDs in
       +their stacking order.
       +.Ss _NET_ACTIVE_WINDOW
       +This hint is updated whenever an event of type
       +.Em FOCUS_IN
       +is generated. This should usually match the currently active window from
       +the window manager point of view.
       +.Sh SEE ALSO
       +.Xr glazier 1
       +.Sh AUTHORS
       +.An Willy Goiffon Aq Mt dev@z3bra.org
 (DIR) diff --git a/glazier.1 b/glazier.1
       t@@ -0,0 +1,100 @@
       +.Dd 2020-06-07
       +.Dt GLAZIER 1
       +.Os POSIX.1
       +.Sh NAME
       +.Nm glazier
       +.Nd X window manipulator
       +.Sh SYNOPSIS
       +.Nm glazier
       +.Op Fl hv
       +.Sh DESCRIPTION
       +.Nm
       +is a floating window manipulation utility for X11. Its goal is to keep
       +track of the focused window (using sloppy focus technique) and let the
       +user move/resize windows with the mouse pointer.
       +.Bl -tag -width Ds
       +.It Fl h
       +Print a help message.
       +.It Fl v
       +Increase verbosity. There are two levels of logging:
       +.Pp
       +.Bl -enum -compact
       +.It
       +Print X events related to window management
       +.It
       +Print all received X events
       +.El
       +.El
       +.Sh WINDOW MANIPULATIONS
       +.Nm
       +supports different 5 operations on windows, each bound to a mouse
       +button. To trigger these operations, a modifier key (default: Mod1)
       +must be held before pressing the appropriate mouse button.
       +.Pp
       +.Bl -enum -compact
       +.It
       +.Em Move .
       +The window will be moved to the specified location once left
       +button is released.
       +.It
       +.Em Resize .
       +The window will be resized to the area between the top-left corner and
       +the pointer.
       +.It
       +.Em Teleport .
       +The window will be teleported in the area drawn with the middle button held.
       +.It
       +.Em Inflate .
       +Grow the window size in all 4 directions by
       +.Em move_step
       +pixels when scrolling up.
       +.It
       +.Em Deflate .
       +Shrink the window size in all 4 directions by
       +.Em move_step
       +pixels when scrolling down.
       +.El
       +.Pp
       +.Sy Note :
       +The numbers correspond to the mouse button being pressed. Only one
       +operation at a time is supported. The
       +.Em move_step
       +factor is specified at compilation time in
       +.Pa config.h .
       +.Sh IMPLEMENTATION NOTES
       +.Ss Extended Window Manager Hints
       +.Nm
       +does not comply with the EWMH specification. The specification exist
       +for applications to instruct a window manager how it should behave. I
       +believe that the user should be left with the responsibility of managing
       +applications, and not the other way around.
       +.Pp
       +If you need (partial) compliance with these specification, consider using
       +.Xr ewmh 1 .
       +.Ss Keyboard
       +Manipulating windows with the keyboard is both efficient, and
       +fast. However,
       +.Nm
       +cannot do that.
       +Implementing that within a window manager is often too rigid, and doesn't
       +provide enough flexibility to the user. For this reason, I think it is
       +more valuable to use external tools like 
       +.Xr wmutils 1
       +for this.
       +.Ss Configuration files
       +There is not configuration files in
       +.Nm .
       +The software is configured at compilation time, by tweaking the
       +.Pa config.h
       +file. Refer to this file for precisions on what can be configured.
       +.Sh ENVIRONMENT
       +.Bl -tag -width "DISPLAY"
       +.It Ev DISPLAY
       +.Nm
       +starts on this display.
       +.El
       +.Sh SEE ALSO
       +.Xr ewmh 1 ,
       +.Xr wmutils 1
       +.Sh AUTHORS
       +.An Willy Goiffon Aq Mt dev@z3bra.org