From ecd641422ad1529f5a70087212deada3a48ce6e1 Mon Sep 17 00:00:00 2001 From: Matt Mullins Date: Mon, 26 Nov 2012 21:50:51 -0800 Subject: [PATCH 1/1] XMonad config file from some large number of years ago --- xmonad.hs | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 xmonad.hs diff --git a/xmonad.hs b/xmonad.hs new file mode 100644 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 -- 2.11.0