[xmonad] stupid newbie question about `removeKeysP`

Gwern Branwen gwern0 at gmail.com
Wed May 5 16:06:34 EDT 2010


On Wed, May 5, 2010 at 3:37 PM, Jonas Bygdén <jonaslistor at gmail.com> wrote:
> import XMonad
> import XMonad.Config.Gnome
> import XMonad.Util.EZConfig
> main = xmonad gnomeConfig
>         {terminal       = "urxvtcd"
>         }
>         `removeKeysP` ["M-b","M-."]

When in doubt, parenthesize.

----
    main = xmonad (gnomeConfig
        {terminal       = "urxvtcd"
        })
        `removeKeysP` ["M-b","M-."]

/home/gwern/foo.hs:5:7:
    Couldn't match expected type `XConfig l'
           against inferred type `IO ()'
    In the first argument of `removeKeysP', namely
        `xmonad (gnomeConfig {terminal = "urxvtcd"})'
    In the expression:
          xmonad (gnomeConfig {terminal = "urxvtcd"})
        `removeKeysP`
          ["M-b", "M-."]
    In the definition of `main':
        main = xmonad (gnomeConfig {terminal = "urxvtcd"})
             `removeKeysP`
               ["M-b", "M-."]
----
----
import XMonad
import XMonad.Config.Gnome
import XMonad.Util.EZConfig

main = xmonad ((gnomeConfig
        {terminal       = "urxvtcd"
        })
        `removeKeysP` ["M-b","M-."])

/home/gwern/foo.hs:5:0:
    Warning: Definition but no type signature for `main'
             Inferred type: main :: IO ()
----

Do you understand why?

-- 
gwern


More information about the xmonad mailing list