Introduction
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.
- 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 (read this, though)
- Extensibility: Notion can be extended with lua scripts. Browse through the scripts collection
- Linux
- Solaris (Solaris 10, OpenSolaris as well as OpenIndiana)
- NetBSD
- FreeBSD is not currently supported, but Notion is reported to work on FreeBSD quite easily. An unofficial 'port' has been created at github
Documentation
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]
For additional notes, consult our wiki
Changes
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_NAMEasUTF8_STRING - EMWH: support for
_NET_ACTIVE_WINDOW - EMWH: fixed issue in
_NET_WM_USER_TIMEhandling 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_notifyhook - Various cleanups to the build system, including improved autodetection of lua
- Renamed project to Notion - required due to trademark/licensing terms
History
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 .
Support
If you want to get in touch, check out our mailinglists
Bugs and feature requests
Report your bugs and feature requests in the sf.net trackers
Code
Download
No binary releases of Notion are available at this time.
You can download a convienent source package from the sf.net files section or clone our git
Git
A git repository with the latest version is available here
. Visit the Development wiki for build instructions.License
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
Supplemental
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
- autocutsel for keeping various clipboards synchronized
- parcellite more advanced clipboard management (with history)
Tweaks
Some software works with better with Notion when the configuration is slightly tweaked. Check the Application-specific tweaks wiki page for more information.
Similar
Notion is rather unique, but the following window managers might be considered similar:
- i3 (dynamic, though with better support for tabs than most. A bit unstable, no scratchpad, no dockapp support)
- awesome
- dwm (dynamic, no tabbing)
- wmii (tabbing seems inconvenient)
- wmfs (no tabs though
- ratpoison (no tabbing though)
- xmonad (rather complicated/geek-oriented)
- scrotwm
- tritium (python, seems to suffer from artifacts and performance problems)
- twindy (currently unmaintained, fixed to 2 panels per workspace)