Версия для печати

Архив документации на OpenNet.ru / Раздел "Файловые и оконные менеджеры" (Многостраничная версия)
Вперед

IceWM

Marko Macek, Marko.Macek@gmx.net

Russian translation by quickcode (quickcode@mail.ru)

v1.0, 1999 Dec 26


Перед вами документация к IceWM, менеджеру окон графической среды Х11. Документация неполная. Практически все, о чем здесь сказано, может в любой момент измениться.

1. Введение

2. Распространение

3. Запуск icewm

4. Способы фокусировки

5. Использование мыши

6. Использование клавиатуры

7. Путь к настройкам/ресурсам/библиотекам

8. Конфигурационные файлы

9. Предпочтения

10. Меню и панель инструментов

11. Сочетания клавиш

12. Свойства окон

13. Поддержка иконок

14. Темы

15. Опции командной строки


Вперед
Вперед Назад Содержание

1. Введение

Задача IceWM предоставить компактный, быстрый и удобный (знакомый) менеджер окон для графической системы Х11. По возможности обеспечивается совместимость с оконным менеджером mwm.

IceWM может имитировать внешние виды Motif, OS/2 Warp 4, OS/2 Warp 3 и Windows 95. В будущем могут быть добавлены и другие внешние виды.

Там где это допустимо, воспроизводятся и способы работы с выше упомянутыми системами.

Практически все операции можно производить как мышью, так и клавиатурой (за исключением фокусировки с помощью мыши).

Сверхконфигурируемость, такая как в fvwm и во многих других оконных менеджерах, НЕ ЯВЛЯЕТСЯ целью.


Вперед Назад Содержание
Вперед Назад Содержание

10. Меню и панель инструментов

10.1 menu

Конфигурационный файл меню пользователя. Определяет программы, запускаемые с помощью главного/стартового меню .

10.2 toolbar

Конфигурационный файл панели инструментов. Определяет программы, доступные в виде кнопок на панели задач.

10.3 programs

Обычно, этот конфигурационный файл содержит автоматически сгенерированное меню установленных программ. Файл programs должен быть сгенерирован с помощью wmconfig (Redhat), menu (Debian) или другой подобной программы (существуют программы kde2ice и gno2ice для перевода иерархий меню GNOME/KDE).

Синтаксис добавления программ следующий:

prog "Название" имя_иконки имя_файла_программы параметры

имя_иконки может быть - , если иконка не нужна.

Синтаксис добавления подменю следующий:

menu "Название" имя_иконки {
# содержимое подменю
}

IceWM интерпретирует только двойные кавычки. IceWM не запускает автоматически shell, так что вам придется делать это самим.


Вперед Назад Содержание
Вперед Назад Содержание

11. Сочетания клавиш

Icewm позволяет запускать любые программы с помощью каких угодно сочетаний клавиш. Это определяется в файле libpath/keys.

Синтаксис этого файла следующий:

key "сочетание клавиш" программа параметры...

Например:

key "Alt+Ctrl+t" xterm


Вперед Назад Содержание
Вперед Назад Содержание

12. Свойства окон

Файл winoptions предназначен для настройки окон отдельных приложений.

Каждая строка этого файла должна быть в одном из следующих форматов:

класс_окна.имя_окна.параметр: значение
имя_окна.параметр: значение
класс_окна.параметр: значение

Каждое окно на рабочем столе имеет (должно иметь) связанные с ним ресурсы класса и имени. Они могут быть определены с помощью утилиты xprop.

xprop при использовании с самым верхним окном выдает примерно такую строку:

WM_CLASS = "имя", "класс"

Параметры, которые могут быть определены для каждого окна, следующие:

icon

Имя иконки.

workspace

Рабочее место по умолчанию для этого окна (число, считая от 0)

layer

Слой по умолчанию для этого окна. Слой может быть определен одной из следующих строк:

Desktop

Окно рабочего стола. В этом слое должно быть только одно окно.

Below

Ниже основного слоя.

Normal

Основной слой для окон.

OnTop

Выше основного слоя.

Dock

Слой для окон, прикрепленных к краю экрана.

AboveDock

Слой над доковым слоем.

Menu

Слой над доковым слоем.

Кроме того, вы можете использовать числа из WinMgr.h.

