[−][src]Crate penrose
A tiling window manager in the style of Xmonad
Re-exports
pub use data_types::ColorScheme; |
pub use data_types::Config; |
pub use layout::Layout; |
pub use layout::LayoutKind; |
pub use manager::WindowManager; |
pub use xconnection::XcbConnection; |
Modules
client | Metadata around X clients and manipulating them |
data_types | Simple data types and enums |
helpers | Utility functions for use in other parts of penrose |
layout | Layouts are maintained per monitor and allow for indepent management of the two paramaters (n_main, main_ratio) that are used to modify layout logic. As penrose makes use of a tagging system as opposed to workspaces, layouts will be passed a Vec of clients to handle which is determined by the current client and monitor tags. arrange is only called if there are clients to handle so there is no need to check that clients.len() > 0. r is the monitor Region defining the size of the monitor for the layout to position windows. |
macros | Utility macros for use in the rest of penrose. Not intended for general use |
manager | Main logic for running Penrose |
screen | Information on connected displays |
workspace | A Workspace is a set of displayed clients and a Layout arranging them |
xconnection | API wrapper for talking to the X server using XCB |
Macros
debug | Log an DBUG level message to stderr if we were compiled in debug |
die | log the reason why we we're dying and immediately exit |
gen_keybindings | make creating all of the key bindings less verbose |
log | Log an INFO level message to stderr |
map | make creating a hash-map a little less verbose |
notify | use notify-send to trigger a pop up window with a message (used for debugging) |
run_external | kick off an external program as part of a key/mouse binding. explicitly redirects stderr to /dev/null |
run_internal | kick off an internal method on the window manager as part of a key/mouse binding |
warn | Log a WARN level message to stderr |