update the default rc.xml with the new actions syntax and the rc.xsd
[dana/openbox.git] / data / rc.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <!-- Do not edit this file, it will be overwritten on install.
4         Copy the file to $HOME/.config/openbox/ instead. -->
5
6 <openbox_config xmlns="http://openbox.org/3.4/rc">
7
8 <resistance>
9   <strength>10</strength>
10   <screen_edge_strength>20</screen_edge_strength>
11 </resistance>
12
13 <focus>
14   <focusNew>yes</focusNew>
15   <!-- always try to focus new windows when they appear. other rules do
16        apply -->
17   <followMouse>no</followMouse>
18   <!-- move focus to a window when you move the mouse into it -->
19   <focusLast>yes</focusLast>
20   <!-- focus the last used window when changing desktops, instead of the one
21        under the mouse pointer. when followMouse is enabled -->
22   <underMouse>no</underMouse>
23   <!-- move focus under the mouse, even when the mouse is not moving -->
24   <focusDelay>200</focusDelay>
25   <!-- when followMouse is enabled, the mouse must be inside the window for
26        this many milliseconds (1000 = 1 sec) before moving focus to it -->
27   <raiseOnFocus>no</raiseOnFocus>
28   <!-- when followMouse is enabled, and a window is given focus by moving the
29        mouse into it, also raise the window -->
30 </focus>
31
32 <placement>
33   <policy>Smart</policy>
34   <!-- 'Smart' or 'UnderMouse' -->
35   <center>yes</center>
36   <!-- whether to place windows in the center of the free area found or
37        the top left corner -->
38 </placement>
39
40 <theme>
41   <name>Clearlooks</name>
42   <titleLayout>NLIMC</titleLayout>
43   <!--
44       avaible characters are NDSLIMC, each can occur at most once.
45       N: window icon
46       L: window label (AKA title).
47       I: iconify
48       M: maximize
49       C: close
50       S: shade (roll up/down)
51       D: omnipresent (on all desktops).
52   -->
53   <keepBorder>yes</keepBorder>
54   <animateIconify>yes</animateIconify>
55   <font place="ActiveWindow">
56     <name>sans</name>
57     <size>8</size>
58     <!-- font size in points -->
59     <weight>bold</weight>
60     <!-- 'bold' or 'normal' -->
61     <slant>normal</slant>
62     <!-- 'italic' or 'normal' -->
63   </font>
64   <font place="InactiveWindow">
65     <name>sans</name>
66     <size>8</size>
67     <!-- font size in points -->
68     <weight>bold</weight>
69     <!-- 'bold' or 'normal' -->
70     <slant>normal</slant>
71     <!-- 'italic' or 'normal' -->
72   </font>
73   <font place="MenuHeader">
74     <name>sans</name>
75     <size>9</size>
76     <!-- font size in points -->
77     <weight>normal</weight>
78     <!-- 'bold' or 'normal' -->
79     <slant>normal</slant>
80     <!-- 'italic' or 'normal' -->
81   </font>
82   <font place="MenuItem">
83     <name>sans</name>
84     <size>9</size>
85     <!-- font size in points -->
86     <weight>normal</weight>
87     <!-- 'bold' or 'normal' -->
88     <slant>normal</slant>
89     <!-- 'italic' or 'normal' -->
90   </font>
91   <font place="OnScreenDisplay">
92     <name>sans</name>
93     <size>9</size>
94     <!-- font size in points -->
95     <weight>bold</weight>
96     <!-- 'bold' or 'normal' -->
97     <slant>normal</slant>
98     <!-- 'italic' or 'normal' -->
99   </font>
100 </theme>
101
102 <desktops>
103   <!-- this stuff is only used at startup, pagers allow you to change them
104        during a session
105
106        these are default values to use when other ones are not already set
107        by other applications, or saved in your session
108
109        use obconf if you want to change these without having to log out
110        and back in -->
111   <number>4</number>
112   <firstdesk>1</firstdesk>
113   <names>
114     <!-- set names up here if you want to, like this:
115     <name>desktop 1</name>
116     <name>desktop 2</name>
117     -->
118   </names>
119 </desktops>
120
121 <resize>
122   <drawContents>yes</drawContents>
123   <popupShow>Nonpixel</popupShow>
124   <!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) -->
125   <popupPosition>Center</popupPosition>
126   <!-- 'Center' or 'Top' -->
127 </resize>
128
129 <!-- You can reserve a portion of your screen where windows will not cover when
130      they are maximized, or when they are initially placed.
131      Many programs reserve space automatically, but you can use this in other
132      cases. -->
133 <margins>
134   <top>0</top>
135   <bottom>0</bottom>
136   <left>0</left>
137   <right>0</right>
138 </margins>
139
140 <dock>
141   <position>TopLeft</position>
142   <!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating -->
143   <floatingX>0</floatingX>
144   <floatingY>0</floatingY>
145   <noStrut>no</noStrut>
146   <stacking>Above</stacking>
147   <!-- 'Above', 'Normal', or 'Below' -->
148   <direction>Vertical</direction>
149   <!-- 'Vertical' or 'Horizontal' -->
150   <autoHide>no</autoHide>
151   <hideDelay>300</hideDelay>
152   <!-- in milliseconds (1000 = 1 second) -->
153   <showDelay>300</showDelay>
154   <!-- in milliseconds (1000 = 1 second) -->
155   <moveButton>Middle</moveButton>
156   <!-- 'Left', 'Middle', 'Right' -->
157 </dock>
158
159 <keyboard>
160   <chainQuitKey>C-g</chainQuitKey>
161
162   <!-- Keybindings for desktop switching -->
163   <keybind key="C-A-Left">
164     <action name="GoToDesktop"><to>left</to><wrap>no</wrap></action>
165   </keybind>
166   <keybind key="C-A-Right">
167     <action name="GoToDesktop"><to>right</to><wrap>no</wrap></action>
168   </keybind>
169   <keybind key="C-A-Up">
170     <action name="GoToDesktop"><to>up</to><wrap>no</wrap></action>
171   </keybind>
172   <keybind key="C-A-Down">
173     <action name="GoToDesktop"><to>down</to><wrap>no</wrap></action>
174   </keybind>
175   <keybind key="S-A-Left">
176     <action name="SendToDesktop"><to>left</to><wrap>no</wrap></action>
177   </keybind>
178   <keybind key="S-A-Right">
179     <action name="SendToDesktop"><to>right</to><wrap>no</wrap></action>
180   </keybind>
181   <keybind key="S-A-Up">
182     <action name="SendToDesktop"><to>up</to><wrap>no</wrap></action>
183   </keybind>
184   <keybind key="S-A-Down">
185     <action name="SendToDesktop"><to>down</to><wrap>no</wrap></action>
186   </keybind>
187   <keybind key="W-F1">
188     <action name="GoToDesktop"><to>1</to></action>
189   </keybind>
190   <keybind key="W-F2">
191     <action name="GoToDesktop"><to>2</to></action>
192   </keybind>
193   <keybind key="W-F3">
194     <action name="GoToDesktop"><to>3</to></action>
195   </keybind>
196   <keybind key="W-F4">
197     <action name="GoToDesktop"><to>4</to></action>
198   </keybind>
199   <keybind key="W-d">
200     <action name="ToggleShowDesktop"/>
201   </keybind>
202
203   <!-- Keybindings for windows -->
204   <keybind key="A-F4">
205     <action name="Close"/>
206   </keybind>
207   <keybind key="A-Escape">
208     <action name="Lower"/>
209     <action name="FocusToBottom"/>
210     <action name="Unfocus"/>
211   </keybind>
212   <keybind key="A-space">
213     <action name="ShowMenu"><menu>client-menu</menu></action>
214   </keybind>
215
216   <!-- Keybindings for window switching -->
217   <keybind key="A-Tab">
218     <action name="NextWindow">
219       <finalactions>
220         <action name="Focus"/>
221         <action name="Raise"/>
222         <action name="Unshade"/>
223       </finalactions>
224     </action>
225   </keybind>
226   <keybind key="A-S-Tab">
227     <action name="PreviousWindow">
228       <finalactions>
229         <action name="Focus"/>
230         <action name="Raise"/>
231         <action name="Unshade"/>
232       </finalactions>
233     </action>
234   </keybind>
235   <keybind key="C-A-Tab">
236     <action name="NextWindow">
237       <panels>yes</panels><desktop>yes</desktop>
238       <finalactions>
239         <action name="Focus"/>
240         <action name="Raise"/>
241         <action name="Unshade"/>
242       </finalactions>
243     </action>
244   </keybind>
245
246   <!-- Keybindings for running applications -->
247   <keybind key="W-e">
248     <action name="Execute">
249       <startupnotify>
250         <enabled>true</enabled>
251         <name>Konqueror</name>
252       </startupnotify>
253       <command>kfmclient openProfile filemanagement</command>
254     </action>
255   </keybind>
256 </keyboard>
257
258 <mouse>
259   <dragThreshold>8</dragThreshold>
260   <!-- number of pixels the mouse must move before a drag begins -->
261   <doubleClickTime>200</doubleClickTime>
262   <!-- in milliseconds (1000 = 1 second) -->
263   <screenEdgeWarpTime>400</screenEdgeWarpTime>
264   <!-- time before changing desktops when the pointer touches the edge of the
265        screen while moving a window, in milliseconds (1000 = 1 second),
266        0 disables warping -->
267
268   <context name="Frame">
269     <mousebind button="A-Left" action="Press">
270       <action name="Focus"/>
271       <action name="Raise"/>
272     </mousebind>
273     <mousebind button="A-Left" action="Click">
274       <action name="Unshade"/>
275     </mousebind>
276     <mousebind button="A-Left" action="Drag">
277       <action name="Move"/>
278     </mousebind>
279
280     <mousebind button="A-Right" action="Press">
281       <action name="Focus"/>
282       <action name="Raise"/>
283       <action name="Unshade"/>
284     </mousebind>
285     <mousebind button="A-Right" action="Drag">
286       <action name="Resize"/>
287     </mousebind> 
288
289     <mousebind button="A-Middle" action="Press">
290       <action name="Lower"/>
291       <action name="FocusToBottom"/>
292       <action name="Unfocus"/>
293     </mousebind>
294
295     <mousebind button="A-Up" action="Click">
296       <action name="GoToDesktop"><to>previous</to></action>
297     </mousebind>
298     <mousebind button="A-Down" action="Click">
299       <action name="GoToDesktop"><to>next</to></action>
300     </mousebind>
301     <mousebind button="C-A-Up" action="Click">
302       <action name="GoToDesktop"><to>previous</to></action>
303     </mousebind>
304     <mousebind button="C-A-Down" action="Click">
305       <action name="GoToDesktop"><to>next</to></action>
306     </mousebind>
307     <mousebind button="A-S-Up" action="Click">
308       <action name="SendToDesktop"><to>previous</to></action>
309     </mousebind>
310     <mousebind button="A-S-Down" action="Click">
311       <action name="SendToDesktop"><to>next</to></action>
312     </mousebind>
313   </context>
314
315   <context name="Titlebar">
316     <mousebind button="Left" action="Press">
317       <action name="Focus"/>
318       <action name="Raise"/>
319     </mousebind>
320     <mousebind button="Left" action="Drag">
321       <action name="Move"/>
322     </mousebind>
323     <mousebind button="Left" action="DoubleClick">
324       <action name="ToggleMaximize"/>
325     </mousebind>
326
327     <mousebind button="Middle" action="Press">
328       <action name="Lower"/>
329       <action name="FocusToBottom"/>
330       <action name="Unfocus"/>
331     </mousebind>
332
333     <mousebind button="Up" action="Click">
334       <action name="Shade"/>
335       <action name="FocusToBottom"/>
336       <action name="Unfocus"/>
337       <action name="Lower"/>
338     </mousebind>
339     <mousebind button="Down" action="Click">
340       <action name="Unshade"/>
341       <action name="Raise"/>
342     </mousebind>
343
344     <mousebind button="Right" action="Press">
345       <action name="Focus"/>
346       <action name="Raise"/>
347       <action name="ShowMenu"><menu>client-menu</menu></action>
348     </mousebind>
349   </context>
350
351   <context name="Top">
352     <mousebind button="Left" action="Press">
353       <action name="Focus"/>
354       <action name="Raise"/>
355       <action name="Unshade"/>
356     </mousebind>
357     <mousebind button="Left" action="Drag">
358       <action name="Resize"><edge>top</edge></action>
359     </mousebind>
360   </context>
361
362   <context name="Left">
363     <mousebind button="Left" action="Press">
364       <action name="Focus"/>
365       <action name="Raise"/>
366     </mousebind>
367     <mousebind button="Left" action="Drag">
368       <action name="Resize"><edge>left</edge></action>
369     </mousebind>
370   </context>
371
372   <context name="Right">
373     <mousebind button="Left" action="Press">
374       <action name="Focus"/>
375       <action name="Raise"/>
376     </mousebind>
377     <mousebind button="Left" action="Drag">
378       <action name="Resize"><edge>right</edge></action>
379     </mousebind>
380   </context>
381
382   <context name="Bottom">
383     <mousebind button="Left" action="Press">
384       <action name="Focus"/>
385       <action name="Raise"/>
386     </mousebind>
387     <mousebind button="Left" action="Drag">
388       <action name="Resize"><edge>bottom</edge></action>
389     </mousebind>
390
391     <mousebind button="Middle" action="Press">
392       <action name="Lower"/>
393       <action name="FocusToBottom"/>
394       <action name="Unfocus"/>
395     </mousebind>
396
397     <mousebind button="Right" action="Press">
398       <action name="Focus"/>
399       <action name="Raise"/>
400       <action name="ShowMenu"><menu>client-menu</menu></action>
401     </mousebind>
402   </context>
403
404   <context name="BLCorner">
405     <mousebind button="Left" action="Press">
406       <action name="Focus"/>
407       <action name="Raise"/>
408     </mousebind>
409     <mousebind button="Left" action="Drag">
410       <action name="Resize"><edge>bottomleft</edge></action>
411     </mousebind>
412   </context>
413
414   <context name="BRCorner">
415     <mousebind button="Left" action="Press">
416       <action name="Focus"/>
417       <action name="Raise"/>
418     </mousebind>
419     <mousebind button="Left" action="Drag">
420       <action name="Resize"><edge>bottomright</edge></action>
421     </mousebind>
422   </context>
423
424   <context name="TLCorner">
425     <mousebind button="Left" action="Press">
426       <action name="Focus"/>
427       <action name="Raise"/>
428       <action name="Unshade"/>
429     </mousebind>
430     <mousebind button="Left" action="Drag">
431       <action name="Resize"><edge>topleft</edge></action>
432     </mousebind>
433   </context>
434
435   <context name="TRCorner">
436     <mousebind button="Left" action="Press">
437       <action name="Focus"/>
438       <action name="Raise"/>
439       <action name="Unshade"/>
440     </mousebind>
441     <mousebind button="Left" action="Drag">
442       <action name="Resize"><edge>topright</edge></action>
443     </mousebind>
444   </context>
445
446   <context name="Client">
447     <mousebind button="Left" action="Press">
448       <action name="Focus"/>
449       <action name="Raise"/>
450     </mousebind>
451     <mousebind button="Middle" action="Press">
452       <action name="Focus"/>
453       <action name="Raise"/>
454     </mousebind>
455     <mousebind button="Right" action="Press">
456       <action name="Focus"/>
457       <action name="Raise"/>
458     </mousebind>
459   </context>
460
461   <context name="Icon">
462     <mousebind button="Left" action="Press">
463       <action name="Focus"/>
464       <action name="Raise"/>
465       <action name="Unshade"/>
466       <action name="ShowMenu"><menu>client-menu</menu></action>
467     </mousebind>
468     <mousebind button="Right" action="Press">
469       <action name="Focus"/>
470       <action name="Raise"/>
471       <action name="ShowMenu"><menu>client-menu</menu></action>
472     </mousebind>
473   </context>
474
475   <context name="AllDesktops">
476     <mousebind button="Left" action="Press">
477       <action name="Focus"/>
478       <action name="Raise"/>
479       <action name="Unshade"/>
480     </mousebind>
481     <mousebind button="Left" action="Click">
482       <action name="ToggleOmnipresent"/>
483     </mousebind>
484   </context>
485
486   <context name="Shade">
487     <mousebind button="Left" action="Press">
488       <action name="Focus"/>
489       <action name="Raise"/>
490     </mousebind>
491     <mousebind button="Left" action="Click">
492       <action name="ToggleShade"/>
493     </mousebind>
494   </context>
495
496   <context name="Iconify">
497     <mousebind button="Left" action="Press">
498       <action name="Focus"/>
499       <action name="Raise"/>
500     </mousebind>
501     <mousebind button="Left" action="Click">
502       <action name="Iconify"/>
503     </mousebind>
504   </context>
505
506   <context name="Maximize">
507     <mousebind button="Left" action="Press">
508       <action name="Focus"/>
509       <action name="Raise"/>
510       <action name="Unshade"/>
511     </mousebind>
512     <mousebind button="Middle" action="Press">
513       <action name="Focus"/>
514       <action name="Raise"/>
515       <action name="Unshade"/>
516     </mousebind>
517     <mousebind button="Right" action="Press">
518       <action name="Focus"/>
519       <action name="Raise"/>
520       <action name="Unshade"/>
521     </mousebind>
522     <mousebind button="Left" action="Click">
523       <action name="ToggleMaximize"/>
524     </mousebind>
525     <mousebind button="Middle" action="Click">
526       <action name="ToggleMaximize"><direction>vertical</direction></action>
527     </mousebind>
528     <mousebind button="Right" action="Click">
529       <action name="ToggleMaximize"><direction>horizontal</direction></action>
530     </mousebind>
531   </context>
532
533   <context name="Close">
534     <mousebind button="Left" action="Press">
535       <action name="Focus"/>
536       <action name="Raise"/>
537       <action name="Unshade"/>
538     </mousebind>
539     <mousebind button="Left" action="Click">
540       <action name="Close"/>
541     </mousebind>
542   </context>
543
544   <context name="Desktop">
545     <mousebind button="Up" action="Press">
546       <action name="GoToDesktop"><to>previous</to></action>
547     </mousebind>
548     <mousebind button="Down" action="Press">
549       <action name="GoToDesktop"><to>next</to></action>
550     </mousebind>
551
552     <mousebind button="A-Up" action="Press">
553       <action name="GoToDesktop"><to>previous</to></action>
554     </mousebind>
555     <mousebind button="A-Down" action="Press">
556       <action name="GoToDesktop"><to>next</to></action>
557     </mousebind>
558     <mousebind button="C-A-Up" action="Press">
559       <action name="GoToDesktop"><to>previous</to></action>
560     </mousebind>
561     <mousebind button="C-A-Down" action="Press">
562       <action name="GoToDesktop"><to>next</to></action>
563     </mousebind>
564
565     <mousebind button="Left" action="Press">
566       <action name="Focus"/>
567       <action name="Raise"/>
568     </mousebind>
569   </context>
570
571   <context name="Root">
572     <!-- Menus -->
573     <mousebind button="Middle" action="Press">
574       <action name="ShowMenu"><menu>client-list-combined-menu</menu></action>
575     </mousebind> 
576     <mousebind button="Right" action="Press">
577       <action name="ShowMenu"><menu>root-menu</menu></action>
578     </mousebind>
579   </context>
580
581   <context name="MoveResize">
582     <mousebind button="Up" action="Press">
583       <action name="GoToDesktop"><to>previous</to></action>
584     </mousebind>
585     <mousebind button="Down" action="Press">
586       <action name="GoToDesktop"><to>next</to></action>
587     </mousebind>
588     <mousebind button="A-Up" action="Press">
589       <action name="GoToDesktop"><to>previous</to></action>
590     </mousebind>
591     <mousebind button="A-Down" action="Press">
592       <action name="GoToDesktop"><to>next</to></action>
593     </mousebind>
594   </context>
595 </mouse>
596
597 <menu>
598   <!-- You can specify more than one menu file in here and they are all loaded,
599        just don't make menu ids clash or, well, it'll be kind of pointless -->
600
601   <!-- default menu file (or custom one in $HOME/.config/openbox/) -->
602   <file>menu.xml</file>
603   <hideDelay>200</hideDelay>
604   <middle>no</middle>
605   <submenuShowDelay>100</submenuShowDelay>
606   <applicationIcons>yes</applicationIcons>
607 </menu>
608
609 <applications>
610 <!--
611   # this is an example with comments through out. use these to make your
612   # own rules, but without the comments of course.
613
614   <application name="first element of window's WM_CLASS property (see xprop)"
615               class="second element of window's WM_CLASS property (see xprop)"
616                role="the window's WM_WINDOW_ROLE property (see xprop)">
617   # the name or the class can be set, or both. this is used to match
618   # windows when they appear. role can optionally be set as well, to
619   # further restrict your matches.
620
621   # the name, class, and role use simple wildcard matching such as those
622   # used by a shell. you can use * to match any characters and ? to match
623   # any single character.
624
625   # when multiple rules match a window, they will all be applied, in the
626   # order that they appear in this list
627
628
629     # each element can be left out or set to 'default' to specify to not 
630     # change that attribute of the window
631
632     <decor>yes</decor>
633     # enable or disable window decorations
634
635     <shade>no</shade>
636     # make the window shaded when it appears, or not
637
638     <position>
639       # the position is only used if both an x and y coordinate are provided
640       # (and not set to 'default')
641       <x>center</x>
642       # a number like 50, or 'center' to center on screen. use a negative number
643       # to start from the right (or bottom for <y>), ie -50 is 50 pixels from the
644       # right edge (or bottom).
645       <y>200</y>
646       <monitor>1</monitor>
647       # specifies the monitor in a xinerama setup.
648       # 1 is the first head, or 'mouse' for wherever the mouse is
649     </position>
650
651     <focus>yes</focus>
652     # if the window should try be given focus when it appears. if this is set
653     # to yes it doesn't guarantee the window will be given focus. some
654     # restrictions may apply, but Openbox will try to
655
656     <desktop>1</desktop>
657     # 1 is the first desktop, 'all' for all desktops
658
659     <layer>normal</layer>
660     # 'above', 'normal', or 'below'
661
662     <iconic>no</iconic>
663     # make the window iconified when it appears, or not
664
665     <skip_pager>no</skip_pager>
666     # asks to not be shown in pagers
667
668     <skip_taskbar>no</skip_taskbar>
669     # asks to not be shown in taskbars. window cycling actions will also
670     # skip past such windows
671
672     <fullscreen>yes</fullscreen>
673     # make the window in fullscreen mode when it appears
674
675     <maximized>true</maximized>
676     # 'Horizontal', 'Vertical' or boolean (yes/no)
677   </application>
678
679   # end of the example
680 -->
681 </applications>
682
683 </openbox_config>