allWorkspaces=0

Если сделать равным 1, окна будут видны на всех рабочих местах.

ignoreWinList=0

Если сделать равным 1, окно не появится в списке окон.

ignoreTaskBar=0

Если сделать равным 1, окно не появится на панели задач.

ignoreQuickSwitch=0

Если сделать равным 1, окно будет недоступно для функции быстрого переключения (Alt+Tab).

fullKeys=0

Если сделать равным 1, оконный менеджер оставит для приложений больше клавиш (Alt+F?).

fMove=1

Если сделать равным 0, окно станет неперемещаемым.

fResize=1

Если сделать равным 0, окно будет с неизменяемыми размерами.

fClose=1

Если сделать равным 0, окно станет незакрываемым.

fMinimize=1

Если сделать равным 0, окно нельзя будет минимизировать.

fMaximize=1

Если сделать равным 0, окно нельзя будет максимизировать.

fHide=1

Если сделать равным 0, окно нельзя будет спрятать.

fRollup=1

Если сделать равным 0, окно будет несворачиваемым.

dTitleBar=1

Если сделать равным 0, у окна не будет панели заголовка.

dSysMenu=1

Если сделать равным 0, у окна не будет системного меню.

dBorder=1

Если сделать равным 0, у окна не будет рамки.

dResize=1

Если сделать равным 0, у окна не будет меняющей размер рамки.

dClose=1

Если сделать равным 0, у окна не будет кнопки закрытия.

dMinimize=1

Если сделать равным 0, у окна не будет кнопки минимизации.

dMaximize=1

Если сделать равным 0, у окна не будет кнопки максимизации.

noFocusOnAppRaise

Если сделать равным 1, окно не будет автоматически получать фокус при переводе его на передний план приложением.

ignoreNoFocusHint

Если сделать равным 1, icewm передаст окну фокус даже если это окно не поддерживает ввод.


Вперед Назад Содержание
Вперед Назад Содержание

13. Поддержка иконок

Менеджер окон рассчитывает найти два XPM-файла для каждой иконки указанной в конфигурационных файлах как ICON. Эти файлы должны называться как-то так:

ICON_16x16.xpm

маленький рисунок, размером 16x16 точек.

ICON_32x32.xpm

Обычный рисунок, 32x32 точки.

ICON_48x48.xpm

Большой рисунок, 48x48 точек.

Другие размеры, такие как 20x20, 24x24, 40x40, 48x48, 64x64, могут быть использованы в будущем. Возможно, нам нужен новый формат, который может содержать больше одного рисунка (с разными размерами и количеством цветов), как .ICO-файлы Windows и OS/2.

Было бы хорошо иметь возможность изменять размер иконки в зависимости от разрешения экрана, как в OS/2 ( иконки 16x16 и 32x32 кажутся слишком мелкими на экранах с разрешением 4000x4000 ;-)


Вперед Назад Содержание
Вперед Назад Содержание

14. Темы

Темы предназначены для определения внешнего вида менеджера окон. Такие параметры, как шрифты, цвета, размеры рамок, картинки кнопок могут быть переопределены. Вместе эти настройки и составляют тему.

Файлы тем разыскиваются в подкаталогах директория libpath/themes.

Эти подкаталоги содержат другие директории, в которых размещены относящиеся к теме файлы и .xpm-картинки. Каждый .theme-файл определяет используемые темой шрифты, цвета и т.п.

Какую тему использовать определяет либо опция командной строки -t, либо параметр Theme конфигурационного файла preferences.

Theme = "nice/default.theme"

Название используемой темы. Необходимо указывать и директорий и файл темы.


Вперед Назад Содержание
Назад Содержание

15. Опции командной строки

-display ЭКРАН

Подключить X экран к ЭКРАНу.

-c CONFIG

Использовать конфигурационный файл CONFIG.

-v

Показать версию.

-n

Не использовать конфигурационных файлов. Воспользоваться значениями по умолчанию.

-t theme

Использовать указанную тему.

-debug

Выводить различные отладочные сообщения на stderr.


Назад Содержание
Вперед Назад Содержание

2. Распространение

IceWM X11 Window Manager

Copyright (C) 1997,1998,1999 Marko Macek

