<br><div class="gmail_quote">On Fri, Mar 28, 2008 at 2:45 PM, Anze Slosar &lt;<a href="mailto:anze@berkeley.edu">anze@berkeley.edu</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br>
<br>
How can I bind certain layouts to key combinations? So rather than cycle<br>
thorugh layouts with Mod Space, I&#39;d like Mod F1 to give me layout 1, Mod<br>
F2 to give me layout 2, etc... I&#39;ve been googling for a bit, but can&#39;t<br>
find an answer.<br>
<br>
Thanks.<br>
<br>
anze<br>
</blockquote><div><br>Hi Anze,<br><br>You can do this using the JumpToLayout message from the XMonad.Layout.LayoutCombinators extension module.&nbsp; For example:<br><br>import XMonad hiding ( (|||) )&nbsp; -- don&#39;t use the normal ||| operator<br>
import XMonad.Layout.LayoutCombinators&nbsp;&nbsp; -- use the one from LayoutCombinators instead<br>import XMonad.Util.EZConfig&nbsp; -- add keybindings easily<br><br>main = xmonad myConfig<br><br>myConfig = defaultConfig {<br>&nbsp; ...<br>
&nbsp; layoutHook = tall ||| Mirror tall ||| Full<br></div></div>&nbsp; ...<br>} `additionalKeysP`<br>&nbsp; [ (&quot;M-&lt;F1&gt;&quot;, sendMessage $ JumpToLayout &quot;Tall&quot;)<br>&nbsp; , (&quot;M-&lt;F2&gt;&quot;, sendMessage $ JumpToLayout &quot;Mirror Tall&quot;)<br>
&nbsp; , (&quot;M-&lt;F3&gt;&quot;, sendMessage $ JumpToLayout &quot;Full&quot;)<br>&nbsp; ]<br><br>tall = Tall 1 (3/100) (1/2)<br><br><br><br>Untested, but that&#39;s the basic idea, hopefully that will get you going on the right track.&nbsp; Let us know if you&#39;ve got more questions.<br>
<br>-Brent<br>