ify(1L)

NAME
ify - Iconify MGR windows

SYNOPSIS
ify [ -s ]

DESCRIPTION
Ify lets the user iconify MGR windows. When run, ify shrinks its window and displays its icon. If started with the -s option, ify does not reshape its window to fit the icon.

While ify's window is active, the user can iconify or de-iconify windows by clicking on them with the right mouse button. To iconify a window, ify shrinks it and buries it in an unoccupied portion of the screen. To de-iconify a window, ify restores the window's size, position, contents and settings. Iconified windows cannot handle input or output; programs doing output to iconified windows will block. If an application has opened several subwindows on the screen, the user may click on any of the windows to iconify the whole group; clicking on any of the iconified windows de-iconfies the whole group.

The middle mouse button displays a pop-up menu listing the currently closed windows; selecting a window from the menu opens it. The menu also contains a quit item, which exits ify, and a remake menu item, which causes ify to re-examine the display for closed windows and update its list.

Ify titles an iconified window with its NOTIFY string, possibly followed by its window id in parenthesis, if it is a subwindow. The NOTIFY string can be set from within C programs using a statement of the form
    m_setevent(NOTIFY, "title");
or from the shell using the setname program, possibly as part of the .mgrc file. If a window has no NOTIFY event set, ify titles it with the name of its tty.

To find its icon, ify searches MGR's current directory (usually the user's home directory) for a file called .ify.icon, and then searches the standard MGR icon directory for a file called ify.icon. If neither of those files exists, it despairs and downloads its own icon.

If there are no free spots on the screen, ify starts stacking windows going down the left side of the screen.

NOTES
Ify runs more smoothly when MGR has its setuid bit turned on. If MGR is not running with the setuid bit on, the pseudo-ttys for the windows end up being owned by root, not by the user. In this situation, since ify can't turn off general write permission to its tty, its internal operations become a little less robust; it may start behaving strangely when the system becomes heavily loaded, or if an application has opened many windows.

SEE ALSO
mgr(1L), close(1), setname(1L)

DIAGNOSTICS
If ify encounters an unexpected error from a system call, it prints the error message and exits. These messages are usually not very helpful to the end user, and probably indicate bugs in ify itself.

BUGS
If a program has several windows open, de-iconifying the group may leave the wrong window selected.

Some programs push their event strings without establishing a new NOTIFY string, so iconification leaves them untitled.

Ify stores information in a window's NOTIFY string while the window is iconified; if this information is corrupted, ify might not be able to reopen the window. To get around this, select the iconified window and press control-Q.

AUTHOR
Jim Blandy