8. Keyboard and Mouse Bindings
Prev |  | Next

## 8. Keyboard and Mouse Bindings

This section describes what individual actions with keyboard and mouse on different elements od the windows and other parts of NsCDE are performing. Key and mouse bindings can be combined or keyboard-only or mouse-only actions. First two subsections of this section are describing two different sets of key bindings implemented in NsCDE, while the third one explains the actions performed by mouse alone, or in combination with some key modifiers. Key and Mouse bindings are extendable or can be overriden by user locally, as pretty much everything in NsCDE and FVWM. All this bindings are made to be ergonomically easy to use, remember and speed up everyday's work under NsCDE. Additionally, new "cua" key binding set implements IBM standard Common User Access rules which is used on almost all general purpose systems today, so the user may find it easier to adopt and more logical to map action to keys. Note that using keyboard or setup without modifier 4 defined will degrade key bindings usage, hence having a keyboard (or a X server software setup with xmodmap(1) is a must for extended key bindings usage of NsCDE. This goes generally for X11 environment, as well as for mouse with at least 3 buttons.

Key and Mouse bindings can be applied globally, independent of context, or in the context of some screen element. This contexts are:

- A - Any context

- R - Root Window (Backdrop of the screen)

- W - Application Window

- F - Window Borders

- S - Window Border Corners

- T - Title Bar

- I - Icon

NsCDE is using 4 modifier keys in single and multi-modifier combinations with other keys to implement key bindings. This modifiers are:

- Control

- Shift

- Meta (sometimes called Super) - Mod4

- Alt

In combinations with escape, function keys, tab, backspace, home, menu, letters, numbers and other keys, NsCDE builds rich set of keyboard shortcuts also called keybindings in the FVWM terminology.

Keybindings can be partially or complitely overriden by the user's creation and writing of `$FVWM_USERDIR/Keybindings.fvwmconf` (override) or extended by adding custom key bindings into `$FVWM_USERDIR/Keybindings.fvwmlocal` (Redefinition of key also overrides here). Key bindings which are described with their Mod+Key items on some menus (like Window Operation Menu) can be extended or overwritten in `$FVWM_USERDIR/Keymenu.actions`. Care must be taken when composing custom key bindings not to override common application shortcuts or to make some keys, letters and numbers on the keyboard unusable in normal writing contexts. Examples of such shortcuts are Ctrl+Q which in 85% cases closes the application, or Alt+Shift which is often switching between keyboard layouts under the X server.

Notice when there is a reference to the "Menu" key this means also "Compose" on some keyboards.

If some unwanted or clashing keybindings needs to be cleared, for example Shift+Tab from the any context, use the following FVWM syntax:

    Silent Key Tab A S -

For more information about bindings context, modifiers, PointerKey concept and the rest, see FVWM documentation (man page).

### 8.1. Common User Access (CUA) Key Bindings

NsCDE 2.1 and above implements multiple sets of key bindings. As of NsCDE 2.2, set named cua or Common User Access is applied by default, unless overriden in `$FVWM_USERDIR/NsCDE.conf` with InfoStore variable `kbd_bind_set`. This can also be configured with Keyboard Style Manager. References to the key bindings in all other parts of this documentation are reffering to "cua" model.

This subsection describes key bindings implemented in "cua" (Common User Access) standard set of key bindings.

- Control modifier with cursor keys is moving viewport from page to page in any context:

  - Ctrl+Up - move viewport one whole page up

  - Ctrl+Down - move viewport one whole page down

  - Ctrl+Left - move viewport one whole page left

  - Ctrl+Right - move viewport one whole page right

- Meta modifier with cursor keys is moving viewport page by 4 percent of the screen in any context:

  - Meta+Up - move viewport up by 4%

  - Meta+Down - move viewport down by 4%

  - Meta+Left - move viewport left by 4%

  - Meta+Right - move viewport right by 4%

- Cursor keys with modifiers Control, Shift and Meta pressed together are moving pointer by 1% in any context:

  - Control+Shift+Meta+Up - move mouse pointer by 1% of the screen up

  - Control+Shift+Meta+Down - move mouse pointer by 1% of the screen down

  - Control+Shift+Meta+Left - move mouse pointer by 1% of the screen left

  - Control+Shift+Meta+Right - move mouse pointer by 1% of the screen right

- Pressing Alt+Tab in any context scrolls one page down, then wraps up on the lowest page and continues to the right.

- Pressing Meta+Tab in any context moves viewport to the next workspace

- Pressing Shift+Meta+Tab in any context moves viewport to the previous workspace

