.jwmrc 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278
  1. <?xml version="1.0"?>
  2. <JWM>
  3. <!--
  4. A decent JWM config for a usable desktop with proper icons and standard shortcuts.
  5. Check the readme.md file to see instructions on how to install, use, requirements
  6. info, common keyboard shortcuts etc.
  7. Config:
  8. - Some apps are configured with the apps I had installed (please change as necessary, e.g. file manager, text editor, terminal etc.)
  9. -->
  10. <!-- The root menu. -->
  11. <RootMenu onroot="1" height="22">
  12. <!--<Include>/etc/jwm/debian-menu</Include>-->
  13. <Program icon="terminal.svg" label="Terminal">lxterminal</Program>
  14. <Program icon="system-file-manager.svg" label="File Manager">thunar</Program>
  15. <Program icon="icecat.svg" label="Iceweasel">iceweasel</Program>
  16. <Program icon="icecat.svg" label="Iceweasel (private window)">iceweasel --private-window</Program>
  17. <Program icon="leafpad.svg" label="Leafpad">leafpad</Program>
  18. <Separator/>
  19. <Menu icon="chromium-app-list.svg" label="Programs">
  20. <Include>exec: xdgmenumaker -n -i -f jwm</Include>
  21. </Menu>
  22. <Separator/>
  23. <Program icon="lock.png" label="Lock">
  24. xlock -mode blank
  25. </Program>
  26. <Separator/>
  27. <Restart label="Restart JWM" icon="restart.png"/>
  28. <Program icon="" label="Power...">~/.local/share/jwm-config/power.sh</Program>
  29. </RootMenu>
  30. <RootMenu onroot="3" height="25">
  31. <Program icon="network-defaultroute.svg" label="Network Connections...">nm-connection-editor</Program>
  32. <Separator/>
  33. <Program icon="nitrogen.svg" label="Change Wallpaper...">nitrogen ~/Pictures</Program>
  34. </RootMenu>
  35. <!-- Options for program groups. -->
  36. <!-- Config note: You can change and adopt as necessary -->
  37. <Group>
  38. <Class>Pidgin</Class>
  39. <Option>sticky</Option>
  40. </Group>
  41. <Group>
  42. <Name>xclock</Name>
  43. <Option>drag</Option>
  44. <Option>notitle</Option>
  45. </Group>
  46. <!-- Tray at the bottom. -->
  47. <Tray x="0" y="-1" height="30" autohide="off">
  48. <TrayButton icon="chrome-app-list.svg">root:1</TrayButton>
  49. <Spacer width="5"/>
  50. <!-- Config note: You can add your apps for quick launch area. -->
  51. <TrayButton label="" icon="terminal.svg">exec:lxterminal</TrayButton>
  52. <TrayButton label="" icon="dde-file-manager.svg">exec:thunar</TrayButton>
  53. <TrayButton label="" icon="leafpad.svg">exec:leafpad</TrayButton>
  54. <TrayButton label="" icon="cuttlefish.svg">exec:textadept</TrayButton>
  55. <Spacer width="10"/>
  56. <!-- Config note: You can uncomment this to get a pager (multiple desktops) -->
  57. <!-- <Pager labeled="true"/> -->
  58. <TaskList maxwidth="256"/>
  59. <Spacer width="10"/>
  60. <Dock/>
  61. <Clock format="%H:%M"><Button mask="123">exec:gsimplecal</Button></Clock>
  62. <TrayButton label="" popup="Show Desktop" icon="folder-black-desktop.svg">showdesktop</TrayButton>
  63. </Tray>
  64. <!-- Visual Styles -->
  65. <WindowStyle>
  66. <Font>Sans-11:bold</Font>
  67. <Width>5</Width>
  68. <Height>26</Height>
  69. <Corner>4</Corner>
  70. <Foreground>#DDDDDD</Foreground>
  71. <Background>#555555</Background>
  72. <Outline>#000000</Outline>
  73. <Opacity>0.5</Opacity>
  74. <Active>
  75. <Foreground>#FFFFFF</Foreground>
  76. <Background>#0077CC</Background>
  77. <Outline>#000000</Outline>
  78. <Opacity>1.0</Opacity>
  79. </Active>
  80. </WindowStyle>
  81. <TrayStyle group="false" list="all">
  82. <Font>Sans-9</Font>
  83. <Background>#333333</Background>
  84. <Foreground>#FFFFFF</Foreground>
  85. <Outline>#000000</Outline>
  86. <Opacity>0.75</Opacity>
  87. </TrayStyle>
  88. <PagerStyle>
  89. <Outline>#222222</Outline>
  90. <Foreground>#555555</Foreground>
  91. <Background>#333333</Background>
  92. <Text>#FFFFFF</Text>
  93. <Active>
  94. <Foreground>#0077CC</Foreground>
  95. <Background>#004488</Background>
  96. </Active>
  97. </PagerStyle>
  98. <MenuStyle>
  99. <Font>Sans-9</Font>
  100. <Foreground>#FFFFFF</Foreground>
  101. <Background>#333333</Background>
  102. <Outline>#222222</Outline>
  103. <Active>
  104. <Foreground>#FFFFFF</Foreground>
  105. <Background>#0077CC</Background>
  106. </Active>
  107. <Opacity>0.85</Opacity>
  108. </MenuStyle>
  109. <PopupStyle>
  110. <Font>Sans-10</Font>
  111. <Foreground>#AAAAAA</Foreground>
  112. <Background>#222222</Background>
  113. <Outline>#222222</Outline>
  114. </PopupStyle>
  115. <!-- Path where icons can be found.
  116. IconPath can be listed multiple times to allow searching
  117. for icons in multiple paths.
  118. -->
  119. <IconPath>/usr/share/icons/Papirus/32x32/emblems</IconPath>
  120. <IconPath>/usr/share/icons/Papirus/32x32/apps</IconPath>
  121. <IconPath>/usr/share/icons/Papirus/32x32/places</IconPath>
  122. <IconPath>/usr/share/icons/gnome/256x256/actions</IconPath>
  123. <IconPath>/usr/share/icons/gnome/256x256/apps</IconPath>
  124. <IconPath>/usr/share/icons/gnome/256x256/categories</IconPath>
  125. <IconPath>/usr/share/icons/gnome/256x256/devices</IconPath>
  126. <IconPath>/usr/share/icons/gnome/256x256/emblems</IconPath>
  127. <IconPath>/usr/share/icons/gnome/256x256/mimetypes</IconPath>
  128. <IconPath>/usr/share/icons/gnome/256x256/places</IconPath>
  129. <IconPath>/usr/share/icons/gnome/256x256/status</IconPath>
  130. <IconPath>/usr/share/icons/gnome/32x32/actions</IconPath>
  131. <IconPath>/usr/share/icons/gnome/32x32/animations</IconPath>
  132. <IconPath>/usr/share/icons/gnome/32x32/apps</IconPath>
  133. <IconPath>/usr/share/icons/gnome/32x32/categories</IconPath>
  134. <IconPath>/usr/share/icons/gnome/32x32/devices</IconPath>
  135. <IconPath>/usr/share/icons/gnome/32x32/emblems</IconPath>
  136. <IconPath>/usr/share/icons/gnome/32x32/mimetypes</IconPath>
  137. <IconPath>/usr/share/icons/gnome/32x32/places</IconPath>
  138. <IconPath>/usr/share/icons/gnome/32x32/status</IconPath>
  139. <IconPath>/usr/share/icons/gnome/scalable/actions</IconPath>
  140. <IconPath>/usr/share/icons/gnome/scalable/apps</IconPath>
  141. <IconPath>/usr/share/icons/gnome/scalable/categories</IconPath>
  142. <IconPath>/usr/share/icons/gnome/scalable/devices</IconPath>
  143. <IconPath>/usr/share/icons/gnome/scalable/emblems</IconPath>
  144. <IconPath>/usr/share/icons/gnome/scalable/mimetypes</IconPath>
  145. <IconPath>/usr/share/icons/gnome/scalable/places</IconPath>
  146. <IconPath>/usr/share/icons/gnome/scalable/status</IconPath>
  147. <IconPath>/usr/share/icons/hicolor/256x256/apps</IconPath>
  148. <IconPath>/usr/share/icons/hicolor/256x256/mimetypes</IconPath>
  149. <IconPath>/usr/share/icons/hicolor/32x32/actions</IconPath>
  150. <IconPath>/usr/share/icons/hicolor/32x32/apps</IconPath>
  151. <IconPath>/usr/share/icons/hicolor/32x32/categories</IconPath>
  152. <IconPath>/usr/share/icons/hicolor/32x32/devices</IconPath>
  153. <IconPath>/usr/share/icons/hicolor/32x32/emblems</IconPath>
  154. <IconPath>/usr/share/icons/hicolor/32x32/mimetypes</IconPath>
  155. <IconPath>/usr/share/icons/hicolor/32x32/status</IconPath>
  156. <IconPath>/usr/share/icons/hicolor/512x512/apps</IconPath>
  157. <IconPath>/usr/share/icons/hicolor/512x512/mimetypes</IconPath>
  158. <IconPath>/usr/share/icons/hicolor/scalable/actions</IconPath>
  159. <IconPath>/usr/share/icons/hicolor/scalable/apps</IconPath>
  160. <IconPath>/usr/share/icons/hicolor/scalable/categories</IconPath>
  161. <IconPath>/usr/share/icons/hicolor/scalable/devices</IconPath>
  162. <IconPath>/usr/share/icons/hicolor/scalable/emblems</IconPath>
  163. <IconPath>/usr/share/icons/hicolor/scalable/mimetypes</IconPath>
  164. <IconPath>/usr/share/icons/hicolor/scalable/places</IconPath>
  165. <IconPath>/usr/share/icons/hicolor/scalable/status</IconPath>
  166. <IconPath>/usr/share/icons</IconPath>
  167. <IconPath>/usr/share/pixmaps</IconPath>
  168. <IconPath>
  169. /usr/local/share/jwm
  170. </IconPath>
  171. <!-- Virtual Desktops -->
  172. <!-- Desktop tags can be contained within Desktops for desktop names. -->
  173. <Desktops width="4" height="1">
  174. <!-- Default background. Note that a Background tag can be
  175. contained within a Desktop tag to give a specific background
  176. for that desktop.
  177. -->
  178. <Background type="solid">#111111</Background>
  179. </Desktops>
  180. <!-- Double click speed (in milliseconds) -->
  181. <DoubleClickSpeed>400</DoubleClickSpeed>
  182. <!-- Double click delta (in pixels) -->
  183. <DoubleClickDelta>2</DoubleClickDelta>
  184. <!-- The focus model (sloppy or click) -->
  185. <FocusModel>click</FocusModel>
  186. <!-- The snap mode (none, screen, or border) -->
  187. <SnapMode distance="10">border</SnapMode>
  188. <!-- The move mode (outline or opaque) -->
  189. <MoveMode>opaque</MoveMode>
  190. <!-- The resize mode (outline or opaque) -->
  191. <ResizeMode>opaque</ResizeMode>
  192. <!-- Key bindings -->
  193. <Key key="Up">up</Key>
  194. <Key key="Down">down</Key>
  195. <Key key="Right">right</Key>
  196. <Key key="Left">left</Key>
  197. <Key key="h">left</Key>
  198. <Key key="j">down</Key>
  199. <Key key="k">up</Key>
  200. <Key key="l">right</Key>
  201. <Key key="Return">select</Key>
  202. <Key key="Escape">escape</Key>
  203. <Key mask="A" key="Tab">nextstacked</Key>
  204. <Key mask="A" key="F4">close</Key>
  205. <Key mask="A" key="#">desktop#</Key>
  206. <Key mask="A" key="F1">root:1</Key>
  207. <Key mask="A" key="F2">exec:~/.local/share/jwm-config/runmenu.sh</Key>
  208. <Key mask="4" key="R">exec:~/.local/share/jwm-config/runmenu.sh</Key>
  209. <Key mask="A" key="F3">root:1</Key>
  210. <Key mask="A" key="space">window</Key>
  211. <Key mask="A" key="F10">maximize</Key>
  212. <Key mask="CA" key="Right">rdesktop</Key>
  213. <Key mask="4" key="Tab">rdesktop</Key>
  214. <Key mask="CA" key="Left">ldesktop</Key>
  215. <Key mask="CA" key="Up">udesktop</Key>
  216. <Key mask="CA" key="Down">ddesktop</Key>
  217. <Key mask="CA" key="D">showdesktop</Key>
  218. <Key mask="4" key="D">showdesktop</Key>
  219. <Key mask="CA" key="T">exec:lxterminal</Key>
  220. <Key mask="CA" key="E">exec:thunar</Key>
  221. <Key mask="4" key="E">exec:thunar</Key>
  222. <Key mask="" key="F12">exec:~/.local/share/jwm-config/runmenu.sh</Key>
  223. <!-- Connect to external monitor / choose screens -->
  224. <Key mask="4" key="P">exec:~/.local/share/jwm-config/screens.sh</Key>
  225. <Key mask="" key="XF86Display">exec:~/.local/share/jwm-config/screens.sh</Key>
  226. <Key mask="4" key="F4">exec:~/.local/share/jwm-config/power.sh</Key>
  227. <Key mask="CAS" key="R">exec:jwm -restart</Key>
  228. <Key mask="CA" key="L">exec:xlock -mode blank</Key>
  229. <Key mask="4" key="L">exec:xlock -mode blank</Key>
  230. <!-- startup -->
  231. <StartupCommand>
  232. <!-- rofi -key-run F12 & -->
  233. nitrogen --restore &
  234. ~/.local/share/jwm-config/batteryicon.sh &amp;
  235. volumeicon &amp;
  236. nm-applet &amp;
  237. <!--
  238. Config note: You can change "Alt_L|F1" to anything else.
  239. For example, 'Super_L=Alt_L|F1' opens the main menu,
  240. 'Super_L=Alt_L|F2' would open the run option.
  241. -->
  242. ksuperkey -e 'Super_L=Alt_L|F1' &amp;
  243. <!-- Start notification manager -->
  244. <!-- Any can be chosen from: https://wiki.archlinux.org/index.php/Desktop_notifications#Standalone -->
  245. <!-- Example: -->
  246. <!-- lxqt-notificationd &amp; -->
  247. </StartupCommand>
  248. </JWM>