Прикладные свободные программы и системы в школе
Шрифт:
2.18 «Гном» (Модельная среда сетевых объектов GNU)
«Гном» (GNOME, GNU Network Object Model Environment – «Среда GNU, основанная на модели сетевых объектов», но также и «Образцовая среда для сетевых объектов GNU») – один из самых амбициозных и масштабных проектов в программистском сообществе.
Кроме реализации функционально полной графической среды (возможно, уместнее говорить о сенсуальных средах, учитывая то, что звук стал их полноправной частью), «Гном» претендует на то, чтобы полностью реализовать спецификации
«Гном» поддерживает ряд оконных менеджеров, среди которых: Sawfish («штатный» оконный менеджер по умолчанию), Enlightenment, IceWM, WindowMaker, AfterStep и FVWM2, совместимые с «Гном», впрочем, в разной степени.
Сегодняшняя версия «Гнома» («Гном» 2.4) – полноценная интегрированная среда, включающая реализацию повседневно необходимых функций и позволяющая использовать сторонние решения для реализации функциональности, которая в ней отсутствует.
«Гном» использует один из самых развитых интерфейсных пакетов GTK+, реализованный для разных платформ. Над ним надстраивается масса компонентов и библиотек, обеспечивающих сетевую функциональность, интерфейсы к различным языкам программирования, работу со звуком через механизмы ОС и пр. Сам «Гном» стремится оставаться мобильным и доступным во всех открытых системах. Он стабильно работает в «ГНУЛинукс», «БСД», AIX и «Солярис»; последнее обстоятельство способствовало поддержке разработки «Гном», которую оказывает Sun Microsystems через созданный в 2001 г. году «Фонд “Гном”», среди учредителей которого также крупнейшие поставщики свободных ОС.
С пользовательской точки зрения «Гном» предстает как набор базовых компонентов интерфейса и «апплетов», утилит и прикладных программ. К базовым компонентам относятся менеджер файлов и поверхности стола Nautilus, панели управления и меню GNOME Panel и центр управления (Gnome Control Center).
«Наутилус». Менеджер файлов Nautilus позволяет отображать содержимое файлов и каталогов в окнах и выполнять над файлами обычные действия (удаление, переименование, копирование и перемещение и т.п.), а также осуществлять предварительный просмотр многих типов данных. «Наутилус» эффектен, но работа с ним не более эффективна, чем с прочими браузерами файлов, включаемыми обычно в графические среды (менеджер файлов CDE или «Майкрософт Уиндоуз Эксплорер»).
Помимо отображения содержимого каталогов в окнах, «Нау» также может отображать один из каталогов на поверхности «рабочего стола»: размещенные на нем иконки как бы приклеены к монитору, и при смене текущего экрана остаются на том же месте относительно наблюдателя (так же, кстати, ведут себя и открытые окна, если их «приклеить»).
Поддерживается широкий спектр операций переноса мышью (drag'n'drop), причем «перетаскиванию» подвержены не только объекты (файлы, пункты меню и т.п.), но и некоторые их свойства: так, можно «взять цвет» в окне выбора цвета и перенести его на панель, которая воспримет его. Есть даже операции, позволяющие назначить один объект свойством другого: например, если на панель «перетащить» не цвет, а файл с картинкой, последняя станет ее фоном. «Таскать» файлы между окнами «Нау», на рабочий стол и панели можно практически без ограничений.
Панели и меню. Уже упомянутые панели являются, наряду с менеджером файлов, важнейшей составной частью интерфейса «Гном». Панелей может быть неограниченное количество. Панель может относиться к одному из пяти типов, но на самом деле их два: панель-меню (menu panel) и объектная панель. Первая из них содержит пункты меню и может содержать пиктограммы, а вторая – только пиктограммы. Последняя может быть краевой (edge), выравненной (aligned), скользящей (sliding) или плавающей (floating), но это скорее свойство панели (которое можно менять «на ходу»), определяющее особенности ее поведения,
Внешний вид и поведение панелей является в высшей степени конфигурируемым. Пользователь может задавать как глобальные предпочтения (анимация движения панелей, отображение панельных объектов и пр.), так и индивидуальные предпочтения для каждой из них (ее тип и положение на экране, ширина, возможность автосокрытия и принудительной минимизации, цвет и фоновое изображение и т.п.) Ну и, разумеется, пользователь может «набивать» панели теми объектами, которые ему нужны.
На панелях могут присутствовать объекты пяти типов:
пускатель (launcher) ассоциирован с приложением или командой, которые исполняются по щелчку на его пиктограмме в панели;
выдвижной ящик (drawer) – это кнопка, открывающая другую панель, перпендикулярно первой – некий аналог подменю в меню, который можно «набить» всевозможными апплетами;
апплет (applet, «приложеньице») – интересный тип панельного объекта, демонстрирующий то, что он не обязан быть представлен статической картинкой. Это программа, места в панели которой достаточно, чтобы отображать какую-нибудь полезную (или забавную) информацию или даже принимать клавиатурный и/или координатный ввод. С «Гном» поставляется масса апплетов, отображающих всякую полезную информацию (состояние ресурсов и статус сети, например) или позволяющих осуществить нетривиальные действия (например, mini commander, позволяющее набрать команду, не запуская терминала). Важными «приложеньицами» являются «путеводитель по столу» (Desktop Guide) и «список задач» (Task List), позволяющие переключаться между виртуальными экранами и активизировать окна запущенных программ, соответственно;
специальные объекты – это те же апплеты, но выполняющие функции, которые другими средствами «достать» почему-либо нельзя (запереть экран, выйти из «Гном» или запустить программу «вручную»). В качестве «специальных объектов» исполняются и программы, которые не были написаны специально для «Гном», но могут, тем не менее, осуществлять вывод в панель – «поглощенные программы» (swallowed applications);
наконец, объект-меню раскрывает меню.
За работу системы меню, как и за работу панелей, отвечает компонент GNOME Panel, и это не случайно: разница между панелью и меню более декоративная, чем сущностная: любое меню можно зафиксировать на экране, и оно превратится в подобие панели-меню (только вертикальное, а не горизонтальное, и с меньшими возможностями настройки).
У «Гнома» нет единой иерархии меню: кроме главного, вызывающегося объектом-меню с гномьей лапой (оно же, когда вызывается щелчком правой кнопки на фоне или нажатием клавиши, почему-то называется глобальным (global)), пользователь может создавать «обычные» (normal) меню, связанные с объектами-меню на панелях.
Меню настраиваются примерно так же, как и панели: пользователь может добавлять, менять и удалять пункты, создавать подменю и т.п. При этом создаваемые «обычные» меню изначально пусты, а главное/глобальное «набивается» при установке всем, что «Гном» найдет в системе, и пользователю остается только убрать лишнее и переставить пункты в соответствии со своими предпочтениями.
Утилиты, апплеты и «капплеты». Для настройки различных аспектов функционирования системы предназначен Центр управления, представляющий собой набор «управляющих апплетов» (capplets), связанных с разными компонентами и прикладными программами.
Одни из них позволяют менять параметры рабочего стола и облик приложений (включая использование «тем»), другие – настраивать мультимедиа, третьи – управлять свойствами клавиатуры и мыши, и т.д.
Важным «капплетом» является менеджер т.н. «драйверов документов» (Document Handlers), устанавливающий соответствие между типом файла или протокола и программой, выполняющей различные операции с ними. Набор «капплетов» является расширяемым, их можно писать не только для программ, написанных специально для «Гнома», но и для внешних программ.