LINUX.ORG.RU

Awesome WM 4.0

 


5

6

25 декабря состоялся релиз Awesome 4.0 — тайлового менеджера окон, предоставляющего обширные возможности настройки посредством конфигурационного файла на Lua. Версия API изменена с 3.5 на 4, так что существующие конфигурации придётся переписывать.

Некоторые новые возможности:

Мышь и клавиатура

  • Добавлена возможность изменения размера окон при касании краёв экрана (как в популярных окружениях рабочего стола).
  • Добавлена возможность перетащить окно на соседний тэг мышью.
  • Реализовано прилипание окон.
  • Сочетание Mod4+S теперь вызывает виджет с подсказкой активных горячих клавиш.
  • Для определения и задания раскладки клавиатуры больше не требуется setxkbmap.

Раскладки окон

  • В awful добавлены отступы между окнами.
  • Добавлена возможность отключения поведения, когда «главное» окно занимает всё доступное место, если других окон нет. Например, для того, чтобы при использовании awful.layout.suit.tile.left единственное окно оставалось такого же размера, как и «главное» при наличии других окон.
  • Для тэгов добавлено свойство volatile, позволяющее автоматически удалять их при отсутствии клиентов.
  • Добавлена раскладка corner, позволяющая добавлять «второстепенные» окна как по горизонтали, так и по вертикали.

Взаимодействие с клиентами

  • Добавлена функция awesome.kill(), позволяющая отправлять клиентам сигналы.
  • Значительно доработаны правила: теперь можно менять их в процессе работы и определять очерёдность их применения, добавлены новые возможности управления фокусом.
  • Функция awful.spawn() теперь позволяет определять правила во время запуска клиента, а в awful.prompt стало возможным использование горячих клавиш и преобразование команд.

Виджеты

  • Добавлены виджеты checkbox, piechart, progressbar и slider.
  • Возвращён и исправлен qml-подобный декларативный способ построения виджетов в виде дерева.

API

  • Многие объекты, ранее бывшие неизменяемыми, теперь позволяют менять своё состояние.
  • Упрощён доступ к свойствам awful:
    -- Before
    awful.client.floating.set(c, true)
    
    -- Now
    c.floating = true
    
  • Аналогично переработан доступ к свойствам виджетов.
  • Возвращена поддержка декларативного описания виджетов.

Также официальный сайт Awesome переместился на https://awesomewm.org.

>>> Полный список изменений

★★★★★

Проверено: Klymedy ()
Ответ на: комментарий от DRVTiny

vim вполне осилить можно, но лень....;) в принципе мне хватает его для редактирования, но надо читать хелпу по остальным хоткеям, а иногда бывает, прочитал и забыл....и опять лезть в хелпу ;)....а она там резиновая....в nano тоже свои хоткеи, в ed свое барахло, самый простой вариант mousepad, gedit, leafpad и все, нооо в vim есть веселая подсветка синтаксиса и она решает ;)

zor1984qq ()

Old wiki The old wiki has been shut down, but can be still viewed at archive.org. А когда появится новая? И там будет только для актуального релиза страницы?

cr0 ()
Ответ на: комментарий от DRVTiny

Ха ха, восприми еее не как суффикс модели, а как звук

xomenx ()
Ответ на: комментарий от DRVTiny

Плюсую. Почти никогда не нужно видеть все окна разом.

Если нужно видеть 2-3 окна одновременно, то естественннее всего выставить их координаты и размеры мышью.

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

Или частично оттащить окно за пределы видимости, скрыв тем самым ненужные элементы gui (например, при просмотре видео в браузере)

Ничего такого тайлинг не умеет. Отдавать размещение окон на откуп вм имхо, глупая затея. В 100% случаев он поставит окно в неудобное место и выставит неудобные размеры

makoven ★★★★ ()
Последнее исправление: makoven (всего исправлений: 1)
Ответ на: комментарий от r3lgar

чтобы обновление было не таким болезненным, как 3.4→3.5

Есть такая штука, как семантическое версионирование. Кратко:

Учитывая номер версии МАЖОРНАЯ.МИНОРНАЯ.ПАТЧ, следует увеличивать:
МАЖОРНУЮ версию, когда сделаны обратно несовместимые изменения API.
МИНОРНУЮ версию, когда вы добавляете новый функционал, не нарушая обратной совместимости.
ПАТЧ-версию, когда вы делаете обратно совместимые исправления.
Дополнительные обозначения для предрелизных и билд-метаданных возможны как дополнения к МАЖОРНАЯ.МИНОРНАЯ.ПАТЧ формату.
Так что при смене минорной версии, не должно было быть этих болезненных штук. Просто авторы не знают что такое семантическое версионирование.

