i3
config_directives.h
Go to the documentation of this file.
1/*
2 * vim:ts=4:sw=4:expandtab
3 *
4 * i3 - an improved 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.h>
13
14#include "config_parser.h"
15
21
23#define I3_CFG Match *current_match, struct ConfigResultIR *result
24
25/* Defines a configuration function, that is, anything that can be called by
26 * using 'call cfg_foo()' in parser-specs/.*.spec. Useful so that we don’t need
27 * to repeat the definition all the time. */
28#define CFGFUN(name, ...) \
29 void cfg_##name(I3_CFG, ##__VA_ARGS__)
30
31/* The following functions are called by the config parser, see
32 * parser-specs/config.spec. They get the parsed parameters and store them in
33 * our data structures, e.g. cfg_font gets a font name and stores it in
34 * config.font.
35 *
36 * Since they are so similar, individual comments were omitted. */
37
38CFGFUN(criteria_init, int _state);
39CFGFUN(criteria_add, const char *ctype, const char *cvalue);
40CFGFUN(criteria_pop_state);
41
42CFGFUN(include, const char *pattern);
43CFGFUN(font, const char *font);
44CFGFUN(exec, const char *exectype, const char *no_startup_id, const char *command);
45CFGFUN(for_window, const char *command);
46CFGFUN(gaps, const char *workspace, const char *type, const long value);
47CFGFUN(smart_borders, const char *enable);
48CFGFUN(smart_gaps, const char *enable);
49CFGFUN(floating_minimum_size, const long width, const long height);
50CFGFUN(floating_maximum_size, const long width, const long height);
51CFGFUN(default_orientation, const char *orientation);
52CFGFUN(workspace_layout, const char *layout);
53CFGFUN(workspace_back_and_forth, const char *value);
54CFGFUN(focus_follows_mouse, const char *value);
55CFGFUN(mouse_warping, const char *value);
56CFGFUN(focus_wrapping, const char *value);
57CFGFUN(force_focus_wrapping, const char *value);
58CFGFUN(force_xinerama, const char *value);
59CFGFUN(disable_randr15, const char *value);
60CFGFUN(fake_outputs, const char *outputs);
61CFGFUN(force_display_urgency_hint, const long duration_ms);
62CFGFUN(focus_on_window_activation, const char *mode);
63CFGFUN(title_align, const char *alignment);
64CFGFUN(show_marks, const char *value);
65CFGFUN(hide_edge_borders, const char *borders);
66CFGFUN(assign_output, const char *output);
67CFGFUN(assign, const char *workspace, bool is_number);
68CFGFUN(no_focus);
69CFGFUN(ipc_socket, const char *path);
70CFGFUN(ipc_kill_timeout, const long timeout_ms);
71CFGFUN(tiling_drag, const char *value);
72CFGFUN(tiling_drag_swap_modifier, const char *modifiers);
73CFGFUN(restart_state, const char *path);
74CFGFUN(popup_during_fullscreen, const char *value);
75CFGFUN(color, const char *colorclass, const char *border, const char *background, const char *text, const char *indicator, const char *child_border);
76CFGFUN(color_single, const char *colorclass, const char *color);
77CFGFUN(floating_modifier, const char *modifiers);
78CFGFUN(default_border, const char *windowtype, const char *border, const long width);
79CFGFUN(workspace, const char *workspace, const char *output);
80CFGFUN(binding, const char *bindtype, const char *modifiers, const char *key, const char *release, const char *border, const char *whole_window, const char *exclude_titlebar, const char *command);
81
82CFGFUN(enter_mode, const char *pango_markup, const char *mode);
83CFGFUN(mode_binding, const char *bindtype, const char *modifiers, const char *key, const char *release, const char *border, const char *whole_window, const char *exclude_titlebar, const char *command);
84
85CFGFUN(bar_font, const char *font);
86CFGFUN(bar_separator_symbol, const char *separator);
87CFGFUN(bar_mode, const char *mode);
88CFGFUN(bar_hidden_state, const char *hidden_state);
89CFGFUN(bar_id, const char *bar_id);
90CFGFUN(bar_output, const char *output);
91CFGFUN(bar_verbose, const char *verbose);
92CFGFUN(bar_height, const long height);
93CFGFUN(bar_padding_one, const long all);
94CFGFUN(bar_padding_two, const long top_and_bottom, const long right_and_left);
95CFGFUN(bar_padding_three, const long top, const long right_and_left, const long bottom);
96CFGFUN(bar_padding_four, const long top, const long right, const long bottom, const long left);
97CFGFUN(bar_modifier, const char *modifiers);
98CFGFUN(bar_wheel_up_cmd, const char *command);
99CFGFUN(bar_wheel_down_cmd, const char *command);
100CFGFUN(bar_bindsym, const char *button, const char *release, const char *command);
101CFGFUN(bar_position, const char *position);
102CFGFUN(bar_i3bar_command, const char *i3bar_command);
103CFGFUN(bar_color, const char *colorclass, const char *border, const char *background, const char *text);
104CFGFUN(bar_socket_path, const char *socket_path);
105CFGFUN(bar_tray_output, const char *output);
106CFGFUN(bar_tray_padding, const long spacing_px);
107CFGFUN(bar_color_single, const char *colorclass, const char *color);
108CFGFUN(bar_status_command, const char *command);
109CFGFUN(bar_workspace_command, const char *command);
110CFGFUN(bar_binding_mode_indicator, const char *value);
111CFGFUN(bar_workspace_buttons, const char *value);
112CFGFUN(bar_workspace_min_width, const long width);
113CFGFUN(bar_strip_workspace_numbers, const char *value);
114CFGFUN(bar_strip_workspace_name, const char *value);
115CFGFUN(bar_start);
116CFGFUN(bar_finish);
struct outputs_head outputs
Definition randr.c:22
void tiling_drag(Con *con, xcb_button_press_event_t *event, bool use_threshold)
Initiates a mouse drag operation on a tiled window.
void workspace_back_and_forth(void)
Focuses the previously focused workspace.
Definition workspace.c:894
static bool verbose
Definition log.c:36
bool force_xinerama
Definition main.c:107
#define CFGFUN(name,...)
i3_event_state_mask_t event_state_from_str(const char *str)
A utility function to convert a string containing the group and modifiers to the corresponding bit ma...
uint32_t i3_event_state_mask_t
The lower 16 bits contain a xcb_key_but_mask_t, the higher 16 bits contain an i3_xkb_group_mask_t.
Definition data.h:136