Читаем Свободные программы и системы в школе полностью

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

<p>2.3 «Чистая» «Икс»</p>

На Рис. 2-1 изображена «голая» оконная система «Икс» – то, с чем большинство пользователей никогда не сталкивается. Запустить ее обычно можно, подав команду: «X &».

Рис. 2-1

Мы видим традиционный серый экран с не менее традиционным курсором в виде буквы «x». Используя мышь или другое координатное устройство, курсор можно перемещать по экрану. На нажатие кнопок мыши и клавиш никакой видимой реакции не следует. И невидимой тоже – сервер готов передавать эти сигналы своим клиентам, а клиенты пока не запущены. Хотя на самом деле некоторые комбинации клавиш «Икс» перехватывает и обрабатывает. Это Zap (Control-Alt-Backspace) – завершение работы сервера (если эта возможность не запрещена при конфигурации), Zoom (Control-Alt-+ и Control-Alt–) – «горячее» переключение доступных видеорежимов. В некоторых ОС (Например, «ГНУ/Линукс») Control-Alt в сочетании с функциональной клавишей освобождает оборудование и передает его на время соответствующей виртуальной консоли.

Рис. 2-2

Воспользуемся последней возможностью, перейдем на консоль и запустим первое клиентское приложение: программу «xterm» (Рис. 2-2). На экране «Икс» появилось окно, а в окне можно видеть интерфейс клиентского приложения. В данном случае интерфейс текстовый, а приложение – эмулятор терминала, на котором запущена диалоговая оболочка системы по умолчанию. С эмулятором можно делать все то же, что и с обычным терминалом: издавать команды, получать результат и запускать другие программы. Если программы текстовые (строчные или оконные), исполняться они будут в том же окне, а если графические (как и сам «xterm») – в отдельных окнах.

Рис. 2-3

Запустим программу «xclock» (Рис. 2-3). При ее запуске мы использовали несколько параметров, задающих геометрию (местоположение и размер) вновь порождаемого окна, цвет его фона и шрифта по умолчанию, толщину и цвет рамки. Эти (и некоторые другие) параметры типичны для программ, построенных на основе графической библиотеки «X Toolkit». Значения параметров, заданные при вызове программы, могут быть перекрыты самим запускающимся приложением, кроме опции геометрии. Дело в том, что окно выделяется клиентскому приложению при запуске, и все доступные ему ресурсы этим окном и ограничены – это свойство X-протокола.

Запустив несколько экземпляров того же «xterm» (и почитав документацию) можно обнаружить, что и «голышом» «Икс» умеет не так мало. Например, оперирует буфером обмена текстом между приложениями и предоставляет текстовым приложениям такой ресурс, как полосу прокрутки (забавная полоска, скроллировать текст с помощью которой вверх или вниз можно, щелкая по ней разными кнопками мыши, – это наследие проекта «Athena»).

Есть ли польза от системы, работающей с фиксированными окнами? Да, если вспомнить, что «универсальный десктоп» – не единственная сфера применения компьютера. Можно запустить при загрузке «Икс» и браузер на весь экран и получить гипермедийный киоск по цене персонального компьютера. А можно посадить за тот же браузер оператора, который будет через него весь день «рулить» базу данных.

Но мы пойдем дальше. Итак, основная работа Икс-сервера – создавать окна и предоставлять клиентским приложениям возможности работы в них. Для того, чтобы работать с окнами, нужна другая программа, которая так и называется – менеджер окон (window manager).

<p>2.4 Окноводы</p>

Как же менеджер окон преодолевает указанное ограничение X-протокола? Никак – просто выделенным ему окном является весь экран. (На самом деле, менеджер окон – не единственная программа, способная работать с «корневым» окном; например, входящая в комплект поставки «xsetroot» позволяет установить цвет фона или поместить на него рисунок.)

Менеджеров окон существует превеликое множество – под любой набор задач, которые может решать графическая многооконная система. Их настолько много, что выбрать какой-нибудь в качестве «типичного представителя семейства» затруднительно. Поэтому выберем один из самых развитых – Enlightenment.

«Просвещение» (www.Enlightenment.org) создано Карстеном Хайцлером и Джеффом Харрисоном (Carsten Haitzler, Geoff Harrison) и его текущая версия – 0.16.5. До 2000 г. он был «штатным» менеджером окон в популярной среде «Гном» (см. раздел 2.17), затем уступив это место менее функциональной, но более быстрой «Рыбе-пиле» (Sawfish). Он продолжает оставаться «Гном»-совместимым, и многие пользователи этого популярного десктоп-менеджера предпочитают его, хотя и без «Гном» у Enlightenment поклонников хватает.

Рис. 2-4

Запустим «Просвещение» (Рис. 2-4). Как резко изменилась картина!

Перейти на страницу:

Похожие книги