diff --git a/src/faq.md b/src/faq.md
index ab53986..68033d7 100644
--- a/src/faq.md
+++ b/src/faq.md
@@ -3,10 +3,22 @@
1. [Keybinds](#keybinds)
1. [Unset Keybinds](#unset-keybinds)
2. [Common Keybinds](#common-keybinds)
+ 3. [Keybind Forwarding](#keybind-forwarding)
2. [Theme](#theme)
1. [Server Side Decoration](#server-side-decoration)
3. [Mouse and Trackpads](#mouse-and-trackpads)
1. [Libinput](#libinput)
+ 2. [Mousebinds](#mousebinds)
+ 3. [Cursor](#cursor)
+4. [XML](#xml)
+ 1. [XML Nodenames](#xml-nodenames)
+5. [Scripting](#scripting)
+ 1. [Run or Raise](#run-or-raise)
+6. [Environment Variables](#environment-variables)
+7. [Nested XWayland](#nested-xwayland)
+8. [Hardware](#hardware)
+ 1. [Nvidia](#nvidia)
+ 2. [Laptop Lid](#laptop-lid)
# 1. Keybinds {#keybinds}
@@ -66,18 +78,49 @@ In true `sway` style:
```
+## 1.3 Keybind Forwarding {#keybind-forwarding}
+
+The [ToggleKeybinds] action allows better control of Virtual Machines, VNC
+clients, nested compositors or similar.
+
+For example, to make alt-tab work in a nested compositor add the code below to
+`~/.config/labwc/rc.xml` and then press F12 to disable all keybinds in the
+parent compositor and thereby forward them to the nested instance.
+
+```
+
+
+
+```
+
+[ToggleKeybinds]: https://labwc.github.io/labwc-actions.5.html#entry_action_name=togglekeybinds
+
# 2. Theme {#theme}
## 2.1 Server Side Decoration {#server-side-decoration}
### Q: Is it possible to completely remove windows' title-bars?
-Yes. Action `ToggleDecoration`, but it removes borders too.
+Yes.
+
+Action `SetDecorations` can be used for this. This action can be used with
+key/mousebinds or with window rules like this:
+
+```
+
+
+
+
+
+```
+
+With window rules it can be achieve more simply as in the example below, but
+that will remove borders too:
```
-
-
-
+
+
+
```
### Q: I'd like to be able to remove the client-menu button. How can this be done?
@@ -97,7 +140,7 @@ window.inactive.button.menu.unpressed.image.color: #000000 0
Not yet implemented.
-## 3.2 Mousebinds
+## 3.2 Mousebinds {#mousebinds}
### Q: I'm used to MS Windows and would like all window to unfocus when I click the desktop. How can this be achieved?
@@ -112,4 +155,167 @@ Not yet implemented.
```
+## 3.3 Cursor {#cursor}
+
+### Q: I cannot see a cursor. What should I do?
+
+If no cursor is showing (sometimes reported by people running vwmare), try
+adding `WLR_NO_HARDWARE_CURSORS=1` to `~/.config/labwc/environment`.
+
+If cursors do not update as expected, try installing a cursor theme (for
+example `Adwaita`) and set `XCURSOR_THEME` in `~/.config/labwc/environment`
+accordingly (for example `XCURSOR_THEME=Adwaita`). `labwc` handles missing
+cursor themes by falling back on builtin old X11 cursors, but some applications
+do not resulting in the wrong or no cursor being set.
+
+# 4. XML {#xml}
+
+## 4.1 XML Nodenames {#xml-nodenames}
+
+### Q: My config file does not work. How can I debug it?
+
+You a can a nested instance of labwc in a terminal to see the error messages
+relating to bad XML syntax of missing elements/attributes.
+
+For more fine-grained analysis you can see the config/menu file nodenames when
+`labwc` starts, by setting the following environment variables:
+
+```
+LABWC_DEBUG_CONFIG_NODENAMES=1
+LABWC_DEBUG_MENU_NODENAMES=1
+```
+
+With `labwc` a nodename is a way to refer to each element and attribute in an
+XML tree. For example, the `` element below would be assigned the nodename
+`c.b.a`:
+
+```
+
+
+ foo
+
+
+```
+
+Please note that `labwc` also parses the rc.xml configuration file in an
+element/attribute agnostic way, which means that `foo` is
+equivalent to ``. Be careful though, because this does not apply to
+some aspects of menu.xml (specifically the attributes id, label and execute).
+
+In practical terms, this means that the following syntax could be used:
+
+```
+
+```
+
+...rather than then lengthier:
+
+```
+
+
+ swaylock -c 000000"
+
+
+```
+
+See [labwc-config(5)-syntax] for more details.
+
+[labwc-config(5)-syntax]: https://labwc.github.io/labwc-config.5.html#syntax
+
+# 5. Scripting {#scripting}
+
+## 5.1 Run or Raise {#run-or-raise}
+
+The [wlr-foreign-toplevel-management] protocol provides clients with a list of
+opened applications and lets them request certain actions on them, like
+maximizing, focusing, etc. This can be used for scripting with clients such as
+[wlrctl] and [lswt]. For example, the script below launches an application
+if it is not already running, or focuses the application's most recently opened
+window if it is already running:
+
+```
+#!/bin/sh
+
+if test -z "$1"; then
+ echo "Usage: runraise app_id [executable]"
+ exit 1
+fi
+
+app_id=$1
+executable=$2
+test -z "$executable" && executable=$app_id
+
+if ! wlrctl window focus "$app_id"; then
+ $executable &
+ disown
+fi
+```
+
+As of labwc version 0.7.2 it is also possible to create a run or raise keybind
+with the `ForEach` action:
+
+```
+
+
+
+
+
+
+
+
+
+
+
+
+```
+
+[wlrctl]: https://git.sr.ht/~brocellous/wlrctl
+[lswt]: https://sr.ht/~leon_plickat/lswt/
+[wlr-foreign-toplevel-management]: https://wayland.app/protocols/wlr-foreign-toplevel-management-unstable-v1
+
+# 6. Environment Variables {#environment-variables}
+
+There are a number of advanced settings that can be invoked for `wlroots` by
+setting some environment variables.
+
+For example `labwc` can be run nested on Wayland with multiple outputs using
+the following: `WLR_WL_OUTPUTS=2 labwc`
+
+See the wlroots repo [env_vars.md] file for details.
+
+[env_vars.md]: https://gitlab.freedesktop.org/wlroots/wlroots/-/blob/master/docs/env_vars.md
+
+# 7. Nested XWayland {#nested-xwayland}
+
+To run a nested instance of openbox on labwc:
+
+```
+Xwayland -decorate -noreset :55
+DISPLAY=:55 dbus-run-session openbox-session
+
+```
+
+# 8. [Hardware]{#hardware}
+
+## 8.1 [Nvidia]{#nvidia}
+
+If Electron clients are glitchy or lagging try setting these environment
+variables:
+
+```
+GBM_BACKEND=nvidia-drm
+__GLX_VENDOR_LIBRARY_NAME=nvidia
+```
+
+## 8.2 [Laptop Lid]{#laptop-lid}
+
+When using a laptop with an external monitor and the built-in monitor is closed,
+the system may go into hibernation when disconnecting. To avoid this, edit the
+configuration file `etc/systemd/logind.conf' and set following to ignore (see
+logind.conf(5) manual for more info):
+
+```
+HandleLidSwitch=ignore
+HandleLidSwitchExternalPower=ignore
+```
diff --git a/src/more.md b/src/more.md
index df134fc..a0d8da3 100644
--- a/src/more.md
+++ b/src/more.md
@@ -3,6 +3,4 @@
- [hidpi scaling](hidpi-scaling.html)
- [links](links.html)
- [obligatory screenshot](obligatory-screenshot.html)
-- [tips and tricks](tips-and-tricks.html)
-- [troubleshooting](troubleshooting.html)
diff --git a/src/tips-and-tricks.md b/src/tips-and-tricks.md
deleted file mode 100644
index 909e2ca..0000000
--- a/src/tips-and-tricks.md
+++ /dev/null
@@ -1,143 +0,0 @@
-# Tips & Tricks
-
-1. [XML Nodenames](#xml-nodenames)
-2. [Keybind Forwarding](#keybind-forwarding)
-3. [Run or Raise](#run-or-raise)
-4. [Environment Variables](#environment-variables)
-5. [Nested XWayland](#nested-xwayland)
-
-## XML Nodenames
-
-`labwc` refers to each element and attribute in an XML tree by a nodename. For
-example, the `` element below would be assigned the nodename `c.b.a`:
-
-```
-
-
- foo
-
-
-```
-
-`labwc` also parses XML in an element/attribute agnostic way, which means that
-`foo` is equivalent to ``.
-
-Note: This does not apply to core aspects of menu.xml (specifically the
-attributes id, label and execute), but is fine for actions.
-
-To see the config/menu file nodenames when `labwc` starts, set the following
-environment variables:
-
-```
-LABWC_DEBUG_CONFIG_NODENAMES=1
-LABWC_DEBUG_MENU_NODENAMES=1
-```
-
-In practical terms, this means that the following syntax could be used:
-
-```
-
-```
-
-...rather than then lengthier:
-
-```
-
-
- swaylock -c 000000"
-
-
-```
-
-See [labwc-config(5)-syntax] for examples and more detail.
-
-[labwc-config(5)-syntax]: https://labwc.github.io/labwc-config.5.html#syntax
-
-## Keybind Forwarding
-
-The [ToggleKeybinds] action allows better control of Virtual Machines, VNC
-clients, nested compositors or similar.
-
-For example, to make alt-tab work in a nested compositor add the code below to
-`~/.config/labwc/rc.xml` and then press F12 to disable all keybinds in the
-parent compositor and thereby forward them to the nested instance.
-
-```
-
-
-
-```
-
-[ToggleKeybinds]: https://labwc.github.io/labwc-actions.5.html#entry_action_name=togglekeybinds
-
-## Run or Raise
-
-The [wlr-foreign-toplevel-management] protocol provides clients with a list of
-opened applications and lets them request certain actions on them, like
-maximizing, focusing, etc. This can be used for scripting with clients such as
-[wlrctl] and [lswt]. For example, the script below launches an application
-if it is not already running, or focuses the application's most recently opened
-window if it is already running:
-
-```
-#!/bin/sh
-
-if test -z "$1"; then
- echo "Usage: runraise app_id [executable]"
- exit 1
-fi
-
-app_id=$1
-executable=$2
-test -z "$executable" && executable=$app_id
-
-if ! wlrctl window focus "$app_id"; then
- $executable &
- disown
-fi
-```
-
-As of labwc version 0.7.2 it is also possible to create a run or raise keybind
-with the `ForEach` action.
-
-```
-
-
-
-
-
-
-
-
-
-
-
-
-```
-
-[wlrctl]: https://git.sr.ht/~brocellous/wlrctl
-[lswt]: https://sr.ht/~leon_plickat/lswt/
-[wlr-foreign-toplevel-management]: https://wayland.app/protocols/wlr-foreign-toplevel-management-unstable-v1
-
-## Environment Variables
-
-There are a number of advanced settings that can be invoked for `wlroots` by
-setting some environment variables.
-
-For example `labwc` can be run nested on Wayland with multiple outputs using
-the following: `WLR_WL_OUTPUTS=2 labwc`
-
-See the wlroots repo [env_vars.md] file for details.
-
-[env_vars.md]: https://gitlab.freedesktop.org/wlroots/wlroots/-/blob/master/docs/env_vars.md
-
-## Nested XWayland
-
-To run a nested instances of openbox on labwc:
-
-```
-Xwayland -decorate -noreset :55
-DISPLAY=:55 dbus-run-session openbox-session
-```
-
-
diff --git a/src/troubleshooting.md b/src/troubleshooting.md
deleted file mode 100644
index 0eed983..0000000
--- a/src/troubleshooting.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# Troubleshooting
-
-## Nvidia
-
-If Electron clients are glitchy or lagging try setting these environment
-variables:
-
-```
-GBM_BACKEND=nvidia-drm
-__GLX_VENDOR_LIBRARY_NAME=nvidia
-```
-
-## Cursors
-
-If no cursor is showing (sometimes reported by people running vwmare), try
-adding `WLR_NO_HARDWARE_CURSORS=1` to `~/.config/labwc/environment`.
-
-If cursors do not update as expected, try installing a cursor theme (for
-example `Adwaita`) and set `XCURSOR_THEME` in `~/.config/labwc/environment`
-accordingly (for example `XCURSOR_THEME=Adwaita`). `labwc` handles missing
-cursor themes by falling back on builtin old X11 cursors, but some applications
-do not resulting in the wrong or no cursor being set.
-
-## Logout
-
-When using a laptop with an external monitor and the built-in monitor is closed,
-the system may go into hibernation when disconnecting. To avoid this, edit the
-configuration file `etc/systemd/logind.conf' and set following to ignore (see
-logind.conf(5) manual for more info):
-
-```
-HandleLidSwitch=ignore
-HandleLidSwitchExternalPower=ignore
-```