Nothing to see with this commit.

This commit is contained in:
Derek Taylor
2023-03-02 19:55:32 -06:00
parent 51733ffc17
commit fd70c898f8
2 changed files with 8 additions and 49 deletions

View File

@@ -1,4 +1,4 @@
#+TITLE: XMonad Config #+TITLE: XMonad-With-Polybar Config
#+AUTHOR: Derek Taylor #+AUTHOR: Derek Taylor
#+PROPERTY: header-args :tangle xmonad.hs #+PROPERTY: header-args :tangle xmonad.hs
#+auto_tangle: t #+auto_tangle: t

View File

@@ -25,7 +25,7 @@ import Data.Tree
import qualified Data.Map as M import qualified Data.Map as M
-- Hooks -- Hooks
import XMonad.Hooks.DynamicLog (dynamicLogWithPP, wrap, xmobarPP, xmobarColor, shorten, PP(..)) import XMonad.Hooks.DynamicLog
import XMonad.Hooks.EwmhDesktops -- for some fullscreen events, also for xcomposite in obs. import XMonad.Hooks.EwmhDesktops -- for some fullscreen events, also for xcomposite in obs.
import XMonad.Hooks.ManageDocks (avoidStruts, docks, manageDocks, ToggleStruts(..)) import XMonad.Hooks.ManageDocks (avoidStruts, docks, manageDocks, ToggleStruts(..))
import XMonad.Hooks.ManageHelpers (isFullscreen, doFullFloat, doCenterFloat) import XMonad.Hooks.ManageHelpers (isFullscreen, doFullFloat, doCenterFloat)
@@ -67,6 +67,7 @@ import XMonad.Util.EZConfig (additionalKeysP, mkNamedKeymap)
import XMonad.Util.Hacks (windowedFullscreenFixEventHook, javaHack, trayerAboveXmobarEventHook, trayAbovePanelEventHook, trayerPaddingXmobarEventHook, trayPaddingXmobarEventHook, trayPaddingEventHook) import XMonad.Util.Hacks (windowedFullscreenFixEventHook, javaHack, trayerAboveXmobarEventHook, trayAbovePanelEventHook, trayerPaddingXmobarEventHook, trayPaddingXmobarEventHook, trayPaddingEventHook)
import XMonad.Util.NamedActions import XMonad.Util.NamedActions
import XMonad.Util.NamedScratchpad import XMonad.Util.NamedScratchpad
import XMonad.Util.NamedWindows (getName)
import XMonad.Util.Run (runProcessWithInput, safeSpawn, spawnPipe) import XMonad.Util.Run (runProcessWithInput, safeSpawn, spawnPipe)
import XMonad.Util.SpawnOnce import XMonad.Util.SpawnOnce
@@ -122,7 +123,6 @@ myStartupHook :: X ()
myStartupHook = do myStartupHook = do
spawnOnce (mySoundPlayer ++ startupSound) spawnOnce (mySoundPlayer ++ startupSound)
spawn "killall conky" -- kill current conky on each restart spawn "killall conky" -- kill current conky on each restart
spawn "killall trayer" -- kill current trayer on each restart
spawnOnce "lxsession" spawnOnce "lxsession"
spawnOnce "picom" spawnOnce "picom"
@@ -132,7 +132,7 @@ myStartupHook = do
spawn "/usr/bin/emacs --daemon" -- emacs daemon for the emacsclient spawn "/usr/bin/emacs --daemon" -- emacs daemon for the emacsclient
spawn ("sleep 2 && conky -c $HOME/.config/conky/xmonad/" ++ colorScheme ++ "-01.conkyrc") spawn ("sleep 2 && conky -c $HOME/.config/conky/xmonad/" ++ colorScheme ++ "-01.conkyrc")
spawn ("sleep 2 && trayer --edge top --align right --widthtype request --padding 6 --SetDockType true --SetPartialStrut true --expand true --monitor 1 --transparent true --alpha 0 " ++ colorTrayer ++ " --height 22") spawn "polybar-xmonad"
spawnOnce "xargs xwallpaper --stretch < ~/.cache/wall" spawnOnce "xargs xwallpaper --stretch < ~/.cache/wall"
-- spawnOnce "~/.fehbg &" -- set last saved feh wallpaper -- spawnOnce "~/.fehbg &" -- set last saved feh wallpaper
@@ -438,22 +438,8 @@ myLayoutHook = avoidStruts
||| wideAccordion ||| wideAccordion
-- myWorkspaces = [" 1 ", " 2 ", " 3 ", " 4 ", " 5 ", " 6 ", " 7 ", " 8 ", " 9 "] -- myWorkspaces = [" 1 ", " 2 ", " 3 ", " 4 ", " 5 ", " 6 ", " 7 ", " 8 ", " 9 "]
myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "] -- myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "]
-- myWorkspaces = myWorkspaces = ["1: dev", "2: www", "3: sys", "4: doc", "5: vbox", "6: chat", "7: mus", "8: vid", "9: gfx"]
-- " 1 : <fn=2>\xf111</fn> " :
-- " 2 : <fn=2>\xf1db</fn> " :
-- " 3 : <fn=2>\xf192</fn> " :
-- " 4 : <fn=2>\xf025</fn> " :
-- " 5 : <fn=2>\xf03d</fn> " :
-- " 6 : <fn=2>\xf1e3</fn> " :
-- " 7 : <fn=2>\xf07b</fn> " :
-- " 8 : <fn=2>\xf21b</fn> " :
-- " 9 : <fn=2>\xf21e</fn> " :
-- []
myWorkspaceIndices = M.fromList $ zipWith (,) myWorkspaces [1..] -- (,) == \x y -> (x,y)
clickable ws = "<action=xdotool key super+"++show i++">"++ws++"</action>"
where i = fromJust $ M.lookup ws myWorkspaceIndices
myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet) myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
myManageHook = composeAll myManageHook = composeAll
@@ -696,12 +682,9 @@ myKeys c =
main :: IO () main :: IO ()
main = do main = do
-- Launching three instances of xmobar on their monitors.
xmproc0 <- spawnPipe ("xmobar -x 0 $HOME/.config/xmobar/" ++ colorScheme ++ "-xmobarrc")
xmproc1 <- spawnPipe ("xmobar -x 1 $HOME/.config/xmobar/" ++ colorScheme ++ "-xmobarrc")
xmproc2 <- spawnPipe ("xmobar -x 2 $HOME/.config/xmobar/" ++ colorScheme ++ "-xmobarrc")
-- the xmonad, ya know...what the WM is named after! -- the xmonad, ya know...what the WM is named after!
xmonad $ addDescrKeys' ((mod4Mask, xK_F1), showKeybindings) myKeys $ ewmh $ docks $ def xmonad $ addDescrKeys' ((mod4Mask, xK_F1), showKeybindings) myKeys $ docks . ewmh $ def
{ manageHook = myManageHook <+> manageDocks { manageHook = myManageHook <+> manageDocks
, handleEventHook = windowedFullscreenFixEventHook <> swallowEventHook (className =? "Alacritty" <||> className =? "st-256color" <||> className =? "XTerm") (return True) <> trayerPaddingXmobarEventHook , handleEventHook = windowedFullscreenFixEventHook <> swallowEventHook (className =? "Alacritty" <||> className =? "st-256color" <||> className =? "XTerm") (return True) <> trayerPaddingXmobarEventHook
, modMask = myModMask , modMask = myModMask
@@ -712,28 +695,4 @@ main = do
, borderWidth = myBorderWidth , borderWidth = myBorderWidth
, normalBorderColor = myNormColor , normalBorderColor = myNormColor
, focusedBorderColor = myFocusColor , focusedBorderColor = myFocusColor
, logHook = dynamicLogWithPP $ filterOutWsPP [scratchpadWorkspaceTag] $ xmobarPP
{ ppOutput = \x -> hPutStrLn xmproc0 x -- xmobar on monitor 1
>> hPutStrLn xmproc1 x -- xmobar on monitor 2
>> hPutStrLn xmproc2 x -- xmobar on monitor 3
, ppCurrent = xmobarColor color06 "" . wrap
("<box type=Bottom width=2 mb=2 color=" ++ color06 ++ ">") "</box>"
-- Visible but not current workspace
, ppVisible = xmobarColor color06 "" . clickable
-- Hidden workspace
, ppHidden = xmobarColor color05 "" . wrap
("<box type=Top width=2 mt=2 color=" ++ color05 ++ ">") "</box>" . clickable
-- Hidden workspaces (no windows)
, ppHiddenNoWindows = xmobarColor color05 "" . clickable
-- Title of active window
, ppTitle = xmobarColor color16 "" . shorten 60
-- Separator character
, ppSep = "<fc=" ++ color09 ++ "> <fn=1>|</fn> </fc>"
-- Urgent workspace
, ppUrgent = xmobarColor color02 "" . wrap "!" "!"
-- Adding # of windows on current workspace to the bar
, ppExtras = [windowCount]
-- order of things in xmobar
, ppOrder = \(ws:l:t:ex) -> [ws,l]++ex++[t]
}
} }