Кому-то для этого нужен год, кому-то — почти десять. Повторюсь: это не gtk+3, потому ломать API — это не цель, а мера.

Почти десять ? Спасибо, без меня.

Я лично сижу сейчас на dwm с патчами. Тоже есть к нему претензии. Расширение функционала патчами - это фантастика, а лезть в сишный код не хочется. Если я буду в каждую прогу лезть ручками, то у меня вся жизнь будет сводиться только к тому, что я буду патчить эти самые проги. Сейчас дебиан обновится до stretch, приедет нормальный xmonad, в котором будет работать taffybar и скорей всего перееду на xmonad.

bryak ★★★ ()
Ответ на: ай3333 от zor1984qq

Да дело в том, что все эти тайловые вм пишут очень специфичные люди. Одни считают, что расширение патчами - это круто(dwm), другие по 10 лет не могут api сформировать и при минорных апдейтах всё падает(awesome) и еще 100500 всяких разных интересностей в тайловых WM наблюдается. Любой пробуешь и каждый в чём-то ущербный. Увы.

bryak ★★★ ()
Ответ на: комментарий от anonymous

оно либо умрет, либо напишут совместимый wm, но с поддержкой Wayland

Первого не дождёшься ты, второго — те, кому нужен вяленд. Или ты уже начал переписывать?

Если железо тянет KDE5

KDE не нужно. Эти тонны софта не покрывают даже части моих потребностей. У меня достаточно мощный комп, чтобы за полчаса-час скомпилять kde-meta или kf5-meta, но управление окнами вручную — это последнее, чем я стану заниматься. Тем более, если это нужно делать мышью или более чем двумя руками на клавиатуре.

А вы что скажете?

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

r3lgar ★★★★ ()
Ответ на: комментарий от Silent

Я не помню, как они называются, но в awesome у тебя предефайненные лайауты, а в i3 тебе нужно переключать режимы разбиения, разбивать вручную и прочее. Это отнимает время.

r3lgar ★★★★ ()
Ответ на: комментарий от StillSteal

Не знаешь решения описаной выше проблемы.

Не смотря на то, что я не стал подписываться на тред, я его отслеживаю, и твой вопрос видел.

Нет, не знаю, но в теории новая реализация правил может частично покрыть проблему.

r3lgar ★★★★ ()
Ответ на: комментарий от makoven

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

Звучит как идея для кастомного лайота <your_favorite_tiling_WM>.

Ничего такого тайлинг не умеет. Отдавать размещение окон на откуп вм имхо, глупая затея. В 100% случаев он поставит окно в неудобное место и выставит неудобные размеры

Тебе нужен статический тайлинг.

Virtuos86 ★★★★★ ()
Ответ на: комментарий от Virtuos86

Можете вкратце поведать что есть кастомный лэйаут и статический тайлинг?

makoven ★★★★ ()
Ответ на: комментарий от elpy

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

bryak ★★★ ()
Последнее исправление: bryak (всего исправлений: 1)
Ответ на: комментарий от anonymous

Разочаровался я, буду смотреть другие тайтловые wm.

А что там смотреть? i3 сейчас де-факто стандард в мире тайловых менеджеров. Awesome всегда был школьной поделкой.

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

Быдлоподелка от виндузятников.

anonymous ()
Ответ на: комментарий от anonymous

Если железо тянет KDE5, зачем извращаться с какими-то wm, ставь кеды и управляй окнами как тебе вздумается, отключай декорации, отключай композитинг.

Дело не в железе, а в удобстве. Быдлоподелки для домохозяек к удобству никакого отношения не имеют.

anonymous ()
Ответ на: комментарий от anonymous

Скажу, что не вижу смысла настраивать KDE5, если есть тайловые wm. А твой абсолютизм воспринимаю как неумелый троллинг.

anonymous ()
Ответ на: комментарий от r3lgar

Запили, пожалуйста. Будет что поколупать в новогоднюю ночь :)

NeverLoved ★★★★★ ()
Ответ на: комментарий от r3lgar

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