- To raise and focus next overlapped window on the current page, press Alt+Up in any context, apart from icons.

- To raise and focus previous overlapped window on the current page, press Alt+Down in any context, apart from icons.

- To focus next window on the current page, and move pointer to the middle of that window, press Alt+Right in any context.

- To focus next window on the current page, and move pointer to the middle of that window, press Alt+Right in any context.

- To focus previous window on the current page, and move pointer to the middle of that window, press Alt+Left in any context.

- To focus next window on the current workspace, and move pointer to the middle of that window, press Shift+Right in any context.

- To focus previous window on the current workspace, and warp pointer to the middle of that window, press Shift+Left in any context.

- To move pointer in the middle of the focused window if pointer is outside that window, press Meta+Alt+J in any context.

- To focus next window on the any workspace or page, press Meta+Alt+Right in any context.

- To focus previous window on the any workspace or page, press Meta+Alt+Left in any context.

- To cycle focus of the windows on the current page, press Alt+Escape in any context.

- To pop Window List menu for the current workspace, press Ctrl+Escape in any context. Pressing cursor keys Up, Tab or Tab in the context of Window List menu, moves up, down and then cycles on the first/last item menu item focus. Pressing Escape key in the context of Window List menu will open extended Window List where windows of all workspaces are visible, and separated by the names of workspaces as non-clickable menu subtitles. Pressing Escape or Escape for the third time in the context of the Window List menu, pops down Window List Menu. Pressing Return key on any selectable Window List menu item, selects and focuses that window and pops down Window List Menu.

- To shift focus on the icons of the current workspace, press Meta+Alt+I in any context apart from icons themselves. In the context of icons, this key binding moves focus to the next icon if there is no un-iconified windows on the current page, or shifts focus to the first un-iconified window if such exists on the current page.

- While the focus is on icons, pressing keys Up or Down browses workspace icons by shifting focus between them back and forth.

- Pressing I or SunOpen key in the context of icons, deiconifies currently focused icon.

- Pressing Space+I or Meta+Alt+M keys in the context of icons, pops up icons menu, where many operations common for iconified windows can be find and called.

- To pop up Workspace Menu in any context, press Menu (or Compose) key fast twice in a row. The same function has the Shift+Escape key binding, but pressed once.

- To pop up Window Operations Menu in any context, press Meta+Menu (or Meta+Compose) key binding. Key binding Meta+Escape has the same function.

- To pop up current workspace Local Pager and Front Pager Page Manager Menu in the same time, press Meta+Alt+Menu. Key binding Meta+Shift+M in any context apart from icons, does the same function. While Front Pager Page Manager Menu and Local Pager are popped up, keys Up, Down or Tab are selecting pages on the menu and cycling trough them. Pressing Return key, selects a page, while Local Pager will indicate this change and dissapear after a few (or configured) number of seconds.

- To resize (or zoom in) currently focused window by 50 pixels in all directions, press Meta+F8. Window will be placed on it's default position and enlarged by mentioned amount of pixels in all directions.

- To resize (or zoom out) currently focused window by 50 pixels in all directions, press Shift+Meta+F8. Window will be placed on it's default position and shrinked by mentioned amount of pixels in all directions.

- To open a new default terminal window, press Meta+F12 in any context.

- To open built in "Exec" launcher, or advanced Rofi launcher if configured, press Alt+F12. This same action can be performed on Sun keyboard by pressing SunOpen (XF86Open) key in the context of the root window, or with Meta+SunOpen in any context.

- To open Graphical Workspace Manager or "GWM", press Meta+Alt+Home key binding. Keys Control+Q if pressed in the context of GWM window, will dismiss GWM.

  Figure 61. GWM - Graphical Workspace Manager

- To open Local Pager, press Meta+Backspace in any context. Pressing Meta+Backspace again (but in the context of Local Pager) dismisses Local Pager.

  Figure 62. Local Pager

- To open Global Pager, press Meta+Alt+Backspace in any context. Pressing Meta+Alt+Backspace again dismisses Global Pager.

  Figure 63. Global Pager

- To lock the screen if X Screen Saver is enabled, press Meta+Alt+L.

- Combination of keys Meta+Alt+X calls xrandr --auto".

- To clean up current page or viewport, press Meta+Alt+F5. This will iconify and hide (almost) all objects on the screen. Pressing Meta+Alt+F5 puts back all windows which were affected with Meta+Alt+F5 on that same screen in the first run - a toggle action.

- To pop Window Operations Menu of the currently focused window, press Meta+Alt+M in the context of that window or it's decorations. This will press first leftmost button on the window's title bar and show pop down Windows Operations Menu.

- To open Occupy Workspace dialog for the currently focused window, press Meta+Alt+O key binding.

- To tile windows vertically (move and resize in maximize mode) on the current page, press Meta+Alt+R key binding. Pressing it again will restore all affected windows to their default positions, but maximized windows will be in the restored state.

- To tile windows horizontally (move and resize in maximize mode) on the current page, press Meta+Alt+H key binding. Pressing it again will restore all affected windows to their default positions, but maximized windows will be in the restored state.

- XF86PowerOff on Sun keyboards (most upper right) and some other keyboards opens System Action Dialog with system suspend (S3) option selected. For this to work, ACPI action needs to be configured on the system to give FVWM window manager control. Otherwise, this will likely initiate direct system shutdown.

- Ctrl+XF86PowerOff opens System Action Dialog with system shutdown option selected. For this to work, ACPI action needs to be configured on the system. Otherwise, this will likely initiate direct system shutdown.

- Alt+XF86PowerOff opens System Action Dialog with system reboot option selected. For this to work, ACPI action needs to be configured on the system. Otherwise, this will likely initiate direct system shutdown.

- Meta+XF86PowerOff opens System Action Dialog with X Session logout option selected. For this to work, ACPI action needs to be configured on the system. Otherwise, this will likely initiate direct system shutdown.

- Help key on Sun keyboards if pressed, in the pointer context of the root window will call PDF viewer (if any) with complete (this) NsCDE documentation.

- Meta+Help key on Sun keyboards if pressed, in any context will call PDF viewer (if any) with complete (this) NsCDE documentation.

- Sun Find key on Sun keyboards in the context of the root window opens f_Find NsCDE FVWM function which needs defined by the user to be useful.

- Sun Meta+Find key on Sun keyboards in any context opens f_Find NsCDE FVWM function which needs defined by the user to be useful.

- To open NsCDE Style Manager, press Props key in the context of the root window, or Meta+Props in any context. This opens Style Manager (StlyeMgr) window. Pressing this keys combinations while Style Manager is opened, closes Style Manager.

- To control audio volume, on some keyboards (such as Sun keyboards), press volume up or volume down keys. They are called XF86AudioLowerVolume, XF86AudioRaiseVolume and XF86AudioMute by the Xorg X server. The following actions can be performed:

  - To raise volume by 1%, press XF86AudioRaiseVolume in any context.

  - To lower volume by 1%, press XF86AudioLowerVolume in any context.

  - To raise volume by 10%, press Control+XF86AudioRaiseVolume in any context.

  - To lower volume by 10%, press Control+XF86AudioLowerVolume in any context.

  - To mute sound complitely, press XF86AudioMute in any context.

- To open last pressed item on the any subpanel of the Front Panel in any context, press Meta+Alt+E. The same function can be called on Sun keyboards by pressing Meta+Again (or Meta+Redo) key binding.

- To simulate pointer button 1 click on the Front Panel, press Meta+Return in the context of the Front Panel icon.

- Key binding Help in the context of the Front Panel will display help pages (documentation) for the Front Panel.

- Pressing Meta+Alt+M in the context of the Front Panel will open Front Panel Operations Menu by clicking leftmost top button just like in any other window or subpanel.

  Figure 64. Window Options Menu (cua)

- To open subpanels 1-5 and 6-10, press Meta+<number> in the context (focus) of the Front Panel.

- To close subpanels 1-5 and 6-10, press Meta+<number> in the context (focus) of the subpanel that is opened. The subpanel will pop down to launcher on the Front Panel.

- To simulate pointer button 1 click on the Front Panel, press Meta+Return in the context of the opened subpanel with pointer above selected item.

- Key binding Help in the context of the Front Panel will display help pages (documentation) for the Subpanels of the Front Panel.

- To enlarge terminal to be wide and occupy ~70-80% of the screen, press Meta+F2 in the context of the current terminal. Terminals recognized by the NsCDE are the those which have string "*Term*", "*term*" or "*terminal*" as a name, X11 class or resource name.

- To reposition a window as if it is just opened, or to be put on the configured place together with geometry rescaling, press Alt+F3.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To reposition a window to the center of the screen, press Meta+F3.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To close a focused window, press Alt+F4.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To forcibly close non-responding or erratic focused window, press Meta+Alt+F4.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To regenerate, refresh and redraw a focused window, press Alt+F5 in its context.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To refresh the current window and the whole screen, press Meta+F5.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To raise covered, overlapped window, or to lower it behind another one, depending on current situation, press Alt+F6.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To start interactive move of the currently focused window, press Alt+F7. While selected, window can be moved with left, right, up and down cursor keys. Key Escape cancels the operation.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To make window sticky across all pages and workspaces, press Meta+F7.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To make window sticky across all workspaces, press Meta+Alt+F7.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To make window sticky across all pages of the current workspace, press Meta+Shift+F7.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To enter interactive window resize, press Alt+F8. Window can be resized by left, right, up and down cursor keys. Key Escape cancels the operation.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To iconify the currently focused window, press Alt+F9.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- To shade the currently focused window to the size of the title bar, press Meta+F9.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Alt+F10 grows window up to the first obstacle on page, when pressed again, it maximizes window ~ 86% - avoids Front Panel; when pressed further, it maximizes to 100% (whole screen + decorations); third call to Alt+F10 restores window into it's normal state. We can say how window is cycling between normal, grow, stretched and maximized state. This is a cyclic keybinding in a "grow" direction.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Meta+F10 is the same as Meta+F10. This variant is presented on Window Operations menu for actions when going towards bigger maximized state, while Meta+F7 is presented for actions which are shrinking back.

- Alt+F11 maximizes window 100% (whole screen + decorations); when pressed again it maximizes to 86% (stretch), third press will put window in the grow state (Maximized on page up to the first obstacle), while third press should put window into normal state. We can say how window is cycling between normal, grow, stretched and maximized state. This is a cyclic keybinding in a "shrink" direction.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Meta+F11 Works like Alt+F11, but selects every second operation. In practice, from restored state goes to stretched and back, and from grow state goes to fully maximized and back.

- Key Meta+Space in the context of the window, frame corners, frame sides, title bar and icon (avoids root window context!) calls Occupy Workspace dialog for moving window between the workspaces.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Key Alt+Space in the context of the window, frame corners, frame sides, title bar and icon (ovoids root window context!) calls Occupy Page dialog for window moving between the desks.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Key Meta+Alt+Space in the context of the window, frame corners, frame sides, title bar and icon (ovoids root window context!) calls Occupy Monitor dialog for window moving between the monitors. This key binding is available only when multiple monitors are detected by NsCDE and FVWM.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Ctrl+Alt+Print takes a screenshot of the root window with 3 seconds delay. Screenshots in PNG format are saved in `XDG_PICTURES_DIR` or `$HOME` if `XDG_PICTURES_DIR` is not defined.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Shift+Alt+Print pops cross cursor to pick selected screen area for screenshot. Screenshots in PNG format are saved in `XDG_PICTURES_DIR` or `$HOME` if `XDG_PICTURES_DIR` is not defined.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Print without any modifiers and in any context, takes a screenshot of the root window with 3 seconds delay. Screenshots in PNG format are saved into clipboard for pasting into compatible X11 applications.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Shift+Print pops cross cursor to pick selected screen area for screenshot. Screenshots in PNG format are saved into clipboard for pasting into compatible X11 applications.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Shift+Backspace+Backspace will do the same as Ctrl+Backspace+Backspace, but Front Panel after repositioning is shaded to bottom border of the screen. Invoking this key sequence again will unshade the Front Panel. Middle mouse button on the borders of the frame has the same effect.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Ctrl+Backspace+Backspace in any context will raise Front Panel and reposition it to it's default place on the screen. If key combination is pressed for the second time, focus and pointer focus will be transferred to the Front Panel, enabling Meta+[0-9] keys to function on subpanels and Ctrl+Return on icons of the Front Panel itself.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Meta+Alt+G Displays Window Window Geometry Manager dialog which saves geometry information for a current window in the `$FVWM_USERDIR/GeoDB.ini`

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

  Figure 65. Window Geometry Manager

- Meta+Alt+F In the context of a window, frame, or corner, puts a current window into a real fullscreen mode. Calling this keybinding again, restores a window.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

- Meta+Alt+D In the context of a window opens FVWM Ident module which presents dialog with various X11 and window manager attributes on the screen

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

  Figure 66. FVWM Ident Dialog

- Meta+Alt+T In the context of a window or it's decorations removes title bar of that window leaving only content, borders and corners. Pressing this combination again in the context of the title-less window restores it's Title Bar in place.

  Dynamic: defined in `$NSCDE_DATADIR/defaults/Keymenu-cua.actions` for automatic description on menus.

Prev |  | Next
7. Backdrops, Palettes and Fonts | Home | 8.2. NsCDE 1.X Key Bindings