Примечание переводчика: в оригинальном тексте Марко Мацек вместо слова продукт использует слово библиотека и распространяет его по лицензии GNU LGPL.

Этот продукт - свободное программное обеспечение; вы можете распространять и/или модифицировать его по лицензии GNU Library General Public License версии 2 или (на ваше усмотрение) любой более поздней версии, опубликованной Free Software Foundation.

Этот продукт распространяется в надежде, что он окажется полезным, но БЕЗ КАКИХ ЛИБО ГАРАНТИЙ. За подробностями обращайтесь к лицензии GNU Library General Public License.

Вместе с продуктом вы должны были получить копию лицензии GNU Library General Public License, если ее нет, напишите по адресу: Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA.


Вперед Назад Содержание
Вперед Назад Содержание

3. Запуск icewm

Для нормальной работы функции перезапуска исполняемый файл icewm должен быть доступен через переменную $PATH.

Сначала убедитесь в отсутствии файлов $HOME/.xinitrc или $HOME/.Xsession, а если они есть, то проверьте, что они нормально запускают $HOME/.Xclients.

Рекомендуемый способ запуска - из файла $HOME/.Xclients (должен быть исполняемым). Мой выглядит примерно так:

# run profile to set $PATH and other env vars correctly
. $HOME/.bash_profile
# setup background
xsetroot -solid '#056'
# setup mouse acceleration
xset m 7 2
# run initial programs
xterm &
# start icewm, and run xterm if it crashes (just to be safe)
exec icewm || exec xterm -fg red

Х-терминал в последней строке для того, чтобы ваша Х-сессия не обвалилась в случае краха icewm (никогда не должно случиться). Из него вы сможете перезапустить icewm либо другой оконный менеджер. Сессия завершится если вы закроете xterm.

Выше приведенный способ должен работать на большинстве Linux-систем. На коммерческих унихах вы должны использовать $HOME/.dtprofile если у вас CDE, либо $HOME/.vueprofile на HP-UX с HP VUE. Если вы используете xdm или какую-нибудь другую программу входа, в ее ман-странице найдите правильное место для запуска оконного менеджера (обычно это  /.Xsession).


Вперед Назад Содержание
Вперед Назад Содержание

4. Способы фокусировки

В IceWM реализованы 4 способа фокусировки:

clickToRaise

Точно как в Win9x и OS/2 Warp. При щелчке мышью по окну, оно активизируется и выводится на передний план.

clickToFocus

Окно получает фокус и переводится на передний план при щелчке на панели заголовка либо на рамке. При щелчке на содержимом окна, окно получает фокус, но на передний план не переводится.

pointerFocus

При перемещении мыши, фокус передается окну под курсором. Если мышь не двигать, то фокус можно будет передавать другим окнам и с помощью клавиатуры.

explicitFocus

При щелчке окно активизируется, но не переводится на передний план. Новые окна получают фокус только если они принадлежат активному окну.

Выбор способа фокусировки осуществляется с помощью соответстующих параметров конфигурационных файлов.


Вперед Назад Содержание
Вперед Назад Содержание

5. Использование мыши

5.1 Работа с рамкой

Левая кнопка

Выбор окна и перевод его на передний план. На рамке окна - изменение размеров этого окна.

Правая кнопка

Если нажата, и мышь перемещается - окно двигается. При щелчке выводится контекстное меню.

5.2 Работа с панелью заголовка

Потянуть с любой нажатой кнопкой

Перемещение окна.

Alt + Левая кнопка

Перевод окна на задний план.

Двойной щелчок левой кнопкой

Максимизировать/Восстановить окно.

Щелчок средней кнопкой

Свернуть/Развернуть окно.

Удерживая нажатой во время щелчка клавишу Ctrl можно предотвратить перевод окна на передний план.

5.3 Работа с панелью задач

Щелчок левой кнопкой

Активизирует рабочее место с выбранным окном, и переводит это окно на передний план. Переключает минимизированное/активное состояние окна.

Shift + Щелчок левой кнопкой

Переносит окно на текущее рабочее место. Это работает, только если на панели задач отображаются окна со всех рабочих мест.

Control + Щелчок левой кнопкой

Минимизировать/восстановить окно.

Щелчок средней кнопкой

Перевод окна на передний/задний план.

Shift + Щелчок средней кнопки

