2010-11-10 20:31:15 +01:00
|
|
|
/* See LICENSE file for license and copyright information */
|
2010-11-12 13:48:18 +01:00
|
|
|
|
2011-04-18 17:22:44 +02:00
|
|
|
#include "config.h"
|
2010-11-29 14:58:56 +01:00
|
|
|
#include "commands.h"
|
|
|
|
#include "completion.h"
|
2010-11-12 13:48:18 +01:00
|
|
|
#include "shortcuts.h"
|
|
|
|
#include "zathura.h"
|
|
|
|
|
|
|
|
void
|
2011-04-18 17:22:44 +02:00
|
|
|
config_load_default(zathura_t* zathura)
|
2010-11-12 13:48:18 +01:00
|
|
|
{
|
2011-04-20 15:55:09 +02:00
|
|
|
if (!zathura || !zathura->ui.session) {
|
2010-11-12 13:48:18 +01:00
|
|
|
return;
|
2011-04-18 17:22:44 +02:00
|
|
|
}
|
2010-11-12 13:48:18 +01:00
|
|
|
|
2011-04-19 21:54:24 +02:00
|
|
|
int int_value = 0;
|
2011-04-30 13:27:27 +02:00
|
|
|
char* string_value = NULL;
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_session_t* gsession = zathura->ui.session;
|
2011-03-06 14:49:44 +01:00
|
|
|
|
2010-11-13 12:40:48 +01:00
|
|
|
/* general settings */
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_mode_set(gsession, NORMAL);
|
2010-11-13 12:40:48 +01:00
|
|
|
|
2011-02-09 21:28:36 +01:00
|
|
|
/* zathura settings */
|
2011-03-06 14:49:44 +01:00
|
|
|
int_value = 10;
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_setting_add(gsession, "zoom-step", &int_value, INT, false, "Zoom step", NULL);
|
2011-04-19 19:24:03 +02:00
|
|
|
int_value = 1;
|
|
|
|
girara_setting_add(gsession, "page-padding", &int_value, INT, true, "Padding between pages", NULL);
|
2011-03-18 18:40:20 +01:00
|
|
|
int_value = 2;
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_setting_add(gsession, "pages-per-row", &int_value, INT, false, "Number of pages per row", NULL);
|
2011-02-09 21:28:36 +01:00
|
|
|
|
2011-04-30 13:27:27 +02:00
|
|
|
string_value = "#FFFFFF";
|
|
|
|
girara_setting_add(gsession, "recolor-dark-color", string_value, STRING, false, "Recoloring (dark color)", NULL);
|
|
|
|
string_value = "#000000";
|
|
|
|
girara_setting_add(gsession, "recolor-light-color", string_value, STRING, false, "Recoloring (light color)", NULL);
|
2011-04-01 09:55:37 +02:00
|
|
|
|
2010-11-13 10:05:28 +01:00
|
|
|
/* define default shortcuts */
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_c, NULL, sc_abort, 0, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Escape, NULL, sc_abort, 0, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_a, NULL, sc_adjust_window, NORMAL, ADJUST_BESTFIT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_s, NULL, sc_adjust_window, NORMAL, ADJUST_WIDTH, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_i, NULL, sc_change_mode, NORMAL, INSERT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_m, NULL, sc_change_mode, NORMAL, ADD_MARKER, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_apostrophe, NULL, sc_change_mode, NORMAL, EVAL_MARKER, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_slash, NULL, sc_focus_inputbar, NORMAL, 0, &("/"));
|
|
|
|
girara_shortcut_add(gsession, GDK_SHIFT_MASK, GDK_slash, NULL, sc_focus_inputbar, NORMAL, 0, &("/"));
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_question, NULL, sc_focus_inputbar, NORMAL, 0, &("?"));
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_colon, NULL, sc_focus_inputbar, NORMAL, 0, &(":"));
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_o, NULL, sc_focus_inputbar, NORMAL, 0, &(":open "));
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_O, NULL, sc_focus_inputbar, NORMAL, APPEND_FILEPATH, &(":open "));
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_f, NULL, sc_follow, NORMAL, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, 0, "gg", sc_goto, NORMAL | FULLSCREEN, TOP, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, 0, "G", sc_goto, NORMAL | FULLSCREEN, BOTTOM, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_J, NULL, sc_navigate, NORMAL, NEXT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_K, NULL, sc_navigate, NORMAL, PREVIOUS, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_MOD1_MASK, GDK_Right, NULL, sc_navigate, NORMAL, NEXT, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_MOD1_MASK, GDK_Left, NULL, sc_navigate, NORMAL, PREVIOUS, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Left, NULL, sc_navigate, FULLSCREEN, PREVIOUS, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Up, NULL, sc_navigate, FULLSCREEN, PREVIOUS, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Down, NULL, sc_navigate, FULLSCREEN, NEXT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Right, NULL, sc_navigate, FULLSCREEN, NEXT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_k, NULL, sc_navigate_index, INDEX, UP, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_j, NULL, sc_navigate_index, INDEX, DOWN, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_h, NULL, sc_navigate_index, INDEX, COLLAPSE, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_l, NULL, sc_navigate_index, INDEX, EXPAND, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_space, NULL, sc_navigate_index, INDEX, SELECT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Return, NULL, sc_navigate_index, INDEX, SELECT, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_i, NULL, sc_recolor, NORMAL, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_R, NULL, sc_reload, NORMAL, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_r, NULL, sc_rotate, NORMAL, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_h, NULL, sc_scroll, NORMAL, LEFT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_j, NULL, sc_scroll, NORMAL, DOWN, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_k, NULL, sc_scroll, NORMAL, UP, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_l, NULL, sc_scroll, NORMAL, RIGHT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Left, NULL, sc_scroll, NORMAL, LEFT, NULL);
|
2011-04-25 19:52:04 +02:00
|
|
|
girara_shortcut_add(gsession, 0, GDK_Up, NULL, sc_scroll, NORMAL, UP, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Down, NULL, sc_scroll, NORMAL, DOWN, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Right, NULL, sc_scroll, NORMAL, RIGHT, NULL);
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_d, NULL, sc_scroll, NORMAL, HALF_DOWN, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_u, NULL, sc_scroll, NORMAL, HALF_UP, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_f, NULL, sc_scroll, NORMAL, FULL_DOWN, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_b, NULL, sc_scroll, NORMAL, FULL_UP, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_space, NULL, sc_scroll, NORMAL, FULL_DOWN, NULL);
|
2011-04-21 14:30:23 +02:00
|
|
|
girara_shortcut_add(gsession, GDK_SHIFT_MASK, GDK_space, NULL, sc_scroll, NORMAL, FULL_UP, NULL);
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_shortcut_add(gsession, 0, GDK_n, NULL, sc_search, NORMAL, FORWARD, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_N, NULL, sc_search, NORMAL, BACKWARD, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_Tab, NULL, sc_toggle_index, NORMAL | INDEX, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_m, NULL, sc_toggle_inputbar, NORMAL, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_F5, NULL, sc_toggle_fullscreen, NORMAL | FULLSCREEN, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_n, NULL, sc_toggle_statusbar, NORMAL, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_q, NULL, sc_quit, NORMAL, 0, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_plus, NULL, sc_zoom, NORMAL | FULLSCREEN, ZOOM_IN, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_minus, NULL, sc_zoom, NORMAL | FULLSCREEN, ZOOM_OUT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, GDK_equal, NULL, sc_zoom, NORMAL | FULLSCREEN, ZOOM_ORIGINAL, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, 0, "zI", sc_zoom, NORMAL | FULLSCREEN, ZOOM_IN, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, 0, "zO", sc_zoom, NORMAL | FULLSCREEN, ZOOM_OUT, NULL);
|
|
|
|
girara_shortcut_add(gsession, 0, 0, "z0", sc_zoom, NORMAL | FULLSCREEN, ZOOM_ORIGINAL, NULL);
|
2010-11-29 14:58:56 +01:00
|
|
|
|
|
|
|
/* define default inputbar commands */
|
2011-04-18 17:22:44 +02:00
|
|
|
girara_inputbar_command_add(gsession, "bmark", NULL, cmd_bookmark_create, NULL, "Add a bookmark");
|
|
|
|
girara_inputbar_command_add(gsession, "bdelete", NULL, cmd_bookmark_delete, NULL, "Delete a bookmark");
|
|
|
|
girara_inputbar_command_add(gsession, "blist", NULL, cmd_bookmark_open, NULL, "List all bookmarks");
|
|
|
|
girara_inputbar_command_add(gsession, "close", NULL, cmd_close, NULL, "Close current file");
|
|
|
|
girara_inputbar_command_add(gsession, "info", NULL, cmd_info, NULL, "Show file information");
|
|
|
|
girara_inputbar_command_add(gsession, "print", NULL, cmd_print, cc_print, "Print document");
|
|
|
|
girara_inputbar_command_add(gsession, "save", NULL, cmd_save, NULL, "Save document");
|
2010-11-12 13:48:18 +01:00
|
|
|
}
|
2011-04-01 09:55:37 +02:00
|
|
|
|
|
|
|
void
|
2011-04-19 21:54:24 +02:00
|
|
|
config_load_file(zathura_t* zathura, char* path)
|
2011-04-01 09:55:37 +02:00
|
|
|
{
|
2011-04-19 21:54:24 +02:00
|
|
|
if (zathura == NULL) {
|
2011-04-01 09:55:37 +02:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2011-04-19 21:54:24 +02:00
|
|
|
girara_config_parse(zathura->ui.session, path);
|
2011-04-01 09:55:37 +02:00
|
|
|
}
|