From 8d9eb8fa8a20efa4c4318fccef97d21fe91fb092 Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Mon, 22 Dec 2025 13:31:18 -0500 Subject: Switch to kitty terminal with ef-dream theme, emoji support - Replace urxvt with kitty as default terminal - Add ef-dream inspired color scheme to kitty - Configure emoji font fallback with Noto Color Emoji - Update xmonad.hs to use kitty for terminal and scratchpads - Fix cmdtree to fetch from GitHub instead of broken git://jb55.com - Remove urxvt.nix and alacritty config - Add AGENTS.md for agentic coding tools --- lib/xmonad.hs | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) (limited to 'lib/xmonad.hs') diff --git a/lib/xmonad.hs b/lib/xmonad.hs index e58ab09..b008119 100644 --- a/lib/xmonad.hs +++ b/lib/xmonad.hs @@ -22,17 +22,21 @@ import Data.List (intercalate, isPrefixOf) import Graphics.X11.ExtraTypes.XF86 import XMonad import XMonad.Actions.CopyWindow +import XMonad.Actions.GridSelect import XMonad.Actions.WindowBringer (gotoMenu, bringMenu) import XMonad.Actions.UpdatePointer (updatePointer) import XMonad.Config import XMonad.Config.Desktop import XMonad.Hooks.EwmhDesktops (ewmh) +import XMonad.Hooks.FadeInactive import XMonad.Hooks.ManageDocks import XMonad.Hooks.ManageHelpers (doFullFloat, isFullscreen) +import XMonad.Layout.Accordion import XMonad.Layout.BinarySpacePartition import XMonad.Layout.Dwindle as Dwindle import XMonad.Layout.LayoutModifier import XMonad.Layout.NoBorders +import XMonad.Layout.PerScreen import XMonad.Layout.ResizableTile import XMonad.Layout.Spacing import XMonad.Layout.Spiral @@ -95,18 +99,14 @@ scratchHook = namedScratchpadManageHook scratchpads -- myManageHook = manageDocks <+> scratchHook <+> (shouldFloat --> doFullFloat) <+> manageHook def --- todo: use urxvtc with daemon -termName = "/home/ben/.nix-profile/bin/urxvt" +termName = "kitty" centerFloat = customFloating (W.RationalRect 0.125 0.125 0.75 0.75) scratchpads = [ - -- run htop in xterm, find it by title - NS "htop" "urxvt -e htop" (title =? "htop") centerFloat, - NS "gotop" "urxvt -e gotop" (title =? "gotop") centerFloat, - - NS "nvtop" "urxvt -e nvtop" (title =? "nvtop") centerFloat, - + NS "htop" "kitty -e htop" (title =? "htop") centerFloat, + NS "gotop" "kitty -e gotop" (title =? "gotop") centerFloat, + NS "nvtop" "kitty -e nvtop" (title =? "nvtop") centerFloat, NS "pwvucontrol" "pwvucontrol" (className =? "Pwvucontrol") centerFloat ] @@ -119,6 +119,8 @@ insKeys conf@(XConfig {modMask = modMask}) = ((modMask, xK_n), spawn "rofi -sidebar-mode -show window"), ((modMask, xK_u), spawn "rofi -show calc -modi calc -no-show-match -no-sort"), + ((modMask, xK_g), goToSelected def), + -- scratchpads ((meh, xK_h), namedScratchpadAction scratchpads "htop"), ((meh, xK_n), namedScratchpadAction scratchpads "nvtop"), @@ -187,19 +189,19 @@ myTabCfg theme = myLayout theme = avoidStruts $ - noBorders (tabbed shrinkText $ myTabCfg theme) - ||| (addSpace $ noBorders Full) + ifWider 2160 wideLayouts tallLayouts + where + wideLayouts = + (addSpace $ noBorders (tabbed shrinkText $ myTabCfg theme)) ||| twopane - ||| Mirror twopane - ||| ThreeCol 1 (3 / 100) (1 / 2) - ||| ThreeColMid 1 (3 / 100) (1 / 2) + ||| (addSpace $ ThreeCol 1 (3 / 100) (1 / 3)) ||| tiled +-- ||| emptyBSP + tallLayouts = + (addSpace $ noBorders (tabbed shrinkText $ myTabCfg theme)) + ||| addSpace Accordion + ||| Mirror twopane ||| Mirror tiled - ||| emptyBSP - where - -- ||| goldenSpiral - -- ||| Spiral R Dwindle.CW (3 / 2) (11 / 10) -- L/R is where to put non-main windows - -- The last parameter is fraction to multiply the slave window heights -- with. Useless here. tiled = addSpace $ ResizableTall nmaster delta ratio [] @@ -225,7 +227,7 @@ myConf theme = additionalKeys cfg (insKeys cfg) layoutHook = myLayout theme, terminal = termName, workspaces = myWorkspaces, - logHook = updatePointer (0.5,0.5) (0,0) + logHook = updatePointer (0.5,0.5) (0,0) >> fadeInactiveLogHook 0.8 } main :: IO () -- cgit v1.2.3