Переносит окно на текущее рабочее место.

Control + Щелчок средней кнопкой

Перевод окна на задний план.

Щелчок правой кнопкой

Вывод контекстного меню.


Вперед Назад Содержание
Вперед Назад Содержание

6. Использование клавиатуры

Подразумевается, что клавиша Alt определена как переключатель Mod1.

Alt+F1

Перевести окно на передний план.

Alt+F2

Распространить окно на все рабочие столы.

Alt+F3

Перевести окно на задний план.

Alt+F4

Закрыть окно.

Alt+F5

Восстановить нормальное состояние окна, если оно максимизировано или минимизировано/спрятано.

Alt+F6

Передать фокус следующему окну.

Alt+Shift+F6

Передать фокус предыдущему окну.

Alt+F7

Передвинуть окно.

Alt+F8

Изменить размер окна.

Alt+F9

Минимизировать окно на панель задач.

Alt+F10

Максимизировать окно.

Alt+Shift+F10

Максимизировать окно по вертикали (переключатель).

Alt+F11

Спрятать окно (отображается в списке окон, но не на панели задач).

Alt+F12

Свернуть/Развернуть окно.

Ctrl+Escape

Показать стартовое меню.

Ctrl+Shift+Escape

Показать список окон.

Shift+Escape

Показать системное меню окна.

Alt+Escape

Передать фокус следующему окну (вниз по Z-порядку)

Alt+Shift+Escape

Передать фокус предыдущему окну (вверх по Z-порядку)

Alt+Tab

Перебор (переключение) окон (от верхнего к нижнему).

Alt+Shift+Tab

Перебор (переключение) окон (от нижнего к верхнему).

Ctrl+Alt+LeftArrow

Перейти к предыдущему рабочему месту (циклично).

Ctrl+Alt+RightArrow

Перейти к следующему рабочему месту (циклично).

Ctrl+Alt+Shift+LeftArrow

Перевести окно в фокусе на предыдущее рабочее место и активизировать его.

Ctrl+Alt+Shift+RightArrow

Переводит окно в фокусе на следующее рабочее место и активизирует его.

Ctrl+Alt+Delete

Вывести диалог управления сессией.


Вперед Назад Содержание
Вперед Назад Содержание

7. Путь к настройкам/ресурсам/библиотекам

Для поиска большинства файлов icewm использует библиотечный путь. Этот путь включает в себя следующие директории:

$HOME/.icewm

персональные настройки пользователя

/etc/X11/icewm

общесистемные значения по умолчанию

/usr/local/lib/X11/icewm

директорий по умолчанию, содержащий основные файлы (для .rpm-пакетов директорий по умолчанию - /usr/X11R6/lib/X11/icewm)

Вышеупомянутые директории просматриваются в таком порядке, что любой файл в установочном директории может быть переопределен пользователем создавшим в каталоге $HOME/.icewm аналогичную иерархию директорий и файлов.


Вперед Назад Содержание
Вперед Назад Содержание

8. Конфигурационные файлы

IceWM использует следующие конфигурационные файлы:


Вперед Назад Содержание
Вперед Назад Содержание

9. Предпочтения

Значения по умолчанию показаны после знака равенства.

9.1 Фокус и поведение

Следующим параметрам может быть присвоено значение 1 (разрешено) или значение 0 (запрещено).

ClickToFocus = 1

Разрешить фокус по щелчку.

RaiseOnFocus = 1

При получении фокуса окно переводить на передний план.

FocusOnClickClient = 1

Окно получает фокус при щелчке на содержимом этого окна.

RaiseOnClickClient = 1

При щелчке на содержимом окна, оно переводится на передний план.

RaiseOnClickTitleBar = 1

Окно переводится на передний план при щелчке на панели заголовка.

RaiseOnClickButton = 1

Окно переводится на передний план при щелчке на кнопке панели заголовка.

RaiseOnClickFrame = 1

Окно переводится на передний план при щелчке на рамке.

PassFirstClickToClient = 1

Щелчок переводящий окно на передний план передается и клиенту.

AutoRaise = 0

При получении фокуса, окна будут автоматически переводится на передний план через интервал времени равный AutoRaiseDelay.

FocusOnMap = 1

Окно получает фокус после создания.

FocusOnMapTransient = 1

