Skip to main content

rmux_core/input/
mode.rs

1//! Mode flag bits matching tmux `tmux.h:660-680`.
2
3/// Cursor visible.
4pub const MODE_CURSOR: u32 = 0x1;
5/// Insert mode.
6pub const MODE_INSERT: u32 = 0x2;
7/// Application cursor keys.
8pub const MODE_KCURSOR: u32 = 0x4;
9/// Application keypad.
10pub const MODE_KKEYPAD: u32 = 0x8;
11/// Auto wrap.
12pub const MODE_WRAP: u32 = 0x10;
13/// Standard mouse reporting (1000).
14pub const MODE_MOUSE_STANDARD: u32 = 0x20;
15/// Button-event mouse tracking (1002).
16pub const MODE_MOUSE_BUTTON: u32 = 0x40;
17/// Cursor blinking.
18pub const MODE_CURSOR_BLINKING: u32 = 0x80;
19/// Mouse UTF-8 mode (1005).
20pub const MODE_MOUSE_UTF8: u32 = 0x100;
21/// SGR mouse mode (1006).
22pub const MODE_MOUSE_SGR: u32 = 0x200;
23/// Bracketed paste.
24pub const MODE_BRACKETPASTE: u32 = 0x400;
25/// Focus in/out events.
26pub const MODE_FOCUSON: u32 = 0x800;
27/// All mouse tracking (1003).
28pub const MODE_MOUSE_ALL: u32 = 0x1000;
29/// Origin mode.
30pub const MODE_ORIGIN: u32 = 0x2000;
31/// CR+LF mode.
32pub const MODE_CRLF: u32 = 0x4000;
33/// Extended keys mode.
34pub const MODE_KEYS_EXTENDED: u32 = 0x8000;
35/// Cursor very visible (blinking block, from DECTCEM handling).
36pub const MODE_CURSOR_VERY_VISIBLE: u32 = 0x1_0000;
37/// Cursor blinking explicitly set.
38pub const MODE_CURSOR_BLINKING_SET: u32 = 0x2_0000;
39/// Extended keys mode 2.
40pub const MODE_KEYS_EXTENDED_2: u32 = 0x4_0000;
41/// Theme updates from application.
42pub const MODE_THEME_UPDATES: u32 = 0x8_0000;
43/// Synchronized output.
44pub const MODE_SYNC: u32 = 0x10_0000;
45
46/// All mouse modes combined.
47pub const ALL_MOUSE_MODES: u32 = MODE_MOUSE_STANDARD | MODE_MOUSE_BUTTON | MODE_MOUSE_ALL;
48/// Extended key modes combined.
49pub const EXTENDED_KEY_MODES: u32 = MODE_KEYS_EXTENDED | MODE_KEYS_EXTENDED_2;