Como eu habilito um layout de três colunas no XMonad?

5

Sou iniciante em Haskell e XMonad. Estou tentando configurar meu layout de ladrilhos para permitir três colunas lado a lado (para que eu possa ter três instâncias Vim altas e finas simultâneas para codificação, por espaço de trabalho).

Nos documentos, encontrei uma função de layout de três colunas , e ainda consegui importá-lo e definir um layout personalizado, mas não sei como adicioná-lo ao meu layoutHook , que já tem algumas coisas definidas a partir de um tutorial Eu li, para manter meu xmobar seguro de cobertura de janela.

As linhas relevantes do meu xmonad.hs :

import XMonad.Layout.ThreeColumns
threeLayout = ThreeCol 1 (3/100) (1/2)
...
main = do
    xmonad $ defaultConfig
    { manageHook = manageDocks <+> manageHook defaultConfig
    , layoutHook = avoidStruts $ layoutHook defaultConfig
    ...

Como eu altero a linha layoutHook para manter as configurações existentes, além de adicionar o layout de três colunas?

    
por ire_and_curses 20.09.2012 / 11:55

1 resposta

4

Eu simplesmente esqueço a configuração padrão e começo a definir as coisas por conta própria. Então, indo nessa rota:

myLayoutHook = avoidStruts(smartBorders(ThreeColumns ||| Circle ||| Grid ||| ANY_OTHER_LAYOUT_YOU_USE)
main = do
    xmonad $ desktopConfig
        { layoutHook = myLayoutHook
        ...

Isso também tem avoidStruts , que parece ser o que você quer quando diz que quer manter a configuração existente. smartBorders é outra coisa legal que oculta a borda quando não é necessária, por exemplo, quando você tem apenas uma janela em uma tela.

    
por 20.09.2012 / 12:38