]> git.sur5r.net Git - i3/i3/blob - include/config_directives.h
fd8a4208f0fbbc2ab677f7f00c48a94895f53eb7
[i3/i3] / include / config_directives.h
1 /*
2  * vim:ts=4:sw=4:expandtab
3  *
4  * i3 - an improved dynamic tiling window manager
5  * © 2009 Michael Stapelberg and contributors (see also: LICENSE)
6  *
7  * config_directives.h: all config storing functions (see config_parser.c)
8  *
9  */
10 #pragma once
11
12 #include "config_parser.h"
13
14 /**
15  * A utility function to convert a string containing the group and modifiers to
16  * the corresponding bit mask.
17  */
18 i3_event_state_mask_t event_state_from_str(const char *str);
19
20 /** The beginning of the prototype for every cfg_ function. */
21 #define I3_CFG Match *current_match, struct ConfigResultIR *result
22
23 /* Defines a configuration function, that is, anything that can be called by
24  * using 'call cfg_foo()' in parser-specs/.*.spec. Useful so that we don’t need
25  * to repeat the definition all the time. */
26 #define CFGFUN(name, ...) \
27     void cfg_##name(I3_CFG, ##__VA_ARGS__)
28
29 /* The following functions are called by the config parser, see
30  * parser-specs/config.spec. They get the parsed parameters and store them in
31  * our data structures, e.g. cfg_font gets a font name and stores it in
32  * config.font.
33  *
34  * Since they are so similar, individual comments were omitted. */
35
36 CFGFUN(criteria_init, int _state);
37 CFGFUN(criteria_add, const char *ctype, const char *cvalue);
38 CFGFUN(criteria_pop_state);
39
40 CFGFUN(font, const char *font);
41 CFGFUN(exec, const char *exectype, const char *no_startup_id, const char *command);
42 CFGFUN(for_window, const char *command);
43 CFGFUN(floating_minimum_size, const long width, const long height);
44 CFGFUN(floating_maximum_size, const long width, const long height);
45 CFGFUN(default_orientation, const char *orientation);
46 CFGFUN(workspace_layout, const char *layout);
47 CFGFUN(workspace_back_and_forth, const char *value);
48 CFGFUN(focus_follows_mouse, const char *value);
49 CFGFUN(mouse_warping, const char *value);
50 CFGFUN(force_focus_wrapping, const char *value);
51 CFGFUN(force_xinerama, const char *value);
52 CFGFUN(fake_outputs, const char *outputs);
53 CFGFUN(force_display_urgency_hint, const long duration_ms);
54 CFGFUN(focus_on_window_activation, const char *mode);
55 CFGFUN(show_marks, const char *value);
56 CFGFUN(hide_edge_borders, const char *borders);
57 CFGFUN(assign, const char *workspace);
58 CFGFUN(no_focus);
59 CFGFUN(ipc_socket, const char *path);
60 CFGFUN(restart_state, const char *path);
61 CFGFUN(popup_during_fullscreen, const char *value);
62 CFGFUN(color, const char *colorclass, const char *border, const char *background, const char *text, const char *indicator, const char *decoration_border);
63 CFGFUN(color_single, const char *colorclass, const char *color);
64 CFGFUN(floating_modifier, const char *modifiers);
65 CFGFUN(new_window, const char *windowtype, const char *border, const long width);
66 CFGFUN(workspace, const char *workspace, const char *output);
67 CFGFUN(binding, const char *bindtype, const char *modifiers, const char *key, const char *release, const char *border, const char *whole_window, const char *command);
68
69 CFGFUN(enter_mode, const char *pango_markup, const char *mode);
70 CFGFUN(mode_binding, const char *bindtype, const char *modifiers, const char *key, const char *release, const char *border, const char *whole_window, const char *command);
71
72 CFGFUN(bar_font, const char *font);
73 CFGFUN(bar_separator_symbol, const char *separator);
74 CFGFUN(bar_mode, const char *mode);
75 CFGFUN(bar_hidden_state, const char *hidden_state);
76 CFGFUN(bar_id, const char *bar_id);
77 CFGFUN(bar_output, const char *output);
78 CFGFUN(bar_verbose, const char *verbose);
79 CFGFUN(bar_modifier, const char *modifier);
80 CFGFUN(bar_wheel_up_cmd, const char *command);
81 CFGFUN(bar_wheel_down_cmd, const char *command);
82 CFGFUN(bar_bindsym, const char *button, const char *command);
83 CFGFUN(bar_position, const char *position);
84 CFGFUN(bar_i3bar_command, const char *i3bar_command);
85 CFGFUN(bar_color, const char *colorclass, const char *border, const char *background, const char *text);
86 CFGFUN(bar_socket_path, const char *socket_path);
87 CFGFUN(bar_tray_output, const char *output);
88 CFGFUN(bar_tray_padding, const long spacing_px);
89 CFGFUN(bar_color_single, const char *colorclass, const char *color);
90 CFGFUN(bar_status_command, const char *command);
91 CFGFUN(bar_binding_mode_indicator, const char *value);
92 CFGFUN(bar_workspace_buttons, const char *value);
93 CFGFUN(bar_strip_workspace_numbers, const char *value);
94 CFGFUN(bar_start);
95 CFGFUN(bar_finish);