Этот документ является руководством по IceWM, диспетчеру окон для X11. Man-страницы IceWM предоставляют дополнительную документацию.
Цель проекта IceWM - создать маленький, быстрый и дружелюбный диспетчер окон для системы окон X11, совместимый с протоколами управления окнами EWMH и ICCCM. Обычно он старается сделать все функции доступными и с помощью клавиатуры, и с помощью мыши (это в настоящее время недоступно при использовании фокуса мыши).
IceWM изначально создавался для имитации внешнего вида Motif, OS/2 Warp 4, OS/2 Warp 3 и Windows 95. Поскольку он имеет движок тем, допустимы другие стили оформления. Большое количество оригинальных тем созданы и опубликованы пользователями.
Дополнительную информацию можно найти на вебсайте IceWM, на текущем сайте разработки, включая запросы на поддержку.
IceWM и эта документация защищены лицензией GNU LGPL, включенной в комплект поставки.
Набор IceWM состоит из следующих основных приложений, предоставляемых главным пакетом:
icewm - Собственно бинарник диспетчера окон. Он управляет расположением окон и рисует их оформление.
icewmbg - Приложение для настройки фона рабочего стола. Оно назначает просто цвет фона или изображение в разных форматах в качестве фона X-ов. Любой общий или отдельный для каждого рабочего места. Эта программа должна стартовать перед icewm
.
icewm-session - Диспетчер сессии IceWM, запускает все вышеупомянутые. Это предпочтительная программа для старта IceWM.
icewm-menu-fdo - Генерирует меню программ IceWM из FreeDesktop .desktop
файлов.
icewmhint - Простая утилита для передачи рекомендаций (hints) IceWM к icewm
через класс окна и экземпляр. Icewmhint использует особое свойство, ‘“_ICEWM_WINOPHINT”’, на корневом окне для передачи специальных рекомендаций в IceWM.
icehelp - Используется icewm для показа ‘Руководства по IceWM’ и man-страниц. См. вывод icehelp --help
для подробностей.
icesh - Может быть использовано для управления внутренним устройством IceWM из командной строки.
Программа icewm
подходит для использования в окружении рабочего стола наподобие GNOME. Если вы хотите запустить весь набор IceWM (диспетчер окон, изменение фона, поддержка приложений-Докаппов и обработка скриптов старта/останова), используйте бинарник icewm-session
вместо просто icewm
. Обратите внимание, что это не настоящий Диспетчер сессий, но помогает автоматизировать запуск.
Сначала убедитесь, что вы выбрали правильный скрипт запуска X-ов в вашем домашнем каталоге. Для большинства дистрибутивов любой из файлов $HOME/.xsession
или $HOME/.xinitrc
служат для startx и менеджеров дисплея X вроде KDM. В RedHat $HOME/.Xclients
может быть использован вместо них. В любом случае выберите рекомендуемый вашим дистрибутивом и убедитесь, что здесь нет дублирующихся скриптов запуска X-ов. Обеспечьте, чтобы скрипт был исполняемым. Мой выглядит примерно так:
#!/bin/bash
# run profile to set $PATH and other env vars correctly
. $HOME/.bash_profile
# setup touchpad and the external mouse
xset m 7 2
xinput set-ptr-feedback 0 7 1.9 1
# start icewm-session
exec icewm-session
xterm
Xterm в последней строке здесь просто для того, чтобы убедиться, что ваша сессия X-ов не упала, если IceWM это сделает (чего не должно случиться никогда). Вы сможете перезапустить IceWM отсюда или запустить другой диспетчер окон. Сессия закроется, если вы закроете xterm.
После инициализации icewm-session
ищет путь к ресурсам для скрипта startup
. Если этот файл был найден и он исполняемый, icewm-session
запускает этот скрипт. Перед завершением icewm-session
выполняется скрипт shutdown
.
Пример скрипта ~/.icewm/startup
:
#!/bin/bash
[ -x ~/.icewm/restart ] && source ~/.icewm/restart
gnome-terminal --geometry 80x25+217+235 &
xscreensaver &
При завершении сначала будет выполнен скрипт shutdown
, потом icewm-session
завершит icewm и icewmbg.
Подсказка: icewm-session
служит просто для инициализации рабочего стола и является частью IceWM из-за известных потребностей. Для более сложного управления сессиями используйте настоящий диспетчер сессий. IceWM поддерживает протокол XSESSION.
Пожалуйста, заметьте, что если icewm-session используется только как механизм запуска (без участия .xsession), можно вписать дополнительные настройки окружения в файл $HOME/.icewm/env
. Расширение переменными в простом стиле оболочки поддерживается большинством платформ. Расширение командами оболочки поддерживается, если настроен wordexp
. Это дополнительное окружение эффективно только в приложениях, запущенных icewm-session и его подпроцессами.
Пример env
:
PATH=~/bin:$PATH
LANG=de_DE.UTF-8
IceWM реализует четыре основных режима фокуса:
clickToRaise
Так же, как в Win95, OS/2 Warp. При щелчке мышью, оно поднимается и активируется.
clickToFocus
Окно поднимается и получает фокус при щелчке на заголовке или ограничительной рамке. Окно получает фокус, но не поднимается при щелчке внутри окна.
pointerFocus
Когда мышь двигается, фокус получает окно под курсором мыши. Смена фокуса с помощью клавиатуры возможна, когда мышь не двигается.
explicitFocus
При щелчке на окне оно активируется, но не поднимается. Новые окна не получают автоматически фокус, если не являются промежуточными окнами для активного окна.
Подробная настройка возможна с использованием параметров конфигурационного файла.
Левая кнопка
Выбрать и поднять окно. По рамке окна, изменить размер окна.
Правая кнопка
Если потянуть, передвинуть окно. Если щёлкнуть, показать контекстное меню.
Потянуть любой кнопкой
Переместить окно.
Alt + Левая кнопка
Убрать окно вниз.
Двойной щелчок левой кнопкой
Развернуть/Восстановить окно.
Двойной щелчок средней кнопкой
Скрутить вверх/Раскрутить окно.
Клавиша Ctrl может использоваться вместе с кнопкой мыши для предотвращения поднятия окна на вершину стека.
Щелчок левой кнопкой
Активировать рабочее место с окном и поднять окно. Переключает свёрнутое/активное состояние окна.
Shift + Щелчок левой кнопкой
Переместить окно на текущее рабочее место. Это работает только когда окна со всех рабочих мест постоянно присутствуют на панели задач.
Control + Щелчок левой кнопкой
Свернуть/восстановить окно.
Щелчок средней кнопкой
Переключает поднятое вверх/опущенное вниз состояние окна.
Shift + Щелчок средней кнопкой
Добавить окно на текущее рабочее место.
Control + Щелчок средней кнопкой
Опустить окно вниз.
Щелчок правой кнопкой
Показать контекстное меню.
Клавиша Alt подразумевает, что эта клавиша определена как модификатор Mod1.
Alt+F1
Поднять окно наверх.
Alt+F2
Сделать окно видимым на всех рабочих местах.
Alt+F3
Опустить окно в основание стека.
Alt+F4
Закрыть окно.
Alt+F5
Восстановить состояние окна, если оно развёрнуто или свёрнуто/спрятано.
Alt+F6
Отдать фокус следующему окну.
Alt+Shift+F6
Отдать фокус предыдущему окну.
Alt+F7
Начать перемещение активного окна. Окно перемещается либо мышью, либо клавишами-стрелками. Перемещение клавишами-стрелками может быть ускорено вчетверо нажатием клавиши Shift или в шестнадцать раз - клавиши Control. Нажмите левую кнопку или клавишу Enter чтобы закончить. Для отмены нажмите Escape.
Alt+F8
Начать изменение размера активного окна. Изменить размер окна можно либо мышью, либо клавишами-стрелками. Перемещение клавишами-стрелками может быть ускорено вчетверо нажатием клавиши Shift или в шестнадцать раз - клавиши Control. Нажмите левую кнопку или клавишу Enter чтобы закончить. Для отмены нажмите Escape.
Alt+F9
Свернуть окно в кнопку на панели задач.
Alt+F10
Развернуть окно.
Alt+Shift+F10
Развернуть окно по вертикали (триггер).
Alt+F11
Спрятать окно (появится в списке окон, но не на панели задач).
Alt+F12
Скрутить окно в заголовок (триггер).
Ctrl+Escape
Показать стартовое меню.
Ctrl+Alt+Escape
Показать список окон.
Shift+Escape
Показать системное меню окна.
Alt+Escape
Отдать фокус следующему окну (вниз по порядку наложения).
Alt+Shift+Escape
Отдать фокус предыдущему окну (вверх по порядку наложения).
Alt+Tab
Переключает между окнами (верх -> низ).
Alt+Shift+Tab
Переключает между окнами (низ -> верх).
Ctrl+Alt+Стрелка влево
Переключает на предыдущее рабочее место (цикл).
Ctrl+Alt+Стрелка вправо
Переключает на следующее рабочее место (цикл).
Ctrl+Alt+Стрелка вниз
Переключает на предыдущее активное рабочее место.
Ctrl+Alt+Shift+Стрелка влево
Переместить окно с фокусом на предыдущее рабочее место и активировать его.
Ctrl+Alt+Shift+Стрелка вправо
Переместить окно с фокусом на следующее рабочее место и активировать его.
Ctrl+Alt+Shift+Стрелка вниз
Переместить окно с фокусом на предыдущее активное рабочее место и активировать его.
Ctrl+Alt+Delete
Показать диалог сессии.
Ctrl+Alt+Space
Активировать Панель адреса. Это командная строка на панели задач, где можно напечатать команду оболочки. Нажатие клавиши Enter выполнит команду. Если AddressBarCommand настроен, он будет использован для выполнения команды, иначе используется /bin/sh
. Если также нажата клавиша Control, то команда выполнится в терминале, заданном в TerminalCommand. Панель адреса поддерживает историю, по которой можно перемещаться с помощью стрелок Вверх и Вниз. Поддерживается богатый набор операций редактирования, включая операции вырезания/копирования/вставки и дополнения файла c использованием Tab или Ctrl-I.
Ctrl+Alt+d
Показать рабочий стол.
Ctrl+Alt+h
Переключить видимость панели задач.
IceWM смотрит в некоторые местоположения для информации о конфигурации, темах и настройках; их общим наименованием будет “путь к ресурсам”. Путь к ресурсам содержит следующие каталоги:
$ICEWM_PRIVCFG; $XDG_CONFIG_HOME/icewm; $HOME/.icewm
Первый же из них, который определён и существует, используется для поиска индивидуальных пользовательских настроек.
/etc/icewm каталог с общесистемными настройками по умолчанию
/usr/share/icewm или /usr/local/share/icewm вкомпилированный каталог по умолчанию с файлами по умолчанию
Прим. переводчика: обратите внимание, что ваша сборка может быть сконфигурирована с использованием другого расположения этих каталогов в системе. Вывод icewm --directories
покажет его.
Поиск каталогов производится в вышеуказанном порядке, так что любой файл, расположенный в системном/установочном каталоге может быть перекрыт пользователем созданием такого же в каталоге в иерархии под $HOME/.icewm
.
Для настройки icewm под себя создайте каталог $HOME/.icewm
и скопируйте те файлы, которые хотите изменить, вроде preferences
, keys
или winoptions
из /etc/icewm
, /usr/share/icewm
или /usr/local/share/icewm
и измените их по вашему вкусу.
Для настройки тем по умолчанию создайте каталог $HOME/.icewm/themes
, скопируйте туда все файлы темы и тогда измените как вам надо. Каждая тема имеет свой каталог. Темы можно загрузить из https://themes.ice-wm.org.
IceWM использует следующие файлы конфигурации:
Текущая выбранная тема
Общие параметры - пути, цвета, шрифты…
Параметры, которые должны перекрывать темы.
Меню запускаемых приложений. Обычно настраивается пользователем.
Автоматически генерируемое меню запускаемых приложений (его можно использовать для wmconfig, menu или похожих приложений, возможно как часть последовательности логина или запуска X-ов).
Параметры окон приложений.
Глобальные сочетания клавиш для запуска приложений (не связанных с диспетчером окон).
Быстрый запуск приложений с помощью значков на панели задач.
Файл theme
содержит текущую выбранную тему. Он будет автоматически перезаписан при выборе темы через меню Темы.
Эта секция показывает предпочтения, которые могут быть установлены в preferences
. Темы не могут быть перекрыты этими параметрами. Значения по умолчанию показаны после знака равенства.
Следующие параметры могут иметь значение 1 (включено) или 0 (выключено).
ClickToFocus = 1
Включает режим click to focus.
RaiseOnFocus = 1
Окно поднимается, когда получает фокус.
FocusOnClickClient = 1
Окно получает фокус при щелчке в клиентской области.
RaiseOnClickClient = 1
Окно поднимается при щелчке в клиентской области.
RaiseOnClickTitleBar = 1
Окно поднимается при щелчке по панели заголовка.
RaiseOnClickButton = 1
Окно поднимается при щелчке по кнопке заголовка.
RaiseOnClickFrame = 1
Окно поднимается при щелчке по рамке.
LowerOnClickWhenRaised = 0
Опустить активное окно при повторном щелчке.
PassFirstClickToClient = 1
Щелчок, поднимающий окно, также проходит к клиенту.
FocusChangesWorkspace = 0
Сменить на рабочее место для окон, вновь получивших фокус.
AutoRaise = 0
Окна автоматически поднимаются через AutoRaiseDelay после получения фокуса.
StrongPointerFocus = 0
Когда фокус следует за мышью, всегда давать фокус окну под указателем мыши - даже когда не происходит движения мыши. Использовать это не рекомендуется. Пожалуйста, отдайте предпочтение использованию просто ClickToFocus=0.
FocusOnMap = 1
Окно получает фокус после появления.
FocusOnMapTransient = 1
Промежуточное(временное) окно получает фокус после появления.
FocusOnMapTransientActive = 1
Дать фокус диалоговому окну при появлении только если у родительского есть фокус.
FocusOnAppRaise = 1
Окно получает фокус, когда приложение поднимет его.
RequestFocusOnAppRaise = 1
Запросить фокус (миганием на панели задач), когда приложение запрашивает поднятие.
MapInactiveOnTop = 1
Расположить новые окна наверху, даже если они не имеют фокуса.
PointerColormap = 0
Цветовой фокус следует за указателем.
DontRotateMenuPointer = 1
Не поворачивать курсор для всплывающих меню.
LimitSize = 1
Ограничить размер окон на экране.
LimitPosition = 1
Ограничить позицию окон на экране.
LimitByDockLayer = 0
Разрешить слою Док ограничить рабочее место (несовместимо с GNOME Panel).
ConsiderHBorder = 0
Учитывать рамки бордюра, когда развёрнуто горизонтально.
ConsiderVBorder = 0
Учитывать рамки бордюра, когда развёрнуто вертикально. .
ConsiderSizeHintsMaximized = 1
Учитывать XSizeHints, если рамка развёрнута.
CenterMaximizedWindows = 0
Центрировать развёрнутые окна, когда они не соответствуют экрану (как терминалы).
HideBordersMaximized = 0
Скрывать бордюры окон, если окна развёрнуты.
HideTitleBarWhenMaximized = 0
Скрывать панель заголовка, когда окна развёрнуты.
CenterLarge = 0
Центрировать большие окна.
CenterTransientsOnOwner = 1
Центрировать диалоги по окну-владельцу.
SizeMaximized = 0
Можно изменять размеры развёрнутого окна.
MinimizeToDesktop = 0
Окно сворачивается на рабочий стол (в дополнение к панели задач).
MiniIconsPlaceHorizontal = 0
Расположение мини-значков горизонтальное вместо вертикального.
MiniIconsRightToLeft = 0
Расположение мини-значков справа налево.
MiniIconsBottomToTop = 0
Расположение мини-значков снизу вверх.
GrabRootWindow = 1
Управлять корневым окном (ЭКСПЕРИМЕНТАЛЬНЫЙ - нормально включен!).
ShowMoveSizeStatus = 1
Статус окна перемещение/изменение размера виден, когда окно перемещается/меняет размер.
ShowWorkspaceStatus = 1
Показывать имя текущего рабочего места во время переключения.
ShowWorkspaceStatusAfterSwitch = 1
Показывать имя текущего рабочего места при переключении рабочих мест.
ShowWorkspaceStatusAfterActivation = 1
Показывать имя текущего рабочего места после явной активации.
WarpPointer = 0
При перемещении фокуса с помощью клавиатуры указатель передвигается в позицию фокуса.
OpaqueMove = 1
При перетаскивании окно начинает движение сразу, не отображая контур.
OpaqueResize = 0
При перетаскивании окно начинает изменение размеров сразу, не отображая контур.
DelayPointerFocus = 1
Похоже на задержку автоматического подъёма.
Win95Keys = 0
Делает 3 дополнительные клавиши выполняющими полезные функции. Клавиши должны быть определены как MetaL, MetaR и Menu. Левая будет активировать стартовое меню, а правая будет показывать список окон.
ModSuperIsCtrlAlt = 1
Рассматривать модификатор Super/Win как Ctrl+Alt.
UseMouseWheel = 0
Поддержка колеса мыши.
TaskBarTaskGrouping = 0
Группировать приложения с тем же самым именем класса под одной кнопкой задачи.
ShowPopupsAbovePointer = 0
Показывать всплывающие меню выше указателя мыши.
ReplayMenuCancelClick = 0
Отправлять щелчки вне меню в целевое окно.
ManualPlacement = 0
Окна должны быть размещены пользователем вручную.
SmartPlacement = 1
Интеллектуальное размещение окон (минимальное наложение).
IgnoreNoFocusHint = 0
Игнорировать рекомендацию (hint) no-accept-focus, установленную некоторыми окнами.
MenuMouseTracking = 0
Если включено, меню будут отслеживать мышь, даже когда кнопка мыши не нажата.
ClientWindowMouseActions = 1
Разрешить действия мышью на клиентских окнах.
SnapMove = 1
Пристыковать к ближайшему краю экрана/окну при перемещении окна.
SnapDistance = 8
Дистанция в пикселах перед стыковкой окон вместе.
ArrangeWindowsOnScreenSizeChange = 1
Автоматически упорядочивать окна при изменении размера экрана.
MsgBoxDefaultAction = 0
Предварительно выбрать кнопку Отмена (0) или OK (1) в окне сообщений.
EdgeResistance = 32
Сопротивление перемещению окна мышью за пределы экрана. Установка его в 10000 делает сопротивление бесконечным.
AllowFullscreen = 1
Разрешить переключать окна в полноэкранный режим.
FullscreenUseAllMonitors = 0
Span over all available screens if window goes into fullscreen.
NetWorkAreaBehaviour = 0
NET_WORKAREA behaviour: 0 (single/multimonitor with STRUT information, like metacity), 1 (always full desktop), 2 (singlemonitor with STRUT, multimonitor without STRUT).
ConfirmLogout = 1
Подтверждать выход из системы.
MultiByte = 1
Перекрывать автоматическое определение многобайтной кодировки.
ShapesProtectClientWindow = 1
Don’t cut client windows by shapes set trough frame corner pixmap.
DoubleBuffer = 1
Использовать двойную буферизацию при перерисовке изображения.
XRRDisable = 0
Disable use of new XRANDR API for dual head (nvidia workaround)
PreferFreetypeFonts = 1
Когда доступно, сделать предпочтение использованию шрифтов *XFT перед основными шрифтами X11.
IconPath = /usr/share/icons/hicolor:/usr/share/icons:/usr/share/pixmaps
Путь поиска значков (разделитель - двоеточие).
MailCommand = xterm -name mutt -e mutt
Команда, выполняемая при щелчке по почтовому ящику.
MailClassHint = mutt.XTerm
WM_CLASS, разрешающий runonce (прим. переводчика: если приложение не запущено, запустить его, если же уже работает, вызвать его на передний план) для MailCommand.
LockCommand =
Команда для блокировщика экрана/хранителя экрана.
ClockCommand = xclock -name icewm -title Clock
Команда, выполняемая при щелчке по часам.
ClockClassHint = icewm.XClock
WM_CLASS, разрешающий runonce для ClockCommand.
RunCommand =
Команда, выбранная для пуска программ.
OpenCommand =
Команда, выполняемая для открытия файла.
TerminalCommand = xterm
Эмулятор терминала, должен принимать параметр “-e”.
LogoutCommand =
Команда для начала выхода из системы.
LogoutCancelCommand =
Команда для прерывания выхода из системы.
ShutdownCommand =
Команда для выключения системы.
RebootCommand =
Команда для перезагрузки системы.
SuspendCommand =
Команда для перевода системы в ждущий режим.
CPUStatusCommand =
Команда, выполняемая при щелчке по статусу CPU.
CPUStatusClassHint = top.XTerm
WM_CLASS, разрешающий runonce для CPUStatusCommand.
CPUStatusCombine = 1
Объединить все CPU в один (прим. переводчика: для апплета статуса CPU).
NetStatusCommand =
Команда, выполняемая при щелчке по статусу сети.
NetStatusClassHint = netstat.XTerm
WM_CLASS, разрешающий runonce для NetStatusCommand.
AddressBarCommand =
Команда, выполняемая для записей панели адреса.
XRRPrimaryScreenName =
screen/output name of the primary screen.
QuickSwitch = 1
Включить переключение окон по Alt+Tab.
QuickSwitchToMinimized = 1
Alt+Tab также переключает свёрнутые окна.
QuickSwitchToHidden = 1
Alt+Tab для скрытых окон.
QuickSwitchToUrgent = 1
Отдавать приоритет Alt+Tab срочным окнам.
QuickSwitchToAllWorkspaces = 1
Alt+Tab переключает окна на любых рабочих местах.
QuickSwitchGroupWorkspaces = 1
Alt+Tab: группировать окна на текущем рабочем месте.
QuickSwitchAllIcons = 1
Показывать все доступные значки при быстром переключении.
QuickSwitchTextFirst = 0
Показывать заголовок окна выше (всех доступных) значков.
QuickSwitchSmallWindow = 0
Попытаться создать маленькое окно Быстрого переключения (1/3 вместо 3/5).
QuickSwitchMaxWidth = 0
Пройтись по всем заголовкам окон и выбрать ширину самого длинного из них.
QuickSwitchVertical = 1
Расположение значков и заголовков вертикальное вместо горизонтального.
QuickSwitchHugeIcon = 0
Показать огромный (48x48) значок окна для активного окна.
QuickSwitchFillSelection = 0
Заполнить подсвеченный прямоугольник текущего значка.
EdgeSwitch = 0
Переключать рабочие места при движении мыши к левому/правому краю экрана.
HorizontalEdgeSwitch = 0
Переключить рабочее место при движении мыши к левому/правому краю экрана.
VerticalEdgeSwitch = 0
Переключить рабочее место при движении мыши к верхнему/нижнему краю экрана.
ContinuousEdgeSwitch = 1
Непрерывно переключать рабочие места при движении мыши к краю экрана.
Следующие параметры могут быть установлены в значение 1 (включено) или значение 0 (выключено).
ShowTaskBar = 1
Сделать панель задач видимой.
TaskBarAtTop = 0
Панель задач расположена вверху экрана.
TaskBarKeepBelow = 1
Хранить панель задач ниже обычных окон.
TaskBarAutoHide = 0
Автоматически скрывается панель задач, когда мышь покидает её.
TaskBarFullscreenAutoShow = 1
Автоматически показывать панель задач, когда активно полноэкранное окно.
TaskBarShowClock = 1
Сделать часы на панели задач видимыми.
TaskBarShowAPMStatus = 0
Показывать монитор статуса батареи на панели задач.
TaskBarShowAPMAuto = 1
Включить TaskBarShowAPMStatus, если батарея присутствует.
TaskBarShowAPMTime = 1
Показывать статус батареи в формате времени.
TaskBarShowAPMGraph = 1
Показывать статус батареи в графическом режиме.
TaskBarShowMailboxStatus = 1
Показывать статус почтового ящика (см. ‘Почтовый ящик’ ниже).
TaskBarMailboxStatusBeepOnNewMail = 0
Сигнализировать о приходе новой почты.
TaskBarMailboxStatusCountMessages = 0
Показывать счётчик почтовых сообщений в виде всплывающей подсказки.
TaskBarShowWorkspaces = 1
Показывать кнопки переключения рабочих мест на панели задач.
TaskBarShowWindows = 1
Показывать окна на панели задач.
TaskBarShowShowDesktopButton = 1
Показывать кнопку ‘Показать Рабочий стол’ на панели задач. Если установить в 2, переместить значок вправо, после часов.
ShowEllipsis = 0
Показывать многоточие на элементах панели задач и некоторых других местах. Это визуальный индикатор наподобие “…” для показа в строках, не помещающихся в видимую область.
TaskBarShowTray = 1
Показывать окна в системном лотке.
TrayShowAllWindows = 1
Показывать окна со всех рабочих мест в системном лотке.
TaskBarEnableSystemTray = 1
Включить системный лоток на панели задач.
TaskBarShowTransientWindows = 1
Показывать временные (диалоги, …) окна на панели задач.
TaskBarShowAllWindows = 0
Показывать окна со всех рабочих мест на панели задач.
TaskBarShowWindowIcons = 1
Показывать значки окон на панели задач.
TaskBarShowStartMenu = 1
Показывать кнопку стартового меню на панели задач.
TaskBarShowWindowListMenu = 1
Показывать кнопку меню списка окон на панели задач.
TaskBarShowCPUStatus = 1
Показывать статус CPU на панели задач (Linux & Solaris).
CPUStatusShowRamUsage = 1
Показывать использование памяти в окне всплывающей подсказки статуса CPU.
CPUStatusShowSwapUsage = 1
Показывать использование swap в окне всплывающей подсказки статуса CPU.
CPUStatusShowAcpiTemp = 1
Показывать температуру ACPI в окне всплывающей подсказки статуса CPU.
CPUStatusShowAcpiTempInGraph = 0
Показывать температуру ACPI на графике CPU.
AcpiIgnoreBatteries =
Список игнорируемых имён батарей.
CPUStatusShowCpuFreq = 1
Показывать частоту CPU в окне всплывающей подсказки статуса CPU.
NetStatusShowOnlyRunning = 0
Показывать статус сети только для подключенных устройств, присутствующих как активные проводные соединения или ассоциированные беспроводные интерфейсы. Если “false”, будут показаны любые поднятые сетевые интерфейсы.
TaskBarShowMEMStatus = 1
Показывать статус использования памяти на панели задач (только Linux).
TaskBarShowNetStatus = 1
Показывать статус сети на панели задач (только Linux).
NetworkStatusDevice = "[ew]*"
Список сетевых устройств, что будут показаны в системном лотке, разделённых пробелами. Шаблоны оболочки также могут быть использованы.
TaskBarShowCollapseButton = 0
Показать кнопку для сворачивания панели задач.
TaskBarDoubleHeight = 0
Панель задач двойной высоты.
TaskBarWorkspacesLeft = 1
Расположить пейджер рабочих мест слева, не справа.
TaskBarWorkspacesTop = 0
Расположить пейджер рабочих мест в верхнем ряду, когда использована панель задач двойной высоты.
PagerShowPreview = 1
Показывать миниатюры рабочего стола на каждой из кнопок рабочих мест. При нажатии средней кнопки мыши будет показан ‘список окон’. Правая кнопка активирует ‘меню списка окон’. При использовании колеса прокрутки на ‘списке окон’ указатель быстро пробежит по всем рабочим местам.
PagerShowWindowIcons = 1
Рисовать значки окон внутри достаточно больших миниатюр окон на пейджере (если PagerShowPreview=1).
PagerShowMinimized = 1
Рисовать даже свёрнутые окна как незаполненные прямоугольники (если PagerShowPreview=1).
PagerShowBorders = 1
Рисовать бордюрчики вокруг кнопок рабочих мест (если PagerShowPreview=1).
PagerShowNumbers = 1
Показывать номер рабочего места на кнопке рабочего места (если PagerShowPreview=1).
TaskBarLaunchOnSingleClick = 1
Выполнять команды апплета панели задач (такие, как MailCommand, ClockCommand, …) по одинарному щелчку.
EnableAddressBar = 1
Включить функциональность панели адреса на панели задач.
ShowAddressBar = 1
Показывать панель адреса на панели задач.
TimeFormat = "%X"
Формат для часов (времени) на панели задач (см. man-страницу strftime(3)).
TimeFormatAlt = ""
Альтернативный формат времени часов (напр. для эффектов мерцания)
DateFormat = "%c"
Формат для окна всплывающей подсказки часов (дата+время) (см. man-страницу strftime(3)).
TaskBarCPUSamples = 20
Ширина Монитора CPU.
TaskBarMEMSamples = 20
Ширина Монитора памяти.
TaskBarNetSamples = 20
Ширина Монитора сети.
TaskbarButtonWidthDivisor = 3
Количество по умолчанию кнопок задач на панели задач.
TaskBarWidthPercentage = 100
Ширина панели задач в процентах от ширины экрана.
TaskBarJustify = "left"
Основание панели задач слева, справа или по центру.
TaskBarApmGraphWidth = 10
Ширина Монитора батареи.
TaskBarGraphHeight = 20
Высота апплетов мониторинга на панели задач.
XineramaPrimaryScreen = 0
Первичный экран для xinerama (панель задач, …).
MailCheckDelay = 30
Интервал между проверками новой почты (секунды).
MailBoxPath = ""
Здесь может содержаться список спецификаций почтовых ящиков. Почтовые ящики разделяются пробелами. Если TaskBarShowMailboxStatus
включен, то IceWM мониторит каждый почтовый ящик на изменение статуса каждые MailCheckDelay
секунд. Для каждого почтового ящика IceWM показывает значок на панели задач. Значок показывает, есть ли почта, есть ли непрочитанная почта или есть ли новая почта. Наведение указателя мыши на значок покажет количество сообщений в этом почтовом ящике, а также количество непрочитанной почты. Почтовый ящик может быть путём к файлу в обычном формате mbox. Если путь указывает на каталог, то предполагается формат Maildir. Удалённые почтовые ящики специфицируются по URL, используя Common Internet Scheme Syntax (RFC 1738):
scheme://user:password@server[:port][/path]
Поддерживаются схемы pop3
, pop3s
, imap
, imaps
и file
. Схемы pop3s
и imaps
зависят от наличия команды openssl
для шифрования TLS/SSL
. Здесь также выбирается любой port
993
для imap или 995
для pop3. Когда схема опущена, предполагается file
. Подпапки IMAP могут быть заданы как компонент path. Зарезервированные символы, такие как slash, at и colon могут быть определены с использованием escape-последовательностей, как %2f
для косой черты или %40
для знака at. Например:
file:///var/spool/mail/captnmark
file:///home/captnmark/Maildir/
pop3://markus:%2f%40%3a@maol.ch/
pop3s://markus:password@pop.gmail.com/
imap://mathias@localhost/INBOX.Maillisten.icewm-user
imaps://mathias:password@imap.gmail.com/INBOX
Для помощи в разрешении ошибок сетевого протокола для pop3 и imap установите переменную окружения ICEWM_MAILCHECK_TRACE
. IceWM тогда запишет в лог подробности коммуникации для почтовых ящиков POP3 и IMAP. Просто поставьте export ICEWM_MAILCHECK_TRACE=1
перед выполнением icewm или поставьте это в конфигурационный файл env
.
Заметьте, что для доступа IceWM к Gmail вы должны сперва настроить ваш аккаунт Gmail для включения доступа по POP3 или IMAP. Для разрешения не-Gmail приложениям вроде IceWM использовать это см. сайт помощи Gmail на предмет “Let less secure apps use your account”. Также установите безопасные права доступа к файлу preferences
вашего IceWM и каталогу, содержащему его. Но всегда неразумно хранить пароль в файле. Рассмотрите расширение “кошелька” для IceWM. Следующий фрагмент кода на Perl демонстрирует как перекодировать пароль вроде !p@a%s&s~
в шестнадцатеричный вид:
perl -e 'foreach(split("", $ARGV[0])) { printf "%%%02x", ord($_); }; print "\n";' '!p@a%s&s~'
%21%40%23%24%25%5e%26%2a%7e
NewMailCommand =
Команда для запуска получения новой почты. Она выполняется через /bin/sh -c
.
Следующие переменные окружения будут установлены:
ICEWM_MAILBOX
индексный номер почтового ящика MailBoxPath
начиная с 1.ICEWM_COUNT
отдаёт общее количество сообщений в этом почтовом ящике.ICEWM_UNREAD
отдаёт количество непрочитанных сообщений в этом почтовом ящике.AutoReloadMenus = 1
Перечитывать файлы меню, если установлено в 1.
ShowProgramsMenu = 0
Показывать вложенное меню Программы.
ShowSettingsMenu = 1
Показывать вложенное меню Настройки.
ShowFocusModeMenu = 1
Показывать вложенное меню режимов Фокуса.
ShowThemesMenu = 1
Показывать вложенное меню Темы.
ShowLogoutMenu = 1
Показывать меню Выход.
ShowHelp = 1
Показывать пункт меню Помощь.
ShowLogoutSubMenu = 1
Показывать вложенное меню Выход.
ShowAbout = 1
Показывать пункт меню О Программе.
ShowRun = 1
Показывать пункт меню Выполнить.
ShowWindowList = 1
Показывать пункт меню Окна.
MenuMaximalWidth = 0
Максимальная ширина всплывающих меню, 2/3 от ширины экрана, если установлено в ноль.
NestedThemeMenuMinNumber = 25
Минимальное количество тем, после которого меню Темы становится вложенным (0=выключено).
DelayFuzziness = 10
Процентное отношение нечёткой задержки/таймаута, чтобы разрешить слияние таймаутов таймера.
ClickMotionDistance = 5
Перемещение после щелчка, определяемое как перетаскивание.
ClickMotionDelay = 200
Задержка после щелчка, определяемая как перетаскивание.
MultiClickTime = 400
Время (мс) для распознавания двойного щелчка.
MenuActivateDelay = 40
Задержка до активации пунктов меню.
SubmenuMenuActivateDelay = 300
Задержка до активации вложенного меню в меню.
ToolTipDelay = 5000
Время до показа окна всплывающей подсказки.
ToolTipTime = 60000
Время до скрытия окна всплывающей подсказки (0 значит никогда).
AutoHideDelay = 300
Время до автоматического скрытия панели задач (сначала должно быть включено в TaskBarAutoHide).
AutoShowDelay = 500
Задержка до показа панели задач.
AutoRaiseDelay = 400
Время до автоматического поднятия (сначала должно быть включено в AutoRaise).
PointerFocusDelay = 200
Задержка до переключения указателя фокуса.
EdgeSwitchDelay = 600
Задержка до переключения рабочего места по краю экрана.
ScrollBarStartDelay = 500
Начальная задержка автопрокрутки панели прокрутки.
ScrollBarDelay = 30
Задержка автопрокрутки панели прокрутки.
AutoScrollStartDelay = 500
Задержка старта автопрокрутки.
AutoScrollDelay = 60
Задержка автопрокрутки.
WorkspaceStatusTime = 2500
Время перед тем, как окно статуса рабочего места скроется.
TaskBarCPUDelay = 500
Интервал между выборками Монитора CPU в мс.
TaskBarMEMDelay = 500
Интервал между выборками Монитора Памяти в мс.
TaskBarNetDelay = 500
Интервал между выборками Монитора Сети в мс.
FocusRequestFlashTime = 0
Количество секунд, которое приложение на панели задач мерцает, когда запрашивает фокус (0 = всегда).
FocusRequestFlashInterval = 250
Интервал мерцания панели задач (мс) при запросе фокуса (0 = мерцание выключено).
BatteryPollingPeriod = 10
Интервал между обновлениями статуса питания (секунды).
UseRootButtons = 255
Битовая маска щелчков кнопок на корневом окне для использования в диспетчере окон.
ButtonRaiseMask = 1
Битовая маска кнопок, поднимающих окно при нажатии.
DesktopWinMenuButton = 0
Щелчок этой кнопкой мыши по рабочему столу покажет меню списка окон.
DesktopWinListButton = 2
Щелчок этой кнопкой мыши по рабочему столу покажет список окон.
DesktopMenuButton = 3
Щелчок этой кнопкой мыши по рабочему столу покажет главное меню.
TitleBarMaximizeButton = 1
Двойной щелчок этой кнопкой мыши по панели заголовка развернёт окно на весь экран с видимой ограничительной рамкой.
TitleBarRollupButton = 2
Двойной щелчок этой кнопкой мыши по панели заголовка скрутит окно.
RolloverButtonsSupported = 0
Does it support the ‘O’ title bar button images (for mouse rollover)
WorkspaceNames
Список имён рабочих мест, например:
WorkspaceNames=“ 1 ”, “ 2 ”, “ 3 ”, “ 4 ”
LibPath
Путь к каталогу icewm/lib.
IconPath
Путь к каталогу со значками. Несколько путей могут быть заданы, используя двоеточие как разделитель.
ClockCommand
Программа, запускаемая двойным щелчком по часам.
MailCommand
Программа, запускаемая двойным щелчком по значку почтового ящика.
LockCommand
Программа, запускаемая для блокировки экрана.
RunCommand
Программа, запускаемая, когда в стартовом меню выбрано Выполнить….
WinMenuItems
Пункты, которые будут показаны в меню окна, допустимыми значениями являются:
a=rAise
c=Close
f=Fullscreen
h=Hide
i=trayIcon
k=Kill
l=Lower
m=Move
n=miNimize
r=Restore
s=Size
t=moveTo
u=rollUp
w=WindowsList
x=maXimize
y=laYer
Примеры:
WinMenuItems=rmsnxfhualyticw #Меню по умолчанию
WinMenuItems=rmsnxfhualytickw #Меню со всеми доступными параметрами
WinMenuItems=rmsnxc #Меню как в MS-Windows
Эта секция содержит настройки, которые могут быть в файлах темы. Они также могут быть установлены в файле preferences
, но будут перекрыты значениями, установленными темами. Чтобы перекрыть значения настроек из тем, необходимо установить их в файле prefoverride
. Значения по умолчанию показаны после знака равенства.
ThemeAuthor =
Автор темы, адрес e-mail, дополнения.
ThemeDescription =
Описание темы, дополнения.
Gradients =
Список изображений с градиентами в текущей теме.
Следующие настройки могут иметь числовые значения.
BorderSizeX = 6
Ширина левой/правой рамки.
BorderSizeY = 6
Высота верхней/нижней рамки.
DlgBorderSizeX = 2
Ширина левой/правой рамки окон не изменяемого размера.
DlgBorderSizeY = 2
Высота верхней/нижней рамки окон не изменяемого размера.
CornerSizeX = 24
Ширина угла окна.
CornerSizeY = 24
Высота угла окна.
TitleBarHeight = 20
Высота панели заголовка.
TitleBarJustify = 0
Выравнивание заголовка окна.
TitleBarHorzOffset = 0
Горизонтальное смещение текста заголовка окна.
TitleBarVertOffset = 0
Вертикальное смещение текста заголовка окна.
TitleBarCentered = 0
Нарисовать заголовок окна по центру (устаревший к TitleBarJustify).
TitleBarJoinLeft = 0
Присоединить title*S к title*T
TitleBarJoinRight = 0
Присоединить title*T к title*B
ScrollBarX = 16
Ширина полосы прокрутки.
ScrollBarY = 16
Высота (кнопки) полосы прокрутки.
MenuIconSize = 16
Размер значка меню.
SmallIconSize = 16
Размерность маленьких значков.
LargeIconSize = 32
Размерность больших значков.
HugeIconSize = 48
Размерность огромных значков.
QuickSwitchHorzMargin = 3
Запас по горизонтали окна быстрого переключения.
QuickSwitchVertMargin = 3
Запас по вертикали окна быстрого переключения.
QuickSwitchIconMargin = 4
Запас по вертикали в окне быстрого переключения.
QuickSwitchIconBorder = 2
Дистанция между активным значком и ограничительной рамкой.
QuickSwitchSeparatorSize = 6
Высота разделителя между (всеми доступными) значками и текстом, 0 для отказа от этого.
ShowMenuButtonIcon = 1
Показывать значок приложения на кнопке меню.
TitleButtonsLeft = "s"
Кнопки панели заголовка слева направо (x=close, m=max, i=min, h=hide, r=rollup, s=sysmenu, d=depth).
TitleButtonsRight = "xmir"
Кнопки панели заголовка справа налево (x=close, m=max, i=min, h=hide, r=rollup, s=sysmenu, d=depth).
TitleButtonsSupported = "xmis"
Кнопки панели заголовка, поддерживаемые темой (x,m,i,r,h,s,d).
Следующие настройки могут иметь строковые значения.
TitleFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта панели заголовка.
MenuFontName = "-*-sans-bold-r-*-*-*-100-*-*-*-*-*-*"
Имя шрифта меню.
StatusFontName = "-*-monospace-bold-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта статуса дисплея.
QuickSwitchFontName = "-*-monospace-bold-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта для окна переключения по Alt+Tab.
NormalButtonFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта нормальной кнопки.
ActiveButtonFontName = "-*-sans-bold-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта активной кнопки.
NormalTaskBarFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта нормального элемента панели задач.
ActiveTaskBarFontName = "-*-sans-bold-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта активного элемента панели задач.
ToolButtonFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта кнопки инструмента (fallback: NormalButtonFontName).
NormalWorkspaceFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта нормальной кнопки рабочего места (fallback: NormalButtonFontName).
ActiveWorkspaceFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта активной кнопки рабочего места (fallback: ActiveButtonFontName).
MinimizedWindowFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта мини-окна.
ListBoxFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта списка окон.
ToolTipFontName = "-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
Имя шрифта окошка всплывающей подсказки.
ClockFontName = "-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
Имя шрифта часов на панели задач.
TempFontName = "-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
Имя шрифта температуры на панели задач.
ApmFontName = "-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
Имя шрифта батареи на панели задач.
InputFontName = "-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
Имя шрифта поля ввода.
LabelFontName = "-*-sans-medium-r-*-*-*-140-*-*-*-*-*-*"
Имя шрифта метки.
Когда IceWM сконфигурирован с --enable-xfreetype
, могут быть использованы только настройки с суффиксом “Xft”. Они определяют имя шрифта в формате fontconfig:
MenuFontNameXft="sans-serif:size=12:bold"
TitleFontNameXft = "sans-serif:size=12"
Имя шрифта панели заголовка.
MenuFontNameXft = "sans-serif:size=10:bold"
Имя шрифта меню.
StatusFontNameXft = "monospace:size=12:bold"
Имя шрифта статуса дисплея.
QuickSwitchFontNameXft = "monospace:size=12:bold"
Имя шрифта для переключателя по Alt+Tab.
NormalButtonFontNameXft = "sans-serif:size=12"
Имя шрифта нормальной кнопки.
ActiveButtonFontNameXft = "sans-serif:size=12:bold"
Имя шрифта активной кнопки.
NormalTaskBarFontNameXft = "sans-serif:size=12"
Имя шрифта нормального элемента панели задач.
ActiveTaskBarFontNameXft = "sans-serif:size=12:bold"
Имя шрифта активного элемента панели задач.
ToolButtonFontNameXft = "sans-serif:size=12"
Имя шрифта кнопки инструмента (fallback: NormalButtonFontNameXft).
NormalWorkspaceFontNameXft = "sans-serif:size=12"
Имя шрифта нормальной кнопки рабочего места (fallback: NormalButtonFontNameXft).
ActiveWorkspaceFontNameXft = "sans-serif:size=12"
Имя шрифта активной кнопки рабочего места (fallback: ActiveButtonFontNameXft).
MinimizedWindowFontNameXft = "sans-serif:size=12"
Имя шрифта мини-окна.
ListBoxFontNameXft = "sans-serif:size=12"
Имя шрифта списка окон.
ToolTipFontNameXft = "sans-serif:size=12"
Имя шрифта окошка всплывающей подсказки.
ClockFontNameXft = "monospace:size=12"
Имя шрифта часов на панели задач.
TempFontNameXft = "monospace:size=12"
Имя шрифта температуры на панели задач.
ApmFontNameXft = "monospace:size=12"
Имя шрифта батареи на панели задач.
InputFontNameXft = "monospace:size=12"
Имя шрифта поля ввода.
LabelFontNameXft = "sans-serif:size=12"
Имя шрифта метки.
ColorDialog = "rgb:C0/C0/C0"
Фон диалоговых окон.
ColorNormalBorder = "rgb:C0/C0/C0"
Граница неактивных окон.
ColorActiveBorder = "rgb:C0/C0/C0"
Граница активных окон.
ColorNormalButton = "rgb:C0/C0/C0"
Фон обычных кнопок.
ColorNormalButtonText = "rgb:00/00/00"
Цвет текста обычных кнопок.
ColorActiveButton = "rgb:E0/E0/E0"
Фон нажатых кнопок.
ColorActiveButtonText = "rgb:00/00/00"
Цвет текста нажатых кнопок.
ColorNormalTitleButton = "rgb:C0/C0/C0"
Фон кнопок панели заголовка.
ColorNormalTitleButtonText = "rgb:00/00/00"
Цвет текста кнопок панели заголовка.
ColorToolButton = ""
Фон кнопок панели инструментов, если пусто, используется ColorNormalButton.
ColorToolButtonText = ""
Цвет текста кнопок панели инструментов, если пусто, используется ColorNormalButtonText.
ColorNormalWorkspaceButton = ""
Фон кнопок рабочих мест, если пусто, используется ColorNormalButton.
ColorNormalWorkspaceButtonText = ""
Цвет текста кнопок рабочих мест, если пусто, используется ColorNormalButtonText.
ColorActiveWorkspaceButton = ""
Фон активной кнопки рабочего места, если пусто, используется ColorActiveButton.
ColorActiveWorkspaceButtonText = ""
Цвет текста активной кнопки рабочего места, если пусто, используется ColorActiveButtonText.
ColorNormalTitleBar = "rgb:80/80/80"
Фон панели заголока обычного окна.
ColorNormalTitleBarText = "rgb:00/00/00"
Цвет текста панели заголовка обычного окна.
ColorNormalTitleBarShadow = ""
Тень текста панели заголовка обычного окна.
ColorActiveTitleBar = "rgb:00/00/A0"
Фон панели заголовка активного окна.
ColorActiveTitleBarText = "rgb:FF/FF/FF"
Цвет текста панели заголовка активного окна.
ColorActiveTitleBarShadow = ""
Тень текста панели заголовка активного окна.
ColorNormalMinimizedWindow = "rgb:C0/C0/C0"
Фон для мини значков обычных окон.
ColorNormalMinimizedWindowText = "rgb:00/00/00"
Цвет текста для мини значков обычных окон.
ColorActiveMinimizedWindow = "rgb:E0/E0/E0"
Фон для мини значков активных окон.
ColorActiveMinimizedWindowText = "rgb:00/00/00"
Цвет текста для мини значков активных окон.
ColorNormalMenu = "rgb:C0/C0/C0"
Фон всплывающих меню.
ColorNormalMenuItemText = "rgb:00/00/00"
Цвет текста обычных пунктов меню.
ColorActiveMenuItem = "rgb:A0/A0/A0"
Фон выбранного пункта меню, оставьте пустым, чтобы принудительно сделать прозрачным.
ColorActiveMenuItemText = "rgb:00/00/00"
Цвет текста выбранного пункта меню.
ColorDisabledMenuItemText = "rgb:80/80/80"
Цвет текста выключенных пунктов меню.
ColorDisabledMenuItemShadow = ""
Тень обычных пунктов меню.
ColorMoveSizeStatus = "rgb:C0/C0/C0"
Фон окна статуса перемещения/изменения размера.
ColorMoveSizeStatusText = "rgb:00/00/00"
Цвет текста окна статуса перемещения/изменения размера.
ColorQuickSwitch = "rgb:C0/C0/C0"
Фон окна быстрого переключения.
ColorQuickSwitchText = "rgb:00/00/00"
Цвет текста окна быстрого переключения.
ColorQuickSwitchActive = ""
Прямоугольник вокруг активного значка в окне быстрого переключения.
ColorDefaultTaskBar = "rgb:C0/C0/C0"
Фон панели задач.
ColorNormalTaskBarApp = "rgb:C0/C0/C0"
Фон для кнопок задач обычных окон.
ColorNormalTaskBarAppText = "rgb:00/00/00"
Цвет текста для кнопок задач обычных окон.
ColorActiveTaskBarApp = "rgb:E0/E0/E0"
Фон для кнопки задачи активного окна.
ColorActiveTaskBarAppText = "rgb:00/00/00"
Цвет текста для кнопки задачи активного окна.
ColorMinimizedTaskBarApp = "rgb:A0/A0/A0"
Фон для кнопок задач свёрнутых окон.
ColorMinimizedTaskBarAppText = "rgb:00/00/00"
Цвет текста для кнопок задач свёрнутых окон.
ColorInvisibleTaskBarApp = "rgb:80/80/80"
Фон для кнопок задач окон на других рабочих местах.
ColorInvisibleTaskBarAppText = "rgb:00/00/00"
Цвет текста для кнопок задач окон на других рабочих местах.
ColorScrollBar = "rgb:A0/A0/A0"
Фон полосы прокрутки (зона скольжения).
ColorScrollBarSlider = "rgb:C0/C0/C0"
Фон бегунка на полосе прокрутки.
ColorScrollBarButton = "rgb:C0/C0/C0"
Фон кнопок со стрелками на полосе прокрутки.
ColorScrollBarArrow = "rgb:C0/C0/C0"
Фон кнопок со стрелками на полосе прокрутки (устарело).
ColorScrollBarButtonArrow = "rgb:00/00/00"
Цвет активных стрелок на кнопках полосы прокрутки.
ColorScrollBarInactiveArrow = "rgb:80/80/80"
Цвет неактивных стрелок на кнопках полосы прокрутки.
ColorListBox = "rgb:C0/C0/C0"
Фон списков.
ColorListBoxText = "rgb:00/00/00"
Цвет текста списков.
ColorListBoxSelection = "rgb:80/80/80"
Фон выбранных элементов списка.
ColorListBoxSelectionText = "rgb:00/00/00"
Цвет текста выбранных злементов списка.
ColorToolTip = "rgb:E0/E0/00"
Фон окошек всплывающей подсказки.
ColorToolTipText = "rgb:00/00/00"
Цвет текста окошек всплывающей подсказки.
ColorLabel = "rgb:C0/C0/C0"
Фон меток, оставьте пустым, чтобы принудительно сделать прозрачным.
ColorLabelText = "rgb:00/00/00"
Цвет текста меток.
ColorInput = "rgb:FF/FF/FF"
Фон полей ввода текста (напр. панель адреса).
ColorInputText = "rgb:00/00/00"
Цвет текста полей ввода текста (напр. панель адреса).
ColorInputSelection = "rgb:80/80/80"
Фон выбранного текста в поле ввода.
ColorInputSelectionText = "rgb:00/00/00"
Выбранный текст в поле ввода.
ColorClock = "rgb:00/00/00"
Фон не-ЖКИ часов, оставьте пустым, чтобы принудительно сделать прозрачным.
ColorClockText = "rgb:00/FF/00"
Цвет текста не-ЖКИ часов.
ColorApm = "rgb:00/00/00"
Фон монитора батареи, оставьте пустым, чтобы принудительно сделать прозрачным.
ColorApmText = "rgb:00/FF/00"
Цвет текста монитора батареи.
ColorApmBattery = "rgb:FF/FF/00"
Цвет монитора батареи при разряде.
ColorApmLine = "rgb:00/FF/00"
Цвет монитора батареи при зарядке.
ColorApmGraphBg = "rgb:00/00/00"
Цвет фона для графического режима.
ColorCPUStatusUser = "rgb:00/FF/00"
Пользовательская нагрузка на мониторе CPU.
ColorCPUStatusSystem = "rgb:FF/00/00"
Системная нагрузка на мониторе CPU.
ColorCPUStatusInterrupts = "rgb:FF/FF/00"
Прерывания на мониторе CPU.
ColorCPUStatusIoWait = "rgb:60/00/60"
Ожидание ввода/вывода на мониторе CPU.
ColorCPUStatusSoftIrq = "rgb:00/FF/FF"
Программные прерывания на мониторе CPU.
ColorCPUStatusNice = "rgb:00/00/FF"
Полезная нагрузка на мониторе CPU.
ColorCPUStatusIdle = "rgb:00/00/00"
Простой (нет нагрузки) на мониторе CPU, оставьте пустым, чтобы принудительно сделать прозрачным.
ColorCPUStatusSteal = "rgb:FF/8A/91"
Принудительное ожидание на мониторе CPU.
ColorCPUStatusTemp = "rgb:60/60/C0"
Температура CPU.
ColorMEMStatusUser = "rgb:40/40/80"
Занято программами пользователя на мониторе памяти.
ColorMEMStatusBuffers = "rgb:60/60/C0"
Занято буферами ОС на мониторе памяти.
ColorMEMStatusCached = "rgb:80/80/FF"
Занято кэшом ОС на мониторе памяти.
ColorMEMStatusFree = "rgb:00/00/00"
Свободная память на мониторе памяти.
ColorNetSend = "rgb:FF/FF/00"
Исходящая нагрузка на мониторе сети.
ColorNetReceive = "rgb:FF/00/FF"
Входящая нагрузка на мониторе сети.
ColorNetIdle = "rgb:00/00/00"
Простой (нет нагрузки) на мониторе сети, оставьте пустым, чтобы принудительно сделать прозрачным.
ColorApmBattary = rgb:FF/FF/00
Цвет монитора батареи в режиме батареи.
Следующие параметры использует icewmbg
:
DesktopBackgroundCenter = 0
Показать фон рабочего стола в центре и не в виде мозаики. (установите в 0 или 1).
DesktopBackgroundScaled = 0
Изменить размер фона рабочего стола до полного экрана.
DesktopBackgroundColor = ""
Цвет(а) фона рабочего стола.
DesktopBackgroundImage = ""
Изображение(я) для фона рабочего стола. Если вы хотите, чтобы IceWM игнорировал изображение/цвет рабочего стола, установите оба параметра DesktopBackgroundColor и DesktopBackgroundImage в пустое значение (“”).
SupportSemitransparency = 1
Поддержка полупрозрачных терминалов вроде Eterm или gnome-terminal.
DesktopTransparencyColor = ""
Цвет(а) для заявленных полупрозрачных окон.
DesktopTransparencyImage = ""
Изображение(я) для заявленных полупрозрачных окон.
DesktopBackgroundMultihead = 0
Нарисовать фоновое изображение совместно на всех мониторах многоголовой установки.
TaskBarClockLeds = 1
Показывать часы, используя картинки в стиле ЖКИ.
Внутри конфигурационного файла menu
вы можете настроить, какие программы должны появиться в корневом/стартовом меню.
Вложенные меню могут быть созданы с:
menu "title" icon_name {
# contained items
}
separator
menufile "title" icon_name filename
menuprog "title" icon_name program arguments
menuprogreload "title" icon_name timeout program arguments
include filename
includeprog program arguments
Меню могут быть заполнены записями с вложенными меню и программами, как рассмотрено ниже для конфигурационного файла programs
. Комментарии начинаются со знака #.
Директива menufile
создаёт вложенное меню с заголовком title
и значком icon_name
, menuprog
и menuprogreload
создают вложенное меню с записями из вывода program arguments
, где timeout
из menuprogreload
приказывает перечитать вложенное меню после истечения таймаута. Выражение include
загружает более подробную конфигурацию из заданного filename
, includeprog
запускает program arguments
для анализа вывода.
Конфигурационный файл toolbar
используется для размещения программ в виде кнопок на панели задач. Он использует тот же синтаксис, что и файл menu
.
Обычно автоматически генерируемый конфигурационный файл меню установленных программ. Файл programs
может быть автоматически сгенерирован через wmconfig
(Redhat), menu
(Debian) или icewm-menu-fdo
.
Программы могут быть добавлены, используя следующий синтаксис:
prog "title" icon_name program_executable options
Перезапуск другого диспетчера окон может быть сделан, используя перезапуск программы:
restart "title" icon_name program_executable options
icon_name может быть -
, если значка нет или !
, если имя значка должно быть подставлено проверкой команды (т.е. настоящий исполняемый файл, следующие симлинки при необходимости).
Ключевое слово “runonce” позволяет запускать приложение, только когда ни в одном окне не указано свойство WM_CLASS. Иначе первое же окно, содержащее это свойство класса находится и поднимается. Синтаксис:
runonce "title" icon_name "res_name.res_class" program_executable options
runonce "title" icon_name "res_name" program_executable options
runonce "title" icon_name ".res_class" program_executable options
Свойство класса окна приложения можно выяснить, запустив
xprop WM_CLASS
Вложенные меню могут быть добавлены, используя те же ключевые слова, что и в конфигурационном файле menu
.
IceWM интерпретирует только двойные кавычки. IceWM не запускает оболочку автоматически, поэтому вы, возможно, должны сделать это сами.
IceWM позволяет запуск произвольных программ с помощью любых комбинаций клавиш. Это настраивается в файле keys
. Синтаксис этого файла такой:
key “key combination” program options…
Например:
key "Alt+Ctrl+t" xterm -rv
key "Ctrl+Shift+r" icewm --restart
runonce "Alt+F12" "res_name.res_class" program_executable options
Файл winoptions используется для настроек конфигурации для отдельных окон приложений. Каждая строка в этом файле может иметь один из следующих форматов:
window_name.window_class.option: argument
window_name.window_role.option: argument
window_class.option: argument
window_name.option: argument
window_role.option: argument
.option: argument
Последний формат устанавливает значение параметра по умолчанию для всех окон. Каждое окно на рабочем столе должно иметь ресурсы name и class, связанные с ним. Некоторые приложения также имеют ресурс window role. Они могут быть выяснены с применением утилиты xprop
. Когда использовано на окне на высоком уровне, xprop | grep -e CLASS -e ROLE
должен вывести примерно такую строку:
WM_CLASS = "name", "Class"
и ещё может показать примерно такую строку:
WM_WINDOW_ROLE = "window role"
Возможно, что name и/или class приложения содержат символ точки (.), который также используется IceWM для разделения значений name, class и role. В этом случае предварите точку символом backslash (\). В следующем примере мы предположим, что окно приложения имеет the.name
как значение name и The.Class
как значение class и для этой комбинации мы сопоставим option к argument.
the\.name.The\.Class.option: argument
Параметры, которые могут быть назначены каждому окну, следующие:
icon
Имя значка.
workspace
Рабочее место по умолчанию для окна (номер, считая от 0).
layer
Слой в стеке по умолчанию для окна. Слой может быть одной из следующих семи строк:
Desktop Окно рабочего стола. В этом слое должно быть только одно окно.
Below Слой ниже умолчательного.
Normal Слой по умолчанию для окон.
OnTop Выше умолчательного.
Dock Слой для окон, пристыкованных к краю экрана.
AboveDock Слой для окон выше дока.
Menu Слой для окон выше дока.
Вы также можете использовать число от 0 до 15.
geometry
Геометрия по умолчанию для окна. Эта геометрия должна быть определена в обычном X11-geometry-syntax, формально описанном:
[=][<width>{xX}<height>][{+-}<xoffset>{+-}<yoffset>]
tray
Настройка лотка по умолчанию для окна. Она действует сразу на лоток и панель задач. Tray может принимать значение одной из следующих строк:
Ignore Не добавлять значок на панель лотка.
Minimized Добавить значок на панель лотка. Удалить кнопку панели задач при сворачивании.
Exclusive Добавить значок на панель лотка. Не создавать кнопку панели задач.
order: 0
Порядок сортировки кнопок задач и значков в лотке. Значение по умолчанию - ноль. Положительное увеличение значений сдвигает вправо, отрицательное уменьшение значений сдвигает влево. Параметр order применяется к панели задач, панели лотка и системному лотку.
allWorkspaces: 0
Если установлен в 1, окно будет видно на всех рабочих местах.
appTakesFocus: 0
Если установлен в 1, IceWM будет считать окно поддерживающим протокол WM_TAKE_FOCUS даже если окно не объявляло, что это делает.
dBorder: 1
Если установлен в 0, окно не будет иметь рамки.
dClose: 1
Если установлен в 0, окно не будет иметь кнопки Закрыть.
dDepth: 1
Если установлен в 0, окно не будет иметь кнопки глубины.
dHide: 1
Если установлен в 0, окно не будет иметь кнопки Скрыть.
dMaximize: 1
Если установлен в 0, окно не будет иметь кнопки Развернуть.
dMinimize: 1
Если установлен в 0, окно не будет иметь кнопки Свернуть.
dResize: 1
Если установлен в 0, окну будет невозможно изменить размер.
dRollup: 1
Если установлен в 0, окно не будет иметь кнопки Скрутить.
dSysMenu: 1
Если установлен в 0, окно не будет иметь системного меню.
dTitleBar: 1
Если установлен в 0, окно не будет иметь панели заголовка.
doNotCover: 0
Если установлен в 1, это окно ограничит доступное рабочее место для обычных приложений. На данный момент окно должно быть липким, чтобы это работало.
doNotFocus: 0
Если установлен в 1, IceWM никогда не даст фокус окну.
fClose: 1
Если установлен в 0, окно будет нельзя закрыть.
fHide: 1
Если установлен в 0, окно будет нельзя скрыть.
fMaximize: 1
Если установлен в 0, окно будет нельзя развернуть.
fMinimize: 1
Если установлен в 0, окно будет нельзя свернуть.
fMove: 1
Если установлен в 0, окно будет нельзя переместить.
fResize: 1
Если установлен в 0, окну будет нельзя изменить размер.
fRollup: 1
Если установлен в 0, окно будет нельзя скрутить.
forcedClose: 0
Если установлен в 1 и приложение не регистрировало WM_DELETE_WINDOW, диалог подтверждения закрытия не будет предложен при закрытии окна.
fullKeys: 0
Если установлен в 1, диспетчер окон оставит больше клавиш (Alt+F?) для приложения.
ignoreNoFocusHint: 0
Если установлен в 1, IceWM даст фокус, даже если окно не поддерживает ввод.
ignorePagerPreview: 0
Если установлен в 1, окно не появится в предпросмотре пейджера.
ignorePositionHint: 0
Если установлен в 1, IceWM проигнорирует сигнал о позиции.
ignoreQuickSwitch: 0
Если установлен в 1, окно не будет доступно использованию функциональности быстрого переключения Alt+Tab).
ignoreTaskBar: 0
Если установлен в 1, окно не появится на панели задач.
ignoreUrgentHint: 0
Если установлен в 1, IceWM проигнорирует это, если окно подаст срочный сигнал.
ignoreWinList: 0
Если установлен в 1, окно не появится в списке окон.
noFocusOnAppRaise: 0
Если установлен в 1, окно не получит фокус автоматически, когда приложение поднимет его.
noFocusOnMap: 0
Если установлен в 1, IceWM не назначит фокус, когда окно отображается впервые.
noIgnoreTaskBar: 0
Если установлен в 1, покажет окно на панели задач.
startFullscreen: 0
Если установлен в 1, окно раскроется на весь экран.
startMaximized: 0
Если установлен в 1, окно запустится развёрнутым.
startMaximizedHorz: 0
Если установлен в 1, окно запустится развёрнутым по горизонтали.
startMaximizedVert: 0
Если установлен в 1, окно запустится развёрнутым по вертикали.
startMinimized: 0
Если установлен в 1, окно запустится свёрнутым.
Диспетчер окон ожидает найти два XPM файла для каждого значка, представленных в файлах конфигурации как ICON. Они должны называться примерно так:
ICON_16x16.xpm
Маленькая картинка 16x16.
ICON_32x32.xpm
Нормальная картинка 32x32.
ICON_48x48.xpm
Большая картинка 48x48.
Другие размеры картинок, как 20x20, 24x24, 40x40, 48x48, 64x64 могут быть использованы в будущем. Возможно, нам нужен формат файла, который может содержать более одного изображения (с разными размерами и глубиной цвета), как файлы .ICO Windows'95 и OS/2.
Было бы классно создать фичу из OS/2, которая меняет размер значка в соответствии с разрешением экрана (значки 16x16 и 32x32 маловаты на экранах 4000x4000 ;-).
Когда icewm сконфигурирован с параметром --enable-gdk-pixbuf
, поддерживаются все форматы изображений GdkPixbuf. Используйте их в спецификациях полного имени файла или абсолютного пути:
ICON.bmp
PPM значок в вашем IconPath.
/usr/share/pixmap/ICON.png
PNG изображение с абсолютным местоположением.
IceWM проверяет каталоги тем и конфигурации на наличие подкаталогов под названием cursors, содержащих монохромные или прозрачные файлы XPM. Для изменения курсоров мыши используйте следующие имена файлов:
left.xpm
Курсор по умолчанию (обычно указатель налево).
right.xpm
Курсор меню (обычно указатель направо).
move.xpm
Курсор перемещения окна.
sizeTL.xpm
Курсор, когда вы меняете размер окна вверху слева.
sizeT.xpm
Курсор, когда вы меняете размер окна вверху.
sizeTR.xpm
Курсор, когда вы меняете размер окна вверху справа.
sizeL.xpm
Курсор, когда вы меняете размер окна слева.
sizeR.xpm
Курсор, когда вы меняете размер окна справа.
sizeBL.xpm
Курсор, когда вы меняете размер окна внизу слева.
sizeB.xpm
Курсор, когда вы меняете размер окна внизу.
sizeBR.xpm
Курсор, когда вы меняете размер окна внизу справа.
Темы используются для настройки внешнего вида диспетчера окон. Сущности, как то шрифты, цвета, размеры рамок, изображения кнопок могут быть настроены. Вместе они образуют тему.
Поиск файлов тем производится в подкаталогах themes
.
Эти каталоги содержат другие каталоги, которые содержат файлы, связанные с темами и их файлы .xpm. Каждый файл темы определяет шрифты, цвета, размеры рамок, …
Используемая тема определяется в файле ~/.icewm/theme
:
Theme = "nice/default.theme"
Имя используемой темы. И каталог, и имя файла темы должны быть определены.
Если каталог темы содержит файл с именем fonts.dir, созданный mkfontdir, каталог темы включается в путь поиска шрифта X сервера.
На www.box-look.org очень много тем, которые были созданы пользователями IceWM.
icewm
поддерживает следующие параметры:
-d, --display=NAME
ИМЯ X-сервера для использования.
--client-id=ID
Идентификатор клиента, используемый при обращении к диспетчеру сессий.
--sync
Синхронизировать команды X11.
-c, --config=FILE
Загрузить предустановки из ФАЙЛА.
-t, --theme=FILE
Загрузить тему из ФАЙЛА.
--postpreferences
Напечатать предустановки после обработки всех их.
-V, --version
Напечатать информацию о версии и выйти.
-h, --help
Напечатать этот экран об использовании и выйти.
--replace
Заменить существующий диспетчер окон.
-r, --restart
Приказать работающему icewm перезапустить себя.
--configured
Напечатать конфигурацию, которая была во время компиляции.
--directories
Напечатать каталоги конфигурации
-l, --list-themes
Напечатать список доступных тем.
Параметр restart может быть использован, чтобы перезагрузить конфигурацию IceWM после изменения. Это предпочтительный способ, чтобы перезапустить IceWM из командной строки или из скрипта. Для загрузки другой темы из командной строки, совместите его с параметром --theme=NAME
так:
icewm -r -t CrystalBlue
Имя темы тогда будет сохранено в файле конфигурации ‘theme’, перед перезапуском IceWM.
Resource Path
Набор каталогов, используемых IceWM при расположении таких ресурсов, как файлы конфигурации, темы, значки. См. секцию Путь к ресурсам.
Авторы, внёсшие свой вклад в этот документ, включают Gallium, Macek, Hasselmann, Gijsbers, Bidulock и Bloch.
Перевод данного текста на русский язык, а также поддержка пакета icewm в ALTLinux Dmitriy Khanzhin.
icehelp(1), icesh(1), icesound(1), icewm-env(5), icewm-focus_mode(5), icewm-keys(5), icewm-menu-fdo(1), icewm-menu-xrandr(1), icewm-menu(5), icewm-preferences(5), icewm-prefoverride(5), icewm-programs(5), icewm-session(1), icewm-shutdown(5), icewm-startup(5), icewm-theme(5), icewm-toolbar(5), icewm-winoptions(5), icewm(1), icewmbg(1), icewmhint(1),