From bbdb6227cf78c8bebba721fae008caeefb9bc6da Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Tue, 6 Aug 2024 22:07:24 +0200 Subject: Update xmonad layout to change according to host --- config/fish/config.fish | 2 ++ config/xmonad/xmonad.hs | 20 +++++++++++--------- 2 files changed, 13 insertions(+), 9 deletions(-) (limited to 'config') diff --git a/config/fish/config.fish b/config/fish/config.fish index ac67f57..7d34a17 100644 --- a/config/fish/config.fish +++ b/config/fish/config.fish @@ -94,6 +94,8 @@ set -gx GPG_TTY "$(tty)" # valgrind requires this to work on arch linux (from: https://bbs.archlinux.org/viewtopic.php?id=276422) set -gx DEBUGINFOD_URLS 'https://debuginfod.archlinux.org' +set -gx HOST "$(cat /etc/hostname)" # for compatibility with Xmonad.Layout.OnHost + if status is-interactive fish_vi_key_bindings diff --git a/config/xmonad/xmonad.hs b/config/xmonad/xmonad.hs index 57f8d74..7862565 100644 --- a/config/xmonad/xmonad.hs +++ b/config/xmonad/xmonad.hs @@ -19,6 +19,7 @@ import XMonad.Layout.Spacing (Border (..), spacingRaw) import XMonad.Layout.Grid (Grid (..)) import XMonad.Layout.ThreeColumns (ThreeCol (ThreeColMid)) import XMonad.Layout.CenteredIfSingle (centeredIfSingle) +import XMonad.Layout.OnHost (onHost) -- Hooks import XMonad.Hooks.InsertPosition (Focus (..), Position (..), @@ -33,9 +34,9 @@ import XMonad.StackSet (swapUp) import XMonad.Layout.LayoutScreens import XMonad.Layout.TwoPane - myTerminal = "alacritty" + -- xmonad :: XConfig -> IO () -- https://hackage.haskell.org/package/xmonad-0.15/docs/XMonad-Core.html#t:XConfig main = xmonad $ desktopConfig @@ -53,14 +54,15 @@ main = xmonad $ desktopConfig } `additionalKeysP` keys' -layoutHook' = spacing' 4 $ centeredIfSingle (1/2) (95/100) (ThreeColMid 1 (3/100) (1/2)) - ||| reflectHoriz tiledVerticalBigMaster -- main monitor is slighly to the left - ||| tiledVerticalBigMaster -- bigger master for code and smaller slave for compiling - ||| noBorders Full -- disable borders for fullscreen layout - ||| Mirror tiledHorizontalEven -- 50/50 horizontal split - ||| Grid - -- ||| layoutScreens 2 (TwoPane 0.5 0.5) - where tiledVerticalBigMaster = Tall 1 (3 / 100) (3 / 5) +layoutHook' = spacing' 4 $ onHost "charles-fractal" (threeColMid ||| commonLayout) commonLayout + where commonLayout = reflectHoriz tiledVerticalBigMaster -- main monitor is slighly to the left + ||| tiledVerticalBigMaster -- bigger master for code and smaller slave for compiling + ||| noBorders Full -- disable borders for fullscreen layout + ||| Mirror tiledHorizontalEven -- 50/50 horizontal split + ||| Grid + -- ||| layoutScreens 2 (TwoPane 0.5 0.5) + threeColMid = centeredIfSingle (1/2) (95/100) (ThreeColMid 1 (3/100) (1/2)) + tiledVerticalBigMaster = Tall 1 (3 / 100) (3 / 5) tiledHorizontalEven = Tall 1 (3 / 100) (1 / 2) spacing' x = spacingRaw True (Border x x x x) False (Border x x x x) True -- cgit