peregrine ★★★★★ ()
Ответ на: комментарий от makoven

При динамическом тайлинге схемой расположения окон относительно друг друга заведует WM, и эти схемы называются "layout". Искоропки идёт, как правило, целый набор предопределенных layout'ов. В случае, если пользователя не устраивает ни одна из имеющихся схем, ему нужно создавать свою, что возможно и довольно просто в WM, в которых конфигурационный файл пишется на полноценном языке программирования, а не представляет собой plain text конфиг.

При статическом тайлинге окна в схеме располагает сам пользователь на свое усмотрение. Этим характеризуются Ion3/Notion. Подробнее может описать andreyu, он поклонник «статики». Сам я, по сути, не пользуюсь ни статическим, ни динамическим, потому что предпочитаю одно окно на одном воркспейсе.

Virtuos86 ★★★★★ ()
Ответ на: комментарий от peregrine

баг с раскладкой и хоткеями

Этот баг был не из-за setxkbmap, а из-за дури с xkbcommon и xcb. Я помню эту проблему, но никогда не копал глубже патча, комментирующего две строки в одном файле, который долгое время работал, и уже давно не нужен.

r3lgar ★★★★ ()
Ответ на: комментарий от NeverLoved

Запили, пожалуйста. Будет что поколупать в новогоднюю ночь :)

Готово. Доки выпилил, так как в дереве отсутствует ldoc, мне его мейнтейнить ну совсем не хочется. Мне даже не хочется мейнтейнить lgi, а без lgi[luajit] awesome[luajit] нам не видать.

И, гентушники, не бойтесь вы моего awesome-9999, он всегда up-to-date, так как я его сам пользую.

r3lgar ★★★★ ()
Последнее исправление: r3lgar (всего исправлений: 1)
Ответ на: комментарий от robus

Еще можно вспомнить про Android-x86, но оно пока скорее мертвое, чем живое.

Оно является ненужным, а не суперпозицией живое-мёртвое.

Это чуть ли не единственное, что вменяемо крутится на моем Intel Atom N450 2.1 GHz. Подключил к этому чуду 3g-модем, пробросил трафик через тор, раздал на eth0, поднял торрент-качалку, поднял i2p-роутер, поднял syncthing. В браузере плавная прокрутка, прикрутил Debian Kit, свободного софта навалом, разработчикам F-Droid, Orbot, AFWall+ готов расцеловать руки. Я извращенец?

anonymous ()
Ответ на: комментарий от anonymous

Еще какой извращенец. А какая скорость в среднем держится?

oster2011 ()
Ответ на: комментарий от oster2011

А ты как думаешь? Но мне не привыкать к таким извращениям.

anonymous ()
Ответ на: комментарий от Virtuos86

Сам я, по сути, не пользуюсь ни статическим, ни динамическим, потому что предпочитаю одно окно на одном воркспейсе.

В ion3/notion при открытии второго окна внутри фрейма (вне зависимости единственный это фрейм или их много в пределах одного тега), создается таб. В итоге окна занимают весь экран, но видимо только одно активное.

andreyu ★★★★★ ()
Ответ на: комментарий от oster2011

Нет, я тебе говорю, что если у тебя есть одна из этих нищебродских машинок с Атомом и тачскрином, то Android-x86 это отличное решение всех твоих проблем. Я имею нормальный здоровый секс, волосы мягче и шелковистее на 15%, мой брат ожил.

anonymous ()
Ответ на: комментарий от anonymous

Хотя у меня никогда не было брата.

anonymous ()
Ответ на: комментарий от andreyu

Раз уж ты здесь, расскажи, в чём удобство ручного сплита в статическом тайлинге? Не троллинга ради.

Awesome и i3 — это как dvtm и tmux соответственно.

r3lgar ★★★★ ()
Ответ на: комментарий от r3lgar

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

А Klymedy тут ни при чём, т. к. я исправлял новость уже после подтверждения.

sudopacman ★★★★★ ()
Последнее исправление: sudopacman (всего исправлений: 2)
Ответ на: комментарий от r3lgar

Не нужно i3 сравнивать с осомом.

i3 это уже сформированный workflow работы с окнами. Всё просто и прозрачно, настраивается один раз и навсегда одним понятным конфигом. Так же основной девелопер няшка и не допускает разброда и шатания, читай добавления в основную ветку всяких ненужных говно фич. Классика и консерватизм короче.

