Comments 79
Пробовал когда-то. Не осилил. Сейчас еще попробую, спасибо что напомнили.
Одно время тоже работал в нем. Но затем вернулся в гном.
Всетаки большую часть времени использую приложения развернутыми на весь экран, а при этом весь смысл тайловости пропадает.
Мне кажется в статье не хватает информации по виджетам.
Потому как с конфигом по умолчанию не будет работать даже смена раскладки клавиатуры.
Всетаки большую часть времени использую приложения развернутыми на весь экран, а при этом весь смысл тайловости пропадает.
Мне кажется в статье не хватает информации по виджетам.
Потому как с конфигом по умолчанию не будет работать даже смена раскладки клавиатуры.
Я писал скорее ознакомительную статью, тк «внутренняя» информации все же на вики лучше меня написана. А насчет раскладки — я даже не задумывался, тк у меня ее изменении организовано с помощью X.org
Смену раскладки можно и отдельно высталять примерно такой командой:
setxkbmap -layout 'us,ru' -option 'grp:alt_shift_toggle
Всетаки большую часть времени использую приложения развернутыми на весь экран, а при этом весь смысл тайловости пропадает.
Можно использовать, например, что-то вроде этого
awful.tag("www",1,awful.layout.suit.max)
тогда все окна будут растянуты на весь экран.После того, как поработал в awesome, вернуться назад в gnome\kde не смог.
Точно так же люблю, когда приложение открыто на весь экран, смысл от тайловости как бы пропадает, но зато пропадает необходимость каждый раз разворачивать окна (они сами раскрываются) и + хоткеи. А если от гнома не нужно большего — то зачем он?
Точно так же люблю, когда приложение открыто на весь экран, смысл от тайловости как бы пропадает, но зато пропадает необходимость каждый раз разворачивать окна (они сами раскрываются) и + хоткеи. А если от гнома не нужно большего — то зачем он?
Народ, а кто работает с двумя мониторами, возможно сможете подсказать как бы это научиться в awesome переключаться между мониторами:)
Если такое возможно, конечно.
Если такое возможно, конечно.
У меня 2 монитора в TwinView. Все заработало из коробки.
По умолчанию, если я правильно помню, то Mod4 + o переносит окно на другой монитор.
А Mod4 + Shift + j (k) переключает между окнами.
По умолчанию, если я правильно помню, то Mod4 + o переносит окно на другой монитор.
А Mod4 + Shift + j (k) переключает между окнами.
У меня два монитора, не TwinView. Ничего не заработало из коробки. Правильное разрешение не определилось, мониторы видит зеркально. Получилось выставить разрешение на одном из мониторов, второй вдруг стал просто неактивным. Помогите, оно меня побеждает!
Можно. Таже очень просто настраивается количество слоёв на каждом мониторе и положение окон при запуске (на каком мониторе и слое запускать приложение).
С двумя мониторами я думаю он просто не нужен. У меня 30" + 24" и я искренне не понимаю зачем мне тайлинговый режим )
а вот на лаптопе очень удобно, да.
а вот на лаптопе очень удобно, да.
У меня это сделано, примерно, так (куски из конфига):
Немного пояснений: при запуске awesome, он смотрит сколько экранов есть и создает по 5 тегов на каждый экран. Экран (монитор) выбирается в зависимости от того, на каком из них находится указатель мыши.
modkey+F{1..5} — переключение между тегами
modkey+Shift+F{1..5} — переместить активное окно из текущего тега в выбранный тег
modkey+Control+F{1..5} — отображать вместе окна из текущего тега и из выбранного тега(тегов)
modkey+Control+Shift+F{1..5} — вкл/выкл отображения активного окна на указанном теге(тегах)
-- Table of layouts to cover with awful.layout.inc, order matters.
layouts =
{
awful.layout.suit.tile,
awful.layout.suit.tile.left,
awful.layout.suit.tile.bottom,
awful.layout.suit.tile.top,
awful.layout.suit.fair,
awful.layout.suit.fair.horizontal,
awful.layout.suit.spiral,
awful.layout.suit.spiral.dwindle,
awful.layout.suit.max,
awful.layout.suit.max.fullscreen,
awful.layout.suit.magnifier,
awful.layout.suit.floating
}
-- }}}
-- {{{ Tags
-- Define a tag table which hold all screen tags.
tags = {}
for s = 1, screen.count() do
-- Each screen has its own tag table.
tags[s] = awful.tag(
{
-- tag names
1, 2, 3, 4, 5
}, s, {
-- tag layouts
layouts[9], layouts[1], layouts[1], layouts[9], layouts[9]
}
)
end
-- }}}
-- {{{ Key bindings
-- ... тут идут другие биндинги ... --
for i = 1, keynumber do
globalkeys = awful.util.table.join(globalkeys,
awful.key({ modkey }, "F" .. i,
function ()
local screen = mouse.screen
if tags[screen][i] then
awful.tag.viewonly(tags[screen][i])
end
end),
awful.key({ modkey, "Control" }, "F" .. i,
function ()
local screen = mouse.screen
if tags[screen][i] then
awful.tag.viewtoggle(tags[screen][i])
end
end),
awful.key({ modkey, "Shift" }, "F" .. i,
function ()
if client.focus and tags[client.focus.screen][i] then
awful.client.movetotag(tags[client.focus.screen][i])
end
end),
awful.key({ modkey, "Control", "Shift" }, "F" .. i,
function ()
if client.focus and tags[client.focus.screen][i] then
awful.client.toggletag(tags[client.focus.screen][i])
end
end))
end
-- }}}
Вроде ничего не забыл…Немного пояснений: при запуске awesome, он смотрит сколько экранов есть и создает по 5 тегов на каждый экран. Экран (монитор) выбирается в зависимости от того, на каком из них находится указатель мыши.
modkey+F{1..5} — переключение между тегами
modkey+Shift+F{1..5} — переместить активное окно из текущего тега в выбранный тег
modkey+Control+F{1..5} — отображать вместе окна из текущего тега и из выбранного тега(тегов)
modkey+Control+Shift+F{1..5} — вкл/выкл отображения активного окна на указанном теге(тегах)
Хм, а язык Lua вроде и не такой страшный, как я представлял. Правда уверен, всё равно будет трудно изучать не_программисту. Из-за, вероятно, малой распространенности -> малого кол-ва информации+форумов на русском.
Но на заметочку взял.
Пока-что на Linux-машине использую openbox + тайловую штуку, PyTile.
Выглядит так: сразу после загрузки окон (у меня это 3 терминала) нажимаю alt+a и вуаля, окна разложены.
Но на заметочку взял.
Пока-что на Linux-машине использую openbox + тайловую штуку, PyTile.
Выглядит так: сразу после загрузки окон (у меня это 3 терминала) нажимаю alt+a и вуаля, окна разложены.
Доки на русском есть, например (первые 2 ссылки из гугла по запросу «lua» с фильтром «Только на русском»), чтобы получить первоначальное представление о синтаксисе и типах достаточно глянуть в википедию, а для более глубокого изучения языка и его особенностей есть "Справочное руководство по языку Lua 5.1" на русском. И, да, я тоже не_программист, особых сложностей при изучении не возникло.
У меня с awesome это выглядит так: сразу после загрузки компа и входа в систему у меня запускаются gmail (ff prism), ff, pidgin, skype, 5 терминалов, claws mail, remmina, red notebook и все на своих тегах (рабочих столах) =)
У меня с awesome это выглядит так: сразу после загрузки компа и входа в систему у меня запускаются gmail (ff prism), ff, pidgin, skype, 5 терминалов, claws mail, remmina, red notebook и все на своих тегах (рабочих столах) =)
Он прекрасен для N мониторов! Очень удобно. Коллега за пятью развлекается, у меня 2. Полный контроль над тем где когда и как запускаются те или иные приложения. Ни какой гном такого не сможет.
Как стартовать разные демоны вместе с awesome? Есть ли в нем какой-то индикатор раскладок? Индикатор батареии? Какой network manager для wifi посоветуете под awesome?
Это WM, он не занимается стартом разных демонов, о чём вы?
У awesome замечательная wiki на сайте.
Если вы хотите, чтобы какая-либо команда была выполнена каждый раз при старте awesome, просто добавьте строчку в конфиг.
Если же важно, чтобы команда выполнялась только один раз, то придется написать скрипт.
Индикаторы также добавляются в конфиг-файле:
Индикатор раскладок
NetworkManager — например, wicd. Диалог добавления сетей называется wicd-gtk. Можно прописать его в автозапуск в конфиге, можно запускать по мере необходимости. Если будете прописывать в автозапуск, то через скрипт, иначе после каждого рестарта awesome (а рестарт нужен, чтобы подгрузить новый конфиг, если он был изменен) у вас будет появляться одна дополнительная иконка wicd в трее.
Если вы хотите, чтобы какая-либо команда была выполнена каждый раз при старте awesome, просто добавьте строчку в конфиг.
Если же важно, чтобы команда выполнялась только один раз, то придется написать скрипт.
Индикаторы также добавляются в конфиг-файле:
Индикатор раскладок
Индикатор батареи
awesome.naquadah.org/wiki/Acpitools-based_battery_widget (есть много разных, но я пользовался этим)NetworkManager — например, wicd. Диалог добавления сетей называется wicd-gtk. Можно прописать его в автозапуск в конфиге, можно запускать по мере необходимости. Если будете прописывать в автозапуск, то через скрипт, иначе после каждого рестарта awesome (а рестарт нужен, чтобы подгрузить новый конфиг, если он был изменен) у вас будет появляться одна дополнительная иконка wicd в трее.
Извиняюсь за оффтоп, но что за девушка на скрине?)
Вы про эту девчушку?
fc01.deviantart.net/fs24/f/2008/002/6/2/Pepper_Project_Wallpaper_by_PepperProject.jpg
И вот там ещё до фига таких :)
designrfix.com/inspiration/pepper-project-artwork-part1
designrfix.com/inspiration/pepper-project-artwork-part2
fc01.deviantart.net/fs24/f/2008/002/6/2/Pepper_Project_Wallpaper_by_PepperProject.jpg
И вот там ещё до фига таких :)
designrfix.com/inspiration/pepper-project-artwork-part1
designrfix.com/inspiration/pepper-project-artwork-part2
WMSF(а теперь WMFS2) мне как-то больше понравился.
Вчера первый раз попробовал, пол вечера переписывал конфиг, но оно того стоило… полностью сменил Openbox на Awesome. Действительно потрясающий wm.
А как же старый-добрый dwm.suckless.org/?
Пользовался несколько месяцев, но ИМХО Lua — не лучший вариант, ещё и с очень ограниченным набором фич, использующихся в конфиге он становится сильным оверкиллом. wmii с bash в настройке проще и удобнее, зато намного менее фичаст.
А ещё там есть меню:
Не понял по конфигу как кнопка меню переносится.
Не понял по конфигу как кнопка меню переносится.
В смысле, как переместить кнопку меню, например, вправо?
Находите в конфиге, как называется переменная кнопки меню:
Теперь нужно по имени найденной переменной найти примерно такое:
Если переместить mylauncher в конец верхнего списка (перед «layout = ...»), то кнопка меню будет справа от тегов. А если переместить mylauncher в начало нижнего списка (перед mytextbox), то кнопка меню будет первой справа.
Находите в конфиге, как называется переменная кнопки меню:
-- Create a laucher widget and a main menu
mymainmenu = awful.menu.new({ <-- это переменная меню
mylauncher = awful.widget.launcher({ ... menu = mymainmenu }) <-- а это искомая переменная кнопки меню
Теперь нужно по имени найденной переменной найти примерно такое:
-- Add widgets to the wibox - order matters
mywibox[s].widgets = {
{
mylauncher,
mytaglist[s],
mypromptbox[s],
layout = awful.widget.layout.horizontal.leftright
},
mytextbox,
s == 1 and mysystray or nil,
mylayoutbox[s],
mytasklist[s],
layout = awful.widget.layout.horizontal.rightleft
}
Если переместить mylauncher в конец верхнего списка (перед «layout = ...»), то кнопка меню будет справа от тегов. А если переместить mylauncher в начало нижнего списка (перед mytextbox), то кнопка меню будет первой справа.
Ни разу не пользовался, т.к. dmenu просто несравнимо быстрее.
А как вы добавляете новые пункты в меню? Классически, редактируя конфиги или есть что-то графическое, вроде obmenu?
Как раз искал тайловый WM — спасибо за наводку.
Расширения для него, как я понял, пишутся только на Lua или есть ещё какие-то варианты?
P.S. Последнее видео ваше или с просторов?
Расширения для него, как я понял, пишутся только на Lua или есть ещё какие-то варианты?
P.S. Последнее видео ваше или с просторов?
Тоже остановил выбор на i3, очень удобный и легкий WM, особенно с учетом возможности выбора между тайлингом и вкладками для контейнеров.
Аналогично. Использую i3 уже около года и очень им доволен. Кто из новичков ещё не видел презентацию i3 на Google Tech Talk — добро пожаловать.
Мне больше хочется архив с вашими обоями. ;)
Он до сих пор ломается при каждом обновлении и курсор меняется на дефолтный, при наведении на панельку?
awesome.naquadah.org/wiki/FAQ#How_to_change_the_cursor_theme.3F
Советую всем заинтересованным тайлингом обратить внимание на xmonad.
awesome.naquadah.org/wiki/FAQ#How_to_change_the_cursor_theme.3F
Советую всем заинтересованным тайлингом обратить внимание на xmonad.
Тоже использую awesome уже как несколько лет. До этого пыталась юзать xmonad, у awesome оказалось несколько весомым плюсов:
+ корректно отображает заголовки окон с русским текстом
+ содержит встроенный плагин для отображения систрея
+ lua-конфиг более понятен, чем мозгодробительный haskell
+ ну и стандартные плюсы titling window мэнеджеров: экономит место на экране за счёт отсуствующих заголовков и бордюров окон, а также нетребователен к системным ресурсам.
Саму тайловость практически не использую т.к. удобно каждому приложению отводить всю область рабочего стола
Автозапуск сделан у меня через .xinitrc:
В конфиге awesome почти не менял ничего. Основное изменение — настройка автоматического раскладывания программ по нужным столам:
+ корректно отображает заголовки окон с русским текстом
+ содержит встроенный плагин для отображения систрея
+ lua-конфиг более понятен, чем мозгодробительный haskell
+ ну и стандартные плюсы titling window мэнеджеров: экономит место на экране за счёт отсуствующих заголовков и бордюров окон, а также нетребователен к системным ресурсам.
Саму тайловость практически не использую т.к. удобно каждому приложению отводить всю область рабочего стола
Автозапуск сделан у меня через .xinitrc:
xbindkeys &
syndaemon -i 0.5 -d &
wmname LG3D
xset r rate 200 50
setxkbmap us,ru -option grp:caps_togglegrp_led:caps
$(sleep 1;rxvt) &
$(sleep 3; google-chrome) &
$(sleep 3; xsetroot -solid black) &
$(sleep 7; gajim) &
$(sleep 11; skype) &
$(sleep 15; /home/lorien/.dropbox-dist/dropboxd) &
$(sleep 20; wicd-client) &
awesome
В конфиге awesome почти не менял ничего. Основное изменение — настройка автоматического раскладывания программ по нужным столам:
-- {{{ Rules
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { border_width = beautiful.border_width,
border_color = beautiful.border_normal,
focus = true,
keys = clientkeys,
buttons = clientbuttons } },
{ rule = { class = "MPlayer" },
properties = { floating = true } },
{ rule = { class = "pinentry" },
properties = { floating = true } },
{ rule = { class = "gimp" },
properties = { floating = true } },
{ rule = { class = "Firefox" },
properties = { tag = tags[1][7] } },
{ rule = { class = "Iceweasel" },
properties = { tag = tags[1][7] } },
{ rule = { class = "Google-chrome" },
properties = { tag = tags[1][2] } },
--{ rule = { class = "Opera" },
--properties = { tag = tags[1][2] } },
--{ rule = { class = "Iceweasel" },
--properties = { tag = tags[1][2] } },
{ rule = { class = "Pidgin" },
properties = { tag = tags[1][3] } },
{ rule = { class = "Skype" },
properties = { tag = tags[1][4] } },
{ rule = { class = "Gajim" },
properties = { tag = tags[1][3] } },
-- Set Firefox to always map on tags number 2 of screen 1.
-- { rule = { class = "Firefox" },
-- properties = { tag = tags[1][2] } },
}
-- }}}
Эхх… Почему никто не пишет про старый славный WindowMaker оконный менеджер.
странно, что еще никто не исправил. «Это тайлинговый windows manager для» windowS без s пишется.
А вообще отличная штука. Пересев на этот ВМ производительность рутинных операций возрастает в двое-трое. И мышь становится вообще не нужна.
А вообще отличная штука. Пересев на этот ВМ производительность рутинных операций возрастает в двое-трое. И мышь становится вообще не нужна.
Как же я хочу уже наконец выбить свободный вечерок и в тишине посидеть — поковырять что-нибудь наподобие awesome. Давно хотел попробовать. Спасибо за напоминание. Ещё бы побольше информации по плагинам. Если не трудно — напишите продолжение статьи, пожалуйста. (:
Для любителей Lua и Awesome отличный браузер Luakit, конфиги тоже пишутся на Lua.
Писать конфиги на lua мне не понравилось. До xmonad я так и не добрался.
В комментариях прочитал про wmfs2 — попробую на днях.
Писать конфиги на lua мне не понравилось. До xmonad я так и не добрался.
В комментариях прочитал про wmfs2 — попробую на днях.
Если интересно то могу то могу показать поделиться «цветными» инидкаторами — можно настроить какое значение будет зелёным, какое красным, цвет плавно меняется между значениями. Кроме того индикатор загрузки памяти ( с вычетом всяких кешей и прочего). Индикатор загрузки Процессора от 0 до 100% (с учётом количества ядер, а то странно видеть 200-400%).
Ну и индикатор раскладки с помощью kbdd
Ну и индикатор раскладки с помощью kbdd
Всех, кто хочет поделится своей конфигурацией или посмотреть чужие, ждут на соответствующей странице вики: awesome.naquadah.org/wiki/User_Configuration_Files.
JagaJaga, неплохо было бы дать эту ссылку в статье. Может у кого-то есть какие-то интересные мысли…
JagaJaga, неплохо было бы дать эту ссылку в статье. Может у кого-то есть какие-то интересные мысли…
Если вам нравится awesome, но надоела его костыльность и необходимость на каждый чих изобретать что-то на Lua (а так же отсутствие какой бы то ни было поддержки дисплеев с высоким DPI, глюки с русскими раскладками и тому подобное), велкам в i3. Он очень похож на awesome, в котором правильный конфиг уже написан.
Sign up to leave a comment.
Классный оконный менеджер — Awesome WM