Промежуточные окна получают фокус после создания.

FocusOnAppRaise = 1

Окно получает фокус когда приложение переводит его на передний план.

PointerColormap = 0

Цветовой фокус следует за курсором.

SizeMaximized = 0

У максимизированного окна можно изменять размеры.

MinimizeToDesktop = 0

Окно минимизируется и на рабочий стол (а не только на панель задач).

QuickSwitch = 1

разрешить Alt+Tab переключатель окон.

QuickSwitchToMinimized = 1

Alt+Tab переключается и на минимизированные окна.

QuickSwitchToAllWorkspaces = 1

Alt+Tab переключается на окна со всех рабочих мест.

ShowMoveSizeStatus = 1

Показывать окно статуса перемещения/изменения размеров при перемещении/изменении размеров окон.

WarpPointer = 0

В режиме фокуса под курсором, при изменении фокуса с помощью клавиатуры, перемещать указатель в позицию нового фокуса.

OpaqueMove = 1

При перемещении, окно начинает двигаться сразу, без рисования контуров нового положения (непрозрачное перемещение).

OpaqueResize = 0

Окно изменяет свои размеры сразу, без рисования контуров нового размера.

Win95Keys = 0

Разрешить функционирование 3х дополнительных клавиш. Клавиши должны быть определены, как MetaL, MetaR и Menu. Тогда левая клавиша будет активизировать стартовое меню, а правая - меню списка окон.

ManualPlacement = 0

Пользователь должен будет вручную размещать окна на рабочем месте.

IgnoreNoFocusHint = 0

Игнорировать подсказку (или событие ?) "no-accept-focus", устанавливаемую некоторыми окнами?

MenuMouseTracking = 0

Если разрешено, то меню будет отслеживать перемещения мыши, даже при отпущеной кнопке.

SnapMove = 1

Стыковать перемещаемое окно к ближайшему краю экрана/окна.

SnapDistance

Расстояние в пикселах между краями окон, прежде чем они состыкуются.

EdgeSwitch = 0

Автоматическое переключение рабочих мест при достижении мышью левого/правого края экрана.

AutoReloadMenus = 1

Автоматически перезагружать файлы меню.

9.2 Панель задач

Следующим параметрам может быть присвоено значение 1 (разрешено) или значение 0 (запрещено).

ShowTaskBar = 1

Показывать панель задач.

TaskBarAtTop = 0

Панель задач расположена вверху экрана.

TaskBarAutoHide = 0

Автоматически скрывать панель задач, когда курсор уходит с нее.

TaskBarShowStartMenu = 1

Показывать на панели задач кнопку стартового меню.

TaskBarShowWindowListMenu

Показывать на панели задач кнопку списка окон.

TaskBarShowWorkspaces = 1

Показывать на панели задач кнопки переключения рабочих мест.

TaskBarShowAllWindows = 0

Отображать на панели задач окна со всех рабочих мест.

TaskBarShowClock = 1

Показывать часы на панели задач.

TaskBatClockLeds = 1

Отображать время в графическом ЖКИ-стиле.

TaskBarShowMailboxStatus = 1

Отображать состояние почтового ящика (определяется переменной окружения $MAIL).

TaskBarMailboxStatusBeepOnNewMail = 1

Подавать звуковой сигнал при появлении новой почты.

TaskBarMailboxStatusCountMessages = 0

Отображать в качестве подсказки количество писем.

TaskBarDoubleHeight = 0

Панель задач двойной высоты (примечание переводчика: при этом в верхней части панели появится строка для ввода команд).

TaskBarShowCPUStatus = 1

Отображать на панели задач состояние процессора.

TimeFormat

Формат вывода часов панели (время) (смотри strftime(3) man-страницу)

DateFormat

Формат вывода подсказки для часов (дата+время) (смотри strftime(3) man-страницу).

UseMouseWheel

поддержка колесика у мыши

DelayPointerFocus

аналог задержки автоматического перевода на передний план.

9.3 Рамки

Следующим параметрам могут быть присвоены числовые значения.

BorderSizeX = 6

Ширина левой/правой части рамки.

BorderSizeY = 6

Высота верхней/нижней части рамки.

DlgBorderSizeX = 2

Ширина левой/правой части рамки окон с неизменяемыми размерами.