С другой стороны есть патлатые прыщавые гентушники, конпеляния всего и вся, баш и луа портянки. Зато джа процента оптимизации и «yes i can!».

И весь вопрос в том, готов ли ты тратить своё личное время на подобное падучее и тормозное kde говно. Или будешь просто наслаждаться божественным i3?

Awesome это не WM, это lua API к управлению окнами.

anonymous ()
Ответ на: комментарий от r3lgar

Раз уж ты здесь, расскажи, в чём удобство ручного сплита в статическом тайлинге?

Мне не нравится, когда при открытии/закрытии окна остальные окна перемещаются и меняют свои размеры. Плюс это лишняя нагрузка из-за вынужденной отрисовки содержимого окон с учетом нового размера.

Плюс в ion3/notion мне нравится реализация табов внутри фрейма. Мне нравятся скретч-пады.

Я раньше использовал wmii, dwm, awesome 2.x и 3.x, xmoand, а так же пробовал пользоваться другими оконными менеджерами. На ion3 я перешел после awesome 3.x.

andreyu ★★★★★ ()
Ответ на: комментарий от anonymous

Пока не определился кто ты: сектант или дегенерат.

Так что ты продолжай, чтобы уж полностью определиться.

StillSteal ()
Последнее исправление: StillSteal (всего исправлений: 1)
Ответ на: комментарий от sudopacman

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

Я бы с радостью, но в глазах троится. За меня читает кот, а пишет скрипт на perl. Постараюсь не забыть исправиться.

я исправлял новость уже после подтверждения

Значит ты у нас теперь вместо Шомы?

r3lgar ★★★★ ()
Ответ на: комментарий от andreyu

Мне не нравится, когда при открытии/закрытии окна остальные окна перемещаются и меняют свои размеры.

Но выступать триггером для WM — это лучше? Ручное управление — это разве не почти отсутствие тайлинга? Для меня это выглядит именно так.

Но с другой стороны, для мозга такое поведение проще и логичнее — всё на своих местах, и никуда не денется.

Плюс это лишняя нагрузка из-за вынужденной отрисовки содержимого окон с учетом нового размера.

С учётом современного железа (и даже не очень современного) эта нагрузка ничтожна, разве нет?

Плюс в ion3/notion мне нравится реализация табов внутри фрейма. Мне нравятся скретч-пады.

Скрэтчпады я понять ниасилил, но вот внутрифреймовые табы — это киллерфича. Давно мечтаю о таком в awesome, но не представляю, как оно будет работать с динамическим тайлингом.

Статика — это совсем другой подход к работе с окнами, но, видимо, мне его не понять. (=

r3lgar ★★★★ ()
Ответ на: комментарий от StillSteal

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

anonymous ()
Ответ на: комментарий от anonymous

Awesome это не WM, это lua API к управлению окнами.

И тут уместно гентушное «Один раз настроил — работает всегда». Ну, почти. Вернее, до сабжегого релиза это было не так, но теперь заживём.

r3lgar ★★★★ ()
Ответ на: комментарий от StillSteal

Пока не определился кто ты: сектант или дегенерат.

Он просто анонимус.

r3lgar ★★★★ ()
Ответ на: комментарий от anonymous

Определился. Второе. Ты только лаять можешь как старый забитый пес или что? Воображая всех вокруг какими-то школьниками с прыщами, что за проецирование своих комплексов? В школе таким был(прыщавым загнобленным линускоидом с i3 головного мозга)(или есть) или что?

StillSteal ()
Последнее исправление: StillSteal (всего исправлений: 2)
Ответ на: комментарий от r3lgar

Значит ты у нас теперь вместо Шомы?

Почему вместо? В дополнение к.

sudopacman ★★★★★ ()
Ответ на: комментарий от sudopacman

Почему вместо?

Потому, что он уже давно не портит новости.

Я, конечно, не против креатива, но лучше, чтобы этот креатив вызывал улыбку, а не притягивал ладонь к лицу.

r3lgar ★★★★ ()
Ответ на: комментарий от r3lgar

Но выступать триггером для WM — это лучше?

Я не уловил смысл.

Ручное управление — это разве не почти отсутствие тайлинга? Для меня это выглядит именно так.

Хороший тайловый оконный менеджер - это когда не замечаешь оконного менеджера. Просто все работает :)

Но с другой стороны, для мозга такое поведение проще и логичнее — всё на своих местах, и никуда не денется.

