XMonad config file from some large number of years ago
authorMatt Mullins <mokomull@gmail.com>
Tue, 27 Nov 2012 05:50:51 +0000 (21:50 -0800)
committerMatt Mullins <mokomull@gmail.com>
Tue, 27 Nov 2012 05:50:51 +0000 (21:50 -0800)
xmonad.hs [new file with mode: 0644]

diff --git a/xmonad.hs b/xmonad.hs
new file mode 100644 (file)
index 0000000..a727459
--- /dev/null
+++ b/xmonad.hs
@@ -0,0 +1,121 @@
+import Graphics.X11
+import XMonad
+import XMonad.Layout
+import XMonad.Layout.Reflect
+import XMonad.Layout.NoBorders
+import XMonad.Prompt
+import XMonad.Prompt.Shell
+import XMonad.Actions.NoBorders
+import Data.Bits ((.|.))
+import qualified Data.Map as M
+import Data.Map ((!))
+
+
+defaults = defaultConfig {
+            modMask = mod4Mask
+          --, terminal = "rxvt-unicode +sb -bg black -fg white -fn 6x13"
+          , terminal = "gnome-terminal"
+          , keys = \x -> (M.fromList $ mykeys x) `M.union` dvorakify (keys defaultConfig x)
+          , layoutHook = smartBorders $ tiled ||| Mirror tiled ||| reflectHoriz tiled ||| Full
+           , manageHook = myManageHook <+> manageHook defaultConfig
+} where
+       mykeys x = [
+                    ( (modMask x, xK_Return), spawn $ terminal defaults )
+                  , ( (modMask x .|. mod1Mask , xK_1), spawn "xrandr --output TMDS-1 --mode 1680x1050 --left-of LVDS" )  
+                  , ( (modMask x .|. mod1Mask , xK_2), spawn "xrandr --output TMDS-1 --off" )
+                  , ( (modMask x .|. shiftMask, xK_semicolon), withFocused toggleBorder )
+                  ]
+       tiled = Tall nmaster delta ratio
+       nmaster = 1
+       ratio = 0.5
+       delta = 0.03
+       dvorakify kl = M.fromList $ map (\((m, k), d) -> ((m, dk k), d)) $ M.toList kl
+        myManageHook = composeAll [
+                        className =? "Xpdf" --> doFloat
+                       ]
+
+dk :: KeySym -> KeySym
+dk k   | k == xK_minus = xK_bracketleft
+       | k == xK_underscore = xK_braceleft
+
+       | k == xK_equal = xK_bracketright
+       | k == xK_plus = xK_braceright
+
+       | k == xK_bracketleft = xK_slash
+       | k == xK_braceleft = xK_question
+
+       | k == xK_bracketright = xK_equal
+       | k == xK_braceright = xK_plus
+
+       | k == xK_semicolon = xK_s
+       | k == xK_colon = xK_S
+
+       | k == xK_apostrophe = xK_minus
+       | k == xK_quotedbl = xK_underscore
+
+       | k == xK_comma = xK_w
+       | k == xK_less = xK_W
+
+       | k == xK_period = xK_v
+       | k == xK_greater = xK_V
+
+       | k == xK_slash = xK_z
+       | k == xK_question = xK_Z
+
+       | k == xK_Q = xK_quotedbl
+       | k == xK_W = xK_less
+       | k == xK_E = xK_greater
+       | k == xK_R = xK_P
+       | k == xK_T = xK_Y
+       | k == xK_Y = xK_F
+       | k == xK_U = xK_G
+       | k == xK_I = xK_C
+       | k == xK_O = xK_R
+       | k == xK_P = xK_L
+       | k == xK_A = xK_A
+       | k == xK_S = xK_O
+       | k == xK_D = xK_E
+       | k == xK_F = xK_U
+       | k == xK_G = xK_I
+       | k == xK_H = xK_D
+       | k == xK_J = xK_H
+       | k == xK_K = xK_T
+       | k == xK_L = xK_N
+       | k == xK_Z = xK_colon
+       | k == xK_X = xK_Q
+       | k == xK_C = xK_J
+       | k == xK_V = xK_K
+       | k == xK_B = xK_X
+       | k == xK_N = xK_B
+       | k == xK_M = xK_M
+
+       | k == xK_q = xK_apostrophe
+       | k == xK_w = xK_comma
+       | k == xK_e = xK_period
+       | k == xK_r = xK_p
+       | k == xK_t = xK_y
+       | k == xK_y = xK_f
+       | k == xK_u = xK_g
+       | k == xK_i = xK_c
+       | k == xK_o = xK_r
+       | k == xK_p = xK_l
+       | k == xK_a = xK_a
+       | k == xK_s = xK_o
+       | k == xK_d = xK_e
+       | k == xK_f = xK_u
+       | k == xK_g = xK_i
+       | k == xK_h = xK_d
+       | k == xK_j = xK_h
+       | k == xK_k = xK_t
+       | k == xK_l = xK_n
+       | k == xK_z = xK_semicolon
+       | k == xK_x = xK_q
+       | k == xK_c = xK_j
+       | k == xK_v = xK_k
+       | k == xK_b = xK_x
+       | k == xK_n = xK_b
+       | k == xK_m = xK_m
+
+       | otherwise = k
+
+main = xmonad defaults