xmonad - xmonad

редактировать
xmonad
Xmonad-logo.svg
XMonad в режиме мозаики с двумя терминалами URXVT и открытым pcmanFM xmonad в режиме мозаики
Исходный автор (ы) Спенсер Янссен, Дон Стюарт, Джейсон Крейтон
Первоначальный выпуск6 марта 2007 г.; 13 лет назад (2007-03-06)
Стабильный выпуск 0.15 / 30 сентября 2018 г.; 2 года назад (30.09.2018)
Предварительный выпуск последняя версия Darcs / (снимок)
Репозиторий Отредактируйте это в Викиданных
Написано наHaskell
Операционная система POSIX-совместимая
Платформа Кросс-платформенная ; требуется X Window System и GHC
Размер 56 КБ (исходный код)
Доступно наанглийском языке
Тип Диспетчер окон
Лицензия BSD-3
Веб-сайтxmonad.org Отредактируйте это в Викиданных
Поддержка xmonad Xinerama : одновременное отображение трех экранов (с клавиатурой Kinesis ). xmonad в режиме мозаики

xmonad - это динамический оконный менеджер (мозаичный ) для X Window System, отмечено для написания на языке функционального программирования Haskell.

Содержание
  • 1 Диспетчер окон
  • 2 Проект Haskell
  • 3 Прием
  • 4 См. также
  • 5 Ссылки
  • 6 Дополнительная литература
  • 7 Внешние ссылки
Диспетчер окон

Начавшаяся в марте 2007 года, версия 0.1 была объявлена ​​в апреле 2007 года как 500 строк Haskell. xmonad - это оконный менеджер, похожий на dwm, larswm и StumpWM. Он упорядочивает окна так, чтобы они не перекрывались, и позволяет управлять окнами без использования мыши. xmonad упакован и распространяется в широком диапазоне Unix-подобных операционных систем, таких как большое количество дистрибутивов Linux и систем BSD.

Первоначально xmonad был клоном dwm (производным в таких областях, как привязки клавиш по умолчанию), но теперь поддерживает функции, недоступные для пользователей dwm, такие как макет для каждой рабочей области, мозаичное отражение, сохранение состояния, зеркальное отображение макета, Поддержка GNOME и экранные строки состояния; его можно настроить, изменив внешний файл конфигурации и «перезагрузив» во время работы. Возможности xmonad начали влиять на другие диспетчеры тайлинговых окон - dwm позаимствовал «крючки срочности» у xmonad, а также включил поддержку Xinerama (для многоголовых дисплеев ) в версии 4.8, и существуют патчи для повторной реализации макета Фибоначчи xmonad.

Проект Haskell

В 2007 году на странице руководства говорилось:

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

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

В дополнение к устранению необходимости в мыши разработчики xmonad активно используют полу- формальные методы и создание программ для повышения надежности и обеспечения общего количества строк кода менее 1200, начиная с версии 0.7; Свойства оконного менеджера (такие как поведение фокуса окна) проверяются с помощью QuickCheck. Этот акцент делает xmonad необычным во многих отношениях; Помимо того, что он является первым оконным менеджером, написанным на Haskell, он также первым использует структуру данных zipper для автоматического управления фокусом, и его ядро ​​было доказано чтобы быть в безопасности в отношении совпадений с шаблоном, что еще больше способствует надежности. Разработчики пишут:

xmonad - это тайловый оконный менеджер для системы X Window, реализованный, настроенный и динамически расширяемый в Haskell. В этой демонстрации представлен случай, когда программное обеспечение, в котором преобладают побочные эффекты, можно разрабатывать с точностью и эффективностью, которые мы ожидаем от Haskell, за счет использования чисто функциональных структур данных, выразительной системы типов , расширенной статической проверки. и тестирование на основе собственности. Кроме того, мы описываем использование Haskell в качестве языка конфигурации приложения и расширения.

Код разделен на код без побочных эффектов и тонкую оболочку для побочных эффектов. По словам Алехандро Серрано Мена, существует два способа реализации предметно-ориентированных языков для действий в Haskell приложениях и библиотеках «разработка библиотеки комбинаторов "или" прокрутка собственной монады ", успешным примером которой является xmonad. xmonad был назван одним из самых известных проектов Haskell в книге по функциональному программированию 2013 г.

Reception

Linux Magazine включил xmonad в список «Мои лучшие ресурсы 2009 года». В 2012 году How-To Geek описал xmonad как обладающий хорошей, но сложной возможностью настройки, и был включен в список из восьми настольных сред для Linux 2013 года. Lifehacker написал что базовым операциям пользовательского интерфейса xmonads можно научиться с помощью небольшого набора инструкций. Высокий уровень настройки и скорости был отмечен Network World, а в MakeUseOf xmonad получил положительные отзывы по сравнению с Openbox.

. В 2016 году Ars Technica заявили, что xmonad и У Крутого была более продвинутая способность плитки, чем у Корицы. В 2017 году он был описан как мощный с приложением в качестве диспетчера Windows для больших данных, а в статье на opensource.com, с другой стороны, dwm был выбран вместо xmonad. В обзоре TechRadar «Лучший рабочий стол Linux 2018 года» говорится: «Если и есть одна среда рабочего стола, которая выделяется среди всех остальных, которые у нас есть, то это именно эта».

Из-за небольшое количество строк кода приложения Xmonad, использование чисто функционального программирования языка Haskell и зафиксированное использование строгой процедуры тестирования, которое иногда используется в качестве базового приложения в другие исследовательские проекты. Это включало повторную реализацию xmonad с использованием помощника проверки Coq, определение xmonad как обязательной программы и исследования управления пакетами, относящиеся к NixOS дистрибутив Linux.

См. Также
  • Портал бесплатного программного обеспечения и программного обеспечения с открытым исходным кодом
Ссылки
Примечания
Дополнительная литература
Внешние ссылки
Викискладе есть материалы, связанные с Xmonad.
Последняя правка сделана 2021-06-22 08:15:55
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте