i3ipc

A pure OCaml implementation of the i3 IPC protocol
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library i3ipc
Module I3ipc . Event
type workspace_change =
| Focus
| Init
| Empty
| Urgent
type workspace_event_info = {
change : workspace_change;
current : Reply.node option;
old : Reply.node option;
}
type output_change =
| Unspecified
type output_event_info = {
change : output_change;
}
type mode_event_info = {
change : string;
pango_markup : bool;
}
type window_change =
| New
| Close
| Focus
| Title
| FullscreenMode
| Move
| Floating
| Urgent
| Mark
type window_event_info = {
change : window_change;
container : Reply.node;
}
type bar_config_event_info = {
bar_config : Reply.bar_config;
}
type binding_change =
| Run
type input_type =
| Keyboard
| Mouse
type binding = {
command : string;
event_state_mask : string list;
input_code : int;
mods : string list option;
symbol : string option;
input_type : input_type;
}
type binding_event_info = {
change : binding_change;
binding : binding;
}
type t =
| Workspace of workspace_event_info
| Output of output_event_info
| Mode of mode_event_info
| Window of window_event_info
| BarConfig of bar_config_event_info
| Binding of binding_event_info

Pretty-printing

val pp_workspace_change : Format.formatter -> workspace_change -> unit
val pp_workspace_event_info : Format.formatter -> workspace_event_info -> unit
val pp_output_change : Format.formatter -> output_change -> unit
val pp_output_event_info : Format.formatter -> output_event_info -> unit
val pp_mode_event_info : Format.formatter -> mode_event_info -> unit
val pp_window_change : Format.formatter -> window_change -> unit
val pp_window_event_info : Format.formatter -> window_event_info -> unit
val pp_bar_config_event_info : Format.formatter -> bar_config_event_info -> unit
val pp_binding_change : Format.formatter -> binding_change -> unit
val pp_input_type : Format.formatter -> input_type -> unit
val pp_binding : Format.formatter -> binding -> unit
val pp_binding_event_info : Format.formatter -> binding_event_info -> unit
val pp : Format.formatter -> t -> unit