Session Manager

Глава 16.Linux.

Традиционная среда обитания пользователя Linux — оболочка командной строки. И обычно с нее-то и начинается, по принципу "от простого — к сложному", рассмотрение использования Linux в большинстве посвященных ему книг.

Однако для пользователя Windows, утратившего (а то и не имевшего никогда) навыки работы в чистом DOS, такое понимание простоты вряд ли покажется приемлемым. И потому я начну с работы в графических средах. Принцип "от простого — к сложному" при этом тоже выдерживается. Только имеется в виду простота не устройства, а использования. Даже не столько простота (это вопрос спорный), сколько — привычность. Тем не менее, поскольку именно командная стока во многом определяет своеобразие Linux, в заключение саги я рассмотрю и эту традиционную среду обитания.

О системе Х Window

Работа в графическом режиме под Linux возможна благодаря системе, именуемой Х Window, разработанной в 80-х годах в Массачусетском Технологическом Институте.

Что такое Х Window? Как ни странно, внятный ответ на этот вопрос найти в книгах по Linux (и Unix вообще) довольно сложно, по крайней мере — в русскоязычных и переведенных. Вероятно, профессиональные разработчики, которые точно знают, что это такое, полагают, что остальным это должно быть интуитивно понятно. Или знать просто не положено...

Наиболее последовательное описание системы Х Window мне удалось обнаружить в статье Алексея Выскубова в журнале "Byte Россия" (декабрьский номер за 1998 г.). Основываясь на ней, а также на своих представлениях, я попытаюсь рассказать об Х Window то, что, думается, необходимо знать конечному пользователю. Не претендуя при этом ни на глубину, ни на детальность изложения. Поскольку интересующийся за подробностями может обратиться к вышеназванной работе.

В большинстве книг по Linux X Window определяется как графический интерфейс пользователя (GUI, Graphical User Interface). Ну а что такое GUI — знает, хотя бы понаслышке, каждый пользователь Windows. Однако, по мнению А. Выскубова, X Window — это, скорее, ядро, над которым может надстраиваться любой графический интерфейс.

В основе X Window лежит модель клиент-сервер, хотя эти термины используются несколько необычным образом. Так, серверная часть X Window — это аппаратно-зависимая система ввода/вывода, взаимодействующая с видеосистемой, клавиатурой и мышью. Тогда как клиентская часть обеспечивает вывод данных в видеосистему и прием их с устройств ввода.

Один из Х-клиентов — оконный менеджер (или диспетчер окон). Он управляет размещением окон на экране, определяет их вид и характер управляющих элементов. То есть именно он и представляет собой GUI в собственном смысле слова.

