Scroll to navigation

NOTION(1) General Commands Manual NOTION(1)

NAME

Notion - an X11 window manager

SYNOPSIS

notion [options]

DESCRIPTION

Notion is a tiling tabbed window manager designed with keyboard users in mind.

OPTIONS

X display to manage
Configuration file to use instead of default
Directory to search for configuration files and other scripts
On X servers with multiple (traditional non-Xinerama) screens, manage only default screen (root window), not all, as given by the -display option or in the DISPLAY environment variable.
Set session name. This option affects where workspace and other save files are put (~/.notion/session_name if option set).
Show help on command line options
Show version
Show about text (version, author, license)

BASIC CONCEPTS

This section is an overview of the types objects that appear on an X display managed by Notion and their relationships in a standard setup. This information is necessary to understand the operations and availability of the different key bindings explained below. For a more detailed explanation, needed for writing custom bindings configuration files, see the additional documentation available from the Notion Web page.

The top-level objects that matter in the case at hand are screens. They correspond to physical screens. Screens contain workspaces (which are a kind of group), and client windows put into full screen mode. These objects are multiplexed in the sense that only one can be displayed at a time.

Workspaces themselves may contain tilings and detached/floating frames. A workspace containing no tilings and only detached/floating windows is also called a floating workspace. Tilings themselves contain frames tiled to fill the screen, and possibly a statusbar or dock. Akin to screens, frames multiplex other objects, but in this case mostly client window groups. Most of the time, frames are the only trace of Notion you see on the screen. Frames may have border decorations, and they have a tab for each multiplexed object.

Queries are boxes that appear at the bottoms of frames or screens to ask you for textual input to execute an action that depends on it. Most queries support tab-completion.

BINDINGS

These are the default key and pointer bindings. Below, Mod4 refers to the modifier used by Notion. Mod4 is the default, but this can be configured by setting META in the configuration. The particular key that is interpreted as Mod4 depends on your system. On Xorg-based systems it is usually bound to the windows key. The xmodmap(1x) tool can be used to get/set which key codes correspond to which modifiers, and the xev(1x) tool can be used to see what codes are generated by particular keys.

The string in square brackets after a binding group heading below indicates the module that whose configuration file defines these bindings.

Globally available bindings

Switch to object 0 (workspace, full screen client window) within current screen.
Switch to object 1 (workspace, full screen client window) within current screen.
Switch to object 2 (workspace, full screen client window) within current screen.
Switch to object 3 (workspace, full screen client window) within current screen.
Switch to object 4 (workspace, full screen client window) within current screen.
Switch to object 5 (workspace, full screen client window) within current screen.
Switch to object 6 (workspace, full screen client window) within current screen.
Switch to object 7 (workspace, full screen client window) within current screen.
Switch to object 8 (workspace, full screen client window) within current screen.
Switch to object 9 (workspace, full screen client window) within current screen.
Switch to next object (workspace, full screen client window) within current screen.
Switch to previous object (workspace, full screen client window) within current screen.
Open first region demanding attention or previously active one.
Go to screen 0 on multihead setup.
Go to screen 1 on multihead setup.
Go to screen 2 on multihead setup.
Go to screen 3 on multihead setup.
Go to previous screen on multihead setup.
Go to next screen on multihead setup.
Create a new workspace of chosen default type.
Display the main menu.
Display the window list menu.
Forward-circulate focus.
Backward-circulate focus.
Raise focused object, if possible.

Bindings operating on all frames and screens

Close current object.
Detach (float) or reattach an object to its previous location.

Bindings operating on all frames

Maximize the frame horizontally.
Maximize the frame vertically.
Display context menu.
Begin move/resize mode.
Switch the frame to display the object indicated by the tab.
Resize the frame.
Move the frame.
Move objects between frames by dragging and dropping the tab.
Switch to next object within the frame.
Switch to previous object within the frame.

Bindings operating on top-level (non-transient) frames and screens

Toggle tag of current object.
Clear all tags.
Lock screen
Run a terminal emulator.
Query for command line to execute.
Query for Lua code to execute.
Query for host to connect to with SSH.
Query for file to edit.
Query for file to view.
Query for keybinding.
Query for workspace to go to or create a new one.
Query for a client window to go to.
Display context menu.
Query for context menu.
Show Notion 'live docs'.
Query for manual page to be displayed.

Bindings operating on top-level (non-transient) frames

Attach tagged objects to this frame.
Query for a client window to attach ('nick').
Switch to tab 0 in this frame.
Switch to tab 1 in this frame.
Switch to tab 2 in this frame.
Switch to tab 3 in this frame.
Move current tab to the right within the frame.
Move current tab to the left within the frame.
Maximize the frame horizontally/vertically.

Bindings for floating/detached frames

Toggle shade mode
Raise the frame.
Lower the frame.
Move the frame.
Tile frame, if no tiling exists on the workspace

Bindings for tilings and tiled frames [mod_tiling]

Split current into columns.
Split current into rows.
Destroy current frame.
Go to frame below current frame.
Go to frame above current frame.

Bindings for client windows

Nudge the client window. This might help with some programs' resizing problems.
Kill client owning the client window.
Send next key press to the client window. Some programs may not allow this by default.

Toggle client window group full-screen mode

Move/resize mode bindings

Cancel the resize mode.
End the resize mode.
Grow in specified direction.
Shrink in specified direction.
Move in specified direction.

Bindings for message boxes and queries [mod_query]

Close the query/message box, not executing bound actions.
Scroll the message or completions up/down.

Bindings for editing in queries [mod_query]

These bindings are similar to those of the joe(1) text editor. Cut, copy and paste works in a more conventional manner, though, but the keys are equivalent.

Move one character forward/backward.
Go to end/beginning.
Skip one word forward/backward.
Delete next character.
Delete previous character.
Delete one word forward/backward.
Delete to end of line.
Delete the whole line.
Transpose characters.
Select next/previous (matching) history entry.
Paste from the clipboard.
Set mark/begin selection.
Cut selection.
Copy selection.
Clear mark/cancel selection.
Try to complete the entered text or cycle through completions.
Complete from history
Close the query and execute bound action.

Bindings for menus [mod_menu]

Close the menu.
Activate current menu entry.
Select next/previous menu entry.
Clear the menu's typeahead find buffer.

FILES AND DIRECTORIES

/etc/X11/notion/cfg_notion.lua
System default main configuration files
/etc/X11/notion/cfg_*.lua
Other configuration files.
/etc/X11/notion/look_*.lua
Colour scheme configuration files
~/.notion/
User configuration files
~/.notion/cfg_notion.lua
User default main configuration file (overrides system default)

SEE ALSO

The Notion home page, https://notionwm.net/

The document "Configuring and extending Notion with Lua" found on the Notion home page.

/usr/share/doc/notion/

X(7x), notionflux(1), joe(1)

AUTHOR

Notion was written by the Notion team, based on Ion which was written by Tuomo Valkonen <tuomov at iki.fi>.