Да.

С учётом современного железа (и даже не очень современного) эта нагрузка ничтожна, разве нет?

А вот аккумуляторы в наше время все еще малоемкие. Но да, мой аргумент был притянут за уши.

Скрэтчпады я понять ниасилил,

Это «плавающие» фреймы, которые показываются и прячутся по хоткею.

но вот внутрифреймовые табы — это киллерфича.

Да, это здорово.

Давно мечтаю о таком в awesome, но не представляю, как оно будет работать с динамическим тайлингом.

Да так же, как и сейчас. Просто в одном фрейме будет несколько окон и добавятся табы. Было бы кому это реализовать.

Статика — это совсем другой подход к работе с окнами, но, видимо, мне его не понять. (=

Да, подход другой.

andreyu ★★★★★ ()
Ответ на: комментарий от r3lgar

Никакого креатива. Просто меня в последнее время колбасит что-то.

// Ладно, хватит оффтопить. Если ещё заметишь опечатки — ты знаешь, куда бежать.

sudopacman ★★★★★ ()
Последнее исправление: sudopacman (всего исправлений: 1)
Ответ на: комментарий от andreyu

Но выступать триггером для WM — это лучше?

Я не уловил смысл.

Чтобы в статике изменить расположение окон, нужно жать в кнопки. На то она и статика, что нельзя преднастроить поведение окон полностью (то есть расположение относительно других окон, где, как, когда и что показывать), больше половины нужно делать руками. То есть без участия пользователя WM сам ничего не сделает. Поэтому все мои попытки использовать tmux не увенчались.

Ручное управление — это разве не почти отсутствие тайлинга? Для меня это выглядит именно так.

Хороший тайловый оконный менеджер - это когда не замечаешь оконного менеджера. Просто все работает :)

Хороший — понятие субъективное. Для тебя хороша статика, для меня — динамика. Нельзя сказать, что кто-то из них лучше или хуже, они разные.

Скрэтчпады я понять ниасилил,

Это «плавающие» фреймы, которые показываются и прячутся по хоткею.

Я знаю, что это, и где их можно применять. Я ниасилил понять их пригодность для себя.

но вот внутрифреймовые табы — это киллерфича.

Да, это здорово.

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

Да так же, как и сейчас. Просто в одном фрейме будет несколько окон и добавятся табы.

Это в статике всё очевидно и просто. В динамике убивается основная задумка: автоматическое управление. Сконфигурять их поведение просто невозможно; Что делать, если нет активного фрейма? Что делать, если активный фрейм на другом мониторе? Что делать, если клиент не помещается в фрейм? Кто будет перехватывать открытие клиентов, чтобы можно было передать управление табам? В динамике очень много проблем, из-за которых конфигурирование невозможно, а без этого это уже не динамика.

Было бы кому это реализовать.

Worron уже реализовал, но оно не для всех.

r3lgar ★★★★ ()
Ответ на: комментарий от r3lgar

awesomewm.org/doc/api обновить забыли, кажется.

вместо awful.widget.keyboardlayout в документации wibox.widget.keyboardlayout

anonymous ()
Ответ на: комментарий от r3lgar

вот внутрифреймовые табы — это киллерфича. Давно мечтаю о таком в awesome, но не представляю, как оно будет работать с динамическим тайлингом

Меня когда-то в fluxbox это пёрло, но и тогда я не придумал, для чего это может быть удобно. Так до сих пор и не знаю, от отсутствия чего страдаю, да ещё и не зная об этом.

-- (другой анонимус, на овсоме)

anonymous ()
Ответ на: комментарий от anonymous

awesomewm.org/doc/api обновить забыли, кажется.
вместо awful.widget.keyboardlayout в документации wibox.widget.keyboardlayout

Документация всегда отстаёт на несколько коммитов (а то и на несколько десятков коммитов), потому разрабы рекомендуют собирать доки локально.

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

r3lgar ★★★★ ()
Ответ на: комментарий от anonymous

Меня когда-то в fluxbox это пёрло

Да, когда-то я тоже пользовался fluxbox, и тоже ^_^ от него, но ему сильно не хватало тайлинга.

но и тогда я не придумал, для чего это может быть удобно

Приватное и обычное окна браузера; вёрстка и просмотр LaTeX… Да много чего можно сделать удобнее с табами.

r3lgar ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.