Проблемы с xmonad/xmobar

Вчера обновились xmonad и xmonad-contrib - сворачивание окон снова работает. Правда пришлось чуток подправить конфиг - синтаксис команды восстановления изменился.
Было (у меня) sendMessage RestoreNextMinimizedWin
Стало withLastMinimized maximizeWindowAndFocus
Что касается команды сворачивания, то всё осталось без изменений - withFocused minimizeWindow

import XMonad.Actions.Minimize
.....
import XMonad.Layout.Minimize
.....
layoutHook =  avoidStruts
              $ minimize
              $ Tog.toggleLayouts (noBorders Full)
              $ smartBorders
              .....
.....

Может кому пригодится.

P.S>
https://hackage.haskell.org/package/xmonad-contrib-0.14/docs/XMonad-Actions-Minimize.html
https://hackage.haskell.org/package/xmonad-contrib-0.14/docs/XMonad-Hooks-Minimize.html
https://hackage.haskell.org/package/xmonad-contrib-0.14/docs/XMonad-Layout-Minimize.html

*Без второго в списке модуля вполне можно обойтись
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
Есть сворачивание, которое работает независимо в любом wm/DE. Через rofi можно открыть список свернутых окон (ну и поднять любое). По хоткею можно просто поднимать в обратном порядке. Информацию о свернутых окнах можно выводить в пайп (для индикации на панели). Если надо, могу поделиться.
[email protected]
Через
Я конечно понимаю, что можно сделать через... кхм... то самое место, но зачем, если есть нативные средства? )))
[email protected]
Если надо, могу поделиться.
Спасибо. Лично мне оно не надо, но может кому пригодится - выкладывай.
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
Зависимости:
xdo (community)
wmutils-git (AUR)

Сам скрипт whid2
#!/bin/bash
file="/tmp/.minimized"
touch $file
# By https://github.com/tatou-tatou
width=$(wattr w $(lsw -r))
height=$(wattr h $(lsw -r))
bar_width=$(( $width / 2 ))
left_shift=$(( ($width - $bar_width) / 2 ))
top_shift=$(( $height / 3 ))

case $1 in
hide)
    lines=$(wc -l < $file)

    if [[ $lines -ge 10 ]]; then ## Fight against bad practices
        notify-send "Десять окон уже скрыты." "Вы должны рассмотреть возможность закрытия некоторых, прежде чем скрыть другие." -i warning
    else
        focusedDesktop=$(xdotool get_desktop)
        focusedID=$(xdo id)
        focusedName=$(xdotool getwindowname $focusedID)

        let "clines = $lines+1"
        echo "$focusedID $focusedDesktop $focusedName" >> $file && xdo hide $focusedID
    fi
    ;;
rofi)
    miniList=$(cat $file)

    if [ -z "$miniList" ]
    then
        miniList="  Нет скрытых окон!"
    fi

    lineNumber=$(echo "$miniList" | cut -d " " -f 3- | nl -w 3 -n rn | sed -r 's/^([ 0-9]+)[ \t]*(.*)$/\1 - \2/' | rofi -dmenu -i -width 80 -p 'Скрытые окна: ' | cut -d '-' -f -1)

    # If you exited dmenu without selecting anything or if the list was empty
    [ -z "$lineNumber" -o "$miniList" = " Nothing is hidden!" ] && exit

    # Show the selected hidden window
    selectedID=$(sed -n "$lineNumber p" $file | cut -d ' ' -f 1)
    selectedDesktop=$(sed -n "$lineNumber p" $file | cut -d ' ' -f 2)
    xdotool set_desktop $selectedDesktop
    xdo show $selectedID && sed -i "${lineNumber}d" $file
    ;;
last) # TODO открывать на десктопе где было свернуто
    lines=$(wc -l < $file)
    selectedID=$(sed -n "$lines p" $file | cut -d ' ' -f 1)
    selectedDesktop=$(sed -n "$lines p" $file | cut -d ' ' -f 2)
    xdotool set_desktop $selectedDesktop
    xdo show $selectedID && sed -i "${lines}d" $file
    ;;
esac

Вызов:

# Список скрытых окон (выбор - показать окно)
super + c
    whid2 rofi

# Скрыть активное окно
super + ctrl + c
    whid2 hide

# Показать последнее скрытое
super + shift + c
    whid2 last
Haron_Prime, кстати, а как сейчас xmobar поживает? Не падает?
Да вроде нет. Во всяком случае эта версия.
xmobar 0.27-2
Правда на гитхабе уже выложена версия 0.28, но в репах её ещё нет.
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
 
Зарегистрироваться или войдите чтобы оставить сообщение.