Его можно найти на сайте www.gnustep.org или в составе практически любого дистрибутива Linux. Window Maker имеет крупные трехмерные кнопки вдоль правого края экрана. Это управляющая панель, именуемая доком (Dock). Двойной щелчок левой клавишей мыши на большинстве входящих в панель кнопок запускает приложения либо конфигурационные утилиты.
Но верхняя кнопка WMDock по умолчанию ничего не запускает, а служит для управления положением панели на экране: ухватив за нее, панель можно перемещать вверх-вних или с правой на левую сторону экрана (на верхнюю или нижнюю – нельзя). Но к ней можно привязать какое-либо приложение, которое требуется запускать при старте Window Maker. Вторая сверху кнопка (ASClock) – индикатор времени и даты. Третья (Xterm) запускает стандартный X-терминал. А четвертая – (WMPefs) служит для конфигурирования Window Maker.
Одинокая кнопка Clip слева вверху выполняет двоякую функцию: переключения (но не создания) виртуальных экранов или, в терминологии программы, рабочих пространств (Workspace), и прикрепления приложений.
Все остальное пространство экрана свободно и представляет собой рабочий стол. Щелчок на нем правой клавишей мыши вызывает контекстное меню, а правой – список запущенных приложений (не исчезающих, в отличие от KDE и Windows, самопроизвольно. Щелчок левой клавишей никаких действий не оказывает: чтобы закрыть ниспадающие меню, следует щелкнуть ею на заголовке меню и затем – на появившемся крестике, либо щелкнуть правой клавишей вне меню на рабочем столе.
Из контекстного меню создаются (в любом количестве) и удаляются новые виртуальные экраны (Application – Workspace – Создать). Между которыми потом можно переключаться уголками на кнопке Clip. Переключение экранов сопровождается объемной анимацией их названий в центре экрана.
Название экрана легко используется щелчком правой клавиши на кнопке Clip. Открытые приложения по умолчанию не переходят на новый экран.
Для запуска приложений, кроме кнопок на панели и стандартного терминала (кнопка для запуска Xterm по умолчанию включена в панель), используется также контекстное меню рабочего стола, для чего в нем присутствует пункт Run (аналог минитерминала KDE). Кнопки вверху справа оказались чем-то вроде панели запуска приложений, осуществляемого двойным щелчком левой клавишей мыши или из выпадающего по одинарному щелчку правой клавишей меню (пункт «Запуск»).
О пополнении управляющей панели необходимыми для работы кнопками следует позаботиться самому. Имеется несколько способов. Первый – запустить приложение, выбрав из контекстного меню рабочего стола упомянутый пункт Run.
Одновременно с открытием окна приложения на рабочем столе появляется его пиктограмма, внешне аналогичная кнопкам панели. Она захватывается мышью и просто перетягивается в панель, где и остается до удаления. Кнопка захватывается мышью и перетягивается за пределы панели на рабочий стол, где она рассыпается в прах.
Чтобы встроить KDE-приложение в Dock, требуется: запустить его, затем по щелчку правой клавиши мыши на заголовке его окна вызвать контекстное меню, выбрать в нем пункт Свойства окна, перейти к подпункту Дополнительные параметры отметить там опцию Эмулировать значок приложения, сохранить эту установку и перезапустить приложение. При следующем его запуске появляется та самая пиктограмма, которую можно перетащить в Dock.
Есть и третий способ - правка вручную конфигурационных файлов.
Окно запущенного приложения по умолчанию имеет в строке заголовка два управляющих значка - минимизации слева и закрытия справа. По щелчку правой клавишей мыши на строке заголовка окно можно развернуть на полный экран, свернуть (то есть минимизировать), втянуть (то есть сократить до строки заголовка), выделить, перемасштабировать/переместить, закрыть (нормальное завершение программы) и убить (аварийное завершение программы, то есть команда kill).
Здесь же - доступ к свойствам и параметрам. Свойства - это атрибуты окна, такие, как наличие/отсутствие строки заголовка, кнопок закрытия и минимизации, изпользователяемость размера и прочее, а также исходное рабочее место (программу можно жестко привязать к любому из существующих виртуальных десктопов). Параметры - это положение на рабочем столе (всегда вверху или внизу), а также присутствие везде (как уже говорилось, по умолчанию каждое приложение существует только на том виртуальном экране, на котором оно открыто).
Window Maker имеет богатые возможности настройки, осуществляемой тремя взаимодополняемыми способами.
Базовые настройки осуществляются через уже упоминавшуюся кнопку WMPefs. Она вызывает окно конфигурирования WindowMaker, где можно настроить:
· позицию открываемых окон (автоматически, случайно, каскадно или вручную);
· фокусировку окна (щелчком или вслед за курсором мыши), а также определить время автоматического всплывания окна (от 10 до 800 мсек, по умолчанию - никогда);
· выравнивание подменю - в стиле Windows, ниспадающим каскадом, или по верхнему краю;
· расположение минимизированных окон и их выравнивание, а также размер экранных кнопок и иконок (от 24х24 до 96х96 пикселей);
· появление и характер всплывающих подсказок (по умолчанию отключены вообще);
· пути поиска графических файлов для пиктограмм и фоновых изображений);
· навигацию по виртуальным экранам (циклическую, с возвратом на первый экран после последнего, или с открытием нового экрана после последнего существующего); здесь же можно отключить WMClip и WMDock (что не рекомендуется, включить обратно их можно только ручной правкой одного из конфигурационных файлов).
Имеются также средства настройки внешнего вида иконок, окон, горячих клавиш, свойств мыши и прочее.
Но главное - настройка меню приложений. В меню приложений (Applications), вызываемого из контекстного меню рабочего стола правой клавишей мыши) можно добавить (и, разумеется, удалить) пункты первого уровня, которые могут содержать подменю любого уровня вложенности. И с любым количеством пунктов, которым приписываются любые команды - достаточно указать ее имя (или полный путь).
Кроме того, здесь же, кроме выхода из Window Maker и его перезапуска, можно (в подпункте Switch to) прописать вызов любого доступного оконного менеджера, также с привязкой к горячей клавише. Делается это абсолютно так же, как и вызов прикладных программ. При этом переключение в другой оконный менеджер или графическую среду (например, KDE) происходит с сохранением всех открытых приложений. К сожалению, обратная процедура (то есть, скажем, возврат из KDE в Window Maker) по умолчанию невозможна.
Дополнительные настройки внешнего вида Window Maker можно выполнить из всплывающего меню Applications (подменю Appearance, а не Workspaces, как можно было бы ожидать). Здесь можно определить:
· тему целиком (из фиксированного набора, который легко пополнить);
· стили окон и меню (из списка в более чем две дюжины позиций);
· установки иконок;
· фоновое оформление - сплошная или градиентная цветовая заливка, изображения в любом распространенном растровом формате; фон становится общим для всех виртуальных экранов, как существующих, так и создаваемых позднее.
Из комбинации всех этих элементов легко создать собственную тему и сохранить ее в виде файла для дальнейшего использования. Отсутствует только возможность изменения базового шрифта - это делается исключительно вручную.
Window Maker позволяет произвести точную ручную настройку путем правки конфигурационных файлов. Их пять (адреса: /etc/X11/WindowMaker и в каталоге /$HOME/GNUstep/Defaults). Править, естественно, лучше последние, во избежание неприятностей.
В файле WMGLOBAL, как явствует из его названия, определяются наиболее общие параметры. В частности, только здесь можно переопределить шрифт для элементов рабочего стола.
В файле WindowMaker указываются стили меню и икон, цветовая палитра, пути для икон и фоновых рисунков и многие другие параметры, определяемые через WMPrefs. Через который их и лучше изпользователять при необходимости. Однако, если вы случайно отключите WMClip и WMDock, единственный способ вернуть их в зад - отыскать в этом файле строки
DisableClip = YES;
DisableDock = YES;
и заменить YES на NO (или просто удалить - значение по умолчанию NO). Только сделать это нужно либо в консольном режиме, либо - переключившись в другой оконный менеджер; иначе Window Maker при выходе восстановит значения текущего сеанса.
Файл WMRootMenu описывает содержание меню Applications, вызываемого с рабочего стола и также определяемого через WMPrefs. Содержание WMWindowAttributes ясно из названия. Ну а WMState - описание панели WMDock и рабочих мест. Именно его легко отредактировать для внесения новых приложений в WMDock.
Конечно, на первый взгляд Window Maker выглядит непривычно для пользователя Windows. Устойчивость - на достойном уровне. Основные манипуляции с приложениями выполняются (при наличии минимальной привычки и после несложных настроек) легко и быстро. Таким образом, Window Maker может рассматриваться как полноценная альтернатива KDE, позволяя запускать все рассчитанные на последний приложения при более привлекательной внешности.
IceWM
Внешний вид IceWM - весьма Windows-образный: в нижней части экрана панель запуска приложений, она же - переключатель виртуальных экранов и панель задач (рис.5). Имеющая аналог пресловутой кнопки Start, правее которой - кнопки для переключения задач и запуска нескольких своеобычных приложений (терминала, Netscape Navigator и т.д.).
Затем - кнопки переключения виртуальных экранов, коих по умолчанию четыре. С правой стороны панели - процессорный монитор и часы. В общем, достаточно аскетический набор.
Щелчок левой клавишей мыши на чистом рабочем столе вызывает список запущенных задач и виртуальных экранов, правой - меню, аналогичное по содержанию таковому стартовой кнопки; к средней клавише привязан Windows List.
Стартовое меню содержит следующие пункты:
· пару терминалов, несколько приложений и системных утилит;
· отдельные пункты для приложений KDE и GNOME;
· переключатель оконных менеджеров (включающий большинство установленных в системе);
· переключатель тем.
Никакого средства быстрого запуска программ, типа мини-терминала из KDE, поначалу увидеть не удастся. Из чего напрашивается вывод (сразу следует сказать, что ошибочный), что для запуска программ следует использовать либо стартовое меню, либо окно терминала. Первое - содержало лишь ограниченный набор приложений. И простых средств для его пополнения с первого взгляда не обнаруживалось. Ну а второй способ, очевидно, быстро приводит к загромождению доступных экранов.
Рис.5
Средства визуального конфигурирования системы сводятся к выбору из фиксированного набора тем. Можно менять внешний вид окон и шрифты меню, в некоторых случаях - и цвет фона. Однако при перезапуске настройки тем сохраняться упорно не желают.
То есть первое впечатление от IceWM - достаточно удручающее. И может и остаться таковым, если не обратиться к каталогу /usr/X11R6/lib/X11/icewm/. Где можно видеть сразу четыре конфигурационных файла - preferences, menu, toolbar и winoptions. Чтобы сделать их доступными для редактирования пользователем, эти файлы должно скопировать в свой домашний каталог (сами по себе они там не образуются). Зато потом настройке поддается практически все.
В файле preferences все пункты (а их там чуть ли не две сотни) по умолчанию отключены. Снимая значок комментария и устанавливая переключатели (1/0) в соответствующие значения, можно настроить:
· массу параметров активизации окон;
· определить шрифты и цвета всех интерфейсных элементов;
· установить автоскрытие панели задач и состав иконок на ней (таких, как часы, мониторинг загрузки процессора и так далее)
· и многое, многое другое.
Очень интересная опция - возможность установки двойной высоты управляющей панели. В этом случае панель разбивается на две части по вертикали. В верхней половине - стартовая кнопка, кнопки запуска приложений и часы; между ними появляется своего рода командная строка
В нижней части - кнопки переключения виртуальных экранов (которых можно установить вплоть до двенадцати) и значки запущенных приложений; последние могут отображаться также и на рабочем столе. И в том, и в другом случае они представлены только на родительском виртуальном экране.
Весьма удобна работа с командной строкой (даже несмотря на отсутствие истории команд и поддержки автоматического дополнения табулятором). В нее можно вставить выделенный фрагмент (стандартным способом, средней клавишей мыши) или фрагмент, предварительно скопированный (сочетанием клавиш Control+v).
В файле menu, как не сложно догадаться, можно настроить состав стартового меню, вызываемого по кнопке Linux. Делается это достаточно просто: пункт для запуска программы определяется словом prog, после чего следуют название приложения, имя иконки и имя исполняемого файла.
А чтобы объединить несколько программ в одну папку (то есть сделать иерархическое меню), указывается слово menu, после которого, в фигурных скобках, перечисляются все потребные prog'и, как это показано ниже:
prog xterm xterm xterm
prog fte fte fte
prog Netscape netscape netscape
prog Gimp gimp gimp
separator
menu Mandrake magic {
prog "Mandrake Update" updates-mdk MandrakeUpdate
prog "rpmdrake" rpmdrake rpmdrake
prog "DrakConf" DrakConf DrakConf
}
separator
В файле toolbar, естественно, можно вывести иконки запуска приложений непосредственно с управляющей панели. Что делается абсолютно также:
Наконец, в файле winoptions можно настроить параметры различных приложений.
Поддаются ручной настройке и темы рабочего стола. Для этого в каждой теме имеется файл default.theme (где задаются цвета, бордюры и прочее) и множество графических файлов для интерфейсных элементов. Все это совершенно элементарно поддается ручному редактированию. В частности, не составляет труда изменить цвета любых элементов, шрифты и тому подобное. Можно также определить фоновое изображение, причем оно отнюдь не обязано быть в формате XPM.
Для сохранения темы после окончания текущего сеанса путь к соответствующему файлу default.theme нужно прописать в preferences.
Там же, при необходимости, можно разрешить/запретить центрирование фонового рисунка и его размножение. Дополнительные (помимо входящих в состав дистрибутива) темы для IceWM можно скачать по адресу http://icewm.tux.nu.
Таким образом IceWM - очень гибкая и хорошо настраиваемая система. Разумеется, ручная правка конфигурационных файлов занимает несколько больше времени, чем, скажем, перетаскивание иконок загруженных приложений в WindowMaker. Однако никаких принципиальных сложностей не представляет - все параметры конфигурации предельно прозрачны. Конечно, при эпизодическом применении IceWM она может быть неоправданна. Однако, если предполагается постоянное использование этой среды - затратить полчаса на ручную доводку не сложно.
Поскольку IceWM сочетает в себе:
· эффективные средства запуска программ - как из удобной и компактной панели, так и из командной строки минитерминала, без необходимости вызова терминального окна;
· удобную и разнообразную манипуляцию запущенными приложениями; достаточное количество виртуальных экранов с удобными способами перемещения между ними;
· с эстетической точки зрения среда может быть обустроена как угодно; вплоть до вида, не имеющего ничего общего с исходным Windows-образием.
Если есть необходимость в гибко настраиваемой системе, и при этом пользователя не пугает необходимость покопаться руками в конфигурационных файлах то IceWM - это именно то, что нужно.
Все описанные ранее менеджеры окон предоставляют более или менее развитые (и разнообразные) средства запуска и управления приложениями, настройки и прочего. Однако, как выяснилось, оконные менеджеры вполне способны обходиться без этих излишеств. В чем можно убедиться на примере FLWM.
FLWM
FLWM – оконный менеджер, построенный с поистине спартанской простотой. После запуска через доли секунды появляется стерильно чистый экран ядовитого синего цвета. Нет ни пиктограмм, ни кнопок, ни какой-либо панели задач. На щелчок левой (а также правой и средней) клавишей мыши этот экран реагирует появлением меню со столь же аскетическим набором функций - создания нового десктопа, нового терминала и выхода. Запуск программ производится из командной строки терминала. Это при нескольких запущенных приложениях быстро загромождает экран. Зато виртуальных экранов (desktop) можно создать сколько угодно. И переключаться между ними из того же меню по щелчку клавишей мыши.
В отличие от всех ранее описанных сред, по умолчанию управляющие элементы окна в FLWM располагаются вертикально вдоль его левого края. Это кнопки (сверху вниз) минимизации, втягивания, разворота по вертикальной и горизонтальной осям (включение обоих приводит к полноэкранному режиму), затем строка заголовка (ориентированная даже не по китайски) и (в самом низу) кнопка закрытия окна. Этим интерфейсные элементы исчерпаны. Визуальные средства настройки отсутствуют как класс. В общем, казалось бы, удручающее зрелище. Однако в файле документации к FLWM в каталоге /usr/doc/flwm-x.xx. его автор Bill Spitzak уверяет, что настраивать FLWM можно. В пользовательском каталоге находится /.wmx/, содержащий подкаталоги, соответствующие пунктам меню, с файлами, отвечающими подпунктам. И в итоге для настройки контекстного меню достаточно создать подкаталоги любой желаемой структуры (до десяти уровней вложенности). И поместить в них символические линки необходимых приложений или коротенькие скрипты для запуска последних.
Что оказывается чрезвычайно удобно: любое приложение вызывается щелчком на любом пустом месте любого из открытых виртуальных экранов.
Выводы
Таким образом, GUI в Linux состоит из двух основных частей: X Window System и собственно оконного менеджера.
X Window System – сервер, а оконный менеджер – клиент, их взаимодействие представляет собой стандартную модель «клиент-сервер». Такая модель представляет большие возможности при разделении функций пользовательского окружения и серверной части, хотя зачастую на пользовательских машинах X Window и оконный менеджер устанавливаются вместе.
Система X Window осуществляет связь с аппаратурой системы (видеокарта, монитор, клавиатура, мышь) и предоставляет простейшие графические возможности (цвета, рисование графических примитивов, вывод текста, организяция графических оконных областей и т.д.).
XFree86 - это свободная реализация стандарта 11 версии 6 релиза X Window System (X11R6), диктуемого X Consortium'ом. XFree86 может быть запущена на всех Unix и Unix-like системах, таких как: Linux, всЈ семейство BSD, Sun Solaris x86, MacOs X. Так же поддерживаются OS/2 и Cygwin (Win32): сервер работает одинаково на любой платформе.
KDE основан на библиотеке Qt от Trolltech, а Gnome - на Gtk+. Библиотека является ответственной за то, в частности, каким образом X Window будет рисовать меню, кнопки, иконки и другие графические элементы.
Менеджер окон отвечает за расположение и вид самих окон и рабочего стола, чаще всего включает в себя систему контроля за пользовательскими сеансами, набор прикладных программ, утилит, и т д.
Если Xfree86 – это стандарт, то оконных менеджеров и оконно-ориентированных рабочих сред (DE - Desktop Environment) существует огромное множество, ниболее популярным из которых и посвящен данный раздел.
DocApp'ы - аналоги апплетов, с помощью которых на экран выносятся полезная информация: температура процессора, его загрузка, количество свободной памяти или дискового пространства, состояние соединения с сетью, состояние почтового ящика, часы, календарь и многое другое. Из подобных программ можно выделить "всЈ в одном" Gkrellm, она заслуживает отдельной статьи.