rofi  1.7.0
settings.h
Go to the documentation of this file.
1 /*
2  * rofi
3  *
4  * MIT/X11 License
5  * Copyright © 2013-2021 Qball Cow <qball@gmpclient.org>
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining
8  * a copy of this software and associated documentation files (the
9  * "Software"), to deal in the Software without restriction, including
10  * without limitation the rights to use, copy, modify, merge, publish,
11  * distribute, sublicense, and/or sell copies of the Software, and to
12  * permit persons to whom the Software is furnished to do so, subject to
13  * the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be
16  * included in all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21  * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22  * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25  *
26  */
27 
28 #ifndef ROFI_SETTINGS_H
29 #define ROFI_SETTINGS_H
30 
31 #include <glib.h>
32 
38 typedef enum {
39  MM_NORMAL = 0,
40  MM_REGEX = 1,
41  MM_GLOB = 2,
42  MM_FUZZY = 3,
43  MM_PREFIX = 4
45 
49 typedef enum { SORT_NORMAL = 0, SORT_FZF = 1 } SortingMethod;
50 
55 typedef struct {
57  char *modi;
59  char *menu_font;
60 
62  gboolean show_icons;
63 
67  char *ssh_client;
69  char *ssh_command;
71  char *run_command;
81  char *icon_theme;
82 
86  int y_offset;
88  int x_offset;
90  unsigned int fixed_num_lines;
92  unsigned int disable_history;
96  unsigned int sort;
101 
107  unsigned int drun_show_actions;
112 
114  unsigned int case_sensitive;
116  unsigned int cycle;
120  unsigned int sidebar_mode;
122  gboolean hover_select;
124  unsigned int lazy_filter_limit;
126  unsigned int auto_select;
128  unsigned int parse_hosts;
130  unsigned int parse_known_hosts;
132  char *combi_modi;
133  char *matching;
135  unsigned int tokenize;
137  char *monitor;
139  char *filter;
141  int dpi;
143  unsigned int threads;
144  unsigned int scroll_method;
145 
149 
150  char *theme;
152  char *plugin_path;
153 
155  unsigned int max_history_size;
157 
159 
161  char *cache_dir;
162 
165 
169 
171  gboolean benchmark_ui;
172 
173  gboolean normalize_match;
175  gboolean steal_focus;
178 } Settings;
179 
181 #define DEFAULT_MENU_LINES 15
183 #define DEFAULT_MENU_COLUMNS 1
185 #define DEFAULT_MENU_WIDTH 50.0f
186 
188 extern Settings config;
189 #endif // ROFI_SETTINGS_H
WindowLocation
Definition: rofi-types.h:228
MatchingMethod
Definition: settings.h:38
@ MM_NORMAL
Definition: settings.h:39
@ MM_REGEX
Definition: settings.h:40
@ MM_PREFIX
Definition: settings.h:43
@ MM_FUZZY
Definition: settings.h:42
@ MM_GLOB
Definition: settings.h:41
Settings config
SortingMethod
Definition: settings.h:49
@ SORT_FZF
Definition: settings.h:49
@ SORT_NORMAL
Definition: settings.h:49
WindowLocation location
Definition: settings.h:84
unsigned int threads
Definition: settings.h:143
unsigned int disable_history
Definition: settings.h:92
char * combi_modi
Definition: settings.h:132
char * application_fallback_icon
Definition: settings.h:177
char * matching
Definition: settings.h:133
int x_offset
Definition: settings.h:88
unsigned int parse_known_hosts
Definition: settings.h:130
char * cache_dir
Definition: settings.h:161
char * window_format
Definition: settings.h:146
unsigned int scroll_method
Definition: settings.h:144
gboolean drun_reload_desktop_cache
Definition: settings.h:168
char * drun_match_fields
Definition: settings.h:103
MatchingMethod matching_method
Definition: settings.h:134
unsigned int tokenize
Definition: settings.h:135
char * drun_url_launcher
Definition: settings.h:111
char * run_command
Definition: settings.h:71
char * ignored_prefixes
Definition: settings.h:94
unsigned int fixed_num_lines
Definition: settings.h:90
gboolean normalize_match
Definition: settings.h:173
int y_offset
Definition: settings.h:86
char * terminal_emulator
Definition: settings.h:65
char * theme
Definition: settings.h:150
char * plugin_path
Definition: settings.h:152
char * run_shell_command
Definition: settings.h:73
char * window_command
Definition: settings.h:77
unsigned int drun_show_actions
Definition: settings.h:107
gboolean steal_focus
Definition: settings.h:175
unsigned int auto_select
Definition: settings.h:126
int click_to_exit
Definition: settings.h:148
char * filter
Definition: settings.h:139
unsigned int max_history_size
Definition: settings.h:155
unsigned int case_sensitive
Definition: settings.h:114
char * run_list_command
Definition: settings.h:75
unsigned int parse_hosts
Definition: settings.h:128
char * sorting_method
Definition: settings.h:100
char * drun_display_format
Definition: settings.h:109
char * modi
Definition: settings.h:57
gboolean combi_hide_mode_prefix
Definition: settings.h:156
char * drun_categories
Definition: settings.h:105
char * icon_theme
Definition: settings.h:81
char * ssh_command
Definition: settings.h:69
unsigned int sort
Definition: settings.h:96
char * window_match_fields
Definition: settings.h:79
unsigned int lazy_filter_limit
Definition: settings.h:124
gboolean show_icons
Definition: settings.h:62
gboolean window_thumbnail
Definition: settings.h:164
char * menu_font
Definition: settings.h:59
unsigned int sidebar_mode
Definition: settings.h:120
char matching_negate_char
Definition: settings.h:158
gboolean benchmark_ui
Definition: settings.h:171
int dpi
Definition: settings.h:141
SortingMethod sorting_method_enum
Definition: settings.h:98
gboolean drun_use_desktop_cache
Definition: settings.h:167
char * ssh_client
Definition: settings.h:67
gboolean hover_select
Definition: settings.h:122
int element_height
Definition: settings.h:118
char * monitor
Definition: settings.h:137
unsigned int cycle
Definition: settings.h:116