(Update: ok, so I posted this quickly without having used it a lot. I don’t use the Gimp much anyway, so this mostly meets my needs, but it does have issues. If I get motivated to look into them, I’ll update with a fix if I can.)

I just came up with an xmonad layout for gimp that I like quite a bit, so I have to share it… it uses the IM layout (twice) combined with the Full layout to get tools on each side of the screen, with images taking up the whole space between them. Here’s the code (updated to include requirements, etc):

import XMonad.Layout.IM
import XMonad.Layout.PerWorkspace
import XMonad.Layout.Reflect

main = do
  xmonad defaultConfig
    { layoutHook = onWorkspace "gimp" gimp }
    where
      gimp = withIM (0.11) (Role "gimp-toolbox") $
             reflectHoriz $
             withIM (0.15) (Role "gimp-dock") Full

You’ll probably want to change the widths assigned to the two IM docks to fit your screen, but those settings work nicely for me on a 1920×1200 24″ screen. Here’s a shot of it (click for a full-size view):

My xmonad layout for gimp

My xmonad layout for gimp

Loading image

Click anywhere to cancel

Image unavailable