Что из этого следует с точки зрения пользователя? То, что в ОС Linux (и любой другой Unix-подобной системе пользователь не привязан к какому-либо одному графическому интерфейсу: таковых, определяемых оконным менеджером, теоретически может быть невообразимое множество. Впрочем, как будет показано в следующих разделах, практика недалеко отстает от теории.

Все сказанное выше относилось к системе X Window вообще. Она существует во многих вариантах. Один из них, именуемый XFree86, представляет свободную (и открытую) реализацию X Window для компьютеров на базе процессоров Intel x86 и их клонов. Именно она и входит в состав дистрибутивов Linux вообще и Linux Mandrake в частности.

В качестве текущих ныне могут рассматриваться версии XFree86 З.х.х и 4.х.х, различающиеся моделью своей серверной части: в версии З.х.х реализовано множество серверов для различных типов аппаратуры, в первую очередь — видеочипов, которые и выступают в качестве их эпонимов. В версии 4.0 существует лишь один Х-сервер (SVGA-сервер), отвечающий за поддержку всех типов видеоаппаратуры.

Этим и обусловлено сосуществование двух версий, которое продлится, вероятно, еще довольно долгое время. Из SVGA-сервера 4-й версии исключена поддержка многих видеокарт, рассматривающихся, вероятно, как устаревшие, но еще широко распространенных.

В текущей версии Linux Mandrake 7.0/RE представлена XFree86 версии 3.3.6 (последняя в этой линии, развитие которой прекращено). Однако при наличии Appendix можно установить и версию 4.0. Которая опционально входит в состав оригинального Mandrake 7.1. Последняя же версия XFree86 на момент написания этих строк — 4.0.1.

Что бы не возвращаться более к этому вопросу, вкратце скажу еще об одном существенном элементе X Window — наборах графических библиотек, опре-

деляющих и внешний вид, и функциональность всех Х-клиентов (повторюсь, в понимании пользователя, которое профессиональному программисту может показаться не вполне строгим или нестрогим вообще).

Графические библиотеки — это некий аналог (или, скорее, гомолог) пресловутого Miscrosoft Foundation Classes (MFC), на которых, теоретически, должны бы основываться все Windows-приложения. За исключением приложений фирмы Microsoft, разумеется — в их основе лежат некие недоступные простому смертному библиотеки.

Основных таких библиотек несколько: коммерческий пакет Motif и совместимые с ним открытые и бесплатные OpenMotif и Lesstif, Qt, распространявшаяся до недавнего времени на условиях собственной лицензии, открытая (по лицензии GPL) библиотека Gtk. Наличие установленных в системе таких библиотек — непременное (почти) условие функционирования основанных на них приложений.

Об оконных менеджерах и графических средах

Как уже сказано, то, с чем непосредственно сталкивается пользователь при работе в графическом режиме Linux — это оконный менеджер, именуемый в русскоязычной литературе также диспетчером окон. Недавно в переводной документации по Debian мне встретилась такая трактовка оригинального термина (Window Manager) — манипулятор окон. Пожалуй, по смыслу это наиболее удачный перевод, но он пока не прижился.

Именно оконный менеджер, установленный по умолчанию, возникает перед глазами после запуска Х Window, каковой осуществляется стандартно командой startx, но может выполняться и различными иными способами:

командой xinit или просто исполнимым модулем соответствующего менеджера. Иногда может понадобиться введение дополнительных параметров, но об этом я говорить не буду.

И так, оконный менеджер — это программа (Х-клиент), обеспечивающая внешний вид и функциональность элементов графического интерфейса. Под видом интерфейсных элементов я понимаю конфигурацию и оформление, в том числе цветовое, окна, его заголовка, рамок, полос прокрутки, управляющих кнопок и меню. Функциональность же — возможность минимизации/максимизации, сворачивания в пиктограмму, перемещения, изменения размера, вызова различных наборов контекстных меню.

Поскольку ни вид, ни функциональность оконных менеджеров не привязаны, как в случае с Windows, к какому-либо GUI (ибо они сами таковыми являются), их внешность ограничивается в Х Window только фантазией авторов, а функциональность — их пониманием баланса между богатством

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

Не возьмусь судить, больше ли оконных менеджеров, чем дистрибутивов Linux, или меньше, но количество — сопоставимо.

Традиционными оконными менеджерами для XFree86 являются FVWM, OLWM, TWM и их вариации, воспроизводящие внешний вид интерфейсов Motif или OpenLook — стандартных графических интерфейсов мира Unix и Х Window. Есть системы, продолжающие линию развития интерфейса NextStep — Afterstep и WindowMaker. Имеются и оконные менеджеры, с большим или меньшим подобием имитирующие Windows 95 — FVWM95 и IceWM, а также интерфейсы иных настольных платформ — MacOS, Amiga, OS/2.

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

Мне известно три графические среды, претендующие на титул интегрированных — KDE, GNOME и XFce, различающиеся своей структурой, набором приложений и подходом к их интеграции. Кроме того, имеется еще и CDE — это среда многих коммерческих Unix-систем, и о ней не будет речи в этой главе.

Зачем простому пользователю такое изобилие графических интерфейсов, оконных менеджеров, интегрированных сред? Нетрудно ответить — для обеспечения все той же свободы выбора, о которой я столько говорил на этих страницах, и которая определяет притягательную силу Linux.

Оконные менеджеры различаются функционально. И вы, в зависимости от своих задач, долговременных или сиюминутных, можете выбрать любой вариант — обеспечивающий лишь базовые средства GUI или изощренный по своим возможностям.

Из различия функциональности следует, хотя и косвенно, различие требовательности к вычислительным ресурсам. И, исходя из возможностей своей машины и потребностей в быстродействии (а также "тяжести" запускаемых приложений), вы всегда можете подобрать оптимальное соотношение между функциональностью и ресурсоемкостью.

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

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

Поэтому, приведя описание и сравнение нескольких сред и оконных менеджеров, с коими мне довелось работать, я ни в коем случае не ставлю себе задачу выбора наилучшего из них: все они имеют свои особенности, определяющие целесообразность применения в тех или иных ситуациях. И выбор их может определяться даже не вкусами и предпочтениями, а просто настроением или текущими задачами.

Тем не менее, чтобы сделать выбор для текущего момента, без сравнения все же не обойтись. И, значит, должны иметь место некие критерии такого сравнения. В качестве которых я рассматриваю три:

функциональность;
настраиваемость;
стабильность и быстродействие.

Кроме того, немаловажным для меня является эстетический момент. Но это, как вы понимаете, критерием быть не может. Руководствуясь принципом "от привычного — к экзотическому", я начну рассмотрение с интегрированных графических сред, знакомых пользователю не только Windows, но и MacOS или OS/2. И первой в их ряду будет KDE.

KDE — наиболее интегрированный выбор

Скорее всего, свое знакомство с работой в графическом режиме под Linux (и с работой в Linux вообще) вы начнете именно с KDE. Во-первых, во многих дистрибутивах она принята как графическая среда по умолчанию. Во-вторых, как внешне, так и функционально она наиболее привычна недавнему Windows-мигранту. И, в-третьих, она располагает большим набором полнофункциональных и стабильно работающих приложений. Но — по порядку.

Итак, KDE — это интегрированная графическая среда, совмещенная с оконным менеджером. Она основана на наборе графических библиотек Qt, разрабатываемом норвежской фирмой Troll Tech (https://www.trolltech.com).

Библиотека Qt распространялась на условиях собственной лицензии, предполагавшей бесплатность при некоммерческом использовании и весьма немалую цену — при использовании в проектах коммерческих. Это служило идеологическим препятствием для включения KDE в ряд распространенных дистрибутивов (Debian и до недавнего времени Red Hat). Однако ныне правила лицензирования Qt изменились: теперь в ряде случаев она подпадает под условия GPL, хотя плата за коммерческое использование библиотеки, по-видимому, сохраняется.

Маленькое отступление: я время от времени чересчур подробно останавливаюсь на условиях распространения программ. Это отнюдь не из врожденной склонности к сутяжничеству. Просто, на мой взгляд, пользователь открытого и бесплатного обеспечения должен понимать, есть ли в рамках существующих норм основания для производителя момент закрыть свои разработки, превратив их в сугубо коммерческий продукт. Дабы в один прекрасный момент не обнаружить, что то программное обеспечение, на котором вы построили свою профессиональную деятельность (особенно это касается узкоспециализированных программ), неожиданно оказалось коммерческим и весьма дорогим. Так вот, распространение на условиях GPL — это почти гарантия, что такого не случится.

Мне могут возразить, что в реалиях нашей страны все это — условности, не имеющие практического значения. Не спорю. Но, черт возьми, будем же мы (или хотя бы наши внуки) когда-нибудь жить в цивилизованном и законопослушном обществе? Хотелось бы, если не верить, то надеяться.

Возвращаясь, однако, к нашим баранам, продолжим разговор о KDE. Текущая, стабильная ее версия — 1.х.х, основана на Qt l.x.x. В настоящее время релиз KDE 2 благополучно вышел в свет на библиотеке Qt 2.х.х. Однако думается, что первая версия будет сохранять актуальность еще некоторое (возможно, значительное) время.

Во-первых, KDE 1 — система устоявшаяся и стабильная, что было бы опрометчиво утверждать про вторую версию. Во-вторых, пройдет еще некоторое время, прежде чем KDE 2 войдет стандартным компонентом в распространенные дистрибутивы. И, в-третьих и главных, еще больший срок потребуется для переписывания ориентированных на первую версию приложений, работоспособность которых в новой системе отнюдь не гарантируется.

Так что отдавая себе отчет в неизбежности сосуществования версий, посмотрим на KDE 1 снаружи. Внешне эта графическая среда имеет немало общего с Windows 9х (рис. 4.1). Хотя спутать их — невозможно. Это, с одной стороны, обеспечивает чувство смутного знакомства (и не обескураживает, как экзотика многих более самобытных графических систем). С другой же — будит здоровое любопытство, не вызывая скуки, появляющейся при взгляде на ярко выраженные Windows-клоны (не для того же, в самом деле, мы ставили Х Window, чтобы лицезреть великую кнопку Start (Пуск)).

Рис.16.1. Интегрированная графическая среда KDE 1

Правда, и в KDE нечто вроде такой кнопки (называемой К) имеется. Она расположена слева на управляющей панели (каковая по умолчанию располагается вдоль нижнего края экрана, но может помещаться с любой его стороны). Управляющая панель отделена от панели задач и содержит минимизированные значки запущенных приложений; последняя (то есть панель задач) по умолчанию — вдоль верхней кромки экрана. Так что места достаточно для любого разумного количества кнопок и запущенных приложений (а если учесть еще минимум три рабочих стола, то более чем достаточно).

Меню стартовой кнопки К — многоуровневое иерархическое, построенное сходно с главным меню Windows. В основных его пунктах сгруппированы программы различного назначения:

просто приложения (преимущественно текстовые редакторы, процессоры и вьюверы);
игры (в весьма обширном ассортименте, включая множество любимых мной пасьянсов);
средства для работы с графикой (как растровой, так и векторной, а также всякого рода "гляделки");
Интернет-приложения (браузеры, почтовые программы, средства удаленного доступа, модемного подключения и т. д.);
средства мультимедиа (многочисленные аудио- и видеопроигрыватели различного назначения и для различных форматов);
системные утилиты (вход в режиме суперпользователя, средства управления шрифтами и аккаунтами пользователей, настройки оборудования и рабочей среды);
утилиты общего назначения (огромный двухуровневый список, в котором программы — от архиваторов до демонстраторов фаз Луны);
средства разработки — интегрированные среды, отладчики, etc.;
 

Практически все перечисленные приложения являются специфичными для KDE. Однако и запуск не рассчитанных на эту среду приложений не возбраняется, для чего они собраны в отдельный пункт — GNOME и приложения X. Здесь можно видеть подгруппы — средств администрирования и конфигурирования, Интернет- и мультимедиа-приложений, текстовых и графических редакторов, и прочее, и прочее, и прочее.

В меню кнопки К включены также пункты вызова:

встроенной системы помощи в гипертекстовом формате, очень удобной, но, к сожалению, на русский язык не переведенной (я забыл сказать, что в принципе KDE, по крайней мере в поставке Linux Mandrake 7.0/RE, в очень значительной мере русифицирована);
содержимого домашнего каталога;
поиска файлов;
Центра управления KDE.

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

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

поле кнопок общего назначения: присутствующие и в стартовом меню кнопки поиска файлов, вызова Центра управления KDE, содержимого домашнего каталога, а также кнопки вызова многоуровневого меню (аналогичные по структуре кнопке К) — для списка открытых окон и утилит общего назначения;
поле переключателей виртуальных экранов (иначе называемых виртуальными десктопами, дисплеями, рабочими столами и т. д.); это копии первого рабочего экрана по умолчанию, поддающиеся индивидуальной настройке; изначально их четыре, но (посредством Центра управления) можно создать сколько угодно, вернее, сколько память позволит;
поле кнопок приложений; здесь по умолчанию присутствуют кнопки для вызова помощи, калькулятора, текстового редактора, эмулятора терминала и еще несколько; однако в него может быть включена кнопка для любой программы, не обязательно ориентированной на KDE; завершается это поле индикатором системного времени.

Панель задач в момент запуска KDE пуста. По мере загрузки приложений она заполняется кнопками — их минимизированными значками. В панели задач отображаются приложения со всех виртуальных экранов. Щелчок мышью на некоей задаче вызывает автоматический переход на соответствующий ей виртуальный экран.

Между управляющей панелью и панелью задач располагается собственно рабочий стол. По умолчанию он имеет градиентную заливку, каждый из виртуальных десктопов — в своей цветовой гамме.

На рабочем столе — серия значков для вызова приложений, открытия папок (таких, как Автостарт, Ноте (домашний каталог), Корзина (удаленных только средствами KDE) файлов); здесь же — значки Cd-Rom для автоматического монтирования компакт-диска, Floppy для флоппи-диска и других сменных носителей, если они есть. Любое из этих действий происходит при одинарном щелчке левой кнопки мыши.

После этого для просмотра содержимого папок вызывается файловый менеджер KFM (совмещенный с браузером) — неотъемлемая часть всей этой среды; степень его интеграции в систему выше, чем Windows Explorer и Internet Explorer в соответствующей операционной системе, не к ночи будь помянута.

Со всеми перечисленными интерфейсными элементами KDE связаны контекстные меню, доступные по щелчку правой кнопки мыши на соответствующем объекте. Для управляющей панели оно имеет команды: Настройка и Перезапустить. Со значками сопряжены пункты — Открыть с (помощью программы, вводимой вручную или выбираемой из списка). Копировать, Отправить в корзину, Свойства. Содержание их, думаю, понятно без комментариев.

Контекстное меню, вызываемое по щелчку правой кнопкой непосредственно на рабочем столе, содержит команды:

Новый (папка, файл системного устройства, URL, приложение; последнее — для создания значка вызова новой программы);
Закладки (аналог Bookmark в Internet Explorer);
контекстно-зависимая помощь;
Свойства дисплей (для настройки параметров, доступной и через Центр управления);
упорядочения и расположения окон и пиктограмм.

Особенно важен и интересен пункт Запустить. Он вызывает так называемый Minicli (что я перевел бы как минитерминал) — облегченный вариант командной строки терминала или консоли (нечто аналогичное команде Run (Выполнить) из главного меню Windows). С его помощью можно вызвать любую команду или запустить любую программу графического режима, причем с указанием всех необходимых аргументов. Поддерживается история команд: нажатием клавиш <Up> и <Down> можно просмотреть ранее введенные команды, правда, только в рамках текущего сеанса КОЕ.

Нужно заметить, что для манипуляций на рабочем столе задействована и средняя кнопка мыши. Она вызывает список всех открытых окон с указанием на виртуальный экран, к которому они привязаны.

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

вверху строка заголовка, содержащая по умолчанию название программы или имя файла данных (если он открыт) с указанием пути к нему;
в том же ряду управляющие элементы: слева — управление окном (развертывание/свертывание, перемещение, изменение размера, перемещение на иной виртуальный рабочий стол, выбираемый из списка) и прикрепления окна к некоему месту на десктопе (т. н. "шпилька"); справа — минимизации на панели задач, развертывания на полный экран, закрытия;
внизу — строка состояния, содержание которой определяется программой, и горизонтальная полоса прокрутки;
справа — вертикальная полоса прокрутки.

Кроме того, специфичные для KDE приложения имеют обычно строку главного меню и панель инструментов. Обе они стандартизованы в стиле Windows.

Думается, из всего сказанного ясны функциональные возможности KDE. Следует только заметить, что в дополнение к многочисленным способам запуска приложений (из стартового меню, с помощью пиктограмм на управляющей панели или на рабочем столе, из контекстного меню с помощью Minicli), есть и традиционный для Linux (и Unix) способ — из окна эмуляции терминала. Обращение с ним близко к приемам работы в командной строке консольного режима, о чем буду говорить в заключение.

Теперь рассмотрим KDE с точки зрения настраиваемости.

Как уже говорилось, в пределах рабочих столов поддается настройке почти все: цвет и характер заливки фона, фоновые рисунки (именуемые обычно обоями, wallpapers), цвет, гарнитура, кегль и начертание подписей к пиктограммам и значкам панелей, цветовые схемы элементов окон. Действия эти доступны из пункта меню Рабочий стол в Центре управления или из контекстного меню рабочего стола непосредственно.

Кроме того, в комплекте поставки имеется набор тем рабочего стола, то есть взаимосвязанных элементов: обоев, хранителей экрана, цветовых схем, шрифтов и прочего. Многочисленные темы рабочего стола представлены на ряде сайтов. Разумеется, в качестве обоев и других элементов можно встраивать в темы и свои картинки (в любом из обычных растровых форматов). Измененные таким образом темы могут быть сохранены для дальнейшего использования под собственными именами.

Штатная терминальная программа для KDE — konsole — также имеет широкий спектр настроек: изменяется цвет фона и текста (в пределах заданных цветовых схем), размер шрифта, исходный размер терминального окна и т. д.

Поддается настройке и управляющая панель. Для этого в стартовом меню предусмотрен специальный пункт Панель, в котором существует команда Добавить приложение. Правда, таким образом на панель можно поместить только то, что встроено в стартовое меню. Впрочем, с любым другим приложением дело обстоит не сложнее: достаточно на рабочем столе создать для него пиктограмму (через контекстное меню Новый ¦ Application), после чего просто перетащить ее мышью на управляющую панель.

В общем, возможности настройки KDE более чем удовлетворительны. Чего, к сожалению, я не сказал бы о дизайне в целом. На специфичных для KDE пиктограммах лежит отчетливая печать индустриальное™, градиентные заливки выглядят грубовато, экранные шрифты по умолчанию, мягко говоря, далеки от совершенства. Впрочем, почти все эти огрехи (на мой субъективный взгляд, разумеется), затратив определенные усилия, можно исправить в интерактивном режиме, не прибегая к ручной правке конфигурационных файлов (чем, к стати говоря, могут похвастаться далеко не все оконные менеджеры).

Не вызывает нареканий и устойчивость KDE. Столь же стабильно работают и его штатные приложения. А вот с точки зрения быстродействия она рассматривается как одна из самых медлительных и ресурсоемких систем. Правда, на машине класса Pentium-III со 128Мбайт оперативной памяти чувства дискомфорта при работе с KDE не возникает. Однако, по сведениям моих корреспондентов, с уменьшением объема оперативной памяти быстродействие ее падает чуть ли не в геометрической прогрессии.

Справедливости ради следует заметить, что многие из существующих недостатков KDE обещают быть ликвидированы во второй версии. Поскольку к моменту, когда вы станете читать эти строки, версия эта с большой вероятностью будет существовать в качестве релиза, логично было бы остановиться на ее особенностях. Основанных на знакомстве с бета-версией, маркированной как KDE 192.

Но для начала я хотел бы предостеречь от немедленного обновления KDE, что называется, "в лоб". В результате можно благополучно развалить старую версию, не получив адекватной замены — в существующем виде KDE 2 для повседневной работы не пригоден и сразу по выходе релиза вряд ли сравнится с первой версией по устойчивости. Кроме того, в KDE 2 гарантированно откажутся работать (по крайней мере, без перекомпиляции) некоторые приложения, например, HTML-редакторы WebMaker и Quanta, базирующиеся на штатных текстовых редакторах из KDE.

Для пристрелочного знакомства с новой системой осторожнее было бы воспользоваться версией, имеющейся на многократно упоминавшемся мной Appendix к Linux Mandrake 7.0/RE или из какого-либо post-appendix с ftp://Iogic.ru. Они собраны в виде бинарных пакетов (rpm) так, чтобы мирно сосуществовать с KDE 1. А прилагаемые файлы README содержат исчерпывающие сведения о порядке установки библиотек, базовых компонентов и приложений.

При загрузке KDE 2 для начала появляется заставка с маленьким зелененьким дракончиком-динозавриком-крокодильчиком (систематическую принадлежность определить затрудняюсь). Стиль KDE сохранен, но исполнение — весьма аккуратное, отвращения не вызывает. Ну а дракончик-..., зверь, одним словом, так даже симпатичным показался.

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

Первое, что бросается в глаза после загрузки — исчезновение отдельной панели задач в верхней части экрана. Она теперь совмещена с управляющей панелью, расположенной внизу. В отличие от предыдущей версии, в этой панели отображаются только приложения, запущенные на текущем виртуальном рабочем столе.

Вид управляющей панели изменился мало: те же кнопки К, Home, Konsole, Help, переключатель виртуальных десктопов. Кнопки от старых внешне отличаются слабо, но стали элегантнее, что ли; во всяком случае они не производят столь топорного впечатления, как в KDE 1.

В структуре стартового К-меню произошли изменения. Они касаются главным образом перераспределения между пунктами System и Settings. Так, управление шрифтами перебралось из первого во второй, причем — еще и в подпункт Settings ¦ LookNFeel. Там же наряду с Font Manager появился пункт Font — для настройки шрифтов рабочего стола, которая раньше осуществлялась через Центр управления или из контекстного меню. Впрочем,

последнее по прежнему появляется при щелчке правой кнопкой мыши и содержит пункты:

Add, служащий для добавления в панель управления кнопок приложений или апплетов (каковыми, нужно заметить, являются все элементы панели);
Configure, предназначенный для конфигурирования панели: изменения размера ее самой и пиктограмм на ней, размещения панели, автоскрытия, ее задержки и скорости анимации, определения фона панели и даже отдельных ее кнопок;
Help и Restart, назначение которых в комментариях не нуждается.

Разумеется, в KDE 2 имеются и средства настройки рабочего стола. Проще всего они осуществляются из контекстного меню по щелчку в его пределах правой кнопки мыши. В отличие от предыдущей версии, настройки дескто-па разнесены на два пункта — настройку фона (Configure Background) и всего прочего (Configure Desktop).

Первый позволяет определить цвет или цвета фона и характер градиентных переходов (горизонтальный, вертикальный, пирамидальный, эллиптический и т. д.), указать фоновое изображение (выбором из тем или произвольных графических файлов) и характер заполнения им экрана (по центру, черепицей, максимизация с сохранением или без сохранения пропорций). Интересна новая опция — взаимопереход между фоновым цветом (цветами) и фоновым изображением. Который тоже может быть различным по характеру — горизонтальным, вертикальным, эллиптическим и т. д.

Из панели Configure Desktop можно установить вертикальное выравнивание значков на рабочем столе и отображение скрытых файлов, приписать средней и правой кнопке мыши различные контекстные меню (Window List Menu, Desktop Menu, Application Menu), указать пути до каталогов — рабочего стола, автозапуска и Корзины (как и в Windows, в KDE это обычные компоненты дерева каталогов). Здесь же — изменение гарнитуры и размера (в трех градациях) шрифта для подписей к элементам рабочего стола.

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

Судить о функциональности среды по бета-версии было бы опрометчиво. Посему на них я остановлюсь лишь вкратце.

Запуск приложений в KDE 2, как и в предыдущей версии, осуществляется различными способами:

из командной строки терминала, в качестве которого по умолчанию выступает konsole, но может быть определен и любой другой;
непосредственно из стартового К-меню;
помощью пиктограмм панели;
помощью пиктограмм на рабочем столе;
с помощью миникомандной строки (Minicli), вызываемой либо из контекстного, либо из стартового меню.

Функционально изменился лишь последний способ. К истории команд, просматриваемой с помощью клавиш управления курсором, добавилось выпадающее меню. История команд не теряется после завершения сеанса KDE.

Ну а для переключения между приложениями, в том числе и расположенными на разных десктопах, к комбинации <Alt>+<Tab>, через так называемый Pager (переключатель страниц) на панели и контекстному меню (по умолчанию по щелчку средней кнопки мыши), добавилась еще одна возможность:

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

Что можно сказать по поводу быстродействия новой версии? Грузится она медленнее, по ощущению, ровно на то время, пока происходит созерцание помянутого ранее динозаврика. Однако после загрузки особенной затормо-женности я не заметил.

Подводя итог, скажу, что возможно, с точки зрения пуристической, KDE — это действительно Windows-подобная среда, противоречащая исконному духу Unix. Однако ведь Linux — не тюрьма народов: нравится KDE или есть в нем потребность — используй, не нравится или не нужен — не используй. На случай чего предусмотрены и другие интегрированные графические среды. Одна из которых — XFce.

XFce — повинуясь импульсу

XFce (The Cholesterol Free Desktop Environment, что применительно к случаю я перевел бы как Настольная Среда для Холериков) — также интегрированная (то есть содержащая специфичные для нее приложения и утилиты) графическая среда со своим собственным оконным менеджером, основанная на библиотеке Gtk. Текущая ее версия —3.6.1, найти ее можно на https://www.xfce.org. Впрочем, она стандартно входит во многие дистрибутивы Linux.

Первый же запуск XFce показывает ее соответствие названию: все работает весьма быстро и производит впечатление импульсивности. Поведение системы определяется ее собственным оконным менеджером, именуемым XFwm. Он включает следующие интерфейсные элементы: переключатель (Pager, в терминологии авторов) виртуальных экранов в верхнем правом углу и главная панель (XFce Main Panel) — внизу по центру.

Не могу не отметить, что все виденные мной оконные менеджеры и графические среды вызывают воспоминания о славных традициях отечественной геологической школы: каждый считает своим долгом (и делом чести, подвига и геройства) придумать собственную терминологию в обозначении интерфейсных элементов. Я по мере сил постараюсь ее унифицировать, давая для определенности и оригинальные англоязычные названия.

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

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

Среди включенных в главную панель обычных приложений и утилит (терминал, браузер, калькулятор) привлекают внимание специфичные для XFce программы: менеджер фонового оформления (backdrop manager), звуковой менеджер (sound manager), календарь, модуль совместимости с GNOME и весьма своеобразный файловый менеджер XFTree. Который, впрочем, будет рассмотрен в следующей главе.

Все кнопки главной панели легко переопределяются — тем же способом, что и добавляются новые.

Рабочий стол при первом запуске пуст, как карман научного сотрудника. Щелчок на нем левой кнопкой мыши вызывает меню для управления окнами и значками, настройки мыши, фона (backdrop) и звука, а также выхода, правой — список запущенных приложений. Средняя кнопка управляет размерами окон, их минимизацией, перемещением и фиксацией, пересылкой на другой рабочий стол, а также переключением между окнами.

Средств запуска программ с рабочего стола (типа минитерминала KDE) не обнаруживается. Хотя такое средство включено в состав файлового менеджера. Так что, помимо главной панели, для запуска программ можно использовать только какой-либо стандартный эмулятор терминала (по умолчанию в нее включен xterm).

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

Каждая программа привязана к виртуальному экрану, с которого была запущена. Но может быть перемещена на любой доступный экран через пункт управляющего меню Услать к. Если окно ее активизировано, отправить ее на другой экран можно по щелчку средней кнопки на рабочем поле.

Не смотря на приуроченность программы к породившему ее виртуальному экрану, в списке запущенных задач (доступному по щелчку правой кнопки мыши) все они идут одним списком, и без указания экрана, на котором локализованы (но зато с координатами окна в пикселах, правда, не знаю, зачем); что создает известные неудобства, если запущено много приложений. Аналога панели задач из KDE здесь также нет.

Вообще, мне показалось, что самый удобный способ работы с XFce — открывать на каждом экране по одной программе (благо экранов можно создать много), и переключаться между ними через xfwm Pager или с панели кнопок.

Убедившись в работоспособности системы, можно заняться ее эстетическим совершенствованием. Что осуществляется через кнопку Установка на главной панели. Здесь можно определить:

цветовую палитру (выбрав из списка или создав собственную);
основные параметры XFce, как то: перерисовку окон, вид системных часов, количество виртуальных экранов (максимально десять) и кнопок вызова дополнительных меню в главной панели (максимально двенадцать), размер кнопок панели и меню, а также общую шрифтовую гарнитуру, начертание и кегль;
параметры окон, такие как фокус, показ содержимого при перетаскивании и изменении размера и прочее, а также шрифтовое оформление заголовков, пиктограмм и меню;
автозапуск приложений из фиксированного списка.

Выбор фона производится с помощью штатного средства (backdrop manager) с главной панели или из пункта Backdrop контекстного меню. Можно выбрать из достаточно обширного штатного списка, или задать свой собственный, из любого места дерева каталогов и в любом из обычных растровых форматов. Аналогично и со звуковыми сигналами для всяких событий — они выбираются отдельно из того же меню или с главной панели, также штатной утилитой (sound manager). В отличие от KDE, наборов связанных тем для XFce не предусмотрено.

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

В то же время с точки зрения функциональности XFce далеко не дотягивает до KDE. Главный ее недостаток, пожалуй,— не самые удобные средства манипуляции запущенными приложениями. Хотя если число их не превышает десятка-полутора, это практически не мешает, как я говорил. Кроме того, мне она показалась не очень устойчивой, так же как и ее штатный менеджер. Впрочем, возможно, что. Это особенности ее функционирования в моей конфигурации: с приложениями, основанными на библиотеке Gtk, мне вообще не везет.

Несколько слов о GNOME

GNOME — это вторая из полнофункциональных интегрированных графических сред, претендующая на равное место с KDE. Подобно XFce, она основана на библиотеках Gtk. Отличие ее в том, что собственного оконного менеджера она не имеет. До недавнего времени в этом качестве стандартно использовался Enligtenhment. Ныне эта роль перешла к Sawmill, переименованному по сему поводу в Sawfish. Впрочем, GNOME может работать и с некоторыми другими менеджерами окон, например — с описываемым ниже Window Maker.

Подобно KDE, GNOME — по настоящему интегрированная среда с большим количеством специфичных приложений. Среди них текстовые редакторы и процессоры, редакторы HTML-кода и многие другие. Широко известный графический редактор GIMP, хотя и не написан специально для GNOME, основан на той же библиотеке Gtk.

Однако, на мой взгляд (да простят меня приверженцы GNOME), ни одно из этих приложений (за исключением GIMP, но это — отдельная история) не дошло до зрелости и стабильности приложений KDE. Да и сам GNOME как интегрированная среда уступает KDE и в функциональности, и в устойчивости, несущественно превосходя его по быстродействию.

Во всяком случае, ни одна из моих попыток поработать с GNOME успехом не увенчалась, как, впрочем, не везло мне и со всеми Gtk-приложениями, в том числе очень многообещающими. Тем не менее не могу не отметить, что очень многим GNOME нравится, и они с успехом его используют. Так что я не стал бы отметать его с порога как графическую среду для работы. Кто знает, может быть, ваш опыт общения с ним окажется более счастливым, нежели мой.

Я же заканчиваю с интегрированными графическими средами, переходя к собственно оконным менеджерам. Из которых исторически первым для меня был Window Maker.

VI

vi — классика мира Unix

vi — редактор, в различных своих версиях (Vim, elvis и другие), модификациях и клонах (сохраняющих полную совместимость между собой), представленный абсолютно во всех Unix- и Unix-подобных системах. В большинстве случаев он является системным редактором по умолчанию, а в критических обстоятельствах может оказаться просто единственным инструментом (для той же правки конфигурационных файлов, например).

Поэтому иметь представление о vi необходимо любому пользователю Linux. Хотя назвать его чрезвычайно удобными в использовании я бы не рискнул. От него веет какой-то допетровской Русью. Я понимаю его поклонников — это пользователи Unix старого закала. В те времена былинные, после строчного редактора (помните о таких; в DOS это был ediine, в Unix — просто ed), vi выглядел как шедевр. И те, кто впитал привычку к нему с молоком матери, никогда от него не откажутся. К тому же, как редактор исходных текстов или системных файлов он более чем функционален. Посмотрим же и мы, что это такое.

Основная сложность в освоении vi для человека, привыкшего к редакторам с более или менее, но все же человеческим лицом, является наличие трех режимов: командного, ввода и построчного редактирования. После запуска программы (а это делается просто: vi имя_файла, существующего или нового) перед вами возникает черный экран с тильдами (~) по левому краю каждой строки.

Пользователь DOS, помнящий еще о WordPerfect версий 4 и 5 (прекрасный был, кстати сказать, текстовый процессор), попытается тут же начать ввод текста — и не получит ничего, кроме звукового сигнала, поскольку находится в режиме командном, ввода не допускающем. То есть нажатия на клавиши интерпретируются не как коды букв, а как команды программы.

Для перехода в режим ввода нужно нажать клавишу <А> (от англ. add) или <1> (от англ. insert); первая позволяет добавлять текст после курсора, вторая — вставлять перед ним. Теперь-то можно и печатать буквы, как в любом другом редакторе или процессоре.

Можно также и перемещаться по тексту с помощью клавиш управления курсором. Следует помнить только, что нажатие таких клавиш, как <End> и <Ноте>, не даст привычного для пользователя DOS эффекта. И, более того, автоматически переведет редактор в командный режим. Для всякого рода сложных перемещений (на слово влево и вправо, в начало и конец строки, на стоку вверх и вниз, и т. д.) используются комбинации клавиш в командном режиме. То же относится и к операциям удаления и замены слов и текстовых блоков: клавиши <Delete> или <Insert> не окажут никакого действия на выделенный фрагмент; нужно перейти в командный режим и выполнить соответствующие действия уже там.

А вот сохранение файла и выход из него требуют еще одного режима — построчного редактирования. Для этого нужно перейти из режима ввода в командный режим (нажатием клавиши <Esc>) и набрать: (то есть двоеточие), а после (без пробела) букву для соответствующего действа; например, w — для сохранения, q — для выхода (если файл был изменен, последует предложение сохранить изменения командой: w или q! — для выхода без сохранения изменений).

Следует заметить, что далеко не всегда ясен текущий режим редактора. В той версии, к которой я набираю эти строки (Vim), режим ввода маркируется строчкой —INSERT-- в нижней части экрана; но в общем случае — это не обязательно. Косвенно текущий режим можно определить нажатием клавиши <Esc>: в случае режима ввода это переведет редактор в командный режим, а в командном — просто вызовет звуковой сигнал.

В наших условиях сложность работы с vi усугубляется русскими буквами: если вы перешли в командный режим непосредственно из кириллической раскладки (да еще и забыли об этом) — никакие его команды работать не будут. Вызывая жалобное попискивание. А поскольку в консоли раскладка клавиатуры не индицируется (по крайней мере, мне неизвестно, как это можно сделать) — можно провести некоторое время в недоумении, пока не сообразишь переключиться на латиницу.

Я, конечно, понимаю, что все особенности vi — реликты той далекой эпохи, когда главным средством доступа к вычислительным мощностям компьютеров были текстовые терминалы, клавиатуры которых не имели, скажем, клавиш управления курсором. Однако немало с тех пор воды утекло. И найти ныне такую (работающую) клавиатуру — посложнее, чем пользователя, помнящего о ее существовании, для которого применение vi и оправдано долголетней привычкой, и доскональным знанием. Ныне же приходящим в Linux — есть что выбрать из иного.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: