Re-Indent code

This commit is contained in:
Dave Davenport 2017-04-27 22:59:14 +02:00
parent b1ecb6ca77
commit ce4b1b23b4
17 changed files with 118 additions and 105 deletions

View File

@ -166,7 +166,7 @@ typedef struct
char *theme;
/** Path where plugins can be found. */
char * plugin_path;
char * plugin_path;
} Settings;
/** Global Settings structure. */
extern Settings config;

View File

@ -116,7 +116,6 @@ typedef enum
P_HIGHLIGHT,
} PropertyType;
/**
* Represent the color in theme.
*/

View File

@ -280,5 +280,10 @@ void rofi_view_workers_finalize ( void );
* @returns the current monitor workarea
*/
void rofi_view_get_current_monitor ( int *width, int *height );
/**
* Takes a screenshot.
*/
void rofi_capture_screenshot ( void );
/**@}*/
#endif

View File

@ -25,7 +25,7 @@
*
*/
#define G_LOG_DOMAIN "Dialogs.Combi"
#define G_LOG_DOMAIN "Dialogs.Combi"
#include <config.h>
#include <stdlib.h>

View File

@ -25,7 +25,7 @@
*
*/
#define G_LOG_DOMAIN "Dialogs.DRun"
#define G_LOG_DOMAIN "Dialogs.DRun"
#include <config.h>
#ifdef ENABLE_DRUN

View File

@ -31,7 +31,7 @@
*/
/** The log domain of this dialog. */
#define G_LOG_DOMAIN "Dialogs.Run"
#define G_LOG_DOMAIN "Dialogs.Run"
#include <config.h>
#include <stdlib.h>
@ -189,7 +189,7 @@ static char ** get_apps_external ( char **retv, unsigned int *length, unsigned i
}
if ( fclose ( inp ) != 0 ) {
g_warning ( "Failed to close stdout off executor script: '%s'",
g_strerror ( errno ) );
g_strerror ( errno ) );
}
}
}
@ -232,7 +232,7 @@ static char ** get_apps ( unsigned int *length )
char *strtok_savepointer = NULL;
for ( const char *dirname = strtok_r ( path, sep, &strtok_savepointer ); dirname != NULL; dirname = strtok_r ( NULL, sep, &strtok_savepointer ) ) {
char *fpath = rofi_expand_path ( dirname );
DIR *dir = opendir ( fpath );
DIR *dir = opendir ( fpath );
g_debug ( "Checking path %s for executable.", fpath );
g_free ( fpath );

View File

@ -25,7 +25,7 @@
*
*/
#define G_LOG_DOMAIN "Dialogs.Script"
#define G_LOG_DOMAIN "Dialogs.Script"
#include <config.h>
#include <stdio.h>
@ -69,7 +69,7 @@ static char **get_script_output ( const char *command, unsigned int *length )
}
if ( fclose ( inp ) != 0 ) {
g_warning ( "Failed to close stdout off executor script: '%s'",
g_strerror ( errno ) );
g_strerror ( errno ) );
}
}
}
@ -211,5 +211,5 @@ Mode *script_switcher_parse_setup ( const char *str )
gboolean script_switcher_is_valid ( const char *token )
{
return strchr ( token, ':') != NULL;
return strchr ( token, ':' ) != NULL;
}

View File

@ -33,7 +33,7 @@
/**
* Log domain for the ssh modi.
*/
#define G_LOG_DOMAIN "Dialogs.Ssh"
#define G_LOG_DOMAIN "Dialogs.Ssh"
#include <config.h>
#include <glib.h>

View File

@ -25,7 +25,7 @@
*
*/
#define G_LOG_DOMAIN "Dialogs.Window"
#define G_LOG_DOMAIN "Dialogs.Window"
#include <config.h>

View File

