import XMonad.Layout.IM
import XMonad.Layout.LayoutHints
import qualified XMonad.Layout.Magnifier as Mag
+import XMonad.Layout.Master
import XMonad.Layout.NoBorders
import XMonad.Layout.NoFrillsDecoration
import XMonad.Layout.PerWorkspace
import XMonad.Layout.Reflect
import XMonad.Layout.Tabbed
import XMonad.Layout.ThreeColumns
-import XMonad.Layout.TwoPane
import XMonad.Util.Run(spawnPipe)
import XMonad.Util.WindowProperties(getProp32s)
import qualified Data.Map as M
myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
[
- ((modm .|. shiftMask, xK_q), spawn "gnome-session-quit"),
- ((modm .|. shiftMask, xK_h), spawn "gnome-session-quit --power-off"),
--- ((modm .|. shiftMask, xK_q), spawn "gnome-session-save --logout-dialog"),
--- ((modm .|. shiftMask, xK_h), spawn "gnome-session-save --shutdown-dialog"),
- ((modm .|. shiftMask, xK_l), spawn "gnome-screensaver-command --lock"),
+ ((modm .|. shiftMask, xK_h), spawn "xfce4-session-logout"),
+ ((modm .|. shiftMask, xK_l), spawn "xscreensaver-command --lock"),
- ((modm, xK_n), spawn "gnome-terminal"),
+ ((modm, xK_n), spawn "xfce4-terminal"),
((modm, xK_i), spawn "firefox"),
((modm .|. shiftMask, xK_c ), kill),
Just [_] -> True
_ -> False
+isSkipTaskBar = isInProperty "_NET_WM_STATE" "_NET_WM_STATE_SKIP_TASKBAR"
+
+
myManageHook =
manageDocks <+>
composeOne [
- (className =? "Firefox" <&&> resource =? "Popup") -?> (ask >>= doF . W.sink),
(className =? "Firefox" <&&> resource =? "Navigator" <&&> currentWs =? "1") -?> (doShift "2"),
(className =? "Kupfer.py" <&&> resource =? "kupfer.py") -?> doFloat,
+ (className =? "Xfce4-appfinder" <&&> resource =? "xfce4-appfinder") -?> doFloatAt 0.1 0.1,
+ (isSkipTaskBar -?> doFloat),
(isDialog -?> doFloatAt 0.1 0.1),
(isTransient -?> doFloatAt 0.1 0.1),
(isFullscreen -?> doFullFloat),
myPP = xmobarPP
{
- ppTitle = xmobarColor "green" ""
+ ppCurrent = xmobarColor "#A01010" "" . wrap "[" "]",
+ ppTitle = xmobarColor "#10A010" ""
}
myLogHook h1 h2 =
goldenRatio = (toRational (2/(1+sqrt(5)::Double)))
+myTitleTheme = defaultTheme {
+ fontName = "xft:sans-serif:size=10",
+ decoHeight = 22
+ }
+
createLayout name layout =
renamed [Replace name] $
layoutHints $
myTabbedLayout = createLayout "Tab" $
avoidStruts $
- simpleTabbed
+ tabbed shrinkText myTitleTheme
myThreeColLayout = createLayout "ThreeCol" $
avoidStruts $
masterRatio = 4/10
numMaster = 1
-myTwoPaneLayout = createLayout "TwoPane" $
+myMasterTabbedLayout = createLayout "MTab" $
avoidStruts $
Mag.magnifierOff $
- TwoPane resizeDelta masterRatio
+ mastered resizeDelta masterRatio $
+ tabbed shrinkText myTitleTheme
where
resizeDelta = 3/100
masterRatio = goldenRatio
myImLayout = createLayout "IM" $
avoidStruts $
- noFrillsDeco shrinkText defaultTheme $
+ noFrillsDeco shrinkText myTitleTheme $
withIM rosterRatio roster $
myTiledLayout
--- myThreeColLayout -- use this on wider screens
reflectHoriz $
withIM (1/6) (Role "gimp-dock") $
reflectHoriz $
- simpleTabbed
+ tabbed shrinkText myTitleTheme
-- This was the easiest way I found to avoid a compile error when I have
myTiledLayout |||
myTabbedLayout |||
myThreeColLayout |||
- myTwoPaneLayout |||
+ myMasterTabbedLayout |||
myImLayout |||
myGimpLayout
myLayout =
(
onWorkspace "1" (myImLayout) $
- onWorkspace "2" (myTabbedLayout ||| myFullLayout) $
- onWorkspace "7" (myTiledLayout ||| myTabbedLayout ||| myGimpLayout) $
- (myTiledLayout ||| myTabbedLayout)
+ onWorkspace "2" (myTabbedLayout ||| myMasterTabbedLayout) $
+ onWorkspace "9" (myMasterTabbedLayout ||| myTabbedLayout ||| myTiledLayout ||| myFullLayout ||| myGimpLayout) $
+ (myMasterTabbedLayout ||| myTabbedLayout ||| myTiledLayout)
)
main = do