Openbox
| Openbox Window Manager | |
|---|---|
| File:2010-04-24-133031 1280x800 scrot.png Basic Openbox session | |
| Developers | Dana Jansens,[1][2] Mikael Magnusson[3] |
| Initial release | 18 September 2002 |
| Repository |
|
| Written in | C |
| Engine | |
| Operating system | Unix-like |
| Type | Stacking window manager |
| License | GPL 2.0 or later[4] |
Openbox is a free, stacking window manager for the X Window System, licensed under the GNU General Public License.[4] Originally derived from Blackbox[4] 0.65.0 (a C++ project), Openbox has been completely re-written in the C programming language and since version 3.0 is no longer based upon any code from Blackbox.[5] Since at least 2010, it has been considered feature complete, bug free and a completed project. Occasional maintenance is done to keep it working, but only if needed.[6]
Openbox is designed to be small, fast, and fully compliant with the Inter-Client Communication Conventions Manual (ICCCM) and Extended Window Manager Hints (EWMH).[7] It supports many features such as menus by which the user can control applications or which display various dynamic information.[4]
Openbox is the standard window manager in LXDE, and often set as the default for LXQt. It is used in Linux distributions such as BunsenLabs, GreenBANG, Lubuntu, Trisquel and Manjaro.[8][9][10][11][12][13][14][15]
The creator and primary author of Openbox is Dana Jansens of Carleton University in Ottawa, Ontario, Canada.[1][16]
Using Openbox
[edit | edit source]Openbox provides a right-click (or any other key-binding) "root menu" on the desktop,[4] and allows users to configure the way windows are managed. When a window is minimized, it becomes invisible. To bring windows up again, most use Alt+Tab ↹ or the Desktop menu, accessible by right-clicking. Or, sometimes, by middle-button-clicking. Extending Openbox with other small programs that add icons, taskbars,[4] launchers, eyecandy and others is common.
Configuration
[edit | edit source]There are only two configuration files, both located in ~/.config/openbox. They are named menu.xml and rc.xml. These can either be edited manually or with the graphical configuration tools ObConf and obmenu.[4][17][18]
All mouse and key-bindings can be configured. For example, a user can set:
- a window to go to desktop 3 when the close button is clicked with the middle mouse button
- when scrolling on an icon to move to the next/previous desktop
- raise or not raise when clicking/moving a window
Pipe menus
[edit | edit source]Openbox has a dynamic menu system that uses "pipe menus".[4][19] A menu item in a piped menu system can accept the standard output of a shell script (or other executable) in order to generate a sub-menu. Because the script runs every time the pointer activates it, and as the script can assess environmental conditions, piped menus enable conditional branching to be built into the menu system.[citation needed] When the window manager is restarted, a static menu system as used on most window managers gets its layout once and will not have the ability to modify the menu layout depending on environmental factors.[citation needed]
See also
[edit | edit source]Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').
- Fluxbox – another fork of Blackbox
- Comparison of X window managers
References
[edit | edit source]- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e f g h * Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).* Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
External links
[edit | edit source]- Lua error in Module:Official_website at line 94: attempt to index field 'wikibase' (a nil value).