@ -318,7 +318,7 @@ const char ** find_arg_strv ( const char *const key )
retv = g_malloc0 ( ( length + 1 ) * sizeof ( char* ) );
int index = 0;
for ( int i = 0; i < stored_argc; i++ ) {
if ( i < ( stored_argc - 1 ) && strcasecmp ( stored_argv[i], key ) == 0 ) {
if ( i < ( stored_argc - 1 ) && strcasecmp ( stored_argv[i], key ) == 0 ) {
retv[index++] = stored_argv[i + 1];
}
}
@ -679,7 +679,7 @@ char *rofi_expand_path ( const char *input )
unsigned int levenshtein ( const char *needle, const glong needlelen, const char *haystack, const glong haystacklen )
{
if ( needlelen == G_MAXLONG ){
if ( needlelen == G_MAXLONG ) {
// String to long, we cannot handle this.
return UINT_MAX;
}
@ -873,7 +873,7 @@ int rofi_scorer_fuzzy_evaluate ( const char *pattern, glong plen, const char *st
const gchar *pit = pattern, *sit;
enum CharClass prev = NON_WORD;
for ( si = 0, sit = str; si < slen; si++, sit = g_utf8_next_char ( sit ) ) {
enum CharClass cur = rofi_scorer_get_character_class ( g_utf8_get_char ( sit ) );
enum CharClass cur = rofi_scorer_get_character_class ( g_utf8_get_char ( sit ) );
score[si] = rofi_scorer_get_score_for ( prev, cur );
prev = cur;
dp[si] = MIN_SCORE;
@ -964,7 +964,6 @@ int helper_execute_command ( const char *wd, const char *cmd, int run_in_term )
return retv;
}
char *helper_get_theme_path ( const char *file )
{
char *filename = rofi_expand_path ( file );
@ -975,7 +974,8 @@ char *helper_get_theme_path ( const char *file )
if ( g_str_has_suffix ( file, ".rasi" ) ) {
filename = g_strdup ( file );
} else {
}
else {
filename = g_strconcat ( file, ".rasi", NULL );
}
// Check config directory.

View File

@ -283,13 +283,12 @@ static void print_list_of_modi ( int is_term )
}
}
printf ( " * %s%s%s%s\n",
active?"+":"" ,
is_term ? (active?color_green:color_red) : "",
available_modi[i]->name,
is_term ? color_reset : ""
);
active ? "+" : "",
is_term ? ( active ? color_green : color_red ) : "",
available_modi[i]->name,
is_term ? color_reset : ""
);
}
}
static void print_main_application_options ( int is_term )
{
@ -319,8 +318,8 @@ static void help ( G_GNUC_UNUSED int argc, char **argv )
print_options ();
printf ( "\n" );
x11_dump_monitor_layout ();
printf("\n");
printf("Detected modi:\n");
printf ( "\n" );
printf ( "Detected modi:\n" );
print_list_of_modi ( is_term );
printf ( "\n" );
printf ( "Compile time options:\n" );
@ -372,9 +371,9 @@ static void help_print_disabled_mode ( const char *mode )
int is_term = isatty ( fileno ( stdout ) );
// Only output to terminal
if ( is_term ) {
fprintf ( stderr, "Mode %s%s%s is not enabled. I have enabled it for now.\n",
fprintf ( stderr, "Mode %s%s%s is not enabled. I have enabled it for now.\n",
color_red, mode, color_reset );
fprintf ( stderr, "Please consider adding %s%s%s to the list of enabled modi: %smodi: %s%s%s,%s%s.\n",
fprintf ( stderr, "Please consider adding %s%s%s to the list of enabled modi: %smodi: %s%s%s,%s%s.\n",
color_red, mode, color_reset,
color_green, config.modi, color_reset,
color_red, mode, color_reset
@ -385,8 +384,8 @@ static void help_print_mode_not_found ( const char *mode )
{
int is_term = isatty ( fileno ( stdout ) );
fprintf ( stderr, "Mode %s%s%s is not found.\n",
is_term?color_red:"", mode, is_term?color_reset:"");
fprintf( stderr, "The following modi are known:\n");
is_term ? color_red : "", mode, is_term ? color_reset : "" );
fprintf ( stderr, "The following modi are known:\n" );
print_list_of_modi ( is_term );
printf ( "\n" );
}
@ -629,7 +628,7 @@ static int add_mode ( const char * token )
modi[num_modi] = mode;
num_modi++;
}
else if ( script_switcher_is_valid ( token ) ){
else if ( script_switcher_is_valid ( token ) ) {
// If not build in, use custom modi.
Mode *sw = script_switcher_parse_setup ( token );
if ( sw != NULL ) {
@ -647,7 +646,7 @@ static gboolean setup_modi ( void )
char *switcher_str = g_strdup ( config.modi );
// Split token on ','. This modifies switcher_str.
for ( char *token = strtok_r ( switcher_str, sep, &savept ); token != NULL; token = strtok_r ( NULL, sep, &savept ) ) {
if ( add_mode ( token ) == -1 ){
if ( add_mode ( token ) == -1 ) {
help_print_mode_not_found ( token );
g_free ( switcher_str );
return TRUE;
@ -680,11 +679,12 @@ static gboolean main_loop_x11_event_handler ( xcb_generic_event_t *ev, G_GNUC_UN
{
if ( ev == NULL ) {
int status = xcb_connection_has_error ( xcb->connection );
if(status > 0) {
if ( status > 0 ) {
g_warning ( "The XCB connection to X server had a fatal error: %d", status );
g_main_loop_quit ( main_loop );
return G_SOURCE_REMOVE;
} else {
}
else {
g_warning ( "main_loop_x11_event_handler: ev == NULL, status == %d", status );
return G_SOURCE_CONTINUE;
}
@ -908,6 +908,11 @@ static gboolean startup ( G_GNUC_UNUSED gpointer data )
return G_SOURCE_REMOVE;
}
static gboolean record ( void )
{
rofi_capture_screenshot ();
return G_SOURCE_CONTINUE;
}
/**
* @param argc number of input arguments.
* @param argv array of the input arguments.
@ -995,7 +1000,7 @@ int main ( int argc, char *argv[] )
xcb->connection = xcb_connect ( display_str, &xcb->screen_nbr );
if ( xcb_connection_has_error ( xcb->connection ) ) {
g_warning( "Failed to open display: %s", display_str );
g_warning ( "Failed to open display: %s", display_str );
cleanup ();
return EXIT_FAILURE;
}
@ -1163,8 +1168,7 @@ int main ( int argc, char *argv[] )
if ( !dmenu_mode ) {
// setup_modi
if ( setup_modi () )
{
if ( setup_modi () ) {
cleanup ();
return EXIT_FAILURE;
}
@ -1188,7 +1192,7 @@ int main ( int argc, char *argv[] )
for ( GList *iter = g_list_first ( list_of_error_msgs );
iter != NULL; iter = g_list_next ( iter ) ) {
g_warning ( "Error: %s%s%s",
color_bold, ( (GString *) iter->data )->str, color_reset );
color_bold, ( (GString *) iter->data )->str, color_reset );
}
}
rofi_theme = NULL;
@ -1215,6 +1219,11 @@ int main ( int argc, char *argv[] )
cleanup ();
return EXIT_SUCCESS;
}
unsigned int interval = 1;
if ( find_arg_uint ( "-record-screenshots", &interval ) ) {
g_timeout_add ( 1000 / (double) interval, record, NULL );
}
main_loop_source = g_water_xcb_source_new_for_connection ( NULL, xcb->connection, main_loop_x11_event_handler, NULL, NULL );
TICK_N ( "X11 Setup " );

View File

@ -446,10 +446,10 @@ Property *rofi_theme_find_property ( ThemeWidget *widget, PropertyType type, con
return p;
}
g_debug ( "Found property: '%s' on '%s', but type %s does not match expected type %s.",
property, widget->name,
PropertyTypeName[p->type],
PropertyTypeName[type]
);
property, widget->name,
PropertyTypeName[p->type],
PropertyTypeName[type]
);
}
if ( exact ) {
return NULL;

View File

@ -173,7 +173,7 @@ static int lev_sort ( const void *p1, const void *p2, void *arg )
/**
* Stores a screenshot of Rofi at that point in time.
*/
static void menu_capture_screenshot ( void )
void rofi_capture_screenshot ( void )
{
const char *outp = g_getenv ( "ROFI_PNG_OUTPUT" );
if ( CacheState.edit_surf == NULL ) {
@ -190,7 +190,7 @@ static void menu_capture_screenshot ( void )
GDateTime *now = g_date_time_new_now_local ();
// Format filename.
char *timestmp = g_date_time_format ( now, "rofi-%Y-%m-%d-%H%M" );
char *filename = g_strdup_printf ( "%s.png", timestmp );
char *filename = g_strdup_printf ( "%s-%05d.png", timestmp, 0 );
// Build full path
char *fpath = NULL;
if ( outp == NULL ) {
@ -202,7 +202,7 @@ static void menu_capture_screenshot ( void )
// Try the next index.
index++;
// Format filename.
filename = g_strdup_printf ( "%s-%d.png", timestmp, index );
filename = g_strdup_printf ( "%s-%05d.png", timestmp, index );
// Build full path
fpath = g_build_filename ( xdg_pict_dir, filename, NULL );
}
@ -214,7 +214,7 @@ static void menu_capture_screenshot ( void )
cairo_status_t status = cairo_surface_write_to_png ( CacheState.edit_surf, fpath );
if ( status != CAIRO_STATUS_SUCCESS ) {
g_warning ( "Failed to produce screenshot '%s', got error: '%s'", fpath,
cairo_status_to_string ( status ) );
cairo_status_to_string ( status ) );
}
g_free ( fpath );
g_free ( filename );
@ -617,7 +617,7 @@ static void rofi_view_setup_fake_transparency ( const char* const fake_backgroun
if ( s != NULL ) {
if ( cairo_surface_status ( s ) != CAIRO_STATUS_SUCCESS ) {
g_debug ( "Failed to open surface fake background: %s",
cairo_status_to_string ( cairo_surface_status ( s ) ) );
cairo_status_to_string ( cairo_surface_status ( s ) ) );
cairo_surface_destroy ( s );
s = NULL;
}
@ -771,18 +771,18 @@ void __create_window ( MenuFlags menu_flags )
TICK_N ( "done" );
// Set the PID.
pid_t pid= getpid ();
xcb_ewmh_set_wm_pid (&(xcb->ewmh), CacheState.main_window, pid );
pid_t pid = getpid ();
xcb_ewmh_set_wm_pid ( &( xcb->ewmh ), CacheState.main_window, pid );
// Get hostname
const char *hostname = g_get_host_name ();
char *ahost = g_hostname_to_ascii ( hostname );
char *ahost = g_hostname_to_ascii ( hostname );
if ( ahost != NULL ) {
xcb_icccm_set_wm_client_machine(xcb->connection,
CacheState.main_window,
XCB_ATOM_STRING, 8,
strlen(ahost), ahost);
g_free(ahost);
xcb_icccm_set_wm_client_machine ( xcb->connection,
CacheState.main_window,
XCB_ATOM_STRING, 8,
strlen ( ahost ), ahost );
g_free ( ahost );
}
}
@ -1164,7 +1164,7 @@ gboolean rofi_view_trigger_action ( RofiViewState *state, KeyBindingAction actio
xcb_flush ( xcb->connection );
break;
case SCREENSHOT:
menu_capture_screenshot ( );
rofi_capture_screenshot ( );
break;
case TOGGLE_SORT:
if ( state->case_indicator != NULL ) {

View File

@ -25,7 +25,7 @@
*
*/
#define G_LOG_DOMAIN "Widgets.Box"
#define G_LOG_DOMAIN "Widgets.Box"
#include <config.h>
#include <stdio.h>
@ -325,7 +325,7 @@ box * box_create ( const char *name, boxType type )
b->widget.clicked = box_clicked;
b->widget.motion_notify = box_motion_notify;
b->widget.get_desired_height = box_get_desired_height;
b->widget.enabled = rofi_theme_get_boolean ( WIDGET ( b ), "enabled", TRUE );
b->widget.enabled = rofi_theme_get_boolean ( WIDGET ( b ), "enabled", TRUE );
b->spacing = rofi_theme_get_distance ( WIDGET ( b ), "spacing", DEFAULT_SPACING );
return b;

View File

@ -123,7 +123,7 @@ container * container_create ( const char *name )
b->widget.clicked = container_clicked;
b->widget.motion_notify = container_motion_notify;
b->widget.get_desired_height = container_get_desired_height;
b->widget.enabled = rofi_theme_get_boolean ( WIDGET ( b ), "enabled", TRUE );
b->widget.enabled = rofi_theme_get_boolean ( WIDGET ( b ), "enabled", TRUE );
return b;
}

View File

@ -370,7 +370,7 @@ listview *listview_create ( const char *name, listview_update_callback cb, void
lv->widget.clicked = listview_clicked;
lv->widget.motion_notify = listview_motion_notify;
lv->widget.get_desired_height = listview_get_desired_height;
lv->widget.enabled = rofi_theme_get_boolean ( WIDGET ( lv ), "enabled", TRUE );
lv->widget.enabled = rofi_theme_get_boolean ( WIDGET ( lv ), "enabled", TRUE );
lv->eh = eh;
char *n = g_strjoin ( ".", lv->listview_name, "scrollbar", NULL );

View File

@ -84,103 +84,103 @@ typedef struct
* Currently supports string, boolean and number (signed and unsigned).
*/
static XrmOption xrmOptions[] = {
{ xrm_String, "switchers", { .str = &config.modi }, NULL,
{ xrm_String, "switchers", { .str = &config.modi }, NULL,
"", CONFIG_DEFAULT },
{ xrm_String, "modi", { .str = &config.modi }, NULL,
{ xrm_String, "modi", { .str = &config.modi }, NULL,
"Enabled modi", CONFIG_DEFAULT },
{ xrm_SNumber, "width", { .snum = &config.menu_width }, NULL,
{ xrm_SNumber, "width", { .snum = &config.menu_width }, NULL,
"Window width", CONFIG_DEFAULT },
{ xrm_Number, "lines", { .num = &config.menu_lines }, NULL,
{ xrm_Number, "lines", { .num = &config.menu_lines }, NULL,
"Number of lines", CONFIG_DEFAULT },
{ xrm_Number, "columns", { .num = &config.menu_columns }, NULL,
{ xrm_Number, "columns", { .num = &config.menu_columns }, NULL,
"Number of columns", CONFIG_DEFAULT },
{ xrm_String, "font", { .str = &config.menu_font }, NULL,
{ xrm_String, "font", { .str = &config.menu_font }, NULL,
"Font to use", CONFIG_DEFAULT },
{ xrm_Number, "location", { .num = &config.location }, NULL,
{ xrm_Number, "location", { .num = &config.location }, NULL,
"Location on screen", CONFIG_DEFAULT },
{ xrm_SNumber, "yoffset", { .snum = &config.y_offset }, NULL,
{ xrm_SNumber, "yoffset", { .snum = &config.y_offset }, NULL,
"Y-offset relative to location", CONFIG_DEFAULT },
{ xrm_SNumber, "xoffset", { .snum = &config.x_offset }, NULL,
{ xrm_SNumber, "xoffset", { .snum = &config.x_offset }, NULL,
"X-offset relative to location", CONFIG_DEFAULT },
{ xrm_Boolean, "fixed-num-lines", { .num = &config.fixed_num_lines }, NULL,
{ xrm_Boolean, "fixed-num-lines", { .num = &config.fixed_num_lines }, NULL,
"Always show number of lines", CONFIG_DEFAULT },
{ xrm_String, "terminal", { .str = &config.terminal_emulator }, NULL,
{ xrm_String, "terminal", { .str = &config.terminal_emulator }, NULL,
"Terminal to use", CONFIG_DEFAULT },
{ xrm_String, "ssh-client", { .str = &config.ssh_client }, NULL,
{ xrm_String, "ssh-client", { .str = &config.ssh_client }, NULL,
"Ssh client to use", CONFIG_DEFAULT },
{ xrm_String, "ssh-command", { .str = &config.ssh_command }, NULL,
{ xrm_String, "ssh-command", { .str = &config.ssh_command }, NULL,
"Ssh command to execute", CONFIG_DEFAULT },
{ xrm_String, "run-command", { .str = &config.run_command }, NULL,
{ xrm_String, "run-command", { .str = &config.run_command }, NULL,
"Run command to execute", CONFIG_DEFAULT },
{ xrm_String, "run-list-command", { .str = &config.run_list_command }, NULL,
{ xrm_String, "run-list-command", { .str = &config.run_list_command }, NULL,
"Command to get extra run targets", CONFIG_DEFAULT },
{ xrm_String, "run-shell-command", { .str = &config.run_shell_command }, NULL,
{ xrm_String, "run-shell-command", { .str = &config.run_shell_command }, NULL,
"Run command to execute that runs in shell", CONFIG_DEFAULT },
{ xrm_String, "window-command", { .str = &config.window_command }, NULL,
{ xrm_String, "window-command", { .str = &config.window_command }, NULL,
"Command executed on accep-entry-custom for window modus", CONFIG_DEFAULT },
{ xrm_Boolean, "disable-history", { .num = &config.disable_history }, NULL,
{ xrm_Boolean, "disable-history", { .num = &config.disable_history }, NULL,
"Disable history in run/ssh", CONFIG_DEFAULT },
{ xrm_Boolean, "sort", { .num = &config.sort }, NULL,
{ xrm_Boolean, "sort", { .num = &config.sort }, NULL,
"Use sorting", CONFIG_DEFAULT },
{ xrm_Boolean, "levenshtein-sort", { .num = &config.levenshtein_sort }, NULL,
{ xrm_Boolean, "levenshtein-sort", { .num = &config.levenshtein_sort }, NULL,
"Use levenshtein sorting also for fuzzy matching", CONFIG_DEFAULT },
{ xrm_Boolean, "case-sensitive", { .num = &config.case_sensitive }, NULL,
{ xrm_Boolean, "case-sensitive", { .num = &config.case_sensitive }, NULL,
"Set case-sensitivity", CONFIG_DEFAULT },
{ xrm_Boolean, "cycle", { .num = &config.cycle }, NULL,
{ xrm_Boolean, "cycle", { .num = &config.cycle }, NULL,
"Cycle through the results list", CONFIG_DEFAULT },
{ xrm_Boolean, "sidebar-mode", { .num = &config.sidebar_mode }, NULL,
{ xrm_Boolean, "sidebar-mode", { .num = &config.sidebar_mode }, NULL,
"Enable sidebar-mode", CONFIG_DEFAULT },
{ xrm_SNumber, "eh", { .snum = &config.element_height }, NULL,
{ xrm_SNumber, "eh", { .snum = &config.element_height }, NULL,
"Row height (in chars)", CONFIG_DEFAULT },
{ xrm_Boolean, "auto-select", { .num = &config.auto_select }, NULL,
{ xrm_Boolean, "auto-select", { .num = &config.auto_select }, NULL,
"Enable auto select mode", CONFIG_DEFAULT },
{ xrm_Boolean, "parse-hosts", { .num = &config.parse_hosts }, NULL,
{ xrm_Boolean, "parse-hosts", { .num = &config.parse_hosts }, NULL,
"Parse hosts file for ssh mode", CONFIG_DEFAULT },
{ xrm_Boolean, "parse-known-hosts", { .num = &config.parse_known_hosts }, NULL,
{ xrm_Boolean, "parse-known-hosts", { .num = &config.parse_known_hosts }, NULL,
"Parse known_hosts file for ssh mode", CONFIG_DEFAULT },
{ xrm_String, "combi-modi", { .str = &config.combi_modi }, NULL,
{ xrm_String, "combi-modi", { .str = &config.combi_modi }, NULL,
"Set the modi to combine in combi mode", CONFIG_DEFAULT },
{ xrm_String, "matching", { .str = &config.matching }, NULL,
{ xrm_String, "matching", { .str = &config.matching }, NULL,
"Set the matching algorithm. (normal, regex, glob, fuzzy)", CONFIG_DEFAULT },
{ xrm_Boolean, "tokenize", { .num = &config.tokenize }, NULL,
{ xrm_Boolean, "tokenize", { .num = &config.tokenize }, NULL,
"Tokenize input string", CONFIG_DEFAULT },
{ xrm_String, "monitor", { .str = &config.monitor }, NULL,
{ xrm_String, "monitor", { .str = &config.monitor }, NULL,
"", CONFIG_DEFAULT },
/* Alias for dmenu compatibility. */
{ xrm_String, "m", { .str = &config.monitor }, NULL,
{ xrm_String, "m", { .str = &config.monitor }, NULL,
"Monitor id to show on", CONFIG_DEFAULT },
{ xrm_String, "filter", { .str = &config.filter }, NULL,
{ xrm_String, "filter", { .str = &config.filter }, NULL,
"Pre-set filter", CONFIG_DEFAULT },
{ xrm_Boolean, "fullscreen", { .num = &config.fullscreen }, NULL,
{ xrm_Boolean, "fullscreen", { .num = &config.fullscreen }, NULL,
"Fullscreen", CONFIG_DEFAULT },
{ xrm_SNumber, "dpi", { .snum = &config.dpi }, NULL,
{ xrm_SNumber, "dpi", { .snum = &config.dpi }, NULL,
"DPI", CONFIG_DEFAULT },
{ xrm_Number, "threads", { .num = &config.threads }, NULL,
{ xrm_Number, "threads", { .num = &config.threads }, NULL,
"Threads to use for string matching", CONFIG_DEFAULT },
{ xrm_Number, "scroll-method", { .num = &config.scroll_method }, NULL,
{ xrm_Number, "scroll-method", { .num = &config.scroll_method }, NULL,
"Scrolling method. (0: Page, 1: Centered)", CONFIG_DEFAULT },
{ xrm_String, "window-format", { .str = &config.window_format }, NULL,
{ xrm_String, "window-format", { .str = &config.window_format }, NULL,
"Window Format. w (desktop name), t (title), n (name), r (role), c (class)", CONFIG_DEFAULT },
{ xrm_Boolean, "click-to-exit", { .snum = &config.click_to_exit }, NULL,
{ xrm_Boolean, "click-to-exit", { .snum = &config.click_to_exit }, NULL,
"Click outside the window to exit", CONFIG_DEFAULT },
{ xrm_Boolean, "show-match", { .snum = &config.show_match }, NULL,
{ xrm_Boolean, "show-match", { .snum = &config.show_match }, NULL,
"Indicate how it match by underlining it.", CONFIG_DEFAULT },
{ xrm_String, "theme", { .str = &config.theme }, NULL,
{ xrm_String, "theme", { .str = &config.theme }, NULL,
"New style theme file", CONFIG_DEFAULT },
{ xrm_String, "color-normal", { .str = &config.color_normal }, NULL,
{ xrm_String, "color-normal", { .str = &config.color_normal }, NULL,
"Color scheme for normal row", CONFIG_DEFAULT },
{ xrm_String, "color-urgent", { .str = &config.color_urgent }, NULL,
{ xrm_String, "color-urgent", { .str = &config.color_urgent }, NULL,
"Color scheme for urgent row", CONFIG_DEFAULT },
{ xrm_String, "color-active", { .str = &config.color_active }, NULL,
{ xrm_String, "color-active", { .str = &config.color_active }, NULL,
"Color scheme for active row", CONFIG_DEFAULT },
{ xrm_String, "color-window", { .str = &config.color_window }, NULL,
{ xrm_String, "color-window", { .str = &config.color_window }, NULL,
"Color scheme window", CONFIG_DEFAULT },
{ xrm_String, "plugin-path", { .str = &config.plugin_path }, NULL,
{ xrm_String, "plugin-path", { .str = &config.plugin_path }, NULL,
"Directory containing plugins", CONFIG_DEFAULT },
};