DlgBorderSizeY = 2

Высота верхней/нижней части рамки окон с неизменяемыми размерами.

CornerSizeX = 24

Ширина уголка окна.

CornerSizeY = 24

Высота уголка окна.

TitleBarHeight = 20

Высота панели заголовка.

EdgeResistance = 32

Сопротивление при перемещении окна за границу экрана. Установка значения 10000 делает это сопротивление бесконечным.

UseRootButtons

Битовая маска щелчка на рабочем столе.

ButtonRaiseMask

Битовая маска кнопок вызывающих перевод окна на передний план.

9.4 Временные интервалы

ClickMotionDistance = 5

Смещение, после которого щелчок будет считаться тягой (drag).

MultiClickTime = 400

Время (мс) для распознавания двойного щелчка.

AutoRaiseDelay = 400

Задержка перед автоматическим переводом на передний план (должна быть предварительно разрешена в параметре AutoRaise).

AutoHideDelay = 300

Задержка перед автоматическим сокрытием панели задач (должна быть предварительно разрешена в TaskBarAutoHide).

ToolTipDelay = 1000

Задержка перед показам подсказки.

ScrollBarStartDelay

Начальная задержка автоскроллинга ползунка

ScrollBarDelay

Задержка автоскроллинга ползунка

AutoScrollStartDelay

Задержка перед началом автоскроллинга

AutoScrollDelay

задержка автоскроллинга

9.5 Шрифты

Следующим параметрам могут быть присвоены строковые значения.

TitleFontName = ""

Название шрифта панели заголовка.

MenuFontName = ""

Название шрифта меню.

StatusFontName = ""

Название шрифта отображения статуса.

QuickSwitchFontName = ""

Название шрифта для окна Alt+Tab переключателя.

NormalTaskBarFontName = ""

Название шрифта для нормального элемента панели задач.

ActiveTaskBarFontName = ""

Название шрифта для активного элемента панели задач.

ListBoxFontName = ""

Название шрифта списка окон.

ToolTipFontName = ""

Название шрифта для подсказок.

ClockFontName =""

Название шрифта для часов на панели задач.

9.6 Цвета

ColorActiveBorder

Цвет рамки активного окна.

...

... ЕЩЕ НЕ НАПИСАНО (полный список со значениями по умолчанию смотри в файле preferences)

9.7 Фон рабочего стола

DesktopBackgroundColor

Цвет фона рабочего стола.

DesktopBackgroundImage

Рисунок (.xpm) для фона рабочего стола. Если вы хотите, чтобы icewm игнорировал рисунок/цвет фона рабочего стола, присвойте обоим параметрам DesktopBackgroundColor и DesktopBackgroundImage пустые значения ("").

DesktopBackgroundCenter = 0

Отображать фоновый рисунок рабочего стола в центре и неразмноженным. (присвойте 0 или 1).

9.8 Рабочие места

WorkspaceNames

Список названий рабочих мест, например:

WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4 "

9.9 Пути

LibPath

Путь к icewm/lib директорию.

IconPath

Путь к директорию с иконками. Может быть указано несколько путей, разделенных запятой (UNIX) или точкой с запятой (OS/2).

9.10 Программы

ClockCommand

Программа, запускаемая при двойном щелчке на часах.

MailCommand

Программа, запускаемая при двойном щелчке на иконке почтового ящика.

LockCommand

Программа блокировки экрана.

RunCommand

Программа, запускаемая при выборе в стартовом меню пункта Run.


Вперед Назад Содержание
Вперед

IceWM

Marko Macek, Marko.Macek@gmx.net

Russian translation by quickcode (quickcode@mail.ru)

v1.0, 1999 Dec 26


Перед вами документация к IceWM, менеджеру окон графической среды Х11. Документация неполная. Практически все, о чем здесь сказано, может в любой момент измениться.

1. Введение

2. Распространение

3. Запуск icewm

4. Способы фокусировки

5. Использование мыши

6. Использование клавиатуры

7. Путь к настройкам/ресурсам/библиотекам

8. Конфигурационные файлы

9. Предпочтения

10. Меню и панель инструментов

11. Сочетания клавиш

12. Свойства окон

13. Поддержка иконок

14. Темы

15. Опции командной строки


Вперед