Notion is a tiling, tabbed window manager for the X window system:

  • Tiling: you divide the screen into non-overlapping 'tiles'. Every window occupies one tile, and is maximized to it
  • Tabbing: a tile may contain multiple windows - they will be 'tabbed'
  • Static: most tiled window managers are 'dynamic', meaning they automatically resize and move around tiles as windows appear and disappear. Notion, by contrast, does not automatically change the tiling. You're in control.
Features include:
  • Workspaces: each workspace has its own tiling
  • Multihead: the mod_xinerama plugin provides very nice dual-monitor support
  • RandR: mod_xrandr picks up changes in the xrandr configuration, without the need for restarting Notion
  • Extensibility: Notion can be extended with lua scripts. Browse through the scripts collection
Supported platforms:


Check out this quick reference to the keyboard commands

The manual page is a good reference. For an introduction, you may follow the tour

For advanced configuration documentation, see Configuring and extending Notion with Lua [pdf].

For writing patches and modules, see Notes for the module and patch writer [pdf]


If you want to get in touch, check out our mailinglists

You can also find us on IRC, in #notion on freenode.


If you'd like to support Notion, you can donate. I will not spend the donations on myself, as I wouldn't find that fair to all the other contributors. Rather I'll use the funds to cover any costs for Notion or other community projects, or pass on the donations to other organizations doing important work in the open source world.

bitcoin paypal
1EhU SroL
4FWa M1qy
pYbX fBxU
Qv1z GDZ1

If you'd like to associate your donation with a particular support/documentation request, bug or other goal, you can make a note of that.

Bugs and feature requests

Report your bugs and feature requests on github or in the trackers


Notion is a fork of Ion, which has been abandoned by its original author, Tuomo Valkonen.

Former Ion3 users will be glad to hear any changes to configuration will be backwards-compatible, so you can simply drop your ~/.ion3 tweaks into ~/.notion and rename cfg_ion.lua to cfg_notion.lua .


Changes since the original fork of Ion:

  • Handle XConfigureRequestEvent's moving transient dialogs to incorrect locations (#3167262)
  • Addition of 'lazy_resize' winprop option for applications that resize slowly
  • EMWH: always encode _NET_WM_NAME as UTF8_STRING
  • EMWH: support for _NET_ACTIVE_WINDOW
  • EMWH: fixed issue in _NET_WM_USER_TIME handling that caused new windows not to receive the focus (#3109576)
  • Fix miscalculations and infinite loops in tab width calculation
  • mod_xinerama: take into account changes to the screen topology without needing to restart Notion
  • mod_xinerama: support for overlapping screens
  • Introduce mod_xkbevents
  • mod_xrandr: introduction of a randr_screen_change_notify hook
  • Various cleanups to the build system, including improved autodetection of lua
  • Renamed project to Notion - required due to trademark/licensing terms



No binary releases of Notion are available at this time.

You can download a convienent source package from github releases or clone our git


A git repository with the latest version is available on github



Notion is available under a slightly modified LGPL license: in short, the only extra restriction is you cannot release it under the name 'Ion' and cannot mix it with GPL code, but read the license itself for details.

Other software


The following software combines well with Notion:

  • stalonetray shows FreeDesktop (XEmbed) and KDE trayicons
  • trayion shows FreeDesktop (XEmbed) trayicons (like Qt4 and gtk2)
  • arandr a flexible tool for manipulating your monitor layout, resolutions, orientations
  • Clipboard utilities
    • autocutsel for keeping various clipboards synchronized
    • parcellite more advanced clipboard management (with history)
  • Notification daemons


Some software works with better with Notion when the configuration is slightly tweaked. Check the Application-specific tweaks wiki page for more information.