aboutsummaryrefslogblamecommitdiffstats
path: root/CONFIG
blob: e719e99d7f882778b532e2549d58a4f89a1e2347 (plain) (tree)
1
2
3
4
5
6
7
8

                        
                                                              


                       

                                                                            


                      


                                                                  

                 


                                 
                                      


                                          
                                      





                                                                 
                                                           
            
 
                              


                                                                 
 


                         
               


                                






                                                                      







                                                            
                             


                                                                
                    


                                                
                  






                                                                        
== Configuring xmonad ==

xmonad is configured by creating and editing the Haskell file:

    ~/.xmonad/xmonad.hs

xmonad then uses settings from this file as arguments to the window manager,
on startup.

== A simple example ==

Here is a basic example, which overrides the default border width,
default terminal, and some colours. This text goes in the file
$HOME/.xmonad/xmonad.hs :

    import XMonad

    main = xmonad $ defaultConfig
        { borderWidth        = 2
        , terminal           = "urxvt"
        , normalBorderColor  = "#cccccc"
        , focusedBorderColor = "#cd8b00" }

You can find the defaults in the file:

    XMonad/Config.hs

== Checking your xmonad.hs is correct ==

Place this text in ~/.xmonad/xmonad.hs, and then check that it is
syntactically and type correct by loading it in the Haskell
interpreter:

    $ ghci ~/.xmonad/xmonad.hs
    GHCi, version 6.8.1: http://www.haskell.org/ghc/  :? for help
    Loading package base ... linking ... done.
    Ok, modules loaded: Main.

    Prelude Main> :t main
    main :: IO ()

Ok, looks good.

== Loading your configuration ==

To have xmonad start using your settings, type 'mod-q'.  xmonad will
then load this new file, and run it.  If it is unable to, the defaults
are used. 

To load succesfully, both 'xmonad' and 'ghc' must be in your $PATH
environment variable.  If GHC isn't in your path, for some reason, you
can compile the xmonad.hs file yourself:

    $ cd ~/.xmonad
    $ ghc --make xmonad.hs
    $ ls
    xmonad    xmonad.hi xmonad.hs xmonad.o

When you hit mod-q, this newly compiled xmonad will be used.

== Where are the defaults? ==

The default configuration values are defined in the source file:

    XMonad/Config.hs

the XConfig data structure itself is defined in:

    XMonad/Core.hs

== Extensions ==

Since the xmonad.hs file is just another Haskell module, you may import
and use any Haskell code or libraries you wish. For example, you can use
things from the xmonad-contrib library, or other code you write
yourself.