NOTION(1)

πŸ“¦
version 4.0.5 Β· 3 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– NOTION(1) β€” General Commands Manual πŸ’–

okay bestie, welcome to Notion, and no it's not the note-taking app, it's a whole window manager and she's that girl πŸ’…


✨ NAME ✨

Notion β€” an X11 window manager πŸͺŸπŸ‘‘


✨ SYNOPSIS ✨

notion [options]

✨ DESCRIPTION ✨

So like. Notion is a tiling tabbed window manager and it was literally designed with keyboard users in mind ⌨️🫢 like it sees you and it gets you. no cap.


✨ OPTIONS ✨

  • -display host:display.screen β€” the X display you want her to manage πŸ–₯️✨
  • -conffile configfile β€” use this config file instead of the default one, periodt πŸ“
  • -searchdir dir β€” the directory to go looking in for config files and other scripts πŸ”πŸŽ€
  • -oneroot β€” on X servers that have multiple (traditional, non-Xinerama) screens, manage only the default screen (the root window) instead of all of them, whatever the -display option or the DISPLAY environment variable said 🌱
  • -session session_name β€” set the session name. this one matters bc it changes where your workspace files and other save files get put: ~/.notion/session_name if the option is set πŸ’ΎπŸŒΈ
  • -help β€” show help on the command line options πŸ†˜
  • -version β€” show the version πŸ”’
  • -about β€” show the about text (that's version, author, and license, the whole trio) 🫢

πŸ¦‹ BASIC CONCEPTS πŸ¦‹

okay so this section is the overview of the types of objects that show up on an X display that Notion is managing, and how they're all connected in a standard setup 🌈 this info is genuinely necessary if you wanna understand how the operations work and which of the different key bindings explained below are actually available. if you want the detailed explanation (the kind you need for writing your own custom bindings config files), go check the additional documentation on the Notion Web page πŸ’–

The top-level objects that matter here are screens. they correspond to physical screens, like the actual glass you're looking at πŸ‘€ screens contain workspaces (which are a kind of group), plus client windows that got put into full screen mode. and here's the vibe: these objects are multiplexed, meaning only one of them can be displayed at a time. one at a time bestie, that's the rule πŸ’…

Workspaces themselves may contain tilings and detached/floating frames. a workspace that has no tilings and only detached/floating windows? that's also called a floating workspace 🎈 Tilings themselves contain frames that are tiled to fill the screen, and possibly a statusbar or a dock. and kinda like screens, frames multiplex other objects too β€” but in this case it's mostly client window groups. most of the time, frames are the only trace of Notion you'll even see on the screen πŸ‘‘ frames may have border decorations, and they have a tab for each multiplexed object. tabs!! iconic honestly πŸŽ€

Queries are boxes that pop up at the bottoms of frames or screens to ask you for textual input, so you can execute an action that depends on whatever you typed πŸ“₯✨ and most queries support tab-completion, which is lowkey the best feature of anything ever. iykyk 🧚


πŸŽ€ BINDINGS πŸŽ€

okay bestie, 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 whose configuration file defines these bindings. iykyk.


🌍 Globally available bindings 🌍

  • Mod4+1 β€” switch to object 0 (workspace, full screen client window) within current screen.
  • Mod4+2 β€” switch to object 1 (workspace, full screen client window) within current screen.
  • Mod4+3 β€” switch to object 2 (workspace, full screen client window) within current screen.
  • Mod4+4 β€” switch to object 3 (workspace, full screen client window) within current screen.
  • Mod4+5 β€” switch to object 4 (workspace, full screen client window) within current screen.
  • Mod4+6 β€” switch to object 5 (workspace, full screen client window) within current screen.
  • Mod4+7 β€” switch to object 6 (workspace, full screen client window) within current screen.
  • Mod4+8 β€” switch to object 7 (workspace, full screen client window) within current screen.
  • Mod4+9 β€” switch to object 8 (workspace, full screen client window) within current screen.
  • Mod4+0 β€” switch to object 9 (workspace, full screen client window) within current screen.
  • Mod4+grave β€” switch to next object (workspace, full screen client window) within current screen.
  • Mod4+Shift+asciitilde β€” switch to previous object (workspace, full screen client window) within current screen.
  • Mod4+O β€” open first region demanding attention or previously active one.
  • Mod4+Shift+1, Mod4+F1 β€” go to screen 0 on multihead setup.
  • Mod4+Shift+2, Mod4+F2 β€” go to screen 1 on multihead setup.
  • Mod4+Shift+3, Mod4+F3 β€” go to screen 2 on multihead setup.
  • Mod4+Shift+4 β€” go to screen 3 on multihead setup.
  • Mod4+Shift+Escape β€” go to previous screen on multihead setup.
  • Mod4+Escape β€” go to next screen on multihead setup.
  • Mod4+F9 β€” create a new workspace of chosen default type.
  • F12, Mod4+F12, Button3 press β€” display the main menu.
  • Button2 press β€” display the window list menu.
  • Mod4+Tab β€” forward-circulate focus.
  • Mod4+Shift+Tab β€” backward-circulate focus.
  • Mod4+Shift+R β€” raise focused object, if possible.

πŸͺŸ Bindings operating on all frames and screens πŸͺŸ

  • Mod4+C β€” close current object.
  • Mod4+Shift+D β€” detach (float) or reattach an object to its previous location.

πŸ–ΌοΈ Bindings operating on all frames πŸ–ΌοΈ

  • Mod4+H β€” maximize the frame horizontally.
  • Mod4+V β€” maximize the frame vertically.
  • Button3 press β€” display context menu.
  • Mod4+R β€” begin move/resize mode.
  • Button1 click at tab, Button2 click at tab β€” switch the frame to display the object indicated by the tab.
  • Button1 drag at border, Mod4+Button3 drag β€” resize the frame.
  • Mod4+Button1 drag β€” move the frame.
  • Button1 drag at tab, Button2 drag at tab β€” move objects between frames by dragging and dropping the tab.
  • Mod4+Caps_Lock, Mod4+Button4 click β€” switch to next object within the frame.
  • Mod4+Shift+Caps_Lock, Mod4+Button5 click β€” switch to previous object within the frame.

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

  • Mod4+T β€” toggle tag of current object.
  • Mod4+Shift+T β€” clear all tags.
  • Mod4+L β€” lock screen
  • Mod4+Return, F2 β€” run a terminal emulator.
  • Mod4+J β€” query for command line to execute.
  • Mod4+Shift+J β€” query for Lua code to execute.
  • Mod4+F4 β€” query for host to connect to with SSH.
  • Mod4+F5 β€” query for file to edit.
  • Mod4+F6 β€” query for file to view.
  • Mod4+F7 β€” query for keybinding.
  • Mod4+Shift+F9 β€” query for workspace to go to or create a new one.
  • Mod4+G β€” query for a client window to go to.
  • Mod4+M β€” display context menu.
  • Mod4+Shift+M β€” query for context menu.
  • Mod4+slash β€” show Notion 'live docs'.
  • Mod4+Shift+slash β€” query for manual page to be displayed.

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

  • Mod4+N β€” attach tagged objects to this frame.
  • Mod4+Shift+N β€” query for a client window to attach ('nick').
  • Mod4+A β€” switch to tab 0 in this frame.
  • Mod4+S β€” switch to tab 1 in this frame.
  • Mod4+D β€” switch to tab 2 in this frame.
  • Mod4+F β€” switch to tab 3 in this frame.
  • Mod4+comma β€” move current tab to the right within the frame.
  • Mod4+period β€” move current tab to the left within the frame.
  • Mod4+H, Mod4+V β€” maximize the frame horizontally/vertically.

πŸ¦‹ Bindings for floating/detached frames πŸ¦‹

  • Button1 double click at tab β€” toggle shade mode
  • Button1 press at tab, Button1 press at border, Mod4+Button1 click β€” raise the frame.
  • Mod4+Button3 click β€” lower the frame.
  • Button1 drag at tab β€” move the frame.
  • Mod4+Shift+B β€” tile frame, if no tiling exists on the workspace

🌸 Bindings for tilings and tiled frames [mod_tiling] 🌸

  • Mod4+I β€” split current into columns.
  • Mod4+Shift+I β€” split current into rows.
  • Mod4+X β€” destroy current frame.
  • Mod4+W β€” go to frame below current frame.
  • Mod4+Shift+W, Mod4+Shift+Button4 click, Mod4+Shift+Button5 click β€” go to frame above current frame.

πŸ’– Bindings for client windows πŸ’–

  • Mod4+Shift+L β€” nudge the client window. This might help with some programs' resizing problems.
  • Mod4+Shift+C β€” kill client owning the client window.
  • Mod4+Shift+Q β€” send next key press to the client window. Some programs may not allow this by default.
  • Mod4+Q β€” toggle client window group full-screen mode

πŸ”₯ Move/resize mode bindings πŸ”₯

  • Escape β€” cancel the resize mode.
  • Return β€” end the resize mode.
  • Left, Right, Up, Down, F, B, P, N β€” grow in specified direction.
  • Shift+Left, Shift+Right, Shift+Up, Shift+Down, Shift+F, Shift+B, Shift+P, Shift+N β€” shrink in specified direction.
  • Mod4+Left, Mod4+Right, Mod4+Up, Mod4+Down, Mod4+F, Mod4+B, Mod4+P, Mod4+N β€” move in specified direction.

🧚 Bindings for message boxes and queries [mod_query] 🧚

  • Escape, Control+G, Control+C β€” close the query/message box, not executing bound actions.
  • Control+U, Control+V, Page_Up, Page_Down β€” 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.

  • Control+F, Control+B, Right, Left β€” move one character forward/backward.
  • Control+E, Control+A, End, Home β€” go to end/beginning.
  • Control+X, Control+Z β€” skip one word forward/backward.
  • Control+D, Delete β€” delete next character.
  • BackSpace, Control+H β€” delete previous character.
  • Control+W, Control+O β€” delete one word forward/backward.
  • Control+J β€” delete to end of line.
  • Control+Y β€” delete the whole line.
  • Control+T β€” transpose characters.
  • Control+P, Control+N, Up, Down, Control+Up, Control+Down β€” select next/previous (matching) history entry.
  • Button2 click, Control+K C β€” paste from the clipboard.
  • Control+K B β€” set mark/begin selection.
  • Control+K Y β€” cut selection.
  • Control+K K β€” copy selection.
  • Control+K G β€” clear mark/cancel selection.
  • Tab, Shift+Tab, Control+Tab β€” try to complete the entered text or cycle through completions.
  • Control+R, Control+S β€” complete from history
  • Control+M, Return, KP_Enter β€” close the query and execute bound action.

πŸ“ Bindings for menus [mod_menu] πŸ“

  • Escape, Control+G, Control+C, Left β€” close the menu.
  • Return, KP_Enter, Control+M, Right β€” activate current menu entry.
  • Control+N, Control+P, Up, Down β€” select next/previous menu entry.
  • BackSpace β€” clear the menu's typeahead find buffer.

πŸ—‚οΈ FILES AND DIRECTORIES πŸ—‚οΈ

where everything lives, bestie 🫢

  • /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 πŸ‘€


🌈 AUTHOR 🌈

Notion was written by the Notion team, based on Ion which was written by Tuomo Valkonen <tuomov at iki.fi>. iconic behavior honestly, we stan 🫢


and that's the whole NOTION(1) page, bestie πŸ’– the footer down there is just the source/version + date line for NOTION(1), so consider this your cute sign-off β€” go forth and tile, queen πŸ‘‘βœ¨