+This file contains the default controls. The controls like `this` indicates that you can change them in the options menu.
+
+In main menu and level select screen:
+* `Up/Down/Left/Right` = Navigation
+* `Enter` = Select menu entry
+* `Esc` = Return to previous screen
+
+In game:
+* `Left` = left
+* `Right` = right
+* `Up` = jump
+* `Down` = action
+* `Space` = recording
+* `(unassigned by default)` = Cancel recording
+* `Tab` = Switch the view from/to shadow
+* `R` = Restart level
+* `F3` = Load last checkpoint (if any)
+* `Esc` = Return to previous screen
+
+In level editor:
+* Ctrl+X = Cut
+* Ctrl+C = Copy
+* Ctrl+V = Paste
+* Ctrl+S = Save level
+* Ctrl+Z = Undo
+* Ctrl+Y = Redo
+* Delete = Delete selected blocks
+* F2 = Select mode
+* F3 = Add mode
+* F4 = Delete mode
+* F5 = test play
+* Left click = Select block in select mode, add block in add mode, delete block in delete mode, add new path point in path mode
+* Right click = Open popup menu in select/add mode, end path/link mode
+* Backspace = Remove a path point in path mode
+* `Up/Down/Left/Right` = Moving camera
+* Mousewheel or `,/.` = Select previous/next block type in add mode, adjust speed/time when configuring moving blocks, and moving camera on other mode
+* `Tab` = Level settings
+* `Shift` = Don't snap to grid when add/move blocks
+* `Esc` = Return to previous screen
+
+In level editor (test play): besides in-game controls, there are
std::string s = _("NOTE: the layers are sorted by name alphabetically.\nThe layer is background layer if its name is < 'f'\nby dictionary order, otherwise it's foreground layer.");
for (int lps = 0;;) {
size_t lpe = s.find_first_of('\n', lps);
GUIObject *obj = new GUILabel(imageManager, renderer, 40, yy, 520, 36,