xmonad: clean up imports

This commit is contained in:
Primrose 2025-08-10 23:52:50 +02:00
parent 2b3efa5b44
commit 29110fffba
Signed by: primrose
GPG key ID: 4E887A4CA9714ADA

View file

@ -2,46 +2,32 @@
{-# LANGUAGE LambdaCase #-}
import XMonad
import XMonad.Actions.SwapWorkspaces(swapWithCurrent)
import XMonad.Actions.Submap (submap, visualSubmap)
import XMonad.Util.EZConfig (additionalKeys, removeKeys)
import XMonad.Util.NamedScratchpad (NamedScratchpad (NS),
customFloating,
namedScratchpadAction,
namedScratchpadManageHook, scratchpadWorkspaceTag)
import XMonad.Util.SpawnOnce (spawnOnce)
import XMonad.Layout.NoBorders (smartBorders)
import XMonad.Layout.Reflect (reflectHoriz)
import XMonad.Layout.Spacing (smartSpacingWithEdge)
import XMonad.Layout.Renamed (named)
import XMonad.Layout.ResizableTile (ResizableTall(ResizableTall), MirrorResize (MirrorShrink, MirrorExpand))
import XMonad.Hooks.ManageHelpers (isFullscreen, (~?), composeOne, (-?>))
import XMonad.Hooks.FadeWindows (fadeWindowsLogHook, opaque, isUnfocused, transparency, isFloating)
import XMonad.Hooks.EwmhDesktops (ewmh, ewmhFullscreen)
import XMonad.Hooks.InsertPosition (insertPosition, Focus(Newer, Older), Position(Below, Above))
import XMonad.Hooks.RefocusLast (refocusLastLogHook)
import XMonad.Hooks.StatusBar (StatusBarConfig, statusBarProp, dynamicEasySBs)
import XMonad.Hooks.DynamicLog (PP(ppHiddenNoWindows, ppCurrent, ppSep), xmobarColor, filterOutWsPP, wrap)
import XMonad.Util.Hacks (javaHack)
import XMonad.Actions.Submap
import XMonad.Actions.SwapWorkspaces
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.EwmhDesktops
import XMonad.Hooks.FadeWindows
import XMonad.Hooks.InsertPosition
import XMonad.Hooks.ManageHelpers
import XMonad.Hooks.RefocusLast
import XMonad.Hooks.StatusBar
import XMonad.Layout.NoBorders
import XMonad.Layout.Reflect
import XMonad.Layout.Renamed
import XMonad.Layout.ResizableTile
import XMonad.Layout.Spacing
import XMonad.StackSet qualified as W
import XMonad.Util.EZConfig
import XMonad.Util.Hacks
import XMonad.Util.NamedScratchpad
import XMonad.Util.SpawnOnce
import Data.Map.Strict qualified as M
import Graphics.X11.ExtraTypes.XF86
import System.Posix.Env (putEnv)
import Leanamonad.Layouts.ReflectMsg
import Leanamonad.GreekChar
-- Note: `xmonad --restart` will make Firefox's fullscreen work duck the xmobar stop working
-- You need restart Firefox
main :: IO ()
@ -49,7 +35,7 @@ main = xmonad
-- Fix all java things that don't scale with XMonad
-- https://wiki.archlinux.org/title/java#Gray_window,_applications_not_resizing_with_WM,_menus_immediately_closing
. javaHack
. dynamicEasySBs xmobar
. dynamicEasySBs xmonadOn
. ewmhFullscreen . ewmh
$ def
{ modMask = superMask
@ -251,8 +237,8 @@ centeredFloat = W.RationalRect (1/9) (1/9) (7/9) (7/9)
smallFloat = W.RationalRect (3/5) (3/5) (2/7) (2/7)
fullFloat = W.RationalRect 0 0 1 1
xmobar :: ScreenId -> X StatusBarConfig
xmobar = \case
xmonadOn :: ScreenId -> X StatusBarConfig
xmonadOn = \case
0 -> pure $ statusBarProp "xmobar -x 0" (pure myPrettyPrinter)
1 -> pure $ statusBarProp "xmobar -x 1" (pure myPrettyPrinter)
_ -> mempty