Merge branch 'develop'

This commit is contained in:
Moritz Lipp 2012-08-30 20:11:46 +02:00
commit 09315c6b82
47 changed files with 4384 additions and 1369 deletions

View file

@ -3,7 +3,7 @@ zathura is written by:
Moritz Lipp <mlq@pwmt.org> Moritz Lipp <mlq@pwmt.org>
Sebastian Ramacher <s.ramacher@gmx.at> Sebastian Ramacher <s.ramacher@gmx.at>
Other contributors are (in alphabetical order): Other contributors are (in no particular order):
Aepelzen <abietz@gmx.de> Aepelzen <abietz@gmx.de>
Pavel Borzenkov <pavel.borzenkov@gmail.com> Pavel Borzenkov <pavel.borzenkov@gmail.com>
@ -14,3 +14,6 @@ Felix Herrmann <felix@herrmann-koenigsberg.de>
int3 <jezreel@gmail.com> int3 <jezreel@gmail.com>
karottenreibe <k@rottenrei.be> karottenreibe <k@rottenrei.be>
Johannes Meng <j@jmeng.de> Johannes Meng <j@jmeng.de>
J. Commelin <jcommeli@math.leidenuniv.nl>
Julian Orth <ju.orth@googlemail.com>
Roland Schatz <roland.schatz@students.jku.at>

View file

@ -118,7 +118,35 @@ cb_pages_per_row_value_changed(girara_session_t* session, const char* UNUSED(nam
pages_per_row = 1; pages_per_row = 1;
} }
page_widget_set_mode(zathura, pages_per_row); unsigned int first_page_column = 1;
girara_setting_get(session, "first-page-column", &first_page_column);
page_widget_set_mode(zathura, pages_per_row, first_page_column);
if (zathura->document != NULL) {
unsigned int current_page = zathura_document_get_current_page_number(zathura->document);
page_set_delayed(zathura, current_page);
}
}
void
cb_first_page_column_value_changed(girara_session_t* session, const char* UNUSED(name), girara_setting_type_t UNUSED(type), void* value, void* UNUSED(data))
{
g_return_if_fail(value != NULL);
g_return_if_fail(session != NULL);
g_return_if_fail(session->global.data != NULL);
zathura_t* zathura = session->global.data;
int first_page_column = *(int*) value;
if (first_page_column < 1) {
first_page_column = 1;
}
unsigned int pages_per_row = 1;
girara_setting_get(session, "pages-per-row", &pages_per_row);
page_widget_set_mode(zathura, pages_per_row, first_page_column);
if (zathura->document != NULL) { if (zathura->document != NULL) {
unsigned int current_page = zathura_document_get_current_page_number(zathura->document); unsigned int current_page = zathura_document_get_current_page_number(zathura->document);
@ -337,6 +365,25 @@ cb_setting_recolor_change(girara_session_t* session, const char* name,
} }
} }
void
cb_setting_recolor_keep_hue_change(girara_session_t* session, const char* name,
girara_setting_type_t UNUSED(type), void* value, void* UNUSED(data))
{
g_return_if_fail(value != NULL);
g_return_if_fail(session != NULL);
g_return_if_fail(session->global.data != NULL);
g_return_if_fail(name != NULL);
zathura_t* zathura = session->global.data;
bool bool_value = *((bool*) value);
if (zathura->global.recolor_keep_hue != bool_value) {
zathura->global.recolor_keep_hue = bool_value;
render_all(zathura);
}
}
bool bool
cb_unknown_command(girara_session_t* session, const char* input) cb_unknown_command(girara_session_t* session, const char* input)
{ {

View file

@ -47,6 +47,18 @@ void cb_view_vadjustment_value_changed(GtkAdjustment *adjustment, gpointer data)
*/ */
void cb_pages_per_row_value_changed(girara_session_t* session, const char* name, void cb_pages_per_row_value_changed(girara_session_t* session, const char* name,
girara_setting_type_t type, void* value, void* data); girara_setting_type_t type, void* value, void* data);
/**
* This function gets called when the value of the "first-page-column"
* variable changes
*
* @param session The current girara session
* @param name The name of the row
* @param type The settings type
* @param value The value
* @param data Custom data
*/
void cb_first_page_column_value_changed(girara_session_t* session, const char* name,
girara_setting_type_t type, void* value, void* data);
/** /**
* Called when an index element is activated (e.g.: double click) * Called when an index element is activated (e.g.: double click)
@ -111,6 +123,19 @@ bool cb_view_resized(GtkWidget* widget, GtkAllocation* allocation, zathura_t* za
void cb_setting_recolor_change(girara_session_t* session, const char* name, void cb_setting_recolor_change(girara_session_t* session, const char* name,
girara_setting_type_t type, void* value, void* data); girara_setting_type_t type, void* value, void* data);
/**
* Emitted when the 'recolor-keephue' setting is changed
*
* @param session Girara session
* @param name Name of the setting ("recolor")
* @param type Type of the setting (BOOLEAN)
* @param value New value
* @param data Custom data
*/
void cb_setting_recolor_keep_hue_change(girara_session_t* session, const char* name,
girara_setting_type_t type, void* value, void* data);
/** /**
* Unknown command handler which is used to handle the strict numeric goto * Unknown command handler which is used to handle the strict numeric goto
* command * command

View file

@ -15,11 +15,13 @@
#include "utils.h" #include "utils.h"
#include "page-widget.h" #include "page-widget.h"
#include "page.h" #include "page.h"
#include "plugin.h"
#include "internal.h" #include "internal.h"
#include "render.h" #include "render.h"
#include <girara/session.h> #include <girara/session.h>
#include <girara/settings.h> #include <girara/settings.h>
#include <girara/commands.h>
#include <girara/datastructures.h> #include <girara/datastructures.h>
#include <girara/utils.h> #include <girara/utils.h>
@ -486,6 +488,27 @@ error_ret:
return true; return true;
} }
bool
cmd_exec(girara_session_t* session, girara_list_t* argument_list)
{
g_return_val_if_fail(session != NULL, false);
g_return_val_if_fail(session->global.data != NULL, false);
zathura_t* zathura = session->global.data;
if (zathura->document != NULL) {
const char* path = zathura_document_get_path(zathura->document);
GIRARA_LIST_FOREACH(argument_list, char*, iter, value)
char* r = NULL;
if ((r = replace_substring(value, "$FILE", path)) != NULL) {
girara_list_iterator_set(iter, r);
}
GIRARA_LIST_FOREACH_END(argument_list, char*, iter, value);
}
return girara_exec_with_argument_list(session, argument_list);
}
bool bool
cmd_offset(girara_session_t* session, girara_list_t* argument_list) cmd_offset(girara_session_t* session, girara_list_t* argument_list)
{ {
@ -518,3 +541,23 @@ cmd_offset(girara_session_t* session, girara_list_t* argument_list)
return true; return true;
} }
bool
cmd_version(girara_session_t* session, girara_list_t* UNUSED(argument_list))
{
g_return_val_if_fail(session != NULL, false);
g_return_val_if_fail(session->global.data != NULL, false);
zathura_t* zathura = session->global.data;
char* string = zathura_get_version_string(zathura, true);
if (string == NULL) {
return false;
}
/* display information */
girara_notify(session, GIRARA_INFO, "%s", string);
g_free(string);
return true;
}

View file

@ -142,6 +142,15 @@ bool cmd_search(girara_session_t* session, const char* input, girara_argument_t*
*/ */
bool cmd_export(girara_session_t* session, girara_list_t* argument_list); bool cmd_export(girara_session_t* session, girara_list_t* argument_list);
/**
* Execute command
*
* @param session The used girara session
* @param argument_list List of passed arguments
* @return true if no error occured
*/
bool cmd_exec(girara_session_t* session, girara_list_t* argument_list);
/** /**
* Set page offset * Set page offset
* *
@ -151,4 +160,13 @@ bool cmd_export(girara_session_t* session, girara_list_t* argument_list);
*/ */
bool cmd_offset(girara_session_t* session, girara_list_t* argument_list); bool cmd_offset(girara_session_t* session, girara_list_t* argument_list);
/**
* Shows version information
*
* @param session The used girara session
* @param argument_list List of passed arguments
* @return true if no error occured
*/
bool cmd_version(girara_session_t* session, girara_list_t* argument_list);
#endif // COMMANDS_H #endif // COMMANDS_H

View file

@ -32,7 +32,7 @@ compare_case_insensitive(const char* str1, const char* str2)
static girara_list_t* static girara_list_t*
list_files(zathura_t* zathura, const char* current_path, const char* current_file, list_files(zathura_t* zathura, const char* current_path, const char* current_file,
int current_file_length, bool is_dir, bool check_file_ext) unsigned int current_file_length, bool is_dir, bool check_file_ext)
{ {
if (zathura == NULL || zathura->ui.session == NULL || current_path == NULL) { if (zathura == NULL || zathura->ui.session == NULL || current_path == NULL) {
return NULL; return NULL;
@ -60,7 +60,7 @@ list_files(zathura_t* zathura, const char* current_path, const char* current_fil
goto error_free; goto error_free;
} }
int e_length = strlen(e_name); size_t e_length = strlen(e_name);
if (show_hidden == false && e_name[0] == '.') { if (show_hidden == false && e_name[0] == '.') {
g_free(e_name); g_free(e_name);
@ -112,7 +112,7 @@ error_free:
return NULL; return NULL;
} }
girara_completion_t* static girara_completion_t*
list_files_for_cc(zathura_t* zathura, const char* input, bool check_file_ext) list_files_for_cc(zathura_t* zathura, const char* input, bool check_file_ext)
{ {
girara_completion_t* completion = girara_completion_init(); girara_completion_t* completion = girara_completion_init();

View file

@ -53,8 +53,13 @@ cb_page_padding_changed(girara_session_t* session, const char* UNUSED(name),
int val = *(int*) value; int val = *(int*) value;
if (GTK_IS_TABLE(zathura->ui.page_widget) == TRUE) { if (GTK_IS_TABLE(zathura->ui.page_widget) == TRUE) {
#if (GTK_MAJOR_VERSION == 3)
gtk_grid_set_row_spacing(GTK_GRID(zathura->ui.page_widget), val);
gtk_grid_set_column_spacing(GTK_GRID(zathura->ui.page_widget), val);
#else
gtk_table_set_row_spacings(GTK_TABLE(zathura->ui.page_widget), val); gtk_table_set_row_spacings(GTK_TABLE(zathura->ui.page_widget), val);
gtk_table_set_col_spacings(GTK_TABLE(zathura->ui.page_widget), val); gtk_table_set_col_spacings(GTK_TABLE(zathura->ui.page_widget), val);
#endif
} }
} }
@ -104,13 +109,17 @@ config_load_default(zathura_t* zathura)
girara_setting_add(gsession, "page-padding", &int_value, INT, false, _("Padding between pages"), cb_page_padding_changed, NULL); girara_setting_add(gsession, "page-padding", &int_value, INT, false, _("Padding between pages"), cb_page_padding_changed, NULL);
int_value = 1; int_value = 1;
girara_setting_add(gsession, "pages-per-row", &int_value, INT, false, _("Number of pages per row"), cb_pages_per_row_value_changed, NULL); girara_setting_add(gsession, "pages-per-row", &int_value, INT, false, _("Number of pages per row"), cb_pages_per_row_value_changed, NULL);
int_value = 1;
girara_setting_add(gsession, "first-page-column", &int_value, INT, false, _("Column of the first page"),cb_first_page_column_value_changed, NULL);
float_value = 40; float_value = 40;
girara_setting_add(gsession, "scroll-step", &float_value, FLOAT, false, _("Scroll step"), NULL, NULL); girara_setting_add(gsession, "scroll-step", &float_value, FLOAT, false, _("Scroll step"), NULL, NULL);
float_value = -1;
girara_setting_add(gsession, "scroll-hstep", &float_value, FLOAT, false, _("Horizontal scroll step"), NULL, NULL);
int_value = 10; int_value = 10;
girara_setting_add(gsession, "zoom-min", &int_value, INT, false, _("Zoom minimum"), NULL, NULL); girara_setting_add(gsession, "zoom-min", &int_value, INT, false, _("Zoom minimum"), NULL, NULL);
int_value = 1000; int_value = 1000;
girara_setting_add(gsession, "zoom-max", &int_value, INT, false, _("Zoom maximum"), NULL, NULL); girara_setting_add(gsession, "zoom-max", &int_value, INT, false, _("Zoom maximum"), NULL, NULL);
int_value = 5; int_value = 20;
girara_setting_add(gsession, "page-store-threshold", &int_value, INT, false, _("Life time (in seconds) of a hidden page"), NULL, NULL); girara_setting_add(gsession, "page-store-threshold", &int_value, INT, false, _("Life time (in seconds) of a hidden page"), NULL, NULL);
girara_setting_add(gsession, "page-store-interval", &int_value, INT, true, _("Amount of seconds between each cache purge"), NULL, NULL); girara_setting_add(gsession, "page-store-interval", &int_value, INT, true, _("Amount of seconds between each cache purge"), NULL, NULL);
@ -126,9 +135,15 @@ config_load_default(zathura_t* zathura)
bool_value = false; bool_value = false;
girara_setting_add(gsession, "recolor", &bool_value, BOOLEAN, false, _("Recolor pages"), cb_setting_recolor_change, NULL); girara_setting_add(gsession, "recolor", &bool_value, BOOLEAN, false, _("Recolor pages"), cb_setting_recolor_change, NULL);
bool_value = false; bool_value = false;
girara_setting_add(gsession, "recolor-keephue", &bool_value, BOOLEAN, false, _("When recoloring keep original hue and adjust lightness only"), cb_setting_recolor_keep_hue_change, NULL);
bool_value = false;
girara_setting_add(gsession, "scroll-wrap", &bool_value, BOOLEAN, false, _("Wrap scrolling"), NULL, NULL); girara_setting_add(gsession, "scroll-wrap", &bool_value, BOOLEAN, false, _("Wrap scrolling"), NULL, NULL);
bool_value = false; bool_value = false;
girara_setting_add(gsession, "advance-pages-per-row", &bool_value, BOOLEAN, false, _("Advance number of pages per row"), NULL, NULL); girara_setting_add(gsession, "advance-pages-per-row", &bool_value, BOOLEAN, false, _("Advance number of pages per row"), NULL, NULL);
bool_value = false;
girara_setting_add(gsession, "zoom-center", &bool_value, BOOLEAN, false, _("Horizontally centered zoom"), NULL, NULL);
bool_value = true;
girara_setting_add(gsession, "search-hadjust", &bool_value, BOOLEAN, false, _("Center result horizontally"), NULL, NULL);
float_value = 0.5; float_value = 0.5;
girara_setting_add(gsession, "highlight-transparency", &float_value, FLOAT, false, _("Transparency for highlighting"), NULL, NULL); girara_setting_add(gsession, "highlight-transparency", &float_value, FLOAT, false, _("Transparency for highlighting"), NULL, NULL);
bool_value = true; bool_value = true;
@ -144,6 +159,10 @@ config_load_default(zathura_t* zathura)
girara_setting_add(gsession, "nohlsearch", &bool_value, BOOLEAN, false, _("Highlight search results"), cb_nohlsearch_changed, NULL); girara_setting_add(gsession, "nohlsearch", &bool_value, BOOLEAN, false, _("Highlight search results"), cb_nohlsearch_changed, NULL);
bool_value = true; bool_value = true;
girara_setting_add(gsession, "abort-clear-search", &bool_value, BOOLEAN, false, _("Clear search results on abort"), NULL, NULL); girara_setting_add(gsession, "abort-clear-search", &bool_value, BOOLEAN, false, _("Clear search results on abort"), NULL, NULL);
bool_value = false;
girara_setting_add(gsession, "window-title-basename", &bool_value, BOOLEAN, false, _("Use basename of the file in the window title"), NULL, NULL);
bool_value = false;
girara_setting_add(gsession, "synctex", &bool_value, BOOLEAN, false, _("Enable synctex support"), NULL, NULL);
/* define default shortcuts */ /* define default shortcuts */
girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_KEY_c, NULL, sc_abort, 0, 0, NULL); girara_shortcut_add(gsession, GDK_CONTROL_MASK, GDK_KEY_c, NULL, sc_abort, 0, 0, NULL);
@ -242,14 +261,20 @@ config_load_default(zathura_t* zathura)
girara_shortcut_add(gsession, 0, GDK_KEY_minus, NULL, sc_zoom, FULLSCREEN, ZOOM_OUT, NULL); girara_shortcut_add(gsession, 0, GDK_KEY_minus, NULL, sc_zoom, FULLSCREEN, ZOOM_OUT, NULL);
girara_shortcut_add(gsession, 0, GDK_KEY_equal, NULL, sc_zoom, NORMAL, ZOOM_ORIGINAL, NULL); girara_shortcut_add(gsession, 0, GDK_KEY_equal, NULL, sc_zoom, NORMAL, ZOOM_ORIGINAL, NULL);
girara_shortcut_add(gsession, 0, GDK_KEY_equal, NULL, sc_zoom, FULLSCREEN, ZOOM_ORIGINAL, NULL); girara_shortcut_add(gsession, 0, GDK_KEY_equal, NULL, sc_zoom, FULLSCREEN, ZOOM_ORIGINAL, NULL);
girara_shortcut_add(gsession, 0, 0, "zi", sc_zoom, NORMAL, ZOOM_IN, NULL);
girara_shortcut_add(gsession, 0, 0, "zi", sc_zoom, FULLSCREEN, ZOOM_IN, NULL);
girara_shortcut_add(gsession, 0, 0, "zI", sc_zoom, NORMAL, ZOOM_IN, NULL); girara_shortcut_add(gsession, 0, 0, "zI", sc_zoom, NORMAL, ZOOM_IN, NULL);
girara_shortcut_add(gsession, 0, 0, "zI", sc_zoom, FULLSCREEN, ZOOM_IN, NULL); girara_shortcut_add(gsession, 0, 0, "zI", sc_zoom, FULLSCREEN, ZOOM_IN, NULL);
girara_shortcut_add(gsession, 0, 0, "zo", sc_zoom, NORMAL, ZOOM_OUT, NULL);
girara_shortcut_add(gsession, 0, 0, "zo", sc_zoom, FULLSCREEN, ZOOM_OUT, NULL);
girara_shortcut_add(gsession, 0, 0, "zO", sc_zoom, NORMAL, ZOOM_OUT, NULL); girara_shortcut_add(gsession, 0, 0, "zO", sc_zoom, NORMAL, ZOOM_OUT, NULL);
girara_shortcut_add(gsession, 0, 0, "zO", sc_zoom, FULLSCREEN, ZOOM_OUT, NULL); girara_shortcut_add(gsession, 0, 0, "zO", sc_zoom, FULLSCREEN, ZOOM_OUT, NULL);
girara_shortcut_add(gsession, 0, 0, "z0", sc_zoom, NORMAL, ZOOM_ORIGINAL, NULL); girara_shortcut_add(gsession, 0, 0, "z0", sc_zoom, NORMAL, ZOOM_ORIGINAL, NULL);
girara_shortcut_add(gsession, 0, 0, "z0", sc_zoom, FULLSCREEN, ZOOM_ORIGINAL, NULL); girara_shortcut_add(gsession, 0, 0, "z0", sc_zoom, FULLSCREEN, ZOOM_ORIGINAL, NULL);
girara_shortcut_add(gsession, 0, GDK_KEY_equal, NULL, sc_zoom, NORMAL, ZOOM_SPECIFIC, NULL); girara_shortcut_add(gsession, 0, 0, "zz", sc_zoom, NORMAL, ZOOM_SPECIFIC, NULL);
girara_shortcut_add(gsession, 0, GDK_KEY_equal, NULL, sc_zoom, FULLSCREEN, ZOOM_SPECIFIC, NULL); girara_shortcut_add(gsession, 0, 0, "zz", sc_zoom, FULLSCREEN, ZOOM_SPECIFIC, NULL);
girara_shortcut_add(gsession, 0, 0, "zZ", sc_zoom, NORMAL, ZOOM_SPECIFIC, NULL);
girara_shortcut_add(gsession, 0, 0, "zZ", sc_zoom, FULLSCREEN, ZOOM_SPECIFIC, NULL);
/* mouse events */ /* mouse events */
girara_mouse_event_add(gsession, 0, 0, sc_mouse_scroll, NORMAL, GIRARA_EVENT_SCROLL_UP, UP, NULL); girara_mouse_event_add(gsession, 0, 0, sc_mouse_scroll, NORMAL, GIRARA_EVENT_SCROLL_UP, UP, NULL);
@ -270,6 +295,7 @@ config_load_default(zathura_t* zathura)
girara_inputbar_command_add(gsession, "blist", NULL, cmd_bookmark_open, cc_bookmarks, _("List all bookmarks")); girara_inputbar_command_add(gsession, "blist", NULL, cmd_bookmark_open, cc_bookmarks, _("List all bookmarks"));
girara_inputbar_command_add(gsession, "close", NULL, cmd_close, NULL, _("Close current file")); 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, "info", NULL, cmd_info, NULL, _("Show file information"));
girara_inputbar_command_add(gsession, "exec", NULL, cmd_exec, NULL, _("Execute a command"));
girara_inputbar_command_add(gsession, "help", NULL, cmd_help, NULL, _("Show help")); girara_inputbar_command_add(gsession, "help", NULL, cmd_help, NULL, _("Show help"));
girara_inputbar_command_add(gsession, "open", "o", cmd_open, cc_open, _("Open document")); girara_inputbar_command_add(gsession, "open", "o", cmd_open, cc_open, _("Open document"));
girara_inputbar_command_add(gsession, "quit", "q", cmd_quit, NULL, _("Close zathura")); girara_inputbar_command_add(gsession, "quit", "q", cmd_quit, NULL, _("Close zathura"));
@ -282,6 +308,7 @@ config_load_default(zathura_t* zathura)
girara_inputbar_command_add(gsession, "delmarks", "delm", cmd_marks_delete, NULL, _("Delete the specified marks")); girara_inputbar_command_add(gsession, "delmarks", "delm", cmd_marks_delete, NULL, _("Delete the specified marks"));
girara_inputbar_command_add(gsession, "nohlsearch", "nohl", cmd_nohlsearch, NULL, _("Don't highlight current search results")); girara_inputbar_command_add(gsession, "nohlsearch", "nohl", cmd_nohlsearch, NULL, _("Don't highlight current search results"));
girara_inputbar_command_add(gsession, "hlsearch", NULL, cmd_hlsearch, NULL, _("Highlight current search results")); girara_inputbar_command_add(gsession, "hlsearch", NULL, cmd_hlsearch, NULL, _("Highlight current search results"));
girara_inputbar_command_add(gsession, "version", NULL, cmd_version, NULL, _("Show version information"));
girara_special_command_add(gsession, '/', cmd_search, true, FORWARD, NULL); girara_special_command_add(gsession, '/', cmd_search, true, FORWARD, NULL);
girara_special_command_add(gsession, '?', cmd_search, true, BACKWARD, NULL); girara_special_command_add(gsession, '?', cmd_search, true, BACKWARD, NULL);

View file

@ -3,7 +3,7 @@
ZATHURA_VERSION_MAJOR = 0 ZATHURA_VERSION_MAJOR = 0
ZATHURA_VERSION_MINOR = 2 ZATHURA_VERSION_MINOR = 2
ZATHURA_VERSION_REV = 0 ZATHURA_VERSION_REV = 1
# If the API changes, the API version and the ABI version have to be bumped. # If the API changes, the API version and the ABI version have to be bumped.
ZATHURA_API_VERSION = 2 ZATHURA_API_VERSION = 2
# If the ABI breaks for any reason, this has to be bumped. # If the ABI breaks for any reason, this has to be bumped.
@ -16,7 +16,7 @@ ZATHURA_GTK_VERSION ?= 2
# minimum required zathura version # minimum required zathura version
# If you want to disable the check, set GIRARA_VERSION_CHECK to 0. # If you want to disable the check, set GIRARA_VERSION_CHECK to 0.
GIRARA_MIN_VERSION = 0.1.3 GIRARA_MIN_VERSION = 0.1.4
GIRARA_VERSION_CHECK ?= $(shell pkg-config --atleast-version=$(GIRARA_MIN_VERSION) girara-gtk${ZATHURA_GTK_VERSION}; echo $$?) GIRARA_VERSION_CHECK ?= $(shell pkg-config --atleast-version=$(GIRARA_MIN_VERSION) girara-gtk${ZATHURA_GTK_VERSION}; echo $$?)
# database # database

View file

@ -21,6 +21,7 @@
#define KEY_SCALE "scale" #define KEY_SCALE "scale"
#define KEY_ROTATE "rotate" #define KEY_ROTATE "rotate"
#define KEY_PAGES_PER_ROW "pages-per-row" #define KEY_PAGES_PER_ROW "pages-per-row"
#define KEY_FIRST_PAGE_COLUMN "first-page-column"
#define KEY_POSITION_X "position-x" #define KEY_POSITION_X "position-x"
#define KEY_POSITION_Y "position-y" #define KEY_POSITION_Y "position-y"
@ -387,8 +388,9 @@ plain_set_fileinfo(zathura_database_t* db, const char* file, zathura_fileinfo_t*
g_key_file_set_string (priv->history, name, KEY_SCALE, tmp); g_key_file_set_string (priv->history, name, KEY_SCALE, tmp);
g_free(tmp); g_free(tmp);
g_key_file_set_integer(priv->history, name, KEY_ROTATE, file_info->rotation); g_key_file_set_integer(priv->history, name, KEY_ROTATE, file_info->rotation);
g_key_file_set_integer(priv->history, name, KEY_PAGES_PER_ROW, file_info->pages_per_row); g_key_file_set_integer(priv->history, name, KEY_PAGES_PER_ROW, file_info->pages_per_row);
g_key_file_set_integer(priv->history, name, KEY_FIRST_PAGE_COLUMN, file_info->first_page_column);
tmp = g_strdup_printf("%f", file_info->position_x); tmp = g_strdup_printf("%f", file_info->position_x);
g_key_file_set_string(priv->history, name, KEY_POSITION_X, tmp); g_key_file_set_string(priv->history, name, KEY_POSITION_X, tmp);
@ -424,10 +426,11 @@ plain_get_fileinfo(zathura_database_t* db, const char* file, zathura_fileinfo_t*
return false; return false;
} }
file_info->current_page = g_key_file_get_integer(priv->history, name, KEY_PAGE, NULL); file_info->current_page = g_key_file_get_integer(priv->history, name, KEY_PAGE, NULL);
file_info->page_offset = g_key_file_get_integer(priv->history, name, KEY_OFFSET, NULL); file_info->page_offset = g_key_file_get_integer(priv->history, name, KEY_OFFSET, NULL);
file_info->rotation = g_key_file_get_integer(priv->history, name, KEY_ROTATE, NULL); file_info->rotation = g_key_file_get_integer(priv->history, name, KEY_ROTATE, NULL);
file_info->pages_per_row = g_key_file_get_integer(priv->history, name, KEY_PAGES_PER_ROW, NULL); file_info->pages_per_row = g_key_file_get_integer(priv->history, name, KEY_PAGES_PER_ROW, NULL);
file_info->first_page_column = g_key_file_get_integer(priv->history, name, KEY_FIRST_PAGE_COLUMN, NULL);
char* scale_string = g_key_file_get_string(priv->history, name, KEY_SCALE, NULL); char* scale_string = g_key_file_get_string(priv->history, name, KEY_SCALE, NULL);
if (scale_string != NULL) { if (scale_string != NULL) {

View file

@ -120,6 +120,7 @@ sqlite_db_init(ZathuraSQLDatabase* db, const char* path)
"scale FLOAT," "scale FLOAT,"
"rotation INTEGER," "rotation INTEGER,"
"pages_per_row INTEGER," "pages_per_row INTEGER,"
"first_page_column INTEGER,"
"position_x FLOAT," "position_x FLOAT,"
"position_y FLOAT" "position_y FLOAT"
");"; ");";
@ -129,6 +130,9 @@ sqlite_db_init(ZathuraSQLDatabase* db, const char* path)
"ALTER TABLE fileinfo ADD COLUMN position_x FLOAT;" "ALTER TABLE fileinfo ADD COLUMN position_x FLOAT;"
"ALTER TABLE fileinfo ADD COLUMN position_y FLOAT;"; "ALTER TABLE fileinfo ADD COLUMN position_y FLOAT;";
static const char SQL_FILEINFO_ALTER2[] =
"ALTER TABLE fileinfo ADD COLUMN first_page_column INTEGER;";
sqlite3* session = NULL; sqlite3* session = NULL;
if (sqlite3_open(path, &session) != SQLITE_OK) { if (sqlite3_open(path, &session) != SQLITE_OK) {
girara_error("Could not open database: %s\n", path); girara_error("Could not open database: %s\n", path);
@ -155,6 +159,14 @@ sqlite_db_init(ZathuraSQLDatabase* db, const char* path)
} }
} }
data_type = NULL;
if (sqlite3_table_column_metadata(session, NULL, "fileinfo", "first_page_column", &data_type, NULL, NULL, NULL, NULL) != SQLITE_OK) {
girara_debug("old database table layout detected; updating ...");
if (sqlite3_exec(session, SQL_FILEINFO_ALTER2, NULL, 0, NULL) != SQLITE_OK) {
girara_warning("failed to update database table layout");
}
}
priv->session = session; priv->session = session;
} }
@ -299,21 +311,22 @@ sqlite_set_fileinfo(zathura_database_t* db, const char* file,
zathura_sqldatabase_private_t* priv = ZATHURA_SQLDATABASE_GET_PRIVATE(db); zathura_sqldatabase_private_t* priv = ZATHURA_SQLDATABASE_GET_PRIVATE(db);
static const char SQL_FILEINFO_SET[] = static const char SQL_FILEINFO_SET[] =
"REPLACE INTO fileinfo (file, page, offset, scale, rotation, pages_per_row, position_x, position_y) VALUES (?, ?, ?, ?, ?, ?, ?, ?);"; "REPLACE INTO fileinfo (file, page, offset, scale, rotation, pages_per_row, first_page_column, position_x, position_y) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?);";
sqlite3_stmt* stmt = prepare_statement(priv->session, SQL_FILEINFO_SET); sqlite3_stmt* stmt = prepare_statement(priv->session, SQL_FILEINFO_SET);
if (stmt == NULL) { if (stmt == NULL) {
return false; return false;
} }
if (sqlite3_bind_text(stmt, 1, file, -1, NULL) != SQLITE_OK || if (sqlite3_bind_text(stmt, 1, file, -1, NULL) != SQLITE_OK ||
sqlite3_bind_int(stmt, 2, file_info->current_page) != SQLITE_OK || sqlite3_bind_int(stmt, 2, file_info->current_page) != SQLITE_OK ||
sqlite3_bind_int(stmt, 3, file_info->page_offset) != SQLITE_OK || sqlite3_bind_int(stmt, 3, file_info->page_offset) != SQLITE_OK ||
sqlite3_bind_double(stmt, 4, file_info->scale) != SQLITE_OK || sqlite3_bind_double(stmt, 4, file_info->scale) != SQLITE_OK ||
sqlite3_bind_int(stmt, 5, file_info->rotation) != SQLITE_OK || sqlite3_bind_int(stmt, 5, file_info->rotation) != SQLITE_OK ||
sqlite3_bind_int(stmt, 6, file_info->pages_per_row) != SQLITE_OK || sqlite3_bind_int(stmt, 6, file_info->pages_per_row) != SQLITE_OK ||
sqlite3_bind_double(stmt, 7, file_info->position_x) != SQLITE_OK || sqlite3_bind_int(stmt, 7, file_info->first_page_column) != SQLITE_OK ||
sqlite3_bind_double(stmt, 8, file_info->position_y) != SQLITE_OK) { sqlite3_bind_double(stmt, 8, file_info->position_x) != SQLITE_OK ||
sqlite3_bind_double(stmt, 9, file_info->position_y) != SQLITE_OK) {
sqlite3_finalize(stmt); sqlite3_finalize(stmt);
girara_error("Failed to bind arguments."); girara_error("Failed to bind arguments.");
return false; return false;
@ -336,7 +349,7 @@ sqlite_get_fileinfo(zathura_database_t* db, const char* file,
zathura_sqldatabase_private_t* priv = ZATHURA_SQLDATABASE_GET_PRIVATE(db); zathura_sqldatabase_private_t* priv = ZATHURA_SQLDATABASE_GET_PRIVATE(db);
static const char SQL_FILEINFO_GET[] = static const char SQL_FILEINFO_GET[] =
"SELECT page, offset, scale, rotation, pages_per_row, position_x, position_y FROM fileinfo WHERE file = ?;"; "SELECT page, offset, scale, rotation, pages_per_row, first_page_column, position_x, position_y FROM fileinfo WHERE file = ?;";
sqlite3_stmt* stmt = prepare_statement(priv->session, SQL_FILEINFO_GET); sqlite3_stmt* stmt = prepare_statement(priv->session, SQL_FILEINFO_GET);
if (stmt == NULL) { if (stmt == NULL) {
@ -355,13 +368,14 @@ sqlite_get_fileinfo(zathura_database_t* db, const char* file,
return false; return false;
} }
file_info->current_page = sqlite3_column_int(stmt, 0); file_info->current_page = sqlite3_column_int(stmt, 0);
file_info->page_offset = sqlite3_column_int(stmt, 1); file_info->page_offset = sqlite3_column_int(stmt, 1);
file_info->scale = sqlite3_column_double(stmt, 2); file_info->scale = sqlite3_column_double(stmt, 2);
file_info->rotation = sqlite3_column_int(stmt, 3); file_info->rotation = sqlite3_column_int(stmt, 3);
file_info->pages_per_row = sqlite3_column_int(stmt, 4); file_info->pages_per_row = sqlite3_column_int(stmt, 4);
file_info->position_x = sqlite3_column_double(stmt, 5); file_info->first_page_column = sqlite3_column_int(stmt, 5);
file_info->position_y = sqlite3_column_double(stmt, 6); file_info->position_x = sqlite3_column_double(stmt, 6);
file_info->position_y = sqlite3_column_double(stmt, 7);
sqlite3_finalize(stmt); sqlite3_finalize(stmt);

View file

@ -15,6 +15,7 @@ typedef struct zathura_fileinfo_s {
double scale; double scale;
unsigned int rotation; unsigned int rotation;
unsigned int pages_per_row; unsigned int pages_per_row;
unsigned int first_page_column;
double position_x; double position_x;
double position_y; double position_y;
} zathura_fileinfo_t; } zathura_fileinfo_t;

View file

@ -121,12 +121,13 @@ zathura_document_open(zathura_plugin_manager_t* plugin_manager, const char*
document->adjust_mode = ZATHURA_ADJUST_NONE; document->adjust_mode = ZATHURA_ADJUST_NONE;
/* open document */ /* open document */
if (plugin->functions.document_open == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->document_open == NULL) {
girara_error("plugin has no open function\n"); girara_error("plugin has no open function\n");
goto error_free; goto error_free;
} }
zathura_error_t int_error = plugin->functions.document_open(document); zathura_error_t int_error = functions->document_open(document);
if (int_error != ZATHURA_ERROR_OK) { if (int_error != ZATHURA_ERROR_OK) {
if (error != NULL) { if (error != NULL) {
*error = int_error; *error = int_error;
@ -186,10 +187,11 @@ zathura_document_free(zathura_document_t* document)
/* free document */ /* free document */
zathura_error_t error = ZATHURA_ERROR_OK; zathura_error_t error = ZATHURA_ERROR_OK;
if (document->plugin->functions.document_free == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(document->plugin);
if (functions->document_free == NULL) {
error = ZATHURA_ERROR_NOT_IMPLEMENTED; error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} else { } else {
error = document->plugin->functions.document_free(document, document->data); error = functions->document_free(document, document->data);
} }
if (document->file_path != NULL) { if (document->file_path != NULL) {
@ -395,11 +397,12 @@ zathura_document_save_as(zathura_document_t* document, const char* path)
return ZATHURA_ERROR_UNKNOWN; return ZATHURA_ERROR_UNKNOWN;
} }
if (document->plugin->functions.document_save_as == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(document->plugin);
if (functions->document_save_as == NULL) {
return ZATHURA_ERROR_NOT_IMPLEMENTED; return ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return document->plugin->functions.document_save_as(document, document->data, path); return functions->document_save_as(document, document->data, path);
} }
girara_tree_node_t* girara_tree_node_t*
@ -412,14 +415,15 @@ zathura_document_index_generate(zathura_document_t* document, zathura_error_t* e
return NULL; return NULL;
} }
if (document->plugin->functions.document_index_generate == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(document->plugin);
if (functions->document_index_generate == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return document->plugin->functions.document_index_generate(document, document->data, error); return functions->document_index_generate(document, document->data, error);
} }
girara_list_t* girara_list_t*
@ -432,14 +436,15 @@ zathura_document_attachments_get(zathura_document_t* document, zathura_error_t*
return NULL; return NULL;
} }
if (document->plugin->functions.document_attachments_get == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(document->plugin);
if (functions->document_attachments_get == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return document->plugin->functions.document_attachments_get(document, document->data, error); return functions->document_attachments_get(document, document->data, error);
} }
zathura_error_t zathura_error_t
@ -449,11 +454,12 @@ zathura_document_attachment_save(zathura_document_t* document, const char* attac
return ZATHURA_ERROR_INVALID_ARGUMENTS; return ZATHURA_ERROR_INVALID_ARGUMENTS;
} }
if (document->plugin->functions.document_attachment_save == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(document->plugin);
if (functions->document_attachment_save == NULL) {
return ZATHURA_ERROR_NOT_IMPLEMENTED; return ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return document->plugin->functions.document_attachment_save(document, document->data, attachment, file); return functions->document_attachment_save(document, document->data, attachment, file);
} }
girara_list_t* girara_list_t*
@ -466,14 +472,15 @@ zathura_document_get_information(zathura_document_t* document, zathura_error_t*
return NULL; return NULL;
} }
if (document->plugin->functions.document_get_information == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(document->plugin);
if (functions->document_get_information == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
girara_list_t* result = document->plugin->functions.document_get_information(document, document->data, error); girara_list_t* result = functions->document_get_information(document, document->data, error);
if (result != NULL) { if (result != NULL) {
girara_list_set_free_function(result, (girara_free_function_t) zathura_document_information_entry_free); girara_list_set_free_function(result, (girara_free_function_t) zathura_document_information_entry_free);
} }

123
main.c
View file

@ -1,34 +1,151 @@
/* See LICENSE file for license and copyright information */ /* See LICENSE file for license and copyright information */
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <glib/gstdio.h> #include <glib/gstdio.h>
#include <glib/gi18n.h> #include <glib/gi18n.h>
#include <girara/utils.h>
#include <locale.h> #include <locale.h>
#include "zathura.h" #include "zathura.h"
#include "utils.h"
/* main function */ /* main function */
int main(int argc, char* argv[]) int
main(int argc, char* argv[])
{ {
/* init locale */
setlocale(LC_ALL, ""); setlocale(LC_ALL, "");
bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR); bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR);
bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
textdomain(GETTEXT_PACKAGE); textdomain(GETTEXT_PACKAGE);
/* init gtk */
g_thread_init(NULL); g_thread_init(NULL);
gdk_threads_init(); gdk_threads_init();
gtk_init(&argc, &argv); gtk_init(&argc, &argv);
zathura_t* zathura = zathura_init(argc, argv); /* create zathura session */
zathura_t* zathura = zathura_create();
if (zathura == NULL) { if (zathura == NULL) {
fprintf(stderr, "error: could not initialize zathura\n");
return -1; return -1;
} }
/* parse command line arguments */
gchar* config_dir = NULL;
gchar* data_dir = NULL;
gchar* plugin_path = NULL;
gchar* loglevel = NULL;
gchar* password = NULL;
gchar* synctex_editor = NULL;
bool forkback = false;
bool print_version = false;
bool synctex = false;
#if (GTK_MAJOR_VERSION == 3)
Window embed = 0;
#else
GdkNativeWindow embed = 0;
#endif
GOptionEntry entries[] = {
{ "reparent", 'e', 0, G_OPTION_ARG_INT, &embed, _("Reparents to window specified by xid"), "xid" },
{ "config-dir", 'c', 0, G_OPTION_ARG_FILENAME, &config_dir, _("Path to the config directory"), "path" },
{ "data-dir", 'd', 0, G_OPTION_ARG_FILENAME, &data_dir, _("Path to the data directory"), "path" },
{ "plugins-dir", 'p', 0, G_OPTION_ARG_STRING, &plugin_path, _("Path to the directories containing plugins"), "path" },
{ "fork", '\0',0, G_OPTION_ARG_NONE, &forkback, _("Fork into the background"), NULL },
{ "password", 'w', 0, G_OPTION_ARG_STRING, &password, _("Document password"), "password" },
{ "debug", 'l', 0, G_OPTION_ARG_STRING, &loglevel, _("Log level (debug, info, warning, error)"), "level" },
{ "version", 'v', 0, G_OPTION_ARG_NONE, &print_version, _("Print version information"), NULL },
{ "synctex", 's', 0, G_OPTION_ARG_NONE, &synctex, _("Enable synctex support"), NULL },
{ "synctex-editor-command", 'x', 0, G_OPTION_ARG_STRING, &synctex_editor, _("Synctex editor (forwarded to the synctex command)"), "cmd" },
{ NULL, '\0', 0, 0, NULL, NULL, NULL }
};
GOptionContext* context = g_option_context_new(" [file1] [file2] [...]");
g_option_context_add_main_entries(context, entries, NULL);
GError* error = NULL;
if (g_option_context_parse(context, &argc, &argv, &error) == false) {
girara_error("Error parsing command line arguments: %s\n", error->message);
g_option_context_free(context);
g_error_free(error);
return -1;
}
g_option_context_free(context);
/* Fork into the background if the user really wants to ... */
if (forkback == true) {
int pid = fork();
if (pid > 0) { /* parent */
exit(0);
} else if (pid < 0) { /* error */
girara_error("Couldn't fork.");
}
setsid();
}
/* Set log level. */
if (loglevel == NULL || g_strcmp0(loglevel, "info") == 0) {
girara_set_debug_level(GIRARA_INFO);
} else if (g_strcmp0(loglevel, "warning") == 0) {
girara_set_debug_level(GIRARA_WARNING);
} else if (g_strcmp0(loglevel, "error") == 0) {
girara_set_debug_level(GIRARA_ERROR);
}
zathura_set_xid(zathura, embed);
zathura_set_config_dir(zathura, config_dir);
zathura_set_data_dir(zathura, data_dir);
zathura_set_plugin_dir(zathura, plugin_path);
zathura_set_synctex_editor_command(zathura, synctex_editor);
zathura_set_argv(zathura, argv);
/* Init zathura */
if(zathura_init(zathura) == false) {
girara_error("Could not initialize zathura.");
zathura_free(zathura);
return -1;
}
/* Enable/Disable synctex support */
zathura_set_syntex(zathura, synctex);
/* Print version */
if (print_version == true) {
char* string = zathura_get_version_string(zathura, false);
if (string != NULL) {
fprintf(stdout, "%s\n", string);
}
zathura_free(zathura);
return 0;
}
/* open document if passed */
if (argc > 1) {
document_open_idle(zathura, argv[1], password);
/* open additional files */
for (int i = 2; i < argc; i++) {
char* new_argv[] = {
*(zathura->global.arguments),
argv[i],
NULL
};
g_spawn_async(NULL, new_argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL);
}
}
/* run zathura */
gdk_threads_enter(); gdk_threads_enter();
gtk_main(); gtk_main();
gdk_threads_leave(); gdk_threads_leave();
/* free zathura */
zathura_free(zathura); zathura_free(zathura);
return 0; return 0;

View file

@ -237,7 +237,7 @@ mark_evaluate(zathura_t* zathura, int key)
if (mark != NULL && mark->key == key) { if (mark != NULL && mark->key == key) {
double old_scale = zathura_document_get_scale(zathura->document); double old_scale = zathura_document_get_scale(zathura->document);
zathura_document_set_scale(zathura->document, mark->scale); zathura_document_set_scale(zathura->document, mark->scale);
readjust_view_after_zooming(zathura, old_scale); readjust_view_after_zooming(zathura, old_scale, true);
render_all(zathura); render_all(zathura);
position_set_delayed(zathura, mark->position_x, mark->position_y); position_set_delayed(zathura, mark->position_x, mark->position_y);

View file

@ -13,6 +13,7 @@
#include "render.h" #include "render.h"
#include "utils.h" #include "utils.h"
#include "shortcuts.h" #include "shortcuts.h"
#include "synctex.h"
G_DEFINE_TYPE(ZathuraPage, zathura_page_widget, GTK_TYPE_DRAWING_AREA) G_DEFINE_TYPE(ZathuraPage, zathura_page_widget, GTK_TYPE_DRAWING_AREA)
@ -385,7 +386,7 @@ zathura_page_widget_draw(GtkWidget* widget, cairo_t* cairo)
/* draw position */ /* draw position */
GdkColor color = priv->zathura->ui.colors.highlight_color; GdkColor color = priv->zathura->ui.colors.highlight_color;
cairo_set_source_rgba(cairo, color.red, color.green, color.blue, transparency); cairo_set_source_rgba(cairo, color.red/65535.0, color.green/65535.0, color.blue/65535.0, transparency);
cairo_rectangle(cairo, rectangle.x1, rectangle.y1, cairo_rectangle(cairo, rectangle.x1, rectangle.y1,
(rectangle.x2 - rectangle.x1), (rectangle.y2 - rectangle.y1)); (rectangle.x2 - rectangle.x1), (rectangle.y2 - rectangle.y1));
cairo_fill(cairo); cairo_fill(cairo);
@ -410,10 +411,10 @@ zathura_page_widget_draw(GtkWidget* widget, cairo_t* cairo)
/* draw position */ /* draw position */
if (idx == priv->search.current) { if (idx == priv->search.current) {
GdkColor color = priv->zathura->ui.colors.highlight_color_active; GdkColor color = priv->zathura->ui.colors.highlight_color_active;
cairo_set_source_rgba(cairo, color.red, color.green, color.blue, transparency); cairo_set_source_rgba(cairo, color.red/65535.0, color.green/65535.0, color.blue/65535.0, transparency);
} else { } else {
GdkColor color = priv->zathura->ui.colors.highlight_color; GdkColor color = priv->zathura->ui.colors.highlight_color;
cairo_set_source_rgba(cairo, color.red, color.green, color.blue, transparency); cairo_set_source_rgba(cairo, color.red/65535.0, color.green/65535.0, color.blue/65535.0, transparency);
} }
cairo_rectangle(cairo, rectangle.x1, rectangle.y1, cairo_rectangle(cairo, rectangle.x1, rectangle.y1,
(rectangle.x2 - rectangle.x1), (rectangle.y2 - rectangle.y1)); (rectangle.x2 - rectangle.x1), (rectangle.y2 - rectangle.y1));
@ -424,7 +425,7 @@ zathura_page_widget_draw(GtkWidget* widget, cairo_t* cairo)
/* draw selection */ /* draw selection */
if (priv->mouse.selection.y2 != -1 && priv->mouse.selection.x2 != -1) { if (priv->mouse.selection.y2 != -1 && priv->mouse.selection.x2 != -1) {
GdkColor color = priv->zathura->ui.colors.highlight_color; GdkColor color = priv->zathura->ui.colors.highlight_color;
cairo_set_source_rgba(cairo, color.red, color.green, color.blue, transparency); cairo_set_source_rgba(cairo, color.red/65535.0, color.green/65535.0, color.blue/65535.0, transparency);
cairo_rectangle(cairo, priv->mouse.selection.x1, priv->mouse.selection.y1, cairo_rectangle(cairo, priv->mouse.selection.x1, priv->mouse.selection.y1,
(priv->mouse.selection.x2 - priv->mouse.selection.x1), (priv->mouse.selection.y2 - priv->mouse.selection.y1)); (priv->mouse.selection.x2 - priv->mouse.selection.x1), (priv->mouse.selection.y2 - priv->mouse.selection.y1));
cairo_fill(cairo); cairo_fill(cairo);
@ -433,9 +434,9 @@ zathura_page_widget_draw(GtkWidget* widget, cairo_t* cairo)
/* set background color */ /* set background color */
if (priv->zathura->global.recolor == true) { if (priv->zathura->global.recolor == true) {
GdkColor color = priv->zathura->ui.colors.recolor_light_color; GdkColor color = priv->zathura->ui.colors.recolor_light_color;
cairo_set_source_rgb(cairo, color.red, color.green, color.blue); cairo_set_source_rgb(cairo, color.red/65535.0, color.green/65535.0, color.blue/65535.0);
} else { } else {
cairo_set_source_rgb(cairo, 255, 255, 255); cairo_set_source_rgb(cairo, 1, 1, 1);
} }
cairo_rectangle(cairo, 0, 0, page_width, page_height); cairo_rectangle(cairo, 0, 0, page_width, page_height);
cairo_fill(cairo); cairo_fill(cairo);
@ -447,12 +448,12 @@ zathura_page_widget_draw(GtkWidget* widget, cairo_t* cairo)
if (render_loading == true) { if (render_loading == true) {
if (priv->zathura->global.recolor == true) { if (priv->zathura->global.recolor == true) {
GdkColor color = priv->zathura->ui.colors.recolor_dark_color; GdkColor color = priv->zathura->ui.colors.recolor_dark_color;
cairo_set_source_rgb(cairo, color.red, color.green, color.blue); cairo_set_source_rgb(cairo, color.red/65535.0, color.green/65535.0, color.blue/65535.0);
} else { } else {
cairo_set_source_rgb(cairo, 0, 0, 0); cairo_set_source_rgb(cairo, 0, 0, 0);
} }
const char* text = "Loading..."; const char* text = _("Loading...");
cairo_select_font_face(cairo, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL); cairo_select_font_face(cairo, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
cairo_set_font_size(cairo, 16.0); cairo_set_font_size(cairo, 16.0);
cairo_text_extents_t extents; cairo_text_extents_t extents;
@ -483,6 +484,7 @@ zathura_page_widget_update_surface(ZathuraPage* widget, cairo_surface_t* surface
zathura_page_widget_private_t* priv = ZATHURA_PAGE_GET_PRIVATE(widget); zathura_page_widget_private_t* priv = ZATHURA_PAGE_GET_PRIVATE(widget);
g_static_mutex_lock(&(priv->lock)); g_static_mutex_lock(&(priv->lock));
if (priv->surface != NULL) { if (priv->surface != NULL) {
cairo_surface_finish(priv->surface);
cairo_surface_destroy(priv->surface); cairo_surface_destroy(priv->surface);
} }
priv->surface = surface; priv->surface = surface;
@ -610,29 +612,41 @@ cb_zathura_page_widget_button_release_event(GtkWidget* widget, GdkEventButton* b
} }
} else { } else {
redraw_rect(ZATHURA_PAGE(widget), &priv->mouse.selection); redraw_rect(ZATHURA_PAGE(widget), &priv->mouse.selection);
zathura_rectangle_t tmp = priv->mouse.selection;
double scale = zathura_document_get_scale(document); bool synctex = false;
tmp.x1 /= scale; girara_setting_get(priv->zathura->ui.session, "synctex", &synctex);
tmp.x2 /= scale;
tmp.y1 /= scale;
tmp.y2 /= scale;
char* text = zathura_page_get_text(priv->page, tmp, NULL); if (synctex == true && button->state & GDK_CONTROL_MASK) {
if (text != NULL) { /* synctex backwards sync */
if (strlen(text) > 0) { double scale = zathura_document_get_scale(document);
/* copy to clipboard */ int x = button->x / scale, y = button->y / scale;
gtk_clipboard_set_text(gtk_clipboard_get(GDK_SELECTION_PRIMARY), text, -1);
synctex_edit(priv->zathura, priv->page, x, y);
} else {
zathura_rectangle_t tmp = priv->mouse.selection;
double scale = zathura_document_get_scale(document);
tmp.x1 /= scale;
tmp.x2 /= scale;
tmp.y1 /= scale;
tmp.y2 /= scale;
char* text = zathura_page_get_text(priv->page, tmp, NULL);
if (text != NULL) {
if (strlen(text) > 0) {
/* copy to clipboard */
gtk_clipboard_set_text(gtk_clipboard_get(GDK_SELECTION_PRIMARY), text, -1);
if (priv->page != NULL && document != NULL && priv->zathura != NULL) { if (priv->page != NULL && document != NULL && priv->zathura != NULL) {
char* stripped_text = g_strdelimit(g_strdup(text), "\n\t\r\n", ' '); char* stripped_text = g_strdelimit(g_strdup(text), "\n\t\r\n", ' ');
girara_notify(priv->zathura->ui.session, GIRARA_INFO, _("Copied selected text to clipboard: %s"), stripped_text); girara_notify(priv->zathura->ui.session, GIRARA_INFO, _("Copied selected text to clipboard: %s"), stripped_text);
g_free(stripped_text); g_free(stripped_text);
}
} }
}
g_free(text); g_free(text);
}
} }
} }
@ -844,6 +858,7 @@ zathura_page_widget_purge_unused(ZathuraPage* widget, gint64 threshold)
const gint64 now = g_get_real_time(); const gint64 now = g_get_real_time();
if (now - priv->last_view >= threshold * G_USEC_PER_SEC) { if (now - priv->last_view >= threshold * G_USEC_PER_SEC) {
girara_debug("purge page %d from cache (unseen for %f seconds)", zathura_page_get_index(priv->page), ((double)now - priv->last_view) / G_USEC_PER_SEC);
zathura_page_widget_update_surface(widget, NULL); zathura_page_widget_update_surface(widget, NULL);
} }
} }

View file

@ -17,11 +17,13 @@
typedef struct zathura_page_widget_s ZathuraPage; typedef struct zathura_page_widget_s ZathuraPage;
typedef struct zathura_page_widget_class_s ZathuraPageClass; typedef struct zathura_page_widget_class_s ZathuraPageClass;
struct zathura_page_widget_s { struct zathura_page_widget_s
{
GtkDrawingArea parent; GtkDrawingArea parent;
}; };
struct zathura_page_widget_class_s { struct zathura_page_widget_class_s
{
GtkDrawingAreaClass parent_class; GtkDrawingAreaClass parent_class;
}; };
@ -33,10 +35,10 @@ struct zathura_page_widget_class_s {
(G_TYPE_CHECK_CLASS_CAST ((obj), ZATHURA_TYPE_PAGE, ZathuraPageClass)) (G_TYPE_CHECK_CLASS_CAST ((obj), ZATHURA_TYPE_PAGE, ZathuraPageClass))
#define ZATHURA_IS_PAGE(obj) \ #define ZATHURA_IS_PAGE(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), ZATHURA_TYPE_PAGE)) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ZATHURA_TYPE_PAGE))
#define ZATHURA_IS_PAGE_WDIGET_CLASS(obj) \ #define ZATHURA_IS_PAGE_CLASS(obj) \
(G_TYPE_CHECK_CLASS_TYPE ((obj), ZATHURA_TYPE_PAGE)) (G_TYPE_CHECK_CLASS_TYPE ((obj), ZATHURA_TYPE_PAGE))
#define ZATHURA_PAGE_GET_CLASS \ #define ZATHURA_PAGE_GET_CLASS \
(G_TYPE_INSTANCE_GET_CLASS ((obj), ZATHURA_TYPE_PAGE, ZathuraPageclass)) (G_TYPE_INSTANCE_GET_CLASS ((obj), ZATHURA_TYPE_PAGE, ZathuraPageClass))
/** /**
* Returns the type of the page view widget. * Returns the type of the page view widget.

46
page.c
View file

@ -39,14 +39,16 @@ zathura_page_new(zathura_document_t* document, unsigned int index, zathura_error
/* init plugin */ /* init plugin */
zathura_plugin_t* plugin = zathura_document_get_plugin(document); zathura_plugin_t* plugin = zathura_document_get_plugin(document);
if (plugin->functions.page_init == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_init == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
goto error_ret; goto error_ret;
} }
zathura_error_t ret = plugin->functions.page_init(page); zathura_error_t ret = functions->page_init(page);
if (ret != ZATHURA_ERROR_OK) { if (ret != ZATHURA_ERROR_OK) {
if (error != NULL) { if (error != NULL) {
*error = ret; *error = ret;
@ -80,11 +82,12 @@ zathura_page_free(zathura_page_t* page)
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_clear == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_clear == NULL) {
return ZATHURA_ERROR_NOT_IMPLEMENTED; return ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
zathura_error_t error = plugin->functions.page_clear(page, page->data); zathura_error_t error = functions->page_clear(page, page->data);
g_free(page); g_free(page);
@ -202,14 +205,15 @@ zathura_page_search_text(zathura_page_t* page, const char* text, zathura_error_t
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_search_text == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_search_text == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return plugin->functions.page_search_text(page, page->data, text, error); return functions->page_search_text(page, page->data, text, error);
} }
girara_list_t* girara_list_t*
@ -223,14 +227,15 @@ zathura_page_links_get(zathura_page_t* page, zathura_error_t* error)
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_links_get == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_links_get == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return plugin->functions.page_links_get(page, page->data, error); return functions->page_links_get(page, page->data, error);
} }
zathura_error_t zathura_error_t
@ -250,14 +255,15 @@ zathura_page_form_fields_get(zathura_page_t* page, zathura_error_t* error)
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_form_fields_get == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_form_fields_get == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return plugin->functions.page_form_fields_get(page, page->data, error); return functions->page_form_fields_get(page, page->data, error);
} }
zathura_error_t zathura_error_t
@ -277,14 +283,15 @@ zathura_page_images_get(zathura_page_t* page, zathura_error_t* error)
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_images_get == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_images_get == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return plugin->functions.page_images_get(page, page->data, error); return functions->page_images_get(page, page->data, error);
} }
cairo_surface_t* cairo_surface_t*
@ -298,14 +305,15 @@ zathura_page_image_get_cairo(zathura_page_t* page, zathura_image_t* image, zathu
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_image_get_cairo == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_image_get_cairo == NULL) {
if (error != NULL) { if (error != NULL) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return plugin->functions.page_image_get_cairo(page, page->data, image, error); return functions->page_image_get_cairo(page, page->data, image, error);
} }
char* zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle, zathura_error_t* error) char* zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle, zathura_error_t* error)
@ -318,14 +326,15 @@ char* zathura_page_get_text(zathura_page_t* page, zathura_rectangle_t rectangle,
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_get_text == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_get_text == NULL) {
if (error) { if (error) {
*error = ZATHURA_ERROR_NOT_IMPLEMENTED; *error = ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return NULL; return NULL;
} }
return plugin->functions.page_get_text(page, page->data, rectangle, error); return functions->page_get_text(page, page->data, rectangle, error);
} }
zathura_error_t zathura_error_t
@ -336,9 +345,10 @@ zathura_page_render(zathura_page_t* page, cairo_t* cairo, bool printing)
} }
zathura_plugin_t* plugin = zathura_document_get_plugin(page->document); zathura_plugin_t* plugin = zathura_document_get_plugin(page->document);
if (plugin->functions.page_render_cairo == NULL) { zathura_plugin_functions_t* functions = zathura_plugin_get_functions(plugin);
if (functions->page_render_cairo == NULL) {
return ZATHURA_ERROR_NOT_IMPLEMENTED; return ZATHURA_ERROR_NOT_IMPLEMENTED;
} }
return plugin->functions.page_render_cairo(page, page->data, cairo, printing); return functions->page_render_cairo(page, page->data, cairo, printing);
} }

View file

@ -27,6 +27,14 @@ typedef void (*zathura_plugin_register_function_t)(zathura_plugin_functions_t* f
void zathura_plugin_set_register_functions_function(zathura_plugin_t* plugin, void zathura_plugin_set_register_functions_function(zathura_plugin_t* plugin,
zathura_plugin_register_function_t register_function); zathura_plugin_register_function_t register_function);
/**
* Sets the name of the plugin
*
* @param plugin The plugin
* @param name The name of the plugin
*/
void zathura_plugin_set_name(zathura_plugin_t* plugin, const char* name);
/** /**
* Sets the functions register function of the plugin * Sets the functions register function of the plugin
* *
@ -58,6 +66,7 @@ void zathura_plugin_add_mimetype(zathura_plugin_t* plugin, const char* mime_type
return; \ return; \
} \ } \
zathura_plugin_set_register_functions_function(plugin, register_functions); \ zathura_plugin_set_register_functions_function(plugin, register_functions); \
zathura_plugin_set_name(plugin, plugin_name); \
static const char* mime_types[] = mimetypes; \ static const char* mime_types[] = mimetypes; \
for (size_t s = 0; s != sizeof(mime_types) / sizeof(const char*); ++s) { \ for (size_t s = 0; s != sizeof(mime_types) / sizeof(const char*); ++s) { \
zathura_plugin_add_mimetype(plugin, mime_types[s]); \ zathura_plugin_add_mimetype(plugin, mime_types[s]); \

117
plugin.c
View file

@ -11,7 +11,28 @@
#include <girara/session.h> #include <girara/session.h>
#include <girara/settings.h> #include <girara/settings.h>
typedef unsigned int (*zathura_plugin_version_t)(void); /**
* Document plugin structure
*/
struct zathura_plugin_s
{
girara_list_t* content_types; /**< List of supported content types */
zathura_plugin_register_function_t register_function; /**< Document open function */
zathura_plugin_functions_t functions; /**< Document functions */
GModule* handle; /**< DLL handle */
char* name; /**< Name of the plugin */
char* path; /**< Path to the plugin */
zathura_plugin_version_t version; /**< Version information */
};
/**
* Plugin mapping
*/
typedef struct zathura_type_plugin_mapping_s
{
const gchar* type; /**< Plugin type */
zathura_plugin_t* plugin; /**< Mapped plugin */
} zathura_type_plugin_mapping_t;
/** /**
* Plugin manager * Plugin manager
@ -23,6 +44,11 @@ struct zathura_plugin_manager_s
girara_list_t* type_plugin_mapping; /**< List of type -> plugin mappings */ girara_list_t* type_plugin_mapping; /**< List of type -> plugin mappings */
}; };
typedef void (*zathura_plugin_register_service_t)(zathura_plugin_t*);
typedef unsigned int (*zathura_plugin_api_version_t)(void);
typedef unsigned int (*zathura_plugin_abi_version_t)(void);
typedef unsigned int (*zathura_plugin_version_function_t)(void);
static bool register_plugin(zathura_plugin_manager_t* plugin_manager, zathura_plugin_t* plugin); static bool register_plugin(zathura_plugin_manager_t* plugin_manager, zathura_plugin_t* plugin);
static bool plugin_mapping_new(zathura_plugin_manager_t* plugin_manager, const gchar* type, zathura_plugin_t* plugin); static bool plugin_mapping_new(zathura_plugin_manager_t* plugin_manager, const gchar* type, zathura_plugin_t* plugin);
static void zathura_plugin_free(zathura_plugin_t* plugin); static void zathura_plugin_free(zathura_plugin_t* plugin);
@ -149,11 +175,13 @@ zathura_plugin_manager_load(zathura_plugin_manager_t* plugin_manager)
if (plugin->register_function == NULL) { if (plugin->register_function == NULL) {
girara_error("plugin has no document functions register function"); girara_error("plugin has no document functions register function");
g_free(path); g_free(path);
g_free(plugin);
g_module_close(handle); g_module_close(handle);
continue; continue;
} }
plugin->register_function(&(plugin->functions)); plugin->register_function(&(plugin->functions));
plugin->path = path;
bool ret = register_plugin(plugin_manager, plugin); bool ret = register_plugin(plugin_manager, plugin);
if (ret == false) { if (ret == false) {
@ -162,16 +190,19 @@ zathura_plugin_manager_load(zathura_plugin_manager_t* plugin_manager)
} else { } else {
girara_info("successfully loaded plugin %s", path); girara_info("successfully loaded plugin %s", path);
zathura_plugin_version_t major = NULL, minor = NULL, rev = NULL; zathura_plugin_version_function_t plugin_major = NULL, plugin_minor = NULL, plugin_rev = NULL;
g_module_symbol(handle, PLUGIN_VERSION_MAJOR_FUNCTION, (gpointer*) &major); g_module_symbol(handle, PLUGIN_VERSION_MAJOR_FUNCTION, (gpointer*) &plugin_major);
g_module_symbol(handle, PLUGIN_VERSION_MINOR_FUNCTION, (gpointer*) &minor); g_module_symbol(handle, PLUGIN_VERSION_MINOR_FUNCTION, (gpointer*) &plugin_minor);
g_module_symbol(handle, PLUGIN_VERSION_REVISION_FUNCTION, (gpointer*) &rev); g_module_symbol(handle, PLUGIN_VERSION_REVISION_FUNCTION, (gpointer*) &plugin_rev);
if (major != NULL && minor != NULL && rev != NULL) { if (plugin_major != NULL && plugin_minor != NULL && plugin_rev != NULL) {
girara_debug("plugin '%s': version %u.%u.%u", path, major(), minor(), rev()); plugin->version.major = plugin_major();
plugin->version.minor = plugin_minor();
plugin->version.rev = plugin_rev();
girara_debug("plugin '%s': version %u.%u.%u", path,
plugin->version.major, plugin->version.minor,
plugin->version.rev);
} }
} }
g_free(path);
} }
g_dir_close(dir); g_dir_close(dir);
GIRARA_LIST_FOREACH_END(zathura->plugins.path, char*, iter, plugindir); GIRARA_LIST_FOREACH_END(zathura->plugins.path, char*, iter, plugindir);
@ -195,6 +226,16 @@ zathura_plugin_manager_get_plugin(zathura_plugin_manager_t* plugin_manager, cons
return plugin; return plugin;
} }
girara_list_t*
zathura_plugin_manager_get_plugins(zathura_plugin_manager_t* plugin_manager)
{
if (plugin_manager == NULL || plugin_manager->plugins == NULL) {
return NULL;
}
return plugin_manager->plugins;
}
void void
zathura_plugin_manager_free(zathura_plugin_manager_t* plugin_manager) zathura_plugin_manager_free(zathura_plugin_manager_t* plugin_manager)
{ {
@ -285,8 +326,17 @@ zathura_plugin_free(zathura_plugin_t* plugin)
return; return;
} }
if (plugin->name != NULL) {
g_free(plugin->name);
}
if (plugin->path != NULL) {
g_free(plugin->path);
}
g_module_close(plugin->handle); g_module_close(plugin->handle);
girara_list_free(plugin->content_types); girara_list_free(plugin->content_types);
g_free(plugin); g_free(plugin);
} }
@ -310,3 +360,52 @@ zathura_plugin_add_mimetype(zathura_plugin_t* plugin, const char* mime_type)
girara_list_append(plugin->content_types, g_content_type_from_mime_type(mime_type)); girara_list_append(plugin->content_types, g_content_type_from_mime_type(mime_type));
} }
zathura_plugin_functions_t*
zathura_plugin_get_functions(zathura_plugin_t* plugin)
{
if (plugin != NULL) {
return &(plugin->functions);
} else {
return NULL;
}
}
void
zathura_plugin_set_name(zathura_plugin_t* plugin, const char* name)
{
if (plugin != NULL && name != NULL) {
plugin->name = g_strdup(name);
}
}
char*
zathura_plugin_get_name(zathura_plugin_t* plugin)
{
if (plugin != NULL) {
return plugin->name;
} else {
return NULL;
}
}
char*
zathura_plugin_get_path(zathura_plugin_t* plugin)
{
if (plugin != NULL) {
return plugin->path;
} else {
return NULL;
}
}
zathura_plugin_version_t
zathura_plugin_get_version(zathura_plugin_t* plugin)
{
if (plugin != NULL) {
return plugin->version;
}
zathura_plugin_version_t version = { 0 };
return version;
}

View file

@ -18,16 +18,11 @@
#define PLUGIN_VERSION_MINOR_FUNCTION "zathura_plugin_version_minor" #define PLUGIN_VERSION_MINOR_FUNCTION "zathura_plugin_version_minor"
#define PLUGIN_VERSION_REVISION_FUNCTION "zathura_plugin_version_revision" #define PLUGIN_VERSION_REVISION_FUNCTION "zathura_plugin_version_revision"
/** typedef struct zathura_plugin_version_s {
* Document plugin structure unsigned int major; /**< Major */
*/ unsigned int minor; /**< Minor */
struct zathura_plugin_s unsigned int rev; /**< Revision */
{ } zathura_plugin_version_t;
girara_list_t* content_types; /**< List of supported content types */
zathura_plugin_register_function_t register_function; /**< Document open function */
zathura_plugin_functions_t functions; /**< Document functions */
GModule* handle; /**< DLL handle */
};
/** /**
* Creates a new instance of the plugin manager * Creates a new instance of the plugin manager
@ -36,6 +31,13 @@ struct zathura_plugin_s
*/ */
zathura_plugin_manager_t* zathura_plugin_manager_new(); zathura_plugin_manager_t* zathura_plugin_manager_new();
/**
* Frees the plugin manager
*
* @param plugin_manager
*/
void zathura_plugin_manager_free(zathura_plugin_manager_t* plugin_manager);
/** /**
* Adds a plugin directory to the plugin manager * Adds a plugin directory to the plugin manager
* *
@ -61,41 +63,43 @@ void zathura_plugin_manager_load(zathura_plugin_manager_t* plugin_manager);
zathura_plugin_t* zathura_plugin_manager_get_plugin(zathura_plugin_manager_t* plugin_manager, const char* type); zathura_plugin_t* zathura_plugin_manager_get_plugin(zathura_plugin_manager_t* plugin_manager, const char* type);
/** /**
* Frees the plugin manager * Returns a list with the plugin objects
* *
* @param plugin_manager * @param plugin_manager The plugin manager
* @return List of plugins or NULL
*/ */
void zathura_plugin_manager_free(zathura_plugin_manager_t* plugin_manager); girara_list_t* zathura_plugin_manager_get_plugins(zathura_plugin_manager_t* plugin_manager);
/** /**
* Plugin mapping * Returns the plugin functions
*
* @param plugin The plugin
* @return The plugin functions
*/ */
typedef struct zathura_type_plugin_mapping_s zathura_plugin_functions_t* zathura_plugin_get_functions(zathura_plugin_t* plugin);
{
const gchar* type; /**< Plugin type */
zathura_plugin_t* plugin; /**< Mapped plugin */
} zathura_type_plugin_mapping_t;
/** /**
* Function prototype that is called to register a document plugin * Returns the name of the plugin
* *
* @param The document plugin * @param plugin The plugin
* @return The name of the plugin or NULL
*/ */
typedef void (*zathura_plugin_register_service_t)(zathura_plugin_t*); char* zathura_plugin_get_name(zathura_plugin_t* plugin);
/** /**
* Function prototype that is called to get the plugin's API version. * Returns the path to the plugin
* *
* @return plugin's API version * @param plugin The plugin
* @return The path of the plugin or NULL
*/ */
typedef unsigned int (*zathura_plugin_api_version_t)(); char* zathura_plugin_get_path(zathura_plugin_t* plugin);
/** /**
* Function prototype that is called to get the ABI version the plugin is built * Returns the version information of the plugin
* against.
* *
* @return plugin's ABI version * @param plugin The plugin
* @return The version information of the plugin
*/ */
typedef unsigned int (*zathura_plugin_abi_version_t)(); zathura_plugin_version_t zathura_plugin_get_version(zathura_plugin_t* plugin);
#endif // PLUGIN_H #endif // PLUGIN_H

View file

@ -1,8 +1,12 @@
# See LICENSE file for license and copyright information # See LICENSE file for license and copyright information
PROJECT = zathura PROJECT = zathura
CATALOGS = $(wildcard *.po) GETTEXT_PACKAGE = $(PROJECT)
MOS = $(patsubst %.po, %/LC_MESSAGES/${PROJECT}.mo, $(CATALOGS)) CATALOGS = $(wildcard *.po)
LINGUAS ?= $(patsubst %.po, %, $(CATALOGS))
ALINGUAS = $(shell find $(patsubst %, %.po, $(LINGUAS)) 2>/dev/null)
MOS = $(patsubst %, %/LC_MESSAGES/${GETTEXT_PACKAGE}.mo, $(patsubst %.po, %, $(ALINGUAS)))
include ../config.mk include ../config.mk
include ../common.mk include ../common.mk

404
po/cs.po Normal file
View file

@ -0,0 +1,404 @@
# zathura - language file (Czech)
# See LICENSE file for license and copyright information
#
msgid ""
msgstr ""
"Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-06-19 23:59+0200\n"
"Last-Translator: Martin Pelikan <pelikan@storkhole.cz>\n"
"Language-Team: pwmt.org <mail@pwmt.org>\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../callbacks.c:204
#, c-format
msgid "Invalid input '%s' given."
msgstr "Neplatný vstup: %s"
#: ../callbacks.c:232
#, c-format
msgid "Invalid index '%s' given."
msgstr "Neplatný index: %s"
#: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened."
msgstr "Není otevřený žádný dokument."
#: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given."
msgstr "Špatný počet argumentů."
#: ../commands.c:49
#, c-format
msgid "Bookmark successfuly updated: %s"
msgstr "Záložka úspěšně aktualizována: %s"
#: ../commands.c:55
#, c-format
msgid "Could not create bookmark: %s"
msgstr "Nemůžu vytvořit záložku: %s"
#: ../commands.c:59
#, c-format
msgid "Bookmark successfuly created: %s"
msgstr "Záložka úspěšně vytvořena: %s"
#: ../commands.c:82
#, c-format
msgid "Removed bookmark: %s"
msgstr "Záložka smazána: %s"
#: ../commands.c:84
#, c-format
msgid "Failed to remove bookmark: %s"
msgstr "Nem¿¿u smazat zálo¿ku: %s"
#: ../commands.c:110
#, c-format
msgid "No such bookmark: %s"
msgstr "Záložka neexistuje: %s"
#: ../commands.c:161 ../commands.c:183
msgid "No information available."
msgstr "Nejsou dostupné žádné informace."
#: ../commands.c:221
msgid "Too many arguments."
msgstr "Příliš mnoho argumentů."
#: ../commands.c:230
msgid "No arguments given."
msgstr "Nezadali jste argumenty."
#: ../commands.c:289 ../commands.c:315
msgid "Document saved."
msgstr "Dokument uložen."
#: ../commands.c:291 ../commands.c:317
msgid "Failed to save document."
msgstr "Nepovedlo se uložit dokument."
#: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments."
msgstr "Špatný počet argumentů."
#: ../commands.c:424
#, c-format
msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Nepovedlo se zapsat p¿ílohu '%s' do '%s'."
#: ../commands.c:426
#, c-format
msgid "Wrote attachment '%s' to '%s'."
msgstr "Příloha '%s' zapsána do '%s'."
#: ../commands.c:470
#, c-format
msgid "Wrote image '%s' to '%s'."
msgstr "Obrázek '%s' zapsán do '%s'."
#: ../commands.c:472
#, c-format
msgid "Couldn't write image '%s' to '%s'."
msgstr "Nepovedlo se zapsat obrázek '%s' do '%s'."
#: ../commands.c:479
#, c-format
msgid "Unknown image '%s'."
msgstr "Neznámý obrázek '%s'."
#: ../commands.c:483
#, c-format
msgid "Unknown attachment or image '%s'."
msgstr "Neznámá příloha nebo obrázek '%s'."
#: ../commands.c:534
msgid "Argument must be a number."
msgstr "Argumentem musí být číslo."
#: ../completion.c:250
#, c-format
msgid "Page %d"
msgstr "Strana %d"
#: ../completion.c:293
msgid "Attachments"
msgstr "Přílohy"
#. add images
#: ../completion.c:324
msgid "Images"
msgstr "Obrázky"
#. zathura settings
#: ../config.c:105
msgid "Database backend"
msgstr "Databázový backend"
#: ../config.c:107
msgid "Zoom step"
msgstr "Zoom step"
#: ../config.c:109
msgid "Padding between pages"
msgstr "Mezery mezi stránkami"
#: ../config.c:111
msgid "Number of pages per row"
msgstr "Počet stránek na řádek"
#: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step"
msgstr "Scroll step"
#: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum"
msgstr "Oddálit"
#: ../config.c:121
msgid "Zoom maximum"
msgstr "Přiblížit"
#: ../config.c:123
msgid "Life time (in seconds) of a hidden page"
msgstr "Délka života skryté stránky v sekundách"
#: ../config.c:124
msgid "Amount of seconds between each cache purge"
msgstr "Počet sekund mezi čištěními cache"
#: ../config.c:126
msgid "Recoloring (dark color)"
msgstr "Přebarvuji do tmava"
#: ../config.c:128
msgid "Recoloring (light color)"
msgstr "Přebarvuji do sv¿tla"
#: ../config.c:130
msgid "Color for highlighting"
msgstr "Barva zvýrazňovače"
#: ../config.c:132
msgid "Color for highlighting (active)"
msgstr "Barva zvýrazňovače (aktivní)"
#: ../config.c:136
msgid "Recolor pages"
msgstr "Přebarvit stránky"
#: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling"
msgstr "Scrollovat přes konce"
#: ../config.c:142
msgid "Advance number of pages per row"
msgstr ""
#: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting"
msgstr "Průhlednost při zvýrazňování"
#: ../config.c:150
msgid "Render 'Loading ...'"
msgstr "Vypisovat 'Načítám ...'"
#: ../config.c:151
msgid "Adjust to when opening file"
msgstr "Přiblížení po otevření souboru"
#: ../config.c:153
msgid "Show hidden files and directories"
msgstr "Zobrazovat skryté soubory"
#: ../config.c:155
msgid "Show directories"
msgstr "Zobrazovat adresáře"
#: ../config.c:157
msgid "Always open on first page"
msgstr "Vždy otevírat na první straně"
#: ../config.c:159
msgid "Highlight search results"
msgstr "Zvýrazňovat výsledky hledání"
#: ../config.c:161
msgid "Clear search results on abort"
msgstr "Při abortu smazat výsledky hledání"
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands
#: ../config.c:293
msgid "Add a bookmark"
msgstr "Přidat záložku"
#: ../config.c:294
msgid "Delete a bookmark"
msgstr "Smazat záložku"
#: ../config.c:295
msgid "List all bookmarks"
msgstr "Vypsat záložky"
#: ../config.c:296
msgid "Close current file"
msgstr "Zavřít tenhle soubor"
#: ../config.c:297
msgid "Show file information"
msgstr "Zobrazit informace o souboru"
#: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help"
msgstr "Zobrazit nápovědu"
#: ../config.c:300
msgid "Open document"
msgstr "Otevřít dokument"
#: ../config.c:301
msgid "Close zathura"
msgstr "Zavřít zathuru"
#: ../config.c:302
msgid "Print document"
msgstr "Tisknout dokument"
#: ../config.c:303
msgid "Save document"
msgstr "Uložit dokument"
#: ../config.c:304
msgid "Save document (and force overwriting)"
msgstr "Uložit a přepsat dokument"
#: ../config.c:305
msgid "Save attachments"
msgstr "Uložit přílohy"
#: ../config.c:306
msgid "Set page offset"
msgstr ""
#: ../config.c:307
msgid "Mark current location within the document"
msgstr "Označit současnou pozici v dokumentu"
#: ../config.c:308
msgid "Delete the specified marks"
msgstr "Smazat vybrané značky"
#: ../config.c:309
msgid "Don't highlight current search results"
msgstr "Nezvýrazňovat výsledky tohoto hledání"
#: ../config.c:310
msgid "Highlight current search results"
msgstr "Zvýrazňovat výsledky tohoto hledání"
#: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Nepovedlo se spustit xdg-open."
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr ""
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Cesta k souboru s nastavením"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Cesta k adresáři s daty"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Cesta k adresářům s pluginy"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Forknout se na pozadí"
#: ../main.c:57
msgid "Document password"
msgstr "Heslo"
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Úroveň logování (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Zobrazit informace o souboru"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr "Načítám ..."
#: ../page-widget.c:643
#, c-format
msgid "Copied selected text to clipboard: %s"
msgstr "Vybraný text zkopírován do schránky: %s"
#: ../page-widget.c:741
msgid "Copy image"
msgstr "Zkopíruj obrázek"
#: ../page-widget.c:742
msgid "Save image as"
msgstr "Ulož obrázek jako"
#: ../shortcuts.c:825
msgid "This document does not contain any index"
msgstr "Tenhle dokument neobsahuje žádné indexy"
#: ../zathura.c:189 ../zathura.c:843
msgid "[No name]"
msgstr "[Nepojmenovaný]"

278
po/de.po
View file

@ -5,10 +5,10 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-04-03 15:25+0000\n" "PO-Revision-Date: 2012-08-05 16:08+0100\n"
"Last-Translator: Sebastian Ramacher <s.ramacher@gmx.at>\n" "Last-Translator: Sebastian Ramacher <sebastian+dev@ramacher.at>\n"
"Language-Team: pwmt.org <mail@pwmt.org>\n" "Language-Team: pwmt.org <mail@pwmt.org>\n"
"Language: de\n" "Language: de\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -16,111 +16,111 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "Ungültige Eingabe '%s' angegeben." msgstr "Ungültige Eingabe '%s' angegeben."
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "Ungültiger Index '%s' angegeben." msgstr "Ungültiger Index '%s' angegeben."
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "Kein Dokument geöffnet." msgstr "Kein Dokument geöffnet."
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "Ungültige Anzahl an Argumenten angegeben." msgstr "Ungültige Anzahl an Argumenten angegeben."
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Lesezeichen erfolgreich aktualisiert: %s." msgstr "Lesezeichen erfolgreich aktualisiert: %s."
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "Konnte Lesezeichen nicht erstellen: %s" msgstr "Konnte Lesezeichen nicht erstellen: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Lesezeichen erfolgreich erstellt: %s" msgstr "Lesezeichen erfolgreich erstellt: %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Lesezeichen entfernt: %s" msgstr "Lesezeichen entfernt: %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Konnte Lesezeichen nicht entfernen: %s" msgstr "Konnte Lesezeichen nicht entfernen: %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "Lesezeichen existiert nicht: %s" msgstr "Lesezeichen existiert nicht: %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "Keine Information verfügbar." msgstr "Keine Information verfügbar."
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Zu viele Argumente angegeben." msgstr "Zu viele Argumente angegeben."
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "Keine Argumente angegeben." msgstr "Keine Argumente angegeben."
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "Dokument gespeichert." msgstr "Dokument gespeichert."
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "Konnte Dokument nicht speichern." msgstr "Konnte Dokument nicht speichern."
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "Ungültige Anzahl an Argumenten." msgstr "Ungültige Anzahl an Argumenten."
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Konnte Anhang '%s' nicht nach '%s' schreiben." msgstr "Konnte Anhang '%s' nicht nach '%s' schreiben."
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "Anhang '%s' nach '%s' geschrieben." msgstr "Anhang '%s' nach '%s' geschrieben."
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "Anhang '%s' nach '%s' geschrieben." msgstr "Anhang '%s' nach '%s' geschrieben."
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "Konnte Anhang '%s' nicht nach '%s' schreiben." msgstr "Konnte Anhang '%s' nicht nach '%s' schreiben."
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr "Unbekanntes Bild '%s'."
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "Unbekannter Anhanng oder Bild '%s'." msgstr "Unbekannter Anhanng oder Bild '%s'."
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "Das Argument ist keine Zahl." msgstr "Das Argument ist keine Zahl."
@ -139,221 +139,271 @@ msgid "Images"
msgstr "Bilder" msgstr "Bilder"
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "Datenbank Backend" msgstr "Datenbank Backend"
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Vergrößerungsstufe" msgstr "Vergrößerungsstufe"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "Abstand zwischen den Seiten" msgstr "Abstand zwischen den Seiten"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "Anzahl der Seiten in einer Reihe" msgstr "Anzahl der Seiten in einer Reihe"
#: ../config.c:106 #: ../config.c:113
msgid "Column of the first page"
msgstr "Spalte der ersten Seite"
#: ../config.c:115
msgid "Scroll step" msgid "Scroll step"
msgstr "Schrittgröße beim Scrollen" msgstr "Schrittgröße beim Scrollen"
#: ../config.c:108 #: ../config.c:117
msgid "Horizontal scroll step"
msgstr "Horizontale Schrittgröße beim Scrollen"
#: ../config.c:119
msgid "Zoom minimum" msgid "Zoom minimum"
msgstr "Minimale Vergrößerungsstufe" msgstr "Minimale Vergrößerungsstufe"
#: ../config.c:110 #: ../config.c:121
msgid "Zoom maximum" msgid "Zoom maximum"
msgstr "Maximale Vergrößerungsstufe" msgstr "Maximale Vergrößerungsstufe"
#: ../config.c:112 #: ../config.c:123
msgid "Life time (in seconds) of a hidden page" msgid "Life time (in seconds) of a hidden page"
msgstr "" msgstr "Zeit (in Sekunden) bevor nicht sichtbare Seiten gelöscht werden"
#: ../config.c:113 #: ../config.c:124
msgid "Amount of seconds between each cache purge" msgid "Amount of seconds between each cache purge"
msgstr "" msgstr ""
"Anzahl der Sekunden zwischen jeder Prüfung von nicht angezeigten Seiten" "Anzahl der Sekunden zwischen jeder Prüfung von nicht angezeigten Seiten"
#: ../config.c:115 #: ../config.c:126
msgid "Recoloring (dark color)" msgid "Recoloring (dark color)"
msgstr "Neufärben (Dunkle Farbe)" msgstr "Neufärben (Dunkle Farbe)"
#: ../config.c:117 #: ../config.c:128
msgid "Recoloring (light color)" msgid "Recoloring (light color)"
msgstr "Neufärben (Helle Farbe)" msgstr "Neufärben (Helle Farbe)"
#: ../config.c:119 #: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "Farbe für eine Markierung" msgstr "Farbe für eine Markierung"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "Farbe für die aktuelle Markierung" msgstr "Farbe für die aktuelle Markierung"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "Färbe die Seiten ein" msgstr "Färbe die Seiten ein"
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
"Behalte beim Neuzeichnen den ursprünglichen Hue-Wert bei und stimme nur die "
"Helligkeit ab"
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "Scroll-Umbruch" msgstr "Scroll-Umbruch"
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "Gehe Anzahl der Seiten in einer Reihe weiter" msgstr "Gehe Anzahl der Seiten in einer Reihe weiter"
#: ../config.c:131 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr "Horizontal zentrierter Zoom"
#: ../config.c:146
msgid "Center result horizontally"
msgstr "Zentriere Ergebnis horizontal"
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "Transparenz einer Markierung" msgstr "Transparenz einer Markierung"
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "Zeige 'Lädt...'-Text beim Zeichnen einer Seite" msgstr "Zeige 'Lädt...'-Text beim Zeichnen einer Seite"
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "Seite einpassen" msgstr "Seite einpassen"
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "Zeige versteckte Dateien und Ordner an" msgstr "Zeige versteckte Dateien und Ordner an"
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Zeige Ordner an" msgstr "Zeige Ordner an"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Öffne Dokument immer auf der ersten Seite" msgstr "Öffne Dokument immer auf der ersten Seite"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "" msgstr "Hebe Suchergebnisse hervor"
#: ../config.c:144 #: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "Lösche Suchergebnisse bei Abbruch"
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr "Verwende den Dateinamen der Datei im Fenstertitel"
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr "" msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Füge Lesezeichen hinzu" msgstr "Füge Lesezeichen hinzu"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Lösche ein Lesezeichen" msgstr "Lösche ein Lesezeichen"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Liste all Lesezeichen auf" msgstr "Liste all Lesezeichen auf"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Schließe das aktuelle Dokument" msgstr "Schließe das aktuelle Dokument"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Zeige Dokumentinformationen an" msgstr "Zeige Dokumentinformationen an"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Zeige Hilfe an" msgstr "Zeige Hilfe an"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Öffne Dokument" msgstr "Öffne Dokument"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Beende zathura" msgstr "Beende zathura"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Drucke Dokument" msgstr "Drucke Dokument"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Speichere Dokument" msgstr "Speichere Dokument"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "Speichere Dokument (und überschreibe bestehende)" msgstr "Speichere Dokument (und überschreibe bestehende)"
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Speichere Anhänge" msgstr "Speichere Anhänge"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "Setze den Seitenabstand" msgstr "Setze den Seitenabstand"
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "" msgstr "Markiere aktuelle Position im Doukument"
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "" msgstr "Lösche angegebene Markierung"
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr "Hebe aktuelle Suchergebnisse nicht hervor"
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "" msgstr "Hebe aktuelle Suchergebnisse hervor"
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr "Zeige Versionsinformationen an"
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Konnte xdg-open nicht ausführen."
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Reparentiert zathura an das Fenster mit der xid"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Pfad zum Konfigurationsverzeichnis"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Pfad zum Datenverzeichnis"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Pfad zum Pluginverzeichnis"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Forkt den Prozess in den Hintergrund"
#: ../main.c:57
msgid "Document password"
msgstr "Dokument Passwort"
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Log-Stufe (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Zeige Versionsinformationen an"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr "Synctex Editor (wird an synctex weitergeleitet)"
#: ../page-widget.c:456
msgid "Loading..."
msgstr "Lädt..."
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "Der gewählte Text wurde in die Zwischenablage kopiert: %s" msgstr "Der gewählte Text wurde in die Zwischenablage kopiert: %s"
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Bild kopieren" msgstr "Bild kopieren"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "Bild speichern als" msgstr "Bild speichern als"
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "Dieses Dokument beinhaltet kein Inhaltsverzeichnis." msgstr "Dieses Dokument beinhaltet kein Inhaltsverzeichnis."
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "Konnte xdg-open nicht ausführen."
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr "Reparentiert zathura an das Fenster mit der xid"
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr "Pfad zum Konfigurationsverzeichnis"
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr "Pfad zum Datenverzeichnis"
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr "Pfad zum Pluginverzeichnis"
#: ../zathura.c:77
msgid "Fork into the background"
msgstr "Forkt den Prozess in den Hintergrund"
#: ../zathura.c:78
msgid "Document password"
msgstr "Dokument Passwort"
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr "Log-Stufe (debug, info, warning, error)"
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[Kein Name]" msgstr "[Kein Name]"

273
po/eo.po
View file

@ -2,132 +2,133 @@
# See LICENSE file for license and copyright information # See LICENSE file for license and copyright information
# #
# Translators: # Translators:
# <manelsales@ono.com>, 2012.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: http://bt.pwmt.org/\n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-04-21 14:04+0000\n" "PO-Revision-Date: 2012-08-09 13:21+0000\n"
"Last-Translator: Sebastian Ramacher <sebastian+dev@ramacher.at>\n" "Last-Translator: norbux <manelsales@ono.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: Esperanto (http://www.transifex.com/projects/p/zathura/language/eo/)\n"
"Language: eo\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Language: eo\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "Nevalida enigo '%s' uzata." msgstr "Nevalida enigo '%s' uzata."
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "Nevalida indekso '%s' uzata." msgstr "Nevalida indekso '%s' uzata."
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "Neniu dokumento malfermita." msgstr "Neniu dokumento malfermita."
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "Nevalida nombro da argumentoj uzata." msgstr "Nevalida nombro da argumentoj uzata."
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Paĝosigno sukcese aktualigita: %s" msgstr "Paĝosigno sukcese aktualigita: %s"
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "Neeble krei paĝosignon: %s" msgstr "Neeble krei paĝosignon: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Paĝosigno sukcese kreita: %s" msgstr "Paĝosigno sukcese kreita: %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Paĝosigno forigita: %s" msgstr "Paĝosigno forigita: %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Neeble forigi paĝosignon: %s" msgstr "Neeble forigi paĝosignon: %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "Neniu paĝosigno: %s" msgstr "Neniu paĝosigno: %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "Neniu informacio disponebla." msgstr "Neniu informacio disponebla."
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Tro multe da argumentoj." msgstr "Tro multe da argumentoj."
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "Neniuj argumentoj uzata." msgstr "Neniuj argumentoj uzata."
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "Dokumento konservita." msgstr "Dokumento konservita."
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "Neeble konservi dokumenton." msgstr "Neeble konservi dokumenton."
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "Nevalida nombro da argumentoj." msgstr "Nevalida nombro da argumentoj."
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Neeble skribi kunsendaĵon '%s' en '%s'." msgstr "Neeble skribi kunsendaĵon '%s' en '%s'."
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "Skribis kunsendaĵon '%s' en '%s'." msgstr "Skribis kunsendaĵon '%s' en '%s'."
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "Skribis kunsendaĵon '%s' en '%s'." msgstr "Skribis kunsendaĵon '%s' en '%s'."
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "Neeble skribi kunsendaĵon '%s' en '%s'." msgstr "Neeble skribi kunsendaĵon '%s' en '%s'."
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr "Nekonata bildo '%s'."
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "" msgstr ""
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "Argumento devas esti nombro." msgstr "Argumento devas esti nombro."
#: ../completion.c:250 #: ../completion.c:250
#, c-format #, c-format
msgid "Page %d" msgid "Page %d"
msgstr "" msgstr "Paĝo %d"
#: ../completion.c:293 #: ../completion.c:293
msgid "Attachments" msgid "Attachments"
@ -136,223 +137,271 @@ msgstr "Konservu kunsendaĵojn"
#. add images #. add images
#: ../completion.c:324 #: ../completion.c:324
msgid "Images" msgid "Images"
msgstr "" msgstr "Bildoj"
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "" msgstr ""
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Zompaŝo" msgstr "Zompaŝo"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "Interpaĝa plenigo" msgstr "Interpaĝa plenigo"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "Nombro da paĝoj po vico" msgstr "Nombro da paĝoj po vico"
#: ../config.c:106 #: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step" msgid "Scroll step"
msgstr "Rulumpaŝo" msgstr "Rulumpaŝo"
#: ../config.c:108 #: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum" msgid "Zoom minimum"
msgstr "Mimimuma zomo" msgstr "Mimimuma zomo"
#: ../config.c:110 #: ../config.c:121
msgid "Zoom maximum" msgid "Zoom maximum"
msgstr "Maksimuma zomo" msgstr "Maksimuma zomo"
#: ../config.c:112 #: ../config.c:123
msgid "Life time (in seconds) of a hidden page" msgid "Life time (in seconds) of a hidden page"
msgstr "Vivdaŭro (sekunda) de kaŝita paĝo" msgstr "Vivdaŭro (sekunda) de kaŝita paĝo"
#: ../config.c:113 #: ../config.c:124
msgid "Amount of seconds between each cache purge" msgid "Amount of seconds between each cache purge"
msgstr "Nombro da sekundoj inter repurigo de kaŝmemoro" msgstr "Nombro da sekundoj inter repurigo de kaŝmemoro"
#: ../config.c:115 #: ../config.c:126
msgid "Recoloring (dark color)" msgid "Recoloring (dark color)"
msgstr "Rekolorigo (malhela koloro)" msgstr "Rekolorigo (malhela koloro)"
#: ../config.c:117 #: ../config.c:128
msgid "Recoloring (light color)" msgid "Recoloring (light color)"
msgstr "Rekolorigo (hela koloro)" msgstr "Rekolorigo (hela koloro)"
#: ../config.c:119 #: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "Koloro por fonlumo" msgstr "Koloro por fonlumo"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "Koloro por fonlumo (aktiva)" msgstr "Koloro por fonlumo (aktiva)"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "Rekoloru paĝojn" msgstr "Rekoloru paĝojn"
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "Ĉirkaŭflua rulumado" msgstr "Ĉirkaŭflua rulumado"
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "" msgstr ""
#: ../config.c:131 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "Travidebleco por fonlumo" msgstr "Travidebleco por fonlumo"
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "Bildigu 'Ŝargado ...'" msgstr "Bildigu 'Ŝargado ...'"
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "Adaptaĵo ĉe malfermo de dosiero" msgstr "Adaptaĵo ĉe malfermo de dosiero"
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "Montru kaŝitajn dosierojn kaj -ujojn" msgstr "Montru kaŝitajn dosierojn kaj -ujojn"
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Montru dosierujojn" msgstr "Montru dosierujojn"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Ĉiam malfermu ĉe unua paĝo" msgstr "Ĉiam malfermu ĉe unua paĝo"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "" msgstr ""
#: ../config.c:144 #: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "" msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Aldonu paĝosignon" msgstr "Aldonu paĝosignon"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Forigu paĝosignon" msgstr "Forigu paĝosignon"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Listigu ĉiujn paĝosignojn" msgstr "Listigu ĉiujn paĝosignojn"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Fermu nunan dosieron" msgstr "Fermu nunan dosieron"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Montru dosiera informacio" msgstr "Montru dosiera informacio"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Montru helpon" msgstr "Montru helpon"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Malfermu dokumenton" msgstr "Malfermu dokumenton"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Fermu zathura" msgstr "Fermu zathura"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Presu dokumenton" msgstr "Presu dokumenton"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Konservu dokumenton" msgstr "Konservu dokumenton"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "Konservu dokumenton (deviga anstataŭo)" msgstr "Konservu dokumenton (deviga anstataŭo)"
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Konservu kunsendaĵojn" msgstr "Konservu kunsendaĵojn"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "Agordu paĝdelokado" msgstr "Agordu paĝdelokado"
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "" msgstr ""
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "" msgstr ""
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr ""
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "" msgstr ""
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Fiaskis iro de xdg-open"
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr ""
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Vojo al la agorda dosierujo"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Vojo al la datuma dosierujo"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Vojoj al dosierujoj enhavantaj kromaĵojn"
#: ../main.c:56
msgid "Fork into the background"
msgstr ""
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Nivelo de ĵurnalo (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Montru dosiera informacio"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr "Ŝargado ..."
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "Selektita teksto estas kopiita en la poŝo: %s" msgstr "Selektita teksto estas kopiita en la poŝo: %s"
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Kopiu bildon" msgstr "Kopiu bildon"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "" msgstr "Savi bildojn kiel"
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "Ĉi-tiu dokumento enhavas neniam indekson." msgstr "Ĉi-tiu dokumento enhavas neniam indekson."
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "Fiaskis iro de xdg-open"
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr ""
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr "Vojo al la agorda dosierujo"
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr "Vojo al la datuma dosierujo"
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr "Vojoj al dosierujoj enhavantaj kromaĵojn"
#: ../zathura.c:77
msgid "Fork into the background"
msgstr ""
#: ../zathura.c:78
msgid "Document password"
msgstr ""
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr "Nivelo de ĵurnalo (debug, info, warning, error)"
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[Neniu nomo]" msgstr "[Neniu nomo]"

258
po/es.po
View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-04-03 15:25+0000\n" "PO-Revision-Date: 2012-04-03 15:25+0000\n"
"Last-Translator: Moritz Lipp <mlq@pwmt.org>\n" "Last-Translator: Moritz Lipp <mlq@pwmt.org>\n"
"Language-Team: Spanish (Castilian) (http://www.transifex.net/projects/p/" "Language-Team: Spanish (Castilian) (http://www.transifex.net/projects/p/"
@ -17,111 +17,111 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "Entrada inválida: '%s'." msgstr "Entrada inválida: '%s'."
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "Índice invalido: '%s'." msgstr "Índice invalido: '%s'."
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "Ningún documento abierto." msgstr "Ningún documento abierto."
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "Número de argumentos inválido." msgstr "Número de argumentos inválido."
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Favorito actualizado con éxitosamente: %s" msgstr "Favorito actualizado con éxitosamente: %s"
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "Error al crear favorito: %s" msgstr "Error al crear favorito: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Favorito creado con éxitosamente: %s" msgstr "Favorito creado con éxitosamente: %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Favorito eliminado: %s" msgstr "Favorito eliminado: %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Error al eliminar el favorito: %s" msgstr "Error al eliminar el favorito: %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "No existe el favorito: %s" msgstr "No existe el favorito: %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "No hay información disponible." msgstr "No hay información disponible."
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Demasiados argumentos." msgstr "Demasiados argumentos."
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "Ningún argumento recibido." msgstr "Ningún argumento recibido."
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "Documento guardado." msgstr "Documento guardado."
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "Error al guardar el documento." msgstr "Error al guardar el documento."
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "Número de argumentos inválido." msgstr "Número de argumentos inválido."
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'." msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'."
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "Escrito fichero adjunto '%s' a '%s'." msgstr "Escrito fichero adjunto '%s' a '%s'."
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "Escrito fichero adjunto '%s' a '%s'." msgstr "Escrito fichero adjunto '%s' a '%s'."
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'." msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'."
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr ""
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "" msgstr ""
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "El argumento ha de ser un número." msgstr "El argumento ha de ser un número."
@ -140,221 +140,269 @@ msgid "Images"
msgstr "" msgstr ""
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "Base de datos" msgstr "Base de datos"
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Unidad de zoom" msgstr "Unidad de zoom"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "Separación entre páginas" msgstr "Separación entre páginas"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "Número de páginas por fila" msgstr "Número de páginas por fila"
#: ../config.c:106 #: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step" msgid "Scroll step"
msgstr "Unidad de desplazamiento" msgstr "Unidad de desplazamiento"
#: ../config.c:108 #: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum" msgid "Zoom minimum"
msgstr "Zoom mínimo" msgstr "Zoom mínimo"
#: ../config.c:110 #: ../config.c:121
msgid "Zoom maximum" msgid "Zoom maximum"
msgstr "Zoom máximo" msgstr "Zoom máximo"
#: ../config.c:112 #: ../config.c:123
msgid "Life time (in seconds) of a hidden page" msgid "Life time (in seconds) of a hidden page"
msgstr "" msgstr ""
#: ../config.c:113 #: ../config.c:124
msgid "Amount of seconds between each cache purge" msgid "Amount of seconds between each cache purge"
msgstr "" msgstr ""
"Cantidad de segundos entre las comprobaciones de las páginas invisibles" "Cantidad de segundos entre las comprobaciones de las páginas invisibles"
#: ../config.c:115 #: ../config.c:126
msgid "Recoloring (dark color)" msgid "Recoloring (dark color)"
msgstr "Recoloreado (color oscuro)" msgstr "Recoloreado (color oscuro)"
#: ../config.c:117 #: ../config.c:128
msgid "Recoloring (light color)" msgid "Recoloring (light color)"
msgstr "Recoloreado (color claro)" msgstr "Recoloreado (color claro)"
#: ../config.c:119 #: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "Color para destacar" msgstr "Color para destacar"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "Color para destacar (activo)" msgstr "Color para destacar (activo)"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "Recolorear páginas" msgstr "Recolorear páginas"
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "Navegación/Scroll cíclica/o" msgstr "Navegación/Scroll cíclica/o"
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "" msgstr ""
#: ../config.c:131 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "Transparencia para el destacado" msgstr "Transparencia para el destacado"
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "Renderizado 'Cargando ...'" msgstr "Renderizado 'Cargando ...'"
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "Ajustarse al abrir un fichero" msgstr "Ajustarse al abrir un fichero"
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "Mostrar directorios y ficheros ocultos" msgstr "Mostrar directorios y ficheros ocultos"
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Mostrar directorios" msgstr "Mostrar directorios"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Abrir siempre la primera página" msgstr "Abrir siempre la primera página"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "" msgstr ""
#: ../config.c:144 #: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "" msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Añadir Favorito" msgstr "Añadir Favorito"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Eliminar Favorito" msgstr "Eliminar Favorito"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Listar favoritos" msgstr "Listar favoritos"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Cerrar fichero actual" msgstr "Cerrar fichero actual"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Mostrar información del fichero" msgstr "Mostrar información del fichero"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Mostrar ayuda" msgstr "Mostrar ayuda"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Abrir documento" msgstr "Abrir documento"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Salir de zathura" msgstr "Salir de zathura"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Imprimir documento" msgstr "Imprimir documento"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Guardar documento" msgstr "Guardar documento"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "Guardar documento (y sobreescribir)" msgstr "Guardar documento (y sobreescribir)"
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Guardar ficheros adjuntos" msgstr "Guardar ficheros adjuntos"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "Asignar el desplazamiento de página" msgstr "Asignar el desplazamiento de página"
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "" msgstr ""
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "" msgstr ""
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr ""
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "" msgstr ""
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Error al tratar de ejecutar xdg-open"
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Reasignar a la ventana especificada por xid"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Ruta al directorio de configuración"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Ruta para el directorio de datos"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Ruta a los directorios que contienen los plugins"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Fork, ejecutándose en background"
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Nivel de log (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Mostrar información del fichero"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr "Cargando ..."
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "Se ha copiado el texto seleccionado al portapapeles: %s" msgstr "Se ha copiado el texto seleccionado al portapapeles: %s"
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Copiar imagen" msgstr "Copiar imagen"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "" msgstr ""
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "Este documento no contiene ningún índice" msgstr "Este documento no contiene ningún índice"
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "Error al tratar de ejecutar xdg-open"
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr "Reasignar a la ventana especificada por xid"
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr "Ruta al directorio de configuración"
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr "Ruta para el directorio de datos"
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr "Ruta a los directorios que contienen los plugins"
#: ../zathura.c:77
msgid "Fork into the background"
msgstr "Fork, ejecutándose en background"
#: ../zathura.c:78
msgid "Document password"
msgstr ""
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr "Nivel de log (debug, info, warning, error)"
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[Sin nombre]" msgstr "[Sin nombre]"

View file

@ -6,8 +6,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-04-03 15:26+0000\n" "PO-Revision-Date: 2012-04-03 15:26+0000\n"
"Last-Translator: watsh1ken <wat.sh1ken@gmail.com>\n" "Last-Translator: watsh1ken <wat.sh1ken@gmail.com>\n"
"Language-Team: Spanish (Chile) (http://www.transifex.net/projects/p/zathura/" "Language-Team: Spanish (Chile) (http://www.transifex.net/projects/p/zathura/"
@ -18,111 +18,111 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "Entrada inválida: '%s'." msgstr "Entrada inválida: '%s'."
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "Índice invalido: '%s'." msgstr "Índice invalido: '%s'."
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "Ningún documento abierto." msgstr "Ningún documento abierto."
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "Número de argumentos inválido." msgstr "Número de argumentos inválido."
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Marcador actualizado exitosamente: %s" msgstr "Marcador actualizado exitosamente: %s"
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "No se pudo crear marcador: %s" msgstr "No se pudo crear marcador: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Marcador creado exitosamente: %s" msgstr "Marcador creado exitosamente: %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Marcador eliminado: %s" msgstr "Marcador eliminado: %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Error al eliminar marcador: %s" msgstr "Error al eliminar marcador: %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "No existe marcador: %s" msgstr "No existe marcador: %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "No hay información disponible." msgstr "No hay información disponible."
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Demasiados argumentos." msgstr "Demasiados argumentos."
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "Ningún argumento recibido." msgstr "Ningún argumento recibido."
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "Documento guardado." msgstr "Documento guardado."
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "Error al guardar el documento." msgstr "Error al guardar el documento."
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "Número de argumentos inválido." msgstr "Número de argumentos inválido."
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'." msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'."
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "Fichero adjunto escrito '%s' a '%s'." msgstr "Fichero adjunto escrito '%s' a '%s'."
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "Fichero adjunto escrito '%s' a '%s'." msgstr "Fichero adjunto escrito '%s' a '%s'."
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'." msgstr "No se pudo escribir el fichero adjunto '%s' a '%s'."
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr ""
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "" msgstr ""
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "El argumento debe ser un número." msgstr "El argumento debe ser un número."
@ -141,221 +141,269 @@ msgid "Images"
msgstr "" msgstr ""
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "Fin de la base de datos." msgstr "Fin de la base de datos."
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Unidad de zoom" msgstr "Unidad de zoom"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "Separación entre páginas" msgstr "Separación entre páginas"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "Numero de páginas por fila" msgstr "Numero de páginas por fila"
#: ../config.c:106 #: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step" msgid "Scroll step"
msgstr "Unidad de desplazamiento" msgstr "Unidad de desplazamiento"
#: ../config.c:108 #: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum" msgid "Zoom minimum"
msgstr "Zoom mínimo" msgstr "Zoom mínimo"
#: ../config.c:110 #: ../config.c:121
msgid "Zoom maximum" msgid "Zoom maximum"
msgstr "Zoom máximo" msgstr "Zoom máximo"
#: ../config.c:112 #: ../config.c:123
msgid "Life time (in seconds) of a hidden page" msgid "Life time (in seconds) of a hidden page"
msgstr "" msgstr ""
#: ../config.c:113 #: ../config.c:124
msgid "Amount of seconds between each cache purge" msgid "Amount of seconds between each cache purge"
msgstr "" msgstr ""
"Cantidad de segundos entre las comprobaciones de las páginas invisibles" "Cantidad de segundos entre las comprobaciones de las páginas invisibles"
#: ../config.c:115 #: ../config.c:126
msgid "Recoloring (dark color)" msgid "Recoloring (dark color)"
msgstr "Recolorando (color oscuro)" msgstr "Recolorando (color oscuro)"
#: ../config.c:117 #: ../config.c:128
msgid "Recoloring (light color)" msgid "Recoloring (light color)"
msgstr "Recolorando (color claro)" msgstr "Recolorando (color claro)"
#: ../config.c:119 #: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "Color para destacar" msgstr "Color para destacar"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "Color para destacar (activo)" msgstr "Color para destacar (activo)"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "Recolorar páginas" msgstr "Recolorar páginas"
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "Scroll cíclico" msgstr "Scroll cíclico"
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "" msgstr ""
#: ../config.c:131 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "Transparencia para lo destacado" msgstr "Transparencia para lo destacado"
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "Renderizando 'Cargando...'" msgstr "Renderizando 'Cargando...'"
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "Ajustar al abrirse un archivo" msgstr "Ajustar al abrirse un archivo"
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "Mostrar archivos ocultos y directorios" msgstr "Mostrar archivos ocultos y directorios"
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Mostrar directorios" msgstr "Mostrar directorios"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Siempre abrir en primera página" msgstr "Siempre abrir en primera página"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "" msgstr ""
#: ../config.c:144 #: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "" msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Agregar un marcador" msgstr "Agregar un marcador"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Eliminar un marcador" msgstr "Eliminar un marcador"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Listar todos los marcadores" msgstr "Listar todos los marcadores"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Cerrar archivo actual" msgstr "Cerrar archivo actual"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Mostrar información del archivo" msgstr "Mostrar información del archivo"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Mostrar ayuda" msgstr "Mostrar ayuda"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Abrir documento" msgstr "Abrir documento"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Cerrar zathura" msgstr "Cerrar zathura"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Imprimir documento" msgstr "Imprimir documento"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Guardar documento" msgstr "Guardar documento"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "Guardar documento (y forzar sobreescritura)" msgstr "Guardar documento (y forzar sobreescritura)"
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Guardar archivos adjuntos" msgstr "Guardar archivos adjuntos"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "Asignar desplazamiento de la página" msgstr "Asignar desplazamiento de la página"
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "" msgstr ""
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "" msgstr ""
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr ""
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "" msgstr ""
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Error al ejecutar xdg-open."
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Reasignar a la ventana especificada por xid"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Ruta al directorio de configuración"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Ruta al directorio de datos"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Ruta al directorio que contiene plugins"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Ejecución en background"
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Nivel de log (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Mostrar información del archivo"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr "Cargando..."
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "Texto seleccionado copiado al portapapeles: %s" msgstr "Texto seleccionado copiado al portapapeles: %s"
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Copiar imagen" msgstr "Copiar imagen"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "" msgstr ""
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "Este document no contiene índice" msgstr "Este document no contiene índice"
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "Error al ejecutar xdg-open."
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr "Reasignar a la ventana especificada por xid"
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr "Ruta al directorio de configuración"
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr "Ruta al directorio de datos"
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr "Ruta al directorio que contiene plugins"
#: ../zathura.c:77
msgid "Fork into the background"
msgstr "Ejecución en background"
#: ../zathura.c:78
msgid "Document password"
msgstr ""
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr "Nivel de log (debug, info, warning, error)"
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[Sin nombre]" msgstr "[Sin nombre]"

280
po/et.po
View file

@ -6,8 +6,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-04-03 15:25+0000\n" "PO-Revision-Date: 2012-04-03 15:25+0000\n"
"Last-Translator: Rivo Zängov <eraser@eraser.ee>\n" "Last-Translator: Rivo Zängov <eraser@eraser.ee>\n"
"Language-Team: Estonian (http://www.transifex.net/projects/p/zathura/" "Language-Team: Estonian (http://www.transifex.net/projects/p/zathura/"
@ -18,111 +18,111 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "" msgstr ""
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "" msgstr ""
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "" msgstr ""
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "" msgstr ""
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "" msgstr ""
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "" msgstr ""
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "" msgstr ""
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "" msgstr ""
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "" msgstr ""
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "" msgstr ""
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "" msgstr ""
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "" msgstr ""
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "" msgstr ""
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "" msgstr ""
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "" msgstr ""
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "" msgstr ""
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr ""
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "" msgstr ""
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "" msgstr ""
@ -141,220 +141,268 @@ msgid "Images"
msgstr "" msgstr ""
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "" msgstr ""
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "" msgstr ""
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "" msgstr ""
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "" msgstr ""
#: ../config.c:106
msgid "Scroll step"
msgstr ""
#: ../config.c:108
msgid "Zoom minimum"
msgstr ""
#: ../config.c:110
msgid "Zoom maximum"
msgstr ""
#: ../config.c:112
msgid "Life time (in seconds) of a hidden page"
msgstr ""
#: ../config.c:113 #: ../config.c:113
msgid "Amount of seconds between each cache purge" msgid "Column of the first page"
msgstr "" msgstr ""
#: ../config.c:115 #: ../config.c:115
msgid "Recoloring (dark color)" msgid "Scroll step"
msgstr "" msgstr ""
#: ../config.c:117 #: ../config.c:117
msgid "Recoloring (light color)" msgid "Horizontal scroll step"
msgstr "" msgstr ""
#: ../config.c:119 #: ../config.c:119
msgid "Zoom minimum"
msgstr ""
#: ../config.c:121
msgid "Zoom maximum"
msgstr ""
#: ../config.c:123
msgid "Life time (in seconds) of a hidden page"
msgstr ""
#: ../config.c:124
msgid "Amount of seconds between each cache purge"
msgstr ""
#: ../config.c:126
msgid "Recoloring (dark color)"
msgstr ""
#: ../config.c:128
msgid "Recoloring (light color)"
msgstr ""
#: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "Esiletõstmise värv" msgstr "Esiletõstmise värv"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "Esiletõstmise värv (aktiivne)" msgstr "Esiletõstmise värv (aktiivne)"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "" msgstr ""
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "" msgstr ""
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "" msgstr ""
#: ../config.c:131 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "" msgstr ""
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "" msgstr ""
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "" msgstr ""
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "" msgstr ""
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Näita kaustasid" msgstr "Näita kaustasid"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Ava alati esimene leht" msgstr "Ava alati esimene leht"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "" msgstr ""
#: ../config.c:144 #: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "" msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Lisa järjehoidja" msgstr "Lisa järjehoidja"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Kustuta järjehoidja" msgstr "Kustuta järjehoidja"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Näita kõiki järjehoidjaid" msgstr "Näita kõiki järjehoidjaid"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Sulge praegune fail" msgstr "Sulge praegune fail"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Näita faili infot" msgstr "Näita faili infot"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Näita abiinfot" msgstr "Näita abiinfot"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Ava dokument" msgstr "Ava dokument"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Sule zathura" msgstr "Sule zathura"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Prindi dokument" msgstr "Prindi dokument"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Salvesta dokument" msgstr "Salvesta dokument"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "" msgstr ""
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Salvesta manused" msgstr "Salvesta manused"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "" msgstr ""
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "" msgstr ""
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "" msgstr ""
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr ""
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "" msgstr ""
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr ""
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr ""
#: ../main.c:53
msgid "Path to the config directory"
msgstr ""
#: ../main.c:54
msgid "Path to the data directory"
msgstr ""
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr ""
#: ../main.c:56
msgid "Fork into the background"
msgstr ""
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr ""
#: ../main.c:59
msgid "Print version information"
msgstr "Näita faili infot"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr ""
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "" msgstr ""
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Kopeeri pilt" msgstr "Kopeeri pilt"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "" msgstr ""
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "" msgstr ""
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr ""
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr ""
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr ""
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr ""
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr ""
#: ../zathura.c:77
msgid "Fork into the background"
msgstr ""
#: ../zathura.c:78
msgid "Document password"
msgstr ""
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr ""
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[Nime pole]" msgstr "[Nime pole]"

262
po/fr.po
View file

@ -8,121 +8,121 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: http://bt.pwmt.org/\n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-05 15:45+0200\n"
"PO-Revision-Date: 2012-06-06 00:02+0000\n" "PO-Revision-Date: 2012-08-07 22:54+0000\n"
"Last-Translator: Stéphane Aulery <lkppo@free.fr>\n" "Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
"Language-Team: French (http://www.transifex.net/projects/p/zathura/language/fr/)\n" "Language-Team: French (http://www.transifex.com/projects/p/zathura/language/fr/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Language: fr\n" "Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1)\n" "Plural-Forms: nplurals=2; plural=(n > 1)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "Entrée invalide : '%s'" msgstr "Entrée invalide : '%s'"
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "Index invalide : '%s'" msgstr "Index invalide : '%s'"
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "Aucun document ouvert." msgstr "Aucun document ouvert."
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "Nombre d'arguments invalide." msgstr "Nombre d'arguments invalide."
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Marque page mis à jour avec succès : %s" msgstr "Marque page mis à jour avec succès : %s"
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "Impossible de créer le marque page: %s" msgstr "Impossible de créer le marque page: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Marque page créé avec succès : %s" msgstr "Marque page créé avec succès : %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Marque page supprimé : %s" msgstr "Marque page supprimé : %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Échec lors de la suppression du marque page : %s" msgstr "Échec lors de la suppression du marque page : %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "Aucun marque page : %s" msgstr "Aucun marque page : %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "Aucune information disponible." msgstr "Aucune information disponible."
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Trop d'arguments." msgstr "Trop d'arguments."
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "Aucun argument passé." msgstr "Aucun argument passé."
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "Document enregistré." msgstr "Document enregistré."
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "Échec lors de l'enregistrement du document." msgstr "Échec lors de l'enregistrement du document."
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "Nombre d'arguments invalide." msgstr "Nombre d'arguments invalide."
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Impossible d'écrire la pièce jointe '%s' dans '%s'." msgstr "Impossible d'écrire la pièce jointe '%s' dans '%s'."
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "Ecriture de la pièce jointe '%s' dans '%s'." msgstr "Ecriture de la pièce jointe '%s' dans '%s'."
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "Écriture de l'image '%s' dans '%s'." msgstr "Écriture de l'image '%s' dans '%s'."
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "Impossible d'écrire l'image '%s' dans '%s'." msgstr "Impossible d'écrire l'image '%s' dans '%s'."
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "Image '%s' inconnue" msgstr "Image '%s' inconnue"
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "Pièce jointe ou image '%s' inconnue." msgstr "Pièce jointe ou image '%s' inconnue."
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "L'argument doit être un nombre." msgstr "L'argument doit être un nombre."
@ -141,220 +141,270 @@ msgid "Images"
msgstr "Images" msgstr "Images"
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "Gestionnaire de base de données" msgstr "Gestionnaire de base de données"
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Facteur de zoom" msgstr "Facteur de zoom"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "Espacement entre les pages" msgstr "Espacement entre les pages"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "Nombre de page par rangée" msgstr "Nombre de page par rangée"
#: ../config.c:106 #: ../config.c:113
msgid "Column of the first page"
msgstr "Colonne de la première page"
#: ../config.c:115
msgid "Scroll step" msgid "Scroll step"
msgstr "Facteur de défilement" msgstr "Facteur de défilement"
#: ../config.c:108 #: ../config.c:117
msgid "Horizontal scroll step"
msgstr "Pas de défilement horizontal"
#: ../config.c:119
msgid "Zoom minimum" msgid "Zoom minimum"
msgstr "Zoom minimum" msgstr "Zoom minimum"
#: ../config.c:110 #: ../config.c:121
msgid "Zoom maximum" msgid "Zoom maximum"
msgstr "Zoom maximum" msgstr "Zoom maximum"
#: ../config.c:112 #: ../config.c:123
msgid "Life time (in seconds) of a hidden page" msgid "Life time (in seconds) of a hidden page"
msgstr "Durée de vie (en secondes) d'une page cachée" msgstr "Durée de vie (en secondes) d'une page cachée"
#: ../config.c:113 #: ../config.c:124
msgid "Amount of seconds between each cache purge" msgid "Amount of seconds between each cache purge"
msgstr "Délai en secondes entre chaque purge du cache." msgstr "Délai en secondes entre chaque purge du cache."
#: ../config.c:115 #: ../config.c:126
msgid "Recoloring (dark color)" msgid "Recoloring (dark color)"
msgstr "Recolorisation (couleurs sombres)" msgstr "Recolorisation (couleurs sombres)"
#: ../config.c:117 #: ../config.c:128
msgid "Recoloring (light color)" msgid "Recoloring (light color)"
msgstr "Recolorisation (couleurs claires)" msgstr "Recolorisation (couleurs claires)"
#: ../config.c:119 #: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "Couleur de surbrillance" msgstr "Couleur de surbrillance"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "Couleur de surbrillance (active)" msgstr "Couleur de surbrillance (active)"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "Recoloriser les pages" msgstr "Recoloriser les pages"
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
"Lors du recalibrage des couleurs garder la teinte d'origine et ajuster "
"seulement la luminosité"
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "Défiler lors du renvoi à la ligne" msgstr "Défiler lors du renvoi à la ligne"
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "Augmenter le nombre de pages par rangée" msgstr "Augmenter le nombre de pages par rangée"
#: ../config.c:131 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr "Zoom centré horizontalement"
#: ../config.c:146
msgid "Center result horizontally"
msgstr "Centrer le résultat horizontalement"
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "Transparence de la surbrillance" msgstr "Transparence de la surbrillance"
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "Rendu 'Chargement...'" msgstr "Rendu 'Chargement...'"
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "Ajuster à l'ouverture du fichier" msgstr "Ajuster à l'ouverture du fichier"
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "Montrer les fichiers et dossiers cachés" msgstr "Montrer les fichiers et dossiers cachés"
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Montrer les dossiers" msgstr "Montrer les dossiers"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Toujours ouvrir à la première page" msgstr "Toujours ouvrir à la première page"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "Surligner les résultats de la recherche" msgstr "Surligner les résultats de la recherche"
#: ../config.c:144 #: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "Effacer les résultats de recherche en cas d'abandon" msgstr "Effacer les résultats de recherche en cas d'abandon"
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr "Utiliser le nom de base dans le titre de la fenêtre"
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Ajouter un marque-page" msgstr "Ajouter un marque-page"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Supprimer un marque-page" msgstr "Supprimer un marque-page"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Lister tous les marque-pages" msgstr "Lister tous les marque-pages"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Fermer le fichier actuel" msgstr "Fermer le fichier actuel"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Montrer les informations sur le fichier" msgstr "Montrer les informations sur le fichier"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Afficher l'aide" msgstr "Afficher l'aide"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Ouvrir un document" msgstr "Ouvrir un document"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Quitter Zathura" msgstr "Quitter Zathura"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Imprimer un document" msgstr "Imprimer un document"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Sauver un document" msgstr "Sauver un document"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "Sauver un document (et forcer l'écrasement)" msgstr "Sauver un document (et forcer l'écrasement)"
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Enregistrer les pièces jointes" msgstr "Enregistrer les pièces jointes"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "Régler le décalage de page" msgstr "Régler le décalage de page"
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "Marquer l'emplacement actuel dans le document" msgstr "Marquer l'emplacement actuel dans le document"
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "Supprimer les marques indiquées" msgstr "Supprimer les marques indiquées"
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "Ne pas surligner les résultats de la recherche actuelle" msgstr "Ne pas surligner les résultats de la recherche actuelle"
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "Surligner les résultats de la recherche actuelle" msgstr "Surligner les résultats de la recherche actuelle"
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr "Afficher les informations de version "
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Échec lors du lancement de xdg-open"
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Rattacher à la fenêtre spécifiée par xid"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Chemin vers le dossier de configuration"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Chemin vers le dossier de données"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Chemin vers le dossier de plugins"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Forker en arrière-plan"
#: ../main.c:57
msgid "Document password"
msgstr "Mot de passe du document"
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Niveau d'affichage (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Afficher les informations de version "
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr "Éditeur Synctex (transférer à la commande synctex)"
#: ../page-widget.c:456
msgid "Loading..."
msgstr "Chargement..."
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "Copie du texte sélectionné dans le presse-papiers : %s" msgstr "Copie du texte sélectionné dans le presse-papiers : %s"
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Copier l'image" msgstr "Copier l'image"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "Enregistrer l'image sous" msgstr "Enregistrer l'image sous"
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "Ce document ne contient pas d'index" msgstr "Ce document ne contient pas d'index"
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "Échec lors du lancement de xdg-open"
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr "Rattacher à la fenêtre spécifiée par xid"
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr "Chemin vers le dossier de configuration"
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr "Chemin vers le dossier de données"
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr "Chemin vers le dossier de plugins"
#: ../zathura.c:77
msgid "Fork into the background"
msgstr "Forker en arrière-plan"
#: ../zathura.c:78
msgid "Document password"
msgstr "Mot de passe du document"
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr "Niveau d'affichage (debug, info, warning, error)"
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[Sans nom]" msgstr "[Sans nom]"

408
po/it.po Normal file
View file

@ -0,0 +1,408 @@
# zathura - language file (Italian)
# See LICENSE file for license and copyright information
#
# Translators:
# <segnalazionidalweb@gmail.com>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-06-20 14:58+0000\n"
"Last-Translator: Sebastian Ramacher <sebastian+dev@ramacher.at>\n"
"Language-Team: Italian (http://www.transifex.com/projects/p/zathura/language/"
"it/)\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../callbacks.c:204
#, c-format
msgid "Invalid input '%s' given."
msgstr "Input inserito '%s' non valido."
#: ../callbacks.c:232
#, c-format
msgid "Invalid index '%s' given."
msgstr "Indice inserito '%s' non valido."
#: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened."
msgstr "Nessun documento aperto."
#: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given."
msgstr "Numero di argomenti errato."
#: ../commands.c:49
#, c-format
msgid "Bookmark successfuly updated: %s"
msgstr "Segnalibro aggiornato con successo:%s"
#: ../commands.c:55
#, c-format
msgid "Could not create bookmark: %s"
msgstr "Impossibile creare il segnalibro:%s"
#: ../commands.c:59
#, c-format
msgid "Bookmark successfuly created: %s"
msgstr "Segnalibro creato con successo:%s"
#: ../commands.c:82
#, c-format
msgid "Removed bookmark: %s"
msgstr "Segnalibro rimosso:%s"
#: ../commands.c:84
#, c-format
msgid "Failed to remove bookmark: %s"
msgstr "Impossibile rimuovere il segnalibro:%s"
#: ../commands.c:110
#, c-format
msgid "No such bookmark: %s"
msgstr "Nessun segnalibro corrispondente:%s"
#: ../commands.c:161 ../commands.c:183
msgid "No information available."
msgstr "Nessun' informazione disponibile."
#: ../commands.c:221
msgid "Too many arguments."
msgstr "Numero di argomenti eccessivo."
#: ../commands.c:230
msgid "No arguments given."
msgstr "Nessun argomento specificato."
#: ../commands.c:289 ../commands.c:315
msgid "Document saved."
msgstr "Documento salvato."
#: ../commands.c:291 ../commands.c:317
msgid "Failed to save document."
msgstr "Impossibile salvare il documento."
#: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments."
msgstr "Numero di argomenti non valido."
#: ../commands.c:424
#, c-format
msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Impossibile salvare l' allegato '%s' in '%s'"
#: ../commands.c:426
#, c-format
msgid "Wrote attachment '%s' to '%s'."
msgstr "Allegato '%s' salvato in '%s'"
#: ../commands.c:470
#, c-format
msgid "Wrote image '%s' to '%s'."
msgstr ""
#: ../commands.c:472
#, c-format
msgid "Couldn't write image '%s' to '%s'."
msgstr ""
#: ../commands.c:479
#, c-format
msgid "Unknown image '%s'."
msgstr ""
#: ../commands.c:483
#, c-format
msgid "Unknown attachment or image '%s'."
msgstr ""
#: ../commands.c:534
msgid "Argument must be a number."
msgstr "L' argomento dev' essere un numero."
#: ../completion.c:250
#, c-format
msgid "Page %d"
msgstr ""
#: ../completion.c:293
msgid "Attachments"
msgstr ""
#. add images
#: ../completion.c:324
msgid "Images"
msgstr ""
#. zathura settings
#: ../config.c:105
msgid "Database backend"
msgstr "Backend del database"
#: ../config.c:107
msgid "Zoom step"
msgstr ""
#: ../config.c:109
msgid "Padding between pages"
msgstr "Spaziatura tra le pagine"
#: ../config.c:111
msgid "Number of pages per row"
msgstr "Numero di pagine per riga"
#: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step"
msgstr ""
#: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum"
msgstr "Zoom minimo"
#: ../config.c:121
msgid "Zoom maximum"
msgstr "Zoom massimo"
#: ../config.c:123
msgid "Life time (in seconds) of a hidden page"
msgstr "Durata (in secondi) di una pagina nascosta"
#: ../config.c:124
msgid "Amount of seconds between each cache purge"
msgstr "Tempo in secondi tra le invalidazioni della cache"
#: ../config.c:126
msgid "Recoloring (dark color)"
msgstr ""
#: ../config.c:128
msgid "Recoloring (light color)"
msgstr ""
#: ../config.c:130
msgid "Color for highlighting"
msgstr ""
#: ../config.c:132
msgid "Color for highlighting (active)"
msgstr ""
#: ../config.c:136
msgid "Recolor pages"
msgstr "Ricolora le pagine"
#: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling"
msgstr "Scrolling continuo"
#: ../config.c:142
msgid "Advance number of pages per row"
msgstr ""
#: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting"
msgstr ""
#: ../config.c:150
msgid "Render 'Loading ...'"
msgstr ""
#: ../config.c:151
msgid "Adjust to when opening file"
msgstr ""
#: ../config.c:153
msgid "Show hidden files and directories"
msgstr "Mostra file e cartelle nascosti"
#: ../config.c:155
msgid "Show directories"
msgstr "Mostra cartelle"
#: ../config.c:157
msgid "Always open on first page"
msgstr "Apri sempre alla prima pagina"
#: ../config.c:159
msgid "Highlight search results"
msgstr ""
#: ../config.c:161
msgid "Clear search results on abort"
msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands
#: ../config.c:293
msgid "Add a bookmark"
msgstr "Aggiungi un segnalibro"
#: ../config.c:294
msgid "Delete a bookmark"
msgstr "Elimina un segnalibro"
#: ../config.c:295
msgid "List all bookmarks"
msgstr "Mostra i segnalibri"
#: ../config.c:296
msgid "Close current file"
msgstr "Chiudi il file corrente"
#: ../config.c:297
msgid "Show file information"
msgstr "Mostra le informazioni sul file"
#: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help"
msgstr "Mostra l' aiuto"
#: ../config.c:300
msgid "Open document"
msgstr "Apri un documento"
#: ../config.c:301
msgid "Close zathura"
msgstr "Chiudi zathura"
#: ../config.c:302
msgid "Print document"
msgstr "Stampa il documento"
#: ../config.c:303
msgid "Save document"
msgstr "Salva il documento"
#: ../config.c:304
msgid "Save document (and force overwriting)"
msgstr "Salva il documento (e sovrascrivi)"
#: ../config.c:305
msgid "Save attachments"
msgstr "Salva allegati"
#: ../config.c:306
msgid "Set page offset"
msgstr "Imposta l' offset della pagina"
#: ../config.c:307
msgid "Mark current location within the document"
msgstr ""
#: ../config.c:308
msgid "Delete the specified marks"
msgstr ""
#: ../config.c:309
msgid "Don't highlight current search results"
msgstr ""
#: ../config.c:310
msgid "Highlight current search results"
msgstr ""
#: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Impossibile eseguire xdg-open."
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr ""
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Percorso della directory della configurazione"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Percorso della directory dei dati"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Percorso della directory contenente i plugin"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Crea un processo separato"
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Livello di log (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Mostra le informazioni sul file"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr ""
#: ../page-widget.c:643
#, c-format
msgid "Copied selected text to clipboard: %s"
msgstr "La selezione è stato copiata negli appunti:%s"
#: ../page-widget.c:741
msgid "Copy image"
msgstr "Copia immagine"
#: ../page-widget.c:742
msgid "Save image as"
msgstr ""
#: ../shortcuts.c:825
msgid "This document does not contain any index"
msgstr "Questo documento non contiene l' indice"
#: ../zathura.c:189 ../zathura.c:843
msgid "[No name]"
msgstr "[Nessun nome]"

286
po/pl.po
View file

@ -6,8 +6,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-04-03 16:07+0000\n" "PO-Revision-Date: 2012-04-03 16:07+0000\n"
"Last-Translator: p <poczciwiec@gmail.com>\n" "Last-Translator: p <poczciwiec@gmail.com>\n"
"Language-Team: Polish (http://www.transifex.net/projects/p/zathura/language/" "Language-Team: Polish (http://www.transifex.net/projects/p/zathura/language/"
@ -19,118 +19,118 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2)\n" "|| n%100>=20) ? 1 : 2)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "Nieprawidłowy argument: %s" msgstr "Nieprawidłowy argument: %s"
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "Nieprawidłowy indeks: %s" msgstr "Nieprawidłowy indeks: %s"
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "Nie otwarto żadnego pliku" msgstr "Nie otwarto żadnego pliku"
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "Nieprawidłowa liczba parametrów polecenia" msgstr "Nieprawidłowa liczba parametrów polecenia"
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Zaktualizowano zakładkę: %s" msgstr "Zaktualizowano zakładkę: %s"
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "Nie można stworzyć zakładki: %s" msgstr "Nie można stworzyć zakładki: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Utworzono zakładkę: %s" msgstr "Utworzono zakładkę: %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Usunięto zakładkę: %s" msgstr "Usunięto zakładkę: %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Nie można usunąć zakładki: %s" msgstr "Nie można usunąć zakładki: %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "Nie znaleziono zakładki: %s" msgstr "Nie znaleziono zakładki: %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "Brak informacji o pliku" msgstr "Brak informacji o pliku"
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Za dużo parametrów polecenia" msgstr "Za dużo parametrów polecenia"
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "Nie podano parametrów polecenia" msgstr "Nie podano parametrów polecenia"
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "Zapisano dokument" msgstr "Zapisano dokument"
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "Błąd zapisu" msgstr "Błąd zapisu"
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "Niewłaściwa liczba parametrów polecenia" msgstr "Niewłaściwa liczba parametrów polecenia"
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Nie można dodać załącznika %s do pliku %s" msgstr "Nie można dodać załącznika %s do pliku %s"
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "Zapisano załącznik %s do pliku %s" msgstr "Zapisano załącznik %s do pliku %s"
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "Zapisano załącznik %s do pliku %s" msgstr "Zapisano obrazek %s do pliku %s"
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "Nie można dodać załącznika %s do pliku %s" msgstr "Nie można dodać obrazka %s do pliku %s"
#: ../commands.c:475
#, c-format
msgid "Unknown image '%s'."
msgstr ""
#: ../commands.c:479 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr "Nieznany obrazek '%s'."
#: ../commands.c:509 #: ../commands.c:483
#, c-format
msgid "Unknown attachment or image '%s'."
msgstr "Nieznany załącznik lub obrazek '%s'."
#: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "Parametr polecenia musi być liczbą" msgstr "Parametr polecenia musi być liczbą"
#: ../completion.c:250 #: ../completion.c:250
#, c-format #, c-format
msgid "Page %d" msgid "Page %d"
msgstr "" msgstr "Strona %d"
#: ../completion.c:293 #: ../completion.c:293
msgid "Attachments" msgid "Attachments"
@ -139,223 +139,271 @@ msgstr "Zapisz załączniki"
#. add images #. add images
#: ../completion.c:324 #: ../completion.c:324
msgid "Images" msgid "Images"
msgstr "" msgstr "Obrazki"
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "Baza danych" msgstr "Baza danych"
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Skok powiększenia" msgstr "Skok powiększenia"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "Odstęp pomiędzy stronami" msgstr "Odstęp pomiędzy stronami"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "Liczba stron w wierszu" msgstr "Liczba stron w wierszu"
#: ../config.c:106 #: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step" msgid "Scroll step"
msgstr "Skok przewijania" msgstr "Skok przewijania"
#: ../config.c:108 #: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum" msgid "Zoom minimum"
msgstr "Minimalne powiększenie" msgstr "Minimalne powiększenie"
#: ../config.c:110 #: ../config.c:121
msgid "Zoom maximum" msgid "Zoom maximum"
msgstr "Maksymalne powiększenie" msgstr "Maksymalne powiększenie"
#: ../config.c:112 #: ../config.c:123
msgid "Life time (in seconds) of a hidden page" msgid "Life time (in seconds) of a hidden page"
msgstr "Czas życia niewidocznej strony (w sekundach)" msgstr "Czas życia niewidocznej strony (w sekundach)"
#: ../config.c:113 #: ../config.c:124
msgid "Amount of seconds between each cache purge" msgid "Amount of seconds between each cache purge"
msgstr "Okres sprawdzania widoczności stron (w sekundach)" msgstr "Okres sprawdzania widoczności stron (w sekundach)"
#: ../config.c:115 #: ../config.c:126
msgid "Recoloring (dark color)" msgid "Recoloring (dark color)"
msgstr "Ciemny kolor negatywu" msgstr "Ciemny kolor negatywu"
#: ../config.c:117 #: ../config.c:128
msgid "Recoloring (light color)" msgid "Recoloring (light color)"
msgstr "Jasny kolor negatywu" msgstr "Jasny kolor negatywu"
#: ../config.c:119 #: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "Kolor wyróżnienia" msgstr "Kolor wyróżnienia"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "Kolor wyróżnienia bieżącego elementu" msgstr "Kolor wyróżnienia bieżącego elementu"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "Negatyw" msgstr "Negatyw"
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "Zawijanie dokumentu" msgstr "Zawijanie dokumentu"
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "Liczba stron w wierszu"
#: ../config.c:144
msgid "Horizontally centered zoom"
msgstr "" msgstr ""
#: ../config.c:131 #: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "Przezroczystość wyróżnienia" msgstr "Przezroczystość wyróżnienia"
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "Wyświetlaj: „Wczytywanie pliku...”" msgstr "Wyświetlaj: „Wczytywanie pliku...”"
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "Dopasowanie widoku pliku" msgstr "Dopasowanie widoku pliku"
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "Wyświetl ukryte pliki i katalogi" msgstr "Wyświetl ukryte pliki i katalogi"
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Wyświetl katalogi" msgstr "Wyświetl katalogi"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Zawsze otwieraj na pierwszej stronie" msgstr "Zawsze otwieraj na pierwszej stronie"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "Podświetl wyniki wyszukiwania"
#: ../config.c:161
msgid "Clear search results on abort"
msgstr "Wyczyść wyniki wyszukiwania po przerwaniu"
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr "" msgstr ""
#: ../config.c:144 #: ../config.c:165 ../main.c:60
msgid "Clear search results on abort" msgid "Enable synctex support"
msgstr "" msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Dodaj zakładkę" msgstr "Dodaj zakładkę"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Usuń zakładkę" msgstr "Usuń zakładkę"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Wyświetl zakładki" msgstr "Wyświetl zakładki"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Zamknij plik" msgstr "Zamknij plik"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Wyświetl informacje o pliku" msgstr "Wyświetl informacje o pliku"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Wyświetl pomoc" msgstr "Wyświetl pomoc"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Otwórz plik" msgstr "Otwórz plik"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Zakończ" msgstr "Zakończ"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Wydrukuj" msgstr "Wydrukuj"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Zapisz" msgstr "Zapisz"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "Zapisz (nadpisując istniejący plik)" msgstr "Zapisz (nadpisując istniejący plik)"
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Zapisz załączniki" msgstr "Zapisz załączniki"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "Ustaw przesunięcie numerów stron" msgstr "Ustaw przesunięcie numerów stron"
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "" msgstr "Zaznacz aktualną pozycję w dokumencie"
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "" msgstr "Skasuj określone zakładki"
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr "Nie podświetlaj aktualnych wyników wyszukiwania "
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "Podświetl aktualne wyniki wyszukiwania"
#: ../config.c:311
msgid "Show version information"
msgstr "Wyświetl informacje o wersji"
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Wystąpił problem z uruchomieniem xdg-open"
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Przypisz proces do rodzica o danym xid"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Ścieżka do katalogu konfiguracyjnego"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Ścieżka do katalogu danych"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Ścieżka do katalogu wtyczek"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Forkuj w tle"
#: ../main.c:57
msgid "Document password"
msgstr "Hasło dokumentu"
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Szczegółowość komunikatów (debug, info, warning, error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Wyświetl informacje o wersji"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr "" msgstr ""
#: ../page-widget.c:611 #: ../page-widget.c:456
msgid "Loading..."
msgstr "Wczytywanie pliku..."
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "Zaznaczony tekst skopiowano do schowka: %s" msgstr "Zaznaczony tekst skopiowano do schowka: %s"
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Skopiuj obrazek" msgstr "Skopiuj obrazek"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "" msgstr "Zapisz obrazek jako"
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "Dokument nie zawiera indeksu" msgstr "Dokument nie zawiera indeksu"
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "Wystąpił problem z uruchomieniem xdg-open"
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr "Przypisz proces do rodzica o danym xid"
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr "Ścieżka do katalogu konfiguracyjnego"
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr "Ścieżka do katalogu danych"
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr "Ścieżka do katalogu wtyczek"
#: ../zathura.c:77
msgid "Fork into the background"
msgstr "Forkuj w tle"
#: ../zathura.c:78
msgid "Document password"
msgstr ""
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr "Szczegółowość komunikatów (debug, info, warning, error)"
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[bez nazwy]" msgstr "[bez nazwy]"

409
po/ru.po Normal file
View file

@ -0,0 +1,409 @@
# zathura - language file (Russian)
# See LICENSE file for license and copyright information
#
# Translators:
# Mikhail Krutov <>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-06-20 14:58+0000\n"
"Last-Translator: Sebastian Ramacher <sebastian+dev@ramacher.at>\n"
"Language-Team: Russian (http://www.transifex.com/projects/p/zathura/language/"
"ru/)\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
#: ../callbacks.c:204
#, c-format
msgid "Invalid input '%s' given."
msgstr "Неправильный ввод: %s"
#: ../callbacks.c:232
#, c-format
msgid "Invalid index '%s' given."
msgstr "Получен неверный индекс %s"
#: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened."
msgstr "Документ не открыт"
#: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given."
msgstr "Неверное число аргументов"
#: ../commands.c:49
#, c-format
msgid "Bookmark successfuly updated: %s"
msgstr "Закладка %s успешно обновлена"
#: ../commands.c:55
#, c-format
msgid "Could not create bookmark: %s"
msgstr "Не могу создать закладку %s"
#: ../commands.c:59
#, c-format
msgid "Bookmark successfuly created: %s"
msgstr "Закладка %s успешно создана"
#: ../commands.c:82
#, c-format
msgid "Removed bookmark: %s"
msgstr "Закладка %s удалена"
#: ../commands.c:84
#, c-format
msgid "Failed to remove bookmark: %s"
msgstr "Не удалось удалить закладку %s"
#: ../commands.c:110
#, c-format
msgid "No such bookmark: %s"
msgstr "Закладки %s не существует"
#: ../commands.c:161 ../commands.c:183
msgid "No information available."
msgstr "Нет доступной информации"
#: ../commands.c:221
msgid "Too many arguments."
msgstr "Слишком много аргументов"
#: ../commands.c:230
msgid "No arguments given."
msgstr "Отсутствуют аргументы"
#: ../commands.c:289 ../commands.c:315
msgid "Document saved."
msgstr "Документ сохранён"
#: ../commands.c:291 ../commands.c:317
msgid "Failed to save document."
msgstr "Не удалось сохранить документ"
#: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments."
msgstr "Неверное количество аргументов"
#: ../commands.c:424
#, c-format
msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Не могу сохранить приложенный файл %s в %s"
#: ../commands.c:426
#, c-format
msgid "Wrote attachment '%s' to '%s'."
msgstr "Файл %s сохранён в %s"
#: ../commands.c:470
#, c-format
msgid "Wrote image '%s' to '%s'."
msgstr ""
#: ../commands.c:472
#, c-format
msgid "Couldn't write image '%s' to '%s'."
msgstr ""
#: ../commands.c:479
#, c-format
msgid "Unknown image '%s'."
msgstr ""
#: ../commands.c:483
#, c-format
msgid "Unknown attachment or image '%s'."
msgstr ""
#: ../commands.c:534
msgid "Argument must be a number."
msgstr "Аргумент должен быть числом"
#: ../completion.c:250
#, c-format
msgid "Page %d"
msgstr ""
#: ../completion.c:293
msgid "Attachments"
msgstr ""
#. add images
#: ../completion.c:324
msgid "Images"
msgstr ""
#. zathura settings
#: ../config.c:105
msgid "Database backend"
msgstr "Бэкэнд базы данных"
#: ../config.c:107
msgid "Zoom step"
msgstr "Шаг увеличения"
#: ../config.c:109
msgid "Padding between pages"
msgstr "Разрыв между страницами"
#: ../config.c:111
msgid "Number of pages per row"
msgstr "Количество страниц в ряд"
#: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step"
msgstr "Шаг прокрутки"
#: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum"
msgstr "Минимальное увеличение"
#: ../config.c:121
msgid "Zoom maximum"
msgstr "Максимальное увеличение"
#: ../config.c:123
msgid "Life time (in seconds) of a hidden page"
msgstr "Время жизни (секунды) скрытой страницы"
#: ../config.c:124
msgid "Amount of seconds between each cache purge"
msgstr "Время (в секундах) между очисткой кэшей"
#: ../config.c:126
msgid "Recoloring (dark color)"
msgstr "Перекрашивание (тёмные тона)"
#: ../config.c:128
msgid "Recoloring (light color)"
msgstr "Перекрашивание (светлые тона)"
#: ../config.c:130
msgid "Color for highlighting"
msgstr "Цвет для подсветки"
#: ../config.c:132
msgid "Color for highlighting (active)"
msgstr "Цвет для подсветки (активной)"
#: ../config.c:136
msgid "Recolor pages"
msgstr "Перекрасить страницы"
#: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling"
msgstr "Плавная прокрутка"
#: ../config.c:142
msgid "Advance number of pages per row"
msgstr "Увеличить количество страниц в ряду"
#: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting"
msgstr "Прозрачность подсветки"
#: ../config.c:150
msgid "Render 'Loading ...'"
msgstr "Рендер 'Загружается ...'"
#: ../config.c:151
msgid "Adjust to when opening file"
msgstr ""
#: ../config.c:153
msgid "Show hidden files and directories"
msgstr "Показывать скрытые файлы и директории"
#: ../config.c:155
msgid "Show directories"
msgstr "Показывать директории"
#: ../config.c:157
msgid "Always open on first page"
msgstr "Всегда открывать на первой странице"
#: ../config.c:159
msgid "Highlight search results"
msgstr ""
#: ../config.c:161
msgid "Clear search results on abort"
msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands
#: ../config.c:293
msgid "Add a bookmark"
msgstr "Добавить закладку"
#: ../config.c:294
msgid "Delete a bookmark"
msgstr "Удалить закладку"
#: ../config.c:295
msgid "List all bookmarks"
msgstr "Показать все закладки"
#: ../config.c:296
msgid "Close current file"
msgstr "Закрыть текущий файл"
#: ../config.c:297
msgid "Show file information"
msgstr "Показать информацию о файле"
#: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help"
msgstr "Помощь"
#: ../config.c:300
msgid "Open document"
msgstr "Открыть документ"
#: ../config.c:301
msgid "Close zathura"
msgstr "Выход"
#: ../config.c:302
msgid "Print document"
msgstr "Печать"
#: ../config.c:303
msgid "Save document"
msgstr "Сохранить документ"
#: ../config.c:304
msgid "Save document (and force overwriting)"
msgstr "Сохранить документ (с перезапиьсю)"
#: ../config.c:305
msgid "Save attachments"
msgstr "Сохранить прикреплённые файлы"
#: ../config.c:306
msgid "Set page offset"
msgstr "Сохранить смещение страницы"
#: ../config.c:307
msgid "Mark current location within the document"
msgstr "Пометить текущую позицию в документе"
#: ../config.c:308
msgid "Delete the specified marks"
msgstr "Удалить указанные пометки"
#: ../config.c:309
msgid "Don't highlight current search results"
msgstr ""
#: ../config.c:310
msgid "Highlight current search results"
msgstr ""
#: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Не удалось запустить xdg-open"
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Сменить материнское окно на окно, указанное в xid"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Путь к директории конфига"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Путь к директории с данными"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Путь к директории с плагинами"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Уйти в бэкграунд"
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Уровень логирования (debug,info,warning,error)"
#: ../main.c:59
msgid "Print version information"
msgstr "Показать информацию о файле"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr ""
#: ../page-widget.c:643
#, c-format
msgid "Copied selected text to clipboard: %s"
msgstr "Выделенный текст скопирован в буфер: %s"
#: ../page-widget.c:741
msgid "Copy image"
msgstr "Скопировать изображение"
#: ../page-widget.c:742
msgid "Save image as"
msgstr ""
#: ../shortcuts.c:825
msgid "This document does not contain any index"
msgstr "В документе нету индекса"
#: ../zathura.c:189 ../zathura.c:843
msgid "[No name]"
msgstr "[No name]"

View file

@ -6,8 +6,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-04-03 15:25+0000\n" "PO-Revision-Date: 2012-04-03 15:25+0000\n"
"Last-Translator: mankand007 <mankand007@gmail.com>\n" "Last-Translator: mankand007 <mankand007@gmail.com>\n"
"Language-Team: Tamil (India) (http://www.transifex.net/projects/p/zathura/" "Language-Team: Tamil (India) (http://www.transifex.net/projects/p/zathura/"
@ -18,111 +18,111 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "கொடுக்கப்பட்ட உள்ளீடு(input) '%s' தவறு" msgstr "கொடுக்கப்பட்ட உள்ளீடு(input) '%s' தவறு"
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "கொடுக்கப்பட்ட index '%s' தவறு" msgstr "கொடுக்கப்பட்ட index '%s' தவறு"
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "எந்தக் ஆவணமும் திறக்கப்படவில்லை" msgstr "எந்தக் ஆவணமும் திறக்கப்படவில்லை"
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "கொடுக்கப்பட்ட arguments-களின் எண்ணிக்கை தவறு" msgstr "கொடுக்கப்பட்ட arguments-களின் எண்ணிக்கை தவறு"
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Bookmark வெற்றிகரமாக நிகழ்நிலை(update) படுத்தப்பட்டது: %s" msgstr "Bookmark வெற்றிகரமாக நிகழ்நிலை(update) படுத்தப்பட்டது: %s"
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "Bookmark-ஐ உருவாக்க முடியவில்லை: %s" msgstr "Bookmark-ஐ உருவாக்க முடியவில்லை: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Bookmark வெற்றிகரமாக உருவாக்கப்பட்டது: %s" msgstr "Bookmark வெற்றிகரமாக உருவாக்கப்பட்டது: %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Bookmark அழிக்கப்பட்டது: %s" msgstr "Bookmark அழிக்கப்பட்டது: %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Bookmark-ஐ அழிக்க இயலவில்லை: %s" msgstr "Bookmark-ஐ அழிக்க இயலவில்லை: %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "அந்தப் பெயரில் எந்த bookmark-ம் இல்லை: %s" msgstr "அந்தப் பெயரில் எந்த bookmark-ம் இல்லை: %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "எந்தத் தகவலும் இல்லை" msgstr "எந்தத் தகவலும் இல்லை"
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Argumentகளின் எண்ணிக்கை மிகவும் அதிகம்" msgstr "Argumentகளின் எண்ணிக்கை மிகவும் அதிகம்"
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "எந்த argument-ம் தரப்படவில்லை" msgstr "எந்த argument-ம் தரப்படவில்லை"
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "கோப்பு சேமிக்கப்பட்டது" msgstr "கோப்பு சேமிக்கப்பட்டது"
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "ஆவணத்தை சேமிக்க இயலவில்லை" msgstr "ஆவணத்தை சேமிக்க இயலவில்லை"
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "கொடுக்கப்பட்ட argument-களின் எண்ணிக்கை தவறு" msgstr "கொடுக்கப்பட்ட argument-களின் எண்ணிக்கை தவறு"
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "" msgstr ""
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr ""
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "" msgstr ""
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "Argument ஒரு எண்ணாக இருக்க வேண்டும்" msgstr "Argument ஒரு எண்ணாக இருக்க வேண்டும்"
@ -141,220 +141,268 @@ msgid "Images"
msgstr "" msgstr ""
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "" msgstr ""
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Zoom அமைப்பு" msgstr "Zoom அமைப்பு"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "இரு பக்கங்களுக்கிடையில் உள்ள நிரப்பல்(padding)" msgstr "இரு பக்கங்களுக்கிடையில் உள்ள நிரப்பல்(padding)"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "ஒரு வரிசையில் எத்தனை பக்கங்களைக் காட்ட வேண்டும்" msgstr "ஒரு வரிசையில் எத்தனை பக்கங்களைக் காட்ட வேண்டும்"
#: ../config.c:106
msgid "Scroll step"
msgstr "திரை உருளல்(scroll) அளவு"
#: ../config.c:108
msgid "Zoom minimum"
msgstr "முடிந்தவரை சிறியதாகக் காட்டு"
#: ../config.c:110
msgid "Zoom maximum"
msgstr "முடிந்தவரை பெரிதாகக் காட்டு"
#: ../config.c:112
msgid "Life time (in seconds) of a hidden page"
msgstr ""
#: ../config.c:113 #: ../config.c:113
msgid "Amount of seconds between each cache purge" msgid "Column of the first page"
msgstr "" msgstr ""
#: ../config.c:115 #: ../config.c:115
msgid "Recoloring (dark color)" msgid "Scroll step"
msgstr "" msgstr "திரை உருளல்(scroll) அளவு"
#: ../config.c:117 #: ../config.c:117
msgid "Recoloring (light color)" msgid "Horizontal scroll step"
msgstr "" msgstr ""
#: ../config.c:119 #: ../config.c:119
msgid "Zoom minimum"
msgstr "முடிந்தவரை சிறியதாகக் காட்டு"
#: ../config.c:121
msgid "Zoom maximum"
msgstr "முடிந்தவரை பெரிதாகக் காட்டு"
#: ../config.c:123
msgid "Life time (in seconds) of a hidden page"
msgstr ""
#: ../config.c:124
msgid "Amount of seconds between each cache purge"
msgstr ""
#: ../config.c:126
msgid "Recoloring (dark color)"
msgstr ""
#: ../config.c:128
msgid "Recoloring (light color)"
msgstr ""
#: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "" msgstr ""
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "" msgstr ""
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "" msgstr ""
#: ../config.c:127
msgid "Wrap scrolling"
msgstr ""
#: ../config.c:129
msgid "Advance number of pages per row"
msgstr ""
#: ../config.c:131
msgid "Transparency for highlighting"
msgstr ""
#: ../config.c:133
msgid "Render 'Loading ...'"
msgstr ""
#: ../config.c:134
msgid "Adjust to when opening file"
msgstr ""
#: ../config.c:136
msgid "Show hidden files and directories"
msgstr ""
#: ../config.c:138 #: ../config.c:138
msgid "Show directories" msgid "When recoloring keep original hue and adjust lightness only"
msgstr "" msgstr ""
#: ../config.c:140 #: ../config.c:140
msgid "Always open on first page" msgid "Wrap scrolling"
msgstr "" msgstr ""
#: ../config.c:142 #: ../config.c:142
msgid "Highlight search results" msgid "Advance number of pages per row"
msgstr "" msgstr ""
#: ../config.c:144 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting"
msgstr ""
#: ../config.c:150
msgid "Render 'Loading ...'"
msgstr ""
#: ../config.c:151
msgid "Adjust to when opening file"
msgstr ""
#: ../config.c:153
msgid "Show hidden files and directories"
msgstr ""
#: ../config.c:155
msgid "Show directories"
msgstr ""
#: ../config.c:157
msgid "Always open on first page"
msgstr ""
#: ../config.c:159
msgid "Highlight search results"
msgstr ""
#: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "" msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "புதிய bookmark உருவாக்கு" msgstr "புதிய bookmark உருவாக்கு"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Bookmark-ஐ அழித்துவிடு" msgstr "Bookmark-ஐ அழித்துவிடு"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "அனைத்து bookmark-களையும் பட்டியலிடு" msgstr "அனைத்து bookmark-களையும் பட்டியலிடு"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "" msgstr ""
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "ஆவணம் பற்றிய தகவல்களைக் காட்டு" msgstr "ஆவணம் பற்றிய தகவல்களைக் காட்டு"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "உதவியைக் காட்டு" msgstr "உதவியைக் காட்டு"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "ஒரு ஆவணத்தைத் திற" msgstr "ஒரு ஆவணத்தைத் திற"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "zathura-வை விட்டு வெளியேறு" msgstr "zathura-வை விட்டு வெளியேறு"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "ஆவணத்தை அச்சிடு" msgstr "ஆவணத்தை அச்சிடு"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "ஆவணத்தை சேமிக்கவும்" msgstr "ஆவணத்தை சேமிக்கவும்"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "" msgstr ""
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "இணைப்புகளைச் சேமிக்கவும்" msgstr "இணைப்புகளைச் சேமிக்கவும்"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "" msgstr ""
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "" msgstr ""
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "" msgstr ""
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr ""
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "" msgstr ""
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "xdg-open-ஐ இயக்க முடியவில்லை"
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr ""
#: ../main.c:53
msgid "Path to the config directory"
msgstr ""
#: ../main.c:54
msgid "Path to the data directory"
msgstr ""
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr ""
#: ../main.c:56
msgid "Fork into the background"
msgstr ""
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr ""
#: ../main.c:59
msgid "Print version information"
msgstr "ஆவணம் பற்றிய தகவல்களைக் காட்டு"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr ""
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "" msgstr ""
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "படத்தை ஒரு பிரதியெடு" msgstr "படத்தை ஒரு பிரதியெடு"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "" msgstr ""
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "இந்த ஆவணத்தில் எந்த index-ம் இல்லை" msgstr "இந்த ஆவணத்தில் எந்த index-ம் இல்லை"
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "xdg-open-ஐ இயக்க முடியவில்லை"
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr ""
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr ""
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr ""
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr ""
#: ../zathura.c:77
msgid "Fork into the background"
msgstr ""
#: ../zathura.c:78
msgid "Document password"
msgstr ""
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr ""
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "பெயரற்ற ஆவணம்" msgstr "பெயரற்ற ஆவணம்"

258
po/tr.po
View file

@ -7,8 +7,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: zathura\n" "Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: http://bt.pwmt.org/\n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-05-08 19:21+0200\n" "POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-05-01 20:38+0000\n" "PO-Revision-Date: 2012-05-01 20:38+0000\n"
"Last-Translator: hsngrms <dead-bodies-everywhere@hotmail.com>\n" "Last-Translator: hsngrms <dead-bodies-everywhere@hotmail.com>\n"
"Language-Team: Turkish (http://www.transifex.net/projects/p/zathura/language/" "Language-Team: Turkish (http://www.transifex.net/projects/p/zathura/language/"
@ -19,111 +19,111 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0\n" "Plural-Forms: nplurals=1; plural=0\n"
#: ../callbacks.c:175 #: ../callbacks.c:204
#, c-format #, c-format
msgid "Invalid input '%s' given." msgid "Invalid input '%s' given."
msgstr "Hatalı girdi '%s'" msgstr "Hatalı girdi '%s'"
#: ../callbacks.c:203 #: ../callbacks.c:232
#, c-format #, c-format
msgid "Invalid index '%s' given." msgid "Invalid index '%s' given."
msgstr "Hatalı dizin '%s'" msgstr "Hatalı dizin '%s'"
#: ../commands.c:33 ../commands.c:68 ../commands.c:95 ../commands.c:137 #: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:251 ../commands.c:281 ../commands.c:307 ../commands.c:396 #: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:496 ../shortcuts.c:440 ../shortcuts.c:891 #: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened." msgid "No document opened."
msgstr "Açık belge yok." msgstr "Açık belge yok."
#: ../commands.c:39 ../commands.c:74 ../commands.c:101 ../commands.c:401 #: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given." msgid "Invalid number of arguments given."
msgstr "Yanlış sayıda argüman" msgstr "Yanlış sayıda argüman"
#: ../commands.c:47 #: ../commands.c:49
#, c-format #, c-format
msgid "Bookmark successfuly updated: %s" msgid "Bookmark successfuly updated: %s"
msgstr "Yer imi başarıyla güncellendi: %s" msgstr "Yer imi başarıyla güncellendi: %s"
#: ../commands.c:53 #: ../commands.c:55
#, c-format #, c-format
msgid "Could not create bookmark: %s" msgid "Could not create bookmark: %s"
msgstr "Yer imi yaratılamadı: %s" msgstr "Yer imi yaratılamadı: %s"
#: ../commands.c:57 #: ../commands.c:59
#, c-format #, c-format
msgid "Bookmark successfuly created: %s" msgid "Bookmark successfuly created: %s"
msgstr "Yer imi yaratıldı: %s" msgstr "Yer imi yaratıldı: %s"
#: ../commands.c:80 #: ../commands.c:82
#, c-format #, c-format
msgid "Removed bookmark: %s" msgid "Removed bookmark: %s"
msgstr "Yer imi silindi: %s" msgstr "Yer imi silindi: %s"
#: ../commands.c:82 #: ../commands.c:84
#, c-format #, c-format
msgid "Failed to remove bookmark: %s" msgid "Failed to remove bookmark: %s"
msgstr "Yer imi silinemedi: %s" msgstr "Yer imi silinemedi: %s"
#: ../commands.c:108 #: ../commands.c:110
#, c-format #, c-format
msgid "No such bookmark: %s" msgid "No such bookmark: %s"
msgstr "Böyle bir yer imi yok: %s" msgstr "Böyle bir yer imi yok: %s"
#: ../commands.c:159 ../commands.c:181 #: ../commands.c:161 ../commands.c:183
msgid "No information available." msgid "No information available."
msgstr "Bilgi mevcut değil." msgstr "Bilgi mevcut değil."
#: ../commands.c:219 #: ../commands.c:221
msgid "Too many arguments." msgid "Too many arguments."
msgstr "Çok fazla sayıda argüman." msgstr "Çok fazla sayıda argüman."
#: ../commands.c:228 #: ../commands.c:230
msgid "No arguments given." msgid "No arguments given."
msgstr "Argüman verilmedi." msgstr "Argüman verilmedi."
#: ../commands.c:287 ../commands.c:313 #: ../commands.c:289 ../commands.c:315
msgid "Document saved." msgid "Document saved."
msgstr "Belge kaydedildi." msgstr "Belge kaydedildi."
#: ../commands.c:289 ../commands.c:315 #: ../commands.c:291 ../commands.c:317
msgid "Failed to save document." msgid "Failed to save document."
msgstr "Belge kaydedilemedi." msgstr "Belge kaydedilemedi."
#: ../commands.c:292 ../commands.c:318 #: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments." msgid "Invalid number of arguments."
msgstr "Yanlış sayıda argüman." msgstr "Yanlış sayıda argüman."
#: ../commands.c:420 #: ../commands.c:424
#, c-format #, c-format
msgid "Couldn't write attachment '%s' to '%s'." msgid "Couldn't write attachment '%s' to '%s'."
msgstr "'%s' eki '%s' konumuna yazılamadı." msgstr "'%s' eki '%s' konumuna yazılamadı."
#: ../commands.c:422 #: ../commands.c:426
#, c-format #, c-format
msgid "Wrote attachment '%s' to '%s'." msgid "Wrote attachment '%s' to '%s'."
msgstr "'%s' eki '%s' konumuna yazıldı." msgstr "'%s' eki '%s' konumuna yazıldı."
#: ../commands.c:466 #: ../commands.c:470
#, c-format #, c-format
msgid "Wrote image '%s' to '%s'." msgid "Wrote image '%s' to '%s'."
msgstr "'%s' eki '%s' konumuna yazıldı." msgstr "'%s' eki '%s' konumuna yazıldı."
#: ../commands.c:468 #: ../commands.c:472
#, c-format #, c-format
msgid "Couldn't write image '%s' to '%s'." msgid "Couldn't write image '%s' to '%s'."
msgstr "'%s' eki '%s' konumuna yazılamadı." msgstr "'%s' eki '%s' konumuna yazılamadı."
#: ../commands.c:475 #: ../commands.c:479
#, c-format #, c-format
msgid "Unknown image '%s'." msgid "Unknown image '%s'."
msgstr "" msgstr ""
#: ../commands.c:479 #: ../commands.c:483
#, c-format #, c-format
msgid "Unknown attachment or image '%s'." msgid "Unknown attachment or image '%s'."
msgstr "" msgstr ""
#: ../commands.c:509 #: ../commands.c:534
msgid "Argument must be a number." msgid "Argument must be a number."
msgstr "Argüman bir sayı olmalı." msgstr "Argüman bir sayı olmalı."
@ -142,220 +142,268 @@ msgid "Images"
msgstr "" msgstr ""
#. zathura settings #. zathura settings
#: ../config.c:98 #: ../config.c:105
msgid "Database backend" msgid "Database backend"
msgstr "Veritabanı arkayüzü" msgstr "Veritabanı arkayüzü"
#: ../config.c:100 #: ../config.c:107
msgid "Zoom step" msgid "Zoom step"
msgstr "Yakınlaşma/uzaklaşma aralığı" msgstr "Yakınlaşma/uzaklaşma aralığı"
#: ../config.c:102 #: ../config.c:109
msgid "Padding between pages" msgid "Padding between pages"
msgstr "Sayfalar arasındaki boşluk" msgstr "Sayfalar arasındaki boşluk"
#: ../config.c:104 #: ../config.c:111
msgid "Number of pages per row" msgid "Number of pages per row"
msgstr "Satır başına sayfa sayısı" msgstr "Satır başına sayfa sayısı"
#: ../config.c:106 #: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step" msgid "Scroll step"
msgstr "Kaydırma aralığı" msgstr "Kaydırma aralığı"
#: ../config.c:108 #: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum" msgid "Zoom minimum"
msgstr "En fazla uzaklaşma" msgstr "En fazla uzaklaşma"
#: ../config.c:110 #: ../config.c:121
msgid "Zoom maximum" msgid "Zoom maximum"
msgstr "En fazla yakınlaşma" msgstr "En fazla yakınlaşma"
#: ../config.c:112 #: ../config.c:123
msgid "Life time (in seconds) of a hidden page" msgid "Life time (in seconds) of a hidden page"
msgstr "Gizli pencerenin açık kalma süresi (saniye)" msgstr "Gizli pencerenin açık kalma süresi (saniye)"
#: ../config.c:113 #: ../config.c:124
msgid "Amount of seconds between each cache purge" msgid "Amount of seconds between each cache purge"
msgstr "Önbellek temizliği yapılma sıklığı, saniye cinsinden" msgstr "Önbellek temizliği yapılma sıklığı, saniye cinsinden"
#: ../config.c:115 #: ../config.c:126
msgid "Recoloring (dark color)" msgid "Recoloring (dark color)"
msgstr "Renk değişimi (koyu renk)" msgstr "Renk değişimi (koyu renk)"
#: ../config.c:117 #: ../config.c:128
msgid "Recoloring (light color)" msgid "Recoloring (light color)"
msgstr "Renk değişimi (açık renk)" msgstr "Renk değişimi (açık renk)"
#: ../config.c:119 #: ../config.c:130
msgid "Color for highlighting" msgid "Color for highlighting"
msgstr "İşaretleme rengi" msgstr "İşaretleme rengi"
#: ../config.c:121 #: ../config.c:132
msgid "Color for highlighting (active)" msgid "Color for highlighting (active)"
msgstr "İşaretleme rengi (etkin)" msgstr "İşaretleme rengi (etkin)"
#: ../config.c:125 #: ../config.c:136
msgid "Recolor pages" msgid "Recolor pages"
msgstr "Sayga rengini değiştir" msgstr "Sayga rengini değiştir"
#: ../config.c:127 #: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling" msgid "Wrap scrolling"
msgstr "Kaydırmayı sarmala" msgstr "Kaydırmayı sarmala"
#: ../config.c:129 #: ../config.c:142
msgid "Advance number of pages per row" msgid "Advance number of pages per row"
msgstr "Satır başına sayfa sayısı" msgstr "Satır başına sayfa sayısı"
#: ../config.c:131 #: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting" msgid "Transparency for highlighting"
msgstr "Ön plana çıkarmak için saydamlaştır" msgstr "Ön plana çıkarmak için saydamlaştır"
#: ../config.c:133 #: ../config.c:150
msgid "Render 'Loading ...'" msgid "Render 'Loading ...'"
msgstr "'Yüklüyor ...' yazısını göster" msgstr "'Yüklüyor ...' yazısını göster"
#: ../config.c:134 #: ../config.c:151
msgid "Adjust to when opening file" msgid "Adjust to when opening file"
msgstr "Dosya açarken ayarla" msgstr "Dosya açarken ayarla"
#: ../config.c:136 #: ../config.c:153
msgid "Show hidden files and directories" msgid "Show hidden files and directories"
msgstr "Gizli dosyaları ve dizinleri göster" msgstr "Gizli dosyaları ve dizinleri göster"
#: ../config.c:138 #: ../config.c:155
msgid "Show directories" msgid "Show directories"
msgstr "Dizinleri göster" msgstr "Dizinleri göster"
#: ../config.c:140 #: ../config.c:157
msgid "Always open on first page" msgid "Always open on first page"
msgstr "Her zaman ilk sayfayı aç" msgstr "Her zaman ilk sayfayı aç"
#: ../config.c:142 #: ../config.c:159
msgid "Highlight search results" msgid "Highlight search results"
msgstr "" msgstr ""
#: ../config.c:144 #: ../config.c:161
msgid "Clear search results on abort" msgid "Clear search results on abort"
msgstr "" msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands #. define default inputbar commands
#: ../config.c:266 #: ../config.c:293
msgid "Add a bookmark" msgid "Add a bookmark"
msgstr "Yer imi ekle" msgstr "Yer imi ekle"
#: ../config.c:267 #: ../config.c:294
msgid "Delete a bookmark" msgid "Delete a bookmark"
msgstr "Yer imi sil" msgstr "Yer imi sil"
#: ../config.c:268 #: ../config.c:295
msgid "List all bookmarks" msgid "List all bookmarks"
msgstr "Yer imlerini listele" msgstr "Yer imlerini listele"
#: ../config.c:269 #: ../config.c:296
msgid "Close current file" msgid "Close current file"
msgstr "Geçerli dosyayı kapat" msgstr "Geçerli dosyayı kapat"
#: ../config.c:270 #: ../config.c:297
msgid "Show file information" msgid "Show file information"
msgstr "Dosya bilgisi göster" msgstr "Dosya bilgisi göster"
#: ../config.c:271 #: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help" msgid "Show help"
msgstr "Yardım bilgisi göster" msgstr "Yardım bilgisi göster"
#: ../config.c:272 #: ../config.c:300
msgid "Open document" msgid "Open document"
msgstr "Belge aç" msgstr "Belge aç"
#: ../config.c:273 #: ../config.c:301
msgid "Close zathura" msgid "Close zathura"
msgstr "Zathura'yı kapat" msgstr "Zathura'yı kapat"
#: ../config.c:274 #: ../config.c:302
msgid "Print document" msgid "Print document"
msgstr "Belge yazdır" msgstr "Belge yazdır"
#: ../config.c:275 #: ../config.c:303
msgid "Save document" msgid "Save document"
msgstr "Belgeyi kaydet" msgstr "Belgeyi kaydet"
#: ../config.c:276 #: ../config.c:304
msgid "Save document (and force overwriting)" msgid "Save document (and force overwriting)"
msgstr "Belgeyi kaydet (ve sormadan üzerine yaz)" msgstr "Belgeyi kaydet (ve sormadan üzerine yaz)"
#: ../config.c:277 #: ../config.c:305
msgid "Save attachments" msgid "Save attachments"
msgstr "Ekleri kaydet" msgstr "Ekleri kaydet"
#: ../config.c:278 #: ../config.c:306
msgid "Set page offset" msgid "Set page offset"
msgstr "Sayfa derinliğini ayarla" msgstr "Sayfa derinliğini ayarla"
#: ../config.c:279 #: ../config.c:307
msgid "Mark current location within the document" msgid "Mark current location within the document"
msgstr "Bu belgede bu konumu işaretle" msgstr "Bu belgede bu konumu işaretle"
#: ../config.c:280 #: ../config.c:308
msgid "Delete the specified marks" msgid "Delete the specified marks"
msgstr "Seçilen işaretlemeleri sil" msgstr "Seçilen işaretlemeleri sil"
#: ../config.c:281 #: ../config.c:309
msgid "Don't highlight current search results" msgid "Don't highlight current search results"
msgstr "" msgstr ""
#: ../config.c:282 #: ../config.c:310
msgid "Highlight current search results" msgid "Highlight current search results"
msgstr "" msgstr ""
#: ../page-widget.c:611 #: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "xdg-open çalıştırılamadı"
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Xid tarafından belirlendiği gibi bir üst seviye pencereye bağlı"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Ayar dizini adresi"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Veri dizini adresi"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Eklentileri içeren dizinin adresi"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Arka planda işlemden çocuk oluştur"
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Kayıt seviyesi (hata ayıklama, bilgi, uyarı, hata)"
#: ../main.c:59
msgid "Print version information"
msgstr "Dosya bilgisi göster"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr "Yüklüyor ..."
#: ../page-widget.c:643
#, c-format #, c-format
msgid "Copied selected text to clipboard: %s" msgid "Copied selected text to clipboard: %s"
msgstr "Seçili metin panoya kopyalandı: %s" msgstr "Seçili metin panoya kopyalandı: %s"
#: ../page-widget.c:708 #: ../page-widget.c:741
msgid "Copy image" msgid "Copy image"
msgstr "Resim kopyala" msgstr "Resim kopyala"
#: ../page-widget.c:709 #: ../page-widget.c:742
msgid "Save image as" msgid "Save image as"
msgstr "" msgstr ""
#: ../shortcuts.c:797 #: ../shortcuts.c:825
msgid "This document does not contain any index" msgid "This document does not contain any index"
msgstr "Bu belge fihrist içermiyor" msgstr "Bu belge fihrist içermiyor"
#: ../utils.c:346 #: ../zathura.c:189 ../zathura.c:843
msgid "Failed to run xdg-open."
msgstr "xdg-open çalıştırılamadı"
#: ../zathura.c:73
msgid "Reparents to window specified by xid"
msgstr "Xid tarafından belirlendiği gibi bir üst seviye pencereye bağlı"
#: ../zathura.c:74
msgid "Path to the config directory"
msgstr "Ayar dizini adresi"
#: ../zathura.c:75
msgid "Path to the data directory"
msgstr "Veri dizini adresi"
#: ../zathura.c:76
msgid "Path to the directories containing plugins"
msgstr "Eklentileri içeren dizinin adresi"
#: ../zathura.c:77
msgid "Fork into the background"
msgstr "Arka planda işlemden çocuk oluştur"
#: ../zathura.c:78
msgid "Document password"
msgstr ""
#: ../zathura.c:79
msgid "Log level (debug, info, warning, error)"
msgstr "Kayıt seviyesi (hata ayıklama, bilgi, uyarı, hata)"
#: ../zathura.c:251 ../zathura.c:799
msgid "[No name]" msgid "[No name]"
msgstr "[İsimsiz]" msgstr "[İsimsiz]"

409
po/uk_UA.po Normal file
View file

@ -0,0 +1,409 @@
# zathura - language file (Ukrainian (Ukrain))
# See LICENSE file for license and copyright information
#
# Translators:
# <sevenfourk@gmail.com>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: zathura\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-08-30 19:46+0200\n"
"PO-Revision-Date: 2012-06-20 14:58+0000\n"
"Last-Translator: Sebastian Ramacher <sebastian+dev@ramacher.at>\n"
"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/projects/p/"
"zathura/language/uk_UA/)\n"
"Language: uk_UA\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
#: ../callbacks.c:204
#, c-format
msgid "Invalid input '%s' given."
msgstr "Вказано невірний аргумент: %s."
#: ../callbacks.c:232
#, c-format
msgid "Invalid index '%s' given."
msgstr "Вказано невірний індекс: %s"
#: ../commands.c:35 ../commands.c:70 ../commands.c:97 ../commands.c:139
#: ../commands.c:253 ../commands.c:283 ../commands.c:309 ../commands.c:400
#: ../commands.c:521 ../shortcuts.c:454 ../shortcuts.c:919
msgid "No document opened."
msgstr "Документ не відкрито."
#: ../commands.c:41 ../commands.c:76 ../commands.c:103 ../commands.c:405
msgid "Invalid number of arguments given."
msgstr "Вказана невірна кількість аргументів."
#: ../commands.c:49
#, c-format
msgid "Bookmark successfuly updated: %s"
msgstr "Закладку вдало поновлено: %s"
#: ../commands.c:55
#, c-format
msgid "Could not create bookmark: %s"
msgstr "Не можу створити закладку: %s"
#: ../commands.c:59
#, c-format
msgid "Bookmark successfuly created: %s"
msgstr "Закладку створено вдало: %s"
#: ../commands.c:82
#, c-format
msgid "Removed bookmark: %s"
msgstr "Закладку видалено: %s"
#: ../commands.c:84
#, c-format
msgid "Failed to remove bookmark: %s"
msgstr "Видалення закладки невдалося: %s"
#: ../commands.c:110
#, c-format
msgid "No such bookmark: %s"
msgstr "Такої закладки немає: %s"
#: ../commands.c:161 ../commands.c:183
msgid "No information available."
msgstr "Інформація недоступна."
#: ../commands.c:221
msgid "Too many arguments."
msgstr "Забагато аргументів."
#: ../commands.c:230
msgid "No arguments given."
msgstr "Жодного аргументу не вказано."
#: ../commands.c:289 ../commands.c:315
msgid "Document saved."
msgstr "Документ збережено."
#: ../commands.c:291 ../commands.c:317
msgid "Failed to save document."
msgstr "Документ не вдалося зберегти."
#: ../commands.c:294 ../commands.c:320
msgid "Invalid number of arguments."
msgstr "Невірна кількість аргументів."
#: ../commands.c:424
#, c-format
msgid "Couldn't write attachment '%s' to '%s'."
msgstr "Неможливо записати прикріплення '%s' до '%s'."
#: ../commands.c:426
#, c-format
msgid "Wrote attachment '%s' to '%s'."
msgstr "Прикріплення записано %s до %s."
#: ../commands.c:470
#, c-format
msgid "Wrote image '%s' to '%s'."
msgstr ""
#: ../commands.c:472
#, c-format
msgid "Couldn't write image '%s' to '%s'."
msgstr ""
#: ../commands.c:479
#, c-format
msgid "Unknown image '%s'."
msgstr ""
#: ../commands.c:483
#, c-format
msgid "Unknown attachment or image '%s'."
msgstr ""
#: ../commands.c:534
msgid "Argument must be a number."
msgstr "Аргумент повинен бути цифрою."
#: ../completion.c:250
#, c-format
msgid "Page %d"
msgstr ""
#: ../completion.c:293
msgid "Attachments"
msgstr ""
#. add images
#: ../completion.c:324
msgid "Images"
msgstr ""
#. zathura settings
#: ../config.c:105
msgid "Database backend"
msgstr "Буфер бази"
#: ../config.c:107
msgid "Zoom step"
msgstr "Збільшення"
#: ../config.c:109
msgid "Padding between pages"
msgstr "Заповнення між сторінками"
#: ../config.c:111
msgid "Number of pages per row"
msgstr "Кількість сторінок в одному рядку"
#: ../config.c:113
msgid "Column of the first page"
msgstr ""
#: ../config.c:115
msgid "Scroll step"
msgstr "Прокручування"
#: ../config.c:117
msgid "Horizontal scroll step"
msgstr ""
#: ../config.c:119
msgid "Zoom minimum"
msgstr "Максимальне зменшення"
#: ../config.c:121
msgid "Zoom maximum"
msgstr "Максимальне збільшення"
#: ../config.c:123
msgid "Life time (in seconds) of a hidden page"
msgstr "Час (у сек) схованої сторінки"
#: ../config.c:124
msgid "Amount of seconds between each cache purge"
msgstr "Кількість секунд між кожним очищенням кешу"
#: ../config.c:126
msgid "Recoloring (dark color)"
msgstr "Перефарбування (темний колір)"
#: ../config.c:128
msgid "Recoloring (light color)"
msgstr "Перефарбування (світлий колір)"
#: ../config.c:130
msgid "Color for highlighting"
msgstr "Колір для виділення"
#: ../config.c:132
msgid "Color for highlighting (active)"
msgstr "Колір для виділення (активний)"
#: ../config.c:136
msgid "Recolor pages"
msgstr "Змінити кольори"
#: ../config.c:138
msgid "When recoloring keep original hue and adjust lightness only"
msgstr ""
#: ../config.c:140
msgid "Wrap scrolling"
msgstr "Плавне прокручування"
#: ../config.c:142
msgid "Advance number of pages per row"
msgstr ""
#: ../config.c:144
msgid "Horizontally centered zoom"
msgstr ""
#: ../config.c:146
msgid "Center result horizontally"
msgstr ""
#: ../config.c:148
msgid "Transparency for highlighting"
msgstr "Прозорість для виділення"
#: ../config.c:150
msgid "Render 'Loading ...'"
msgstr "Рендер 'Завантажується ...'"
#: ../config.c:151
msgid "Adjust to when opening file"
msgstr "Підлаштовутись при відкритті файлу"
#: ../config.c:153
msgid "Show hidden files and directories"
msgstr "Показати приховані файли та директорії"
#: ../config.c:155
msgid "Show directories"
msgstr "Показати диреторії"
#: ../config.c:157
msgid "Always open on first page"
msgstr "Завжди відкривати на першій сторінці"
#: ../config.c:159
msgid "Highlight search results"
msgstr ""
#: ../config.c:161
msgid "Clear search results on abort"
msgstr ""
#: ../config.c:163
msgid "Use basename of the file in the window title"
msgstr ""
#: ../config.c:165 ../main.c:60
msgid "Enable synctex support"
msgstr ""
#. define default inputbar commands
#: ../config.c:293
msgid "Add a bookmark"
msgstr "Додати закладку"
#: ../config.c:294
msgid "Delete a bookmark"
msgstr "Вилучити закладку"
#: ../config.c:295
msgid "List all bookmarks"
msgstr "Дивитись усі закладки"
#: ../config.c:296
msgid "Close current file"
msgstr "Закрити документ"
#: ../config.c:297
msgid "Show file information"
msgstr "Показати інформацію файлу"
#: ../config.c:298
msgid "Execute a command"
msgstr ""
#: ../config.c:299
msgid "Show help"
msgstr "Показати довідку"
#: ../config.c:300
msgid "Open document"
msgstr "Відкрити документ"
#: ../config.c:301
msgid "Close zathura"
msgstr "Вийти із zathura"
#: ../config.c:302
msgid "Print document"
msgstr "Друкувати документ"
#: ../config.c:303
msgid "Save document"
msgstr "Зберегти документ"
#: ../config.c:304
msgid "Save document (and force overwriting)"
msgstr "Зберегти документ (форсувати перезапис)"
#: ../config.c:305
msgid "Save attachments"
msgstr "Зберегти прикріплення"
#: ../config.c:306
msgid "Set page offset"
msgstr "Встановити зміщення сторінки"
#: ../config.c:307
msgid "Mark current location within the document"
msgstr ""
#: ../config.c:308
msgid "Delete the specified marks"
msgstr ""
#: ../config.c:309
msgid "Don't highlight current search results"
msgstr ""
#: ../config.c:310
msgid "Highlight current search results"
msgstr ""
#: ../config.c:311
msgid "Show version information"
msgstr ""
#: ../links.c:162 ../links.c:219
msgid "Failed to run xdg-open."
msgstr "Запуск xdg-open не вдався."
#: ../main.c:52
msgid "Reparents to window specified by xid"
msgstr "Вертатися до вікна, вказаного xid"
#: ../main.c:53
msgid "Path to the config directory"
msgstr "Шлях до теки конфігурації"
#: ../main.c:54
msgid "Path to the data directory"
msgstr "Шлях до теки з даними"
#: ../main.c:55
msgid "Path to the directories containing plugins"
msgstr "Шлях до теки з плаґінами"
#: ../main.c:56
msgid "Fork into the background"
msgstr "Працювати у фоні"
#: ../main.c:57
msgid "Document password"
msgstr ""
#: ../main.c:58
msgid "Log level (debug, info, warning, error)"
msgstr "Рівень логування (налагодження, інфо, застереження, помилка)"
#: ../main.c:59
msgid "Print version information"
msgstr "Показати інформацію файлу"
#: ../main.c:61
msgid "Synctex editor (forwarded to the synctex command)"
msgstr ""
#: ../page-widget.c:456
msgid "Loading..."
msgstr ""
#: ../page-widget.c:643
#, c-format
msgid "Copied selected text to clipboard: %s"
msgstr "Вибраний текст скопійовано до буферу: %s"
#: ../page-widget.c:741
msgid "Copy image"
msgstr "Копіювати картинку"
#: ../page-widget.c:742
msgid "Save image as"
msgstr ""
#: ../shortcuts.c:825
msgid "This document does not contain any index"
msgstr "Індекс відсутній в цьому документі"
#: ../zathura.c:189 ../zathura.c:843
msgid "[No name]"
msgstr "[Без назви]"

View file

@ -41,7 +41,7 @@ print(zathura_t* zathura)
/* print operation signals */ /* print operation signals */
g_signal_connect(print_operation, "draw-page", G_CALLBACK(cb_print_draw_page), zathura); g_signal_connect(print_operation, "draw-page", G_CALLBACK(cb_print_draw_page), zathura);
g_signal_connect(print_operation, "end-print", G_CALLBACK(cb_print_end), zathura); g_signal_connect(print_operation, "end-print", G_CALLBACK(cb_print_end), zathura);
g_signal_connect(print_operation, "request_page_setup", G_CALLBACK(cb_print_request_page_setup), zathura); g_signal_connect(print_operation, "request-page-setup", G_CALLBACK(cb_print_request_page_setup), zathura);
/* print */ /* print */
GtkPrintOperationResult result = gtk_print_operation_run(print_operation, GtkPrintOperationResult result = gtk_print_operation_run(print_operation,

150
render.c
View file

@ -21,6 +21,7 @@ struct render_thread_s
{ {
GThreadPool* pool; /**< Pool of threads */ GThreadPool* pool; /**< Pool of threads */
GStaticMutex mutex; /**< Render lock */ GStaticMutex mutex; /**< Render lock */
bool about_to_close; /**< Render thread is to be freed */
}; };
static void static void
@ -32,7 +33,7 @@ render_job(void* data, void* user_data)
return; return;
} }
girara_debug("rendring page %d ...", zathura_page_get_index(page)); girara_debug("rendering page %d ...", zathura_page_get_index(page));
if (render(zathura, page) != true) { if (render(zathura, page) != true) {
girara_error("Rendering failed (page %d)\n", zathura_page_get_index(page)); girara_error("Rendering failed (page %d)\n", zathura_page_get_index(page));
} }
@ -49,6 +50,7 @@ render_init(zathura_t* zathura)
goto error_free; goto error_free;
} }
render_thread->about_to_close = false;
g_thread_pool_set_sort_function(render_thread->pool, render_thread_sort, zathura); g_thread_pool_set_sort_function(render_thread->pool, render_thread_sort, zathura);
g_static_mutex_init(&render_thread->mutex); g_static_mutex_init(&render_thread->mutex);
@ -67,6 +69,7 @@ render_free(render_thread_t* render_thread)
return; return;
} }
render_thread->about_to_close = true;
if (render_thread->pool) { if (render_thread->pool) {
g_thread_pool_free(render_thread->pool, TRUE, TRUE); g_thread_pool_free(render_thread->pool, TRUE, TRUE);
} }
@ -78,7 +81,7 @@ render_free(render_thread_t* render_thread)
bool bool
render_page(render_thread_t* render_thread, zathura_page_t* page) render_page(render_thread_t* render_thread, zathura_page_t* page)
{ {
if (render_thread == NULL || page == NULL || render_thread->pool == NULL) { if (render_thread == NULL || page == NULL || render_thread->pool == NULL || render_thread->about_to_close == true) {
return false; return false;
} }
@ -86,10 +89,63 @@ render_page(render_thread_t* render_thread, zathura_page_t* page)
return true; return true;
} }
static void
color2double(GdkColor* col, double* v)
{
v[0] = (double) col->red / 65535.;
v[1] = (double) col->green / 65535.;
v[2] = (double) col->blue / 65535.;
}
/* Returns the maximum possible saturation for given h and l.
Assumes that l is in the interval l1, l2 and corrects the value to
force u=0 on l1 and l2 */
static double
colorumax(double* h, double l, double l1, double l2)
{
double u, uu, v, vv, lv;
if (h[0] == 0 && h[1] == 0 && h[2] == 0) {
return 0;
}
lv = (l - l1)/(l2 - l1); /* Remap l to the whole interval 0,1 */
u = v = 1000000;
for (int k = 0; k < 3; k++) {
if (h[k] > 0) {
uu = fabs((1-l)/h[k]);
vv = fabs((1-lv)/h[k]);
if (uu < u) {
u = uu;
}
if (vv < v) {
v = vv;
}
} else if (h[k] < 0) {
uu = fabs(l/h[k]);
vv = fabs(lv/h[k]);
if (uu < u) {
u = uu;
}
if (vv < v) {
v = vv;
}
}
}
/* rescale v according to the length of the interval [l1, l2] */
v = fabs(l2 - l1) * v;
/* forces the returned value to be 0 on l1 and l2, trying not to distort colors too much */
return fmin(u, v);
}
static bool static bool
render(zathura_t* zathura, zathura_page_t* page) render(zathura_t* zathura, zathura_page_t* page)
{ {
if (zathura == NULL || page == NULL) { if (zathura == NULL || page == NULL || zathura->sync.render_thread->about_to_close == true) {
return false; return false;
} }
@ -139,43 +195,81 @@ render(zathura_t* zathura, zathura_page_t* page)
unsigned char* image = cairo_image_surface_get_data(surface); unsigned char* image = cairo_image_surface_get_data(surface);
/* recolor */ /* recolor */
/* uses a representation of a rgb color as follows:
- a lightness scalar (between 0,1), which is a weighted average of r, g, b,
- a hue vector, which indicates a radian direction from the grey axis, inside the equal lightness plane.
- a saturation scalar between 0,1. It is 0 when grey, 1 when the color is in the boundary of the rgb cube.
*/
if (zathura->global.recolor == true) { if (zathura->global.recolor == true) {
/* recolor code based on qimageblitz library flatten() function /* RGB weights for computing lightness. Must sum to one */
(http://sourceforge.net/projects/qimageblitz/) */ double a[] = {0.30, 0.59, 0.11};
int r1 = zathura->ui.colors.recolor_dark_color.red / 257; double l1, l2, l, s, u, t;
int g1 = zathura->ui.colors.recolor_dark_color.green / 257; double h[3];
int b1 = zathura->ui.colors.recolor_dark_color.blue / 257; double rgb1[3], rgb2[3], rgb[3];
int r2 = zathura->ui.colors.recolor_light_color.red / 257;
int g2 = zathura->ui.colors.recolor_light_color.green / 257;
int b2 = zathura->ui.colors.recolor_light_color.blue / 257;
int min = 0x00; color2double(&zathura->ui.colors.recolor_dark_color, rgb1);
int max = 0xFF; color2double(&zathura->ui.colors.recolor_light_color, rgb2);
int mean = 0x00;
float sr = ((float) r2 - r1) / (max - min); l1 = (a[0]*rgb1[0] + a[1]*rgb1[1] + a[2]*rgb1[2]);
float sg = ((float) g2 - g1) / (max - min); l2 = (a[0]*rgb2[0] + a[1]*rgb2[1] + a[2]*rgb2[2]);
float sb = ((float) b2 - b1) / (max - min);
for (unsigned int y = 0; y < page_height; y++) { for (unsigned int y = 0; y < page_height; y++) {
unsigned char* data = image + y * rowstride; unsigned char* data = image + y * rowstride;
for (unsigned int x = 0; x < page_width; x++) { for (unsigned int x = 0; x < page_width; x++) {
mean = (data[0] + data[1] + data[2]) / 3; /* Careful. data color components blue, green, red. */
data[2] = sr * (mean - min) + r1 + 0.5; rgb[0] = (double) data[2] / 256.;
data[1] = sg * (mean - min) + g1 + 0.5; rgb[1] = (double) data[1] / 256.;
data[0] = sb * (mean - min) + b1 + 0.5; rgb[2] = (double) data[0] / 256.;
/* compute h, s, l data */
l = a[0]*rgb[0] + a[1]*rgb[1] + a[2]*rgb[2];
h[0] = rgb[0] - l;
h[1] = rgb[1] - l;
h[2] = rgb[2] - l;
/* u is the maximum possible saturation for given h and l. s is a rescaled saturation between 0 and 1 */
u = colorumax(h, l, 0, 1);
if (u == 0) {
s = 0;
} else {
s = 1/u;
}
/* Interpolates lightness between light and dark colors. white goes to light, and black goes to dark. */
t = l;
l = t * (l2 - l1) + l1;
if (zathura->global.recolor_keep_hue == true) {
/* adjusting lightness keeping hue of current color. white and black go to grays of same ligtness
as light and dark colors. */
u = colorumax(h, l, l1, l2);
data[2] = (unsigned char)round(255.*(l + s*u * h[0]));
data[1] = (unsigned char)round(255.*(l + s*u * h[1]));
data[0] = (unsigned char)round(255.*(l + s*u * h[2]));
} else {
/* Linear interpolation between dark and light with color ligtness as a parameter */
data[2] = (unsigned char)round(255.*(t * (rgb2[0] - rgb1[0]) + rgb1[0]));
data[1] = (unsigned char)round(255.*(t * (rgb2[1] - rgb1[1]) + rgb1[1]));
data[0] = (unsigned char)round(255.*(t * (rgb2[2] - rgb1[2]) + rgb1[2]));
}
data += 4; data += 4;
} }
} }
} }
/* update the widget */ if (zathura->sync.render_thread->about_to_close == false) {
gdk_threads_enter(); /* update the widget */
GtkWidget* widget = zathura_page_get_widget(zathura, page); gdk_threads_enter();
zathura_page_widget_update_surface(ZATHURA_PAGE(widget), surface); GtkWidget* widget = zathura_page_get_widget(zathura, page);
gdk_threads_leave(); zathura_page_widget_update_surface(ZATHURA_PAGE(widget), surface);
gdk_threads_leave();
} else {
cairo_surface_destroy(surface);
}
return true; return true;
} }
@ -220,9 +314,9 @@ render_thread_sort(gconstpointer a, gconstpointer b, gpointer data)
g_object_get(zathura->pages[page_a_index], "last-view", &last_view_a, NULL); g_object_get(zathura->pages[page_a_index], "last-view", &last_view_a, NULL);
g_object_get(zathura->pages[page_b_index], "last-view", &last_view_b, NULL); g_object_get(zathura->pages[page_b_index], "last-view", &last_view_b, NULL);
if (last_view_a > last_view_b) { if (last_view_a < last_view_b) {
return -1; return -1;
} else if (last_view_b > last_view_a) { } else if (last_view_a > last_view_b) {
return 1; return 1;
} }

View file

@ -62,6 +62,9 @@ sc_adjust_window(girara_session_t* session, girara_argument_t* argument,
unsigned int pages_per_row = 1; unsigned int pages_per_row = 1;
girara_setting_get(session, "pages-per-row", &pages_per_row); girara_setting_get(session, "pages-per-row", &pages_per_row);
unsigned int first_page_column = 1;
girara_setting_get(session, "first-page-column", &first_page_column);
if (zathura->ui.page_widget == NULL || zathura->document == NULL) { if (zathura->ui.page_widget == NULL || zathura->document == NULL) {
goto error_ret; goto error_ret;
} }
@ -76,8 +79,13 @@ sc_adjust_window(girara_session_t* session, girara_argument_t* argument,
/* get window size */ /* get window size */
GtkAllocation allocation; GtkAllocation allocation;
gtk_widget_get_allocation(session->gtk.view, &allocation); gtk_widget_get_allocation(session->gtk.view, &allocation);
gint width = allocation.width; double width = allocation.width;
gint height = allocation.height; double height = allocation.height;
/* scrollbar spacing */
gint spacing;
gtk_widget_style_get(session->gtk.view, "scrollbar_spacing", &spacing, NULL);
width -= spacing;
/* correct view size */ /* correct view size */
if (gtk_widget_get_visible(GTK_WIDGET(session->gtk.inputbar)) == true) { if (gtk_widget_get_visible(GTK_WIDGET(session->gtk.inputbar)) == true) {
@ -119,6 +127,13 @@ sc_adjust_window(girara_session_t* session, girara_argument_t* argument,
} }
unsigned int rotation = zathura_document_get_rotation(zathura->document); unsigned int rotation = zathura_document_get_rotation(zathura->document);
double page_ratio = max_height / total_width;
double window_ratio = height / width;
if (rotation == 90 || rotation == 270) {
page_ratio = max_width / total_height;
}
switch (argument->n) { switch (argument->n) {
case ZATHURA_ADJUST_WIDTH: case ZATHURA_ADJUST_WIDTH:
if (rotation == 0 || rotation == 180) { if (rotation == 0 || rotation == 180) {
@ -128,27 +143,26 @@ sc_adjust_window(girara_session_t* session, girara_argument_t* argument,
} }
break; break;
case ZATHURA_ADJUST_BESTFIT: case ZATHURA_ADJUST_BESTFIT:
if (total_width < total_height) { if (rotation == 0 || rotation == 180) {
if (rotation == 0 || rotation == 180) { if (page_ratio < window_ratio) {
zathura_document_set_scale(zathura->document, height / max_height);
} else {
zathura_document_set_scale(zathura->document, width / total_height);
}
} else {
if (rotation == 0 || rotation == 180) {
zathura_document_set_scale(zathura->document, width / total_width); zathura_document_set_scale(zathura->document, width / total_width);
} else { } else {
zathura_document_set_scale(zathura->document, height / total_width); zathura_document_set_scale(zathura->document, height / max_height);
}
} else {
if (page_ratio < window_ratio) {
zathura_document_set_scale(zathura->document, width / total_height);
} else {
zathura_document_set_scale(zathura->document, height / max_width);
} }
} }
break; break;
default: default:
goto error_ret; goto error_ret;
} }
/* keep position */ /* keep position */
readjust_view_after_zooming(zathura, old_zoom); readjust_view_after_zooming(zathura, old_zoom, false);
/* re-render all pages */ /* re-render all pages */
render_all(zathura); render_all(zathura);
@ -334,7 +348,7 @@ sc_mouse_scroll(girara_session_t* session, girara_argument_t* argument, girara_e
break; break;
case GIRARA_EVENT_MOTION_NOTIFY: case GIRARA_EVENT_MOTION_NOTIFY:
x_adj = gtk_scrolled_window_get_hadjustment(GTK_SCROLLED_WINDOW(session->gtk.view)); x_adj = gtk_scrolled_window_get_hadjustment(GTK_SCROLLED_WINDOW(session->gtk.view));
y_adj =gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(session->gtk.view)); y_adj = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(session->gtk.view));
if (x_adj == NULL || y_adj == NULL) { if (x_adj == NULL || y_adj == NULL) {
return false; return false;
@ -534,7 +548,6 @@ sc_scroll(girara_session_t* session, girara_argument_t* argument,
adjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(session->gtk.view)); adjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(session->gtk.view));
} }
gdouble view_size = gtk_adjustment_get_page_size(adjustment); gdouble view_size = gtk_adjustment_get_page_size(adjustment);
gdouble value = gtk_adjustment_get_value(adjustment); gdouble value = gtk_adjustment_get_value(adjustment);
gdouble max = gtk_adjustment_get_upper(adjustment) - view_size; gdouble max = gtk_adjustment_get_upper(adjustment) - view_size;
@ -542,6 +555,11 @@ sc_scroll(girara_session_t* session, girara_argument_t* argument,
float scroll_step = 40; float scroll_step = 40;
girara_setting_get(session, "scroll-step", &scroll_step); girara_setting_get(session, "scroll-step", &scroll_step);
float scroll_hstep = -1;
girara_setting_get(session, "scroll-hstep", &scroll_hstep);
if (scroll_hstep < 0) {
scroll_hstep = scroll_step;
}
int padding = 1; int padding = 1;
girara_setting_get(session, "page-padding", &padding); girara_setting_get(session, "page-padding", &padding);
@ -565,10 +583,14 @@ sc_scroll(girara_session_t* session, girara_argument_t* argument,
new_value = value + ((view_size + padding) / 2); new_value = value + ((view_size + padding) / 2);
break; break;
case LEFT: case LEFT:
new_value = value - scroll_hstep;
break;
case UP: case UP:
new_value = value - scroll_step; new_value = value - scroll_step;
break; break;
case RIGHT: case RIGHT:
new_value = value + scroll_hstep;
break;
case DOWN: case DOWN:
new_value = value + scroll_step; new_value = value + scroll_step;
break; break;
@ -660,12 +682,16 @@ sc_search(girara_session_t* session, girara_argument_t* argument,
page_calculate_offset(zathura, target_page, &offset); page_calculate_offset(zathura, target_page, &offset);
GtkAdjustment* view_vadjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(zathura->ui.session->gtk.view)); GtkAdjustment* view_vadjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(zathura->ui.session->gtk.view));
GtkAdjustment* view_hadjustment = gtk_scrolled_window_get_hadjustment(GTK_SCROLLED_WINDOW(zathura->ui.session->gtk.view));
int x = offset.x - gtk_adjustment_get_page_size(view_hadjustment) / 2 + rectangle.x1;
int y = offset.y - gtk_adjustment_get_page_size(view_vadjustment) / 2 + rectangle.y1; int y = offset.y - gtk_adjustment_get_page_size(view_vadjustment) / 2 + rectangle.y1;
set_adjustment(view_hadjustment, x);
set_adjustment(view_vadjustment, y); set_adjustment(view_vadjustment, y);
bool search_hadjust = true;
girara_setting_get(session, "search-hadjust", &search_hadjust);
if (search_hadjust == true) {
GtkAdjustment* view_hadjustment = gtk_scrolled_window_get_hadjustment(GTK_SCROLLED_WINDOW(zathura->ui.session->gtk.view));
int x = offset.x - gtk_adjustment_get_page_size(view_hadjustment) / 2 + rectangle.x1;
set_adjustment(view_hadjustment, x);
}
} }
return false; return false;
@ -702,7 +728,9 @@ sc_navigate_index(girara_session_t* session, girara_argument_t* argument,
switch(argument->n) { switch(argument->n) {
case UP: case UP:
if (gtk_tree_path_prev(path) == FALSE) { if (gtk_tree_path_prev(path) == FALSE) {
is_valid_path = gtk_tree_path_up(path); /* For some reason gtk_tree_path_up returns TRUE although we're not
* moving anywhere. */
is_valid_path = gtk_tree_path_up(path) && (gtk_tree_path_get_depth(path) > 0);
} else { /* row above */ } else { /* row above */
while(gtk_tree_view_row_expanded(tree_view, path)) { while(gtk_tree_view_row_expanded(tree_view, path)) {
gtk_tree_model_get_iter(model, &iter, path); gtk_tree_model_get_iter(model, &iter, path);
@ -894,12 +922,16 @@ sc_toggle_fullscreen(girara_session_t* session, girara_argument_t*
static bool fullscreen = false; static bool fullscreen = false;
static int pages_per_row = 1; static int pages_per_row = 1;
static int first_page_column = 1;
static double zoom = 1.0; static double zoom = 1.0;
if (fullscreen == true) { if (fullscreen == true) {
/* reset pages per row */ /* reset pages per row */
girara_setting_set(session, "pages-per-row", &pages_per_row); girara_setting_set(session, "pages-per-row", &pages_per_row);
/* reset first page column */
girara_setting_set(session, "first-page-column", &first_page_column);
/* show status bar */ /* show status bar */
gtk_widget_show(GTK_WIDGET(session->gtk.statusbar)); gtk_widget_show(GTK_WIDGET(session->gtk.statusbar));
@ -914,6 +946,9 @@ sc_toggle_fullscreen(girara_session_t* session, girara_argument_t*
/* backup pages per row */ /* backup pages per row */
girara_setting_get(session, "pages-per-row", &pages_per_row); girara_setting_get(session, "pages-per-row", &pages_per_row);
/* backup first page column */
girara_setting_get(session, "first-page-column", &first_page_column);
/* set single view */ /* set single view */
int int_value = 1; int int_value = 1;
girara_setting_set(session, "pages-per-row", &int_value); girara_setting_set(session, "pages-per-row", &int_value);
@ -969,8 +1004,8 @@ sc_zoom(girara_session_t* session, girara_argument_t* argument, girara_event_t*
int value = 1; int value = 1;
girara_setting_get(zathura->ui.session, "zoom-step", &value); girara_setting_get(zathura->ui.session, "zoom-step", &value);
t = (t == 0) ? 1 : t; int nt = (t == 0) ? 1 : t;
float zoom_step = value / 100.0f * t; float zoom_step = value / 100.0f * nt;
float old_zoom = zathura_document_get_scale(zathura->document); float old_zoom = zathura_document_get_scale(zathura->document);
/* specify new zoom value */ /* specify new zoom value */
@ -979,9 +1014,13 @@ sc_zoom(girara_session_t* session, girara_argument_t* argument, girara_event_t*
} else if (argument->n == ZOOM_OUT) { } else if (argument->n == ZOOM_OUT) {
zathura_document_set_scale(zathura->document, old_zoom - zoom_step); zathura_document_set_scale(zathura->document, old_zoom - zoom_step);
} else if (argument->n == ZOOM_SPECIFIC) { } else if (argument->n == ZOOM_SPECIFIC) {
zathura_document_set_scale(zathura->document, t / 100.0f); if (t == 0) {
zathura_document_set_scale(zathura->document, 1.0f);
} else {
zathura_document_set_scale(zathura->document, t / 100.0f);
}
} else { } else {
zathura_document_set_scale(zathura->document, 1.0); zathura_document_set_scale(zathura->document, 1.0f);
} }
/* zoom limitations */ /* zoom limitations */
@ -1001,7 +1040,7 @@ sc_zoom(girara_session_t* session, girara_argument_t* argument, girara_event_t*
} }
/* keep position */ /* keep position */
readjust_view_after_zooming(zathura, old_zoom); readjust_view_after_zooming(zathura, old_zoom, true);
render_all(zathura); render_all(zathura);

31
synctex.c Normal file
View file

@ -0,0 +1,31 @@
/* See LICENSE file for license and copyright information */
#include "synctex.h"
#include "zathura.h"
#include "page.h"
#include "document.h"
#include <glib.h>
void
synctex_edit(zathura_t* zathura, zathura_page_t* page, int x, int y)
{
zathura_document_t* doc = zathura_page_get_document(page);
const char *filename = zathura_document_get_path(doc);
int pageIdx = zathura_page_get_index(page);
char *buffer = g_strdup_printf("%d:%d:%d:%s", pageIdx+1, x, y, filename);
if (buffer == NULL)
return;
if (zathura->synctex.editor) {
char* argv[] = {"synctex", "edit", "-o", buffer, "-x", zathura->synctex.editor, NULL};
g_spawn_async(NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL);
} else {
char* argv[] = {"synctex", "edit", "-o", buffer, NULL};
g_spawn_async(NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL);
}
g_free(buffer);
}

10
synctex.h Normal file
View file

@ -0,0 +1,10 @@
/* See LICENSE file for license and copyright information */
#ifndef SYNCTEX_H
#define SYNCTEX_H
#include "types.h"
void synctex_edit(zathura_t* zathura, zathura_page_t* page, int x, int y);
#endif

View file

@ -5,8 +5,9 @@
#include "../zathura.h" #include "../zathura.h"
START_TEST(test_create) { START_TEST(test_create) {
zathura_t* zathura = zathura_init(0, NULL); zathura_t* zathura = zathura_create();
fail_unless(zathura != NULL, "Could not create session", NULL); fail_unless(zathura != NULL, "Could not create session", NULL);
fail_unless(zathura_init(zathura) == true, "Could not initialize session", NULL);
zathura_free(zathura); zathura_free(zathura);
} END_TEST } END_TEST

101
utils.c
View file

@ -11,6 +11,7 @@
#include <gtk/gtk.h> #include <gtk/gtk.h>
#include <girara/session.h> #include <girara/session.h>
#include <girara/utils.h> #include <girara/utils.h>
#include <girara/settings.h>
#include <glib/gi18n.h> #include <glib/gi18n.h>
#include "links.h" #include "links.h"
@ -156,7 +157,7 @@ document_index_build(GtkTreeModel* model, GtkTreeIter* parent,
gchar* description = NULL; gchar* description = NULL;
if (type == ZATHURA_LINK_GOTO_DEST) { if (type == ZATHURA_LINK_GOTO_DEST) {
description = g_strdup_printf("Page %d", target.page_number); description = g_strdup_printf("Page %d", target.page_number + 1);
} else { } else {
description = g_strdup(target.value); description = g_strdup(target.value);
} }
@ -312,7 +313,8 @@ zathura_page_get_widget(zathura_t* zathura, zathura_page_t* page)
} }
void void
readjust_view_after_zooming(zathura_t *zathura, float old_zoom) { readjust_view_after_zooming(zathura_t *zathura, float old_zoom, bool delay)
{
if (zathura == NULL || zathura->document == NULL) { if (zathura == NULL || zathura->document == NULL) {
return; return;
} }
@ -325,7 +327,18 @@ readjust_view_after_zooming(zathura_t *zathura, float old_zoom) {
gdouble valx = gtk_adjustment_get_value(hadjustment) / old_zoom * scale; gdouble valx = gtk_adjustment_get_value(hadjustment) / old_zoom * scale;
gdouble valy = gtk_adjustment_get_value(vadjustment) / old_zoom * scale; gdouble valy = gtk_adjustment_get_value(vadjustment) / old_zoom * scale;
position_set_delayed(zathura, valx, valy); bool zoom_center = false;
girara_setting_get(zathura->ui.session, "zoom-center", &zoom_center);
if (zoom_center) {
valx += gtk_adjustment_get_page_size(hadjustment) * (scale / old_zoom - 1) / 2;
}
if (delay == true) {
position_set_delayed(zathura, valx, valy);
} else {
set_adjustment(vadjustment, valx);
set_adjustment(vadjustment, valy);
}
} }
void void
@ -340,3 +353,85 @@ document_draw_search_results(zathura_t* zathura, bool value)
g_object_set(zathura->pages[page_id], "draw-search-results", (value == true) ? TRUE : FALSE, NULL); g_object_set(zathura->pages[page_id], "draw-search-results", (value == true) ? TRUE : FALSE, NULL);
} }
} }
char*
zathura_get_version_string(zathura_t* zathura, bool markup)
{
if (zathura == NULL) {
return NULL;
}
GString* string = g_string_new(NULL);
/* zathura version */
char* zathura_version = g_strdup_printf("zathura %d.%d.%d", ZATHURA_VERSION_MAJOR, ZATHURA_VERSION_MINOR, ZATHURA_VERSION_REV);
g_string_append(string, zathura_version);
g_free(zathura_version);
char* format = (markup == true) ? "\n<i>(plugin)</i> %s (%d.%d.%d) <i>(%s)</i>" : "\n(plugin) %s (%d.%d.%d) (%s)";
/* plugin information */
girara_list_t* plugins = zathura_plugin_manager_get_plugins(zathura->plugins.manager);
if (plugins != NULL) {
GIRARA_LIST_FOREACH(plugins, zathura_plugin_t*, iter, plugin)
char* name = zathura_plugin_get_name(plugin);
zathura_plugin_version_t version = zathura_plugin_get_version(plugin);
char* text = g_strdup_printf(format,
(name == NULL) ? "-" : name,
version.major,
version.minor,
version.rev,
zathura_plugin_get_path(plugin)
);
g_string_append(string, text);
g_free(text);
GIRARA_LIST_FOREACH_END(plugins, zathura_plugin_t*, iter, plugin);
}
char* version = string->str;
g_string_free(string, FALSE);
return version;
}
char*
replace_substring(const char* string, const char* old, const char* new)
{
if (string == NULL || old == NULL || new == NULL) {
return NULL;
}
size_t old_len = strlen(old);
size_t new_len = strlen(new);
/* count occurences */
unsigned int count = 0;
unsigned int i = 0;
for (i = 0; string[i] != '\0'; i++) {
if (strstr(&string[i], old) == &string[i]) {
i += (old_len - 1);
count++;
}
}
if (count == 0) {
return NULL;
}
char* ret = g_malloc0(sizeof(char) * (i - count * old_len + count * new_len + 1));
i = 0;
/* replace */
while (*string != '\0') {
if (strstr(string, old) == string) {
strcpy(&ret[i], new);
i += new_len;
string += old_len;
} else {
ret[i++] = *string++;
}
}
return ret;
}

24
utils.h
View file

@ -119,8 +119,9 @@ GtkWidget* zathura_page_get_widget(zathura_t* zathura, zathura_page_t* page);
* *
* @param zathura Zathura instance * @param zathura Zathura instance
* @param old_zoom Old zoom value * @param old_zoom Old zoom value
* @param delay true if action should be delayed
*/ */
void readjust_view_after_zooming(zathura_t* zathura, float old_zoom); void readjust_view_after_zooming(zathura_t* zathura, float old_zoom, bool delay);
/** /**
* Set if the search results should be drawn or not * Set if the search results should be drawn or not
@ -130,4 +131,25 @@ void readjust_view_after_zooming(zathura_t* zathura, float old_zoom);
*/ */
void document_draw_search_results(zathura_t* zathura, bool value); void document_draw_search_results(zathura_t* zathura, bool value);
/**
* Create zathura version string
*
* @param zathura The zathura instance
* @param markup Enable markup
* @return Version string
*/
char* zathura_get_version_string(zathura_t* zathura, bool markup);
/**
* Replaces all occurences of \ref old in \ref string with \ref new and returns
* a new allocated string
*
* @param string The original string
* @param old String to replace
* @param new Replacement string
*
* @return new allocated string
*/
char* replace_substring(const char* string, const char* old, const char* new);
#endif // UTILS_H #endif // UTILS_H

View file

@ -13,7 +13,7 @@ a document viewer
SYNOPOSIS SYNOPOSIS
========= =========
| zathura [OPTION]... | zathura [OPTION]...
| zathura [OPTION]... FILE | zathura [OPTION]... FILE [FILE ...]
DESCRIPTION DESCRIPTION
=========== ===========
@ -37,11 +37,22 @@ OPTIONS
Path to the directory containing plugins Path to the directory containing plugins
-w [password], --password [password] -w [password], --password [password]
The documents password The documents password. If multiple documents are opened at once, the password
will be used for the first one and zathura will ask for the passwords of the
remaining files if needed.
--fork --fork
Fork into the background Fork into the background
-l [level], --debug [level]
Set log debug level (debug, info, warning, error)
-s, --synctex
Enable syntex support
-x [cmd], --syntec-editor-command [cmd]
Set the syntex editor command
MOUSE AND KEY BINDINGS MOUSE AND KEY BINDINGS
====================== ======================

359
zathura.c
View file

@ -57,107 +57,18 @@ static gboolean purge_pages(gpointer data);
/* function implementation */ /* function implementation */
zathura_t* zathura_t*
zathura_init(int argc, char* argv[]) zathura_create(void)
{ {
/* parse command line options */
#if (GTK_MAJOR_VERSION == 2)
GdkNativeWindow embed = 0;
#else
Window embed = 0;
#endif
gchar* config_dir = NULL, *data_dir = NULL, *plugin_path = NULL, *loglevel = NULL, *password = NULL;
bool forkback = false;
GOptionEntry entries[] =
{
{ "reparent", 'e', 0, G_OPTION_ARG_INT, &embed, _("Reparents to window specified by xid"), "xid" },
{ "config-dir", 'c', 0, G_OPTION_ARG_FILENAME, &config_dir, _("Path to the config directory"), "path" },
{ "data-dir", 'd', 0, G_OPTION_ARG_FILENAME, &data_dir, _("Path to the data directory"), "path" },
{ "plugins-dir", 'p', 0, G_OPTION_ARG_STRING, &plugin_path, _("Path to the directories containing plugins"), "path" },
{ "fork", '\0', 0, G_OPTION_ARG_NONE, &forkback, _("Fork into the background"), NULL },
{ "password", 'w', 0, G_OPTION_ARG_STRING, &password, _("Document password"), "password" },
{ "debug", 'l', 0, G_OPTION_ARG_STRING, &loglevel, _("Log level (debug, info, warning, error)"), "level" },
{ NULL, '\0', 0, 0, NULL, NULL, NULL }
};
GOptionContext* context = g_option_context_new(" [file1] [file2] [...]");
g_option_context_add_main_entries(context, entries, NULL);
GError* error = NULL;
if (g_option_context_parse(context, &argc, &argv, &error) == false)
{
printf("Error parsing command line arguments: %s\n", error->message);
g_option_context_free(context);
g_error_free(error);
return NULL;
}
g_option_context_free(context);
/* Fork into the background if the user really wants to ... */
if (forkback == true)
{
int pid = fork();
if (pid > 0) { /* parent */
exit(0);
} else if (pid < 0) { /* error */
printf("Error: couldn't fork.");
}
setsid();
}
/* Set log level. */
if (loglevel == NULL || g_strcmp0(loglevel, "info") == 0) {
girara_set_debug_level(GIRARA_INFO);
} else if (g_strcmp0(loglevel, "warning") == 0) {
girara_set_debug_level(GIRARA_WARNING);
} else if (g_strcmp0(loglevel, "error") == 0) {
girara_set_debug_level(GIRARA_ERROR);
}
zathura_t* zathura = g_malloc0(sizeof(zathura_t)); zathura_t* zathura = g_malloc0(sizeof(zathura_t));
/* global settings */
zathura->global.recolor = false;
zathura->global.update_page_number = true;
/* plugins */ /* plugins */
zathura->plugins.manager = zathura_plugin_manager_new(); zathura->plugins.manager = zathura_plugin_manager_new();
if (zathura->plugins.manager == NULL) { if (zathura->plugins.manager == NULL) {
goto error_free; goto error_out;
}
/* configuration and data */
if (config_dir != NULL) {
zathura->config.config_dir = g_strdup(config_dir);
} else {
gchar* path = girara_get_xdg_path(XDG_CONFIG);
zathura->config.config_dir = g_build_filename(path, "zathura", NULL);
g_free(path);
}
if (data_dir != NULL) {
zathura->config.data_dir = g_strdup(data_dir);
} else {
gchar* path = girara_get_xdg_path(XDG_DATA);
zathura->config.data_dir = g_build_filename(path, "zathura", NULL);
g_free(path);
}
/* create zathura (config/data) directory */
g_mkdir_with_parents(zathura->config.config_dir, 0771);
g_mkdir_with_parents(zathura->config.data_dir, 0771);
if (plugin_path != NULL) {
girara_list_t* paths = girara_split_path_array(plugin_path);
GIRARA_LIST_FOREACH(paths, char*, iter, path)
zathura_plugin_manager_add_dir(zathura->plugins.manager, path);
GIRARA_LIST_FOREACH_END(paths, char*, iter, path);
girara_list_free(paths);
} else {
#ifdef ZATHURA_PLUGINDIR
girara_list_t* paths = girara_split_path_array(ZATHURA_PLUGINDIR);
GIRARA_LIST_FOREACH(paths, char*, iter, path)
zathura_plugin_manager_add_dir(zathura->plugins.manager, path);
GIRARA_LIST_FOREACH_END(paths, char*, iter, path);
girara_list_free(paths);
#endif
} }
/* UI */ /* UI */
@ -167,10 +78,25 @@ zathura_init(int argc, char* argv[])
zathura->ui.session->global.data = zathura; zathura->ui.session->global.data = zathura;
/* global settings */ return zathura;
zathura->global.recolor = false;
zathura->global.update_page_number = true; error_out:
zathura->global.arguments = argv;
zathura_free(zathura);
return NULL;
}
bool
zathura_init(zathura_t* zathura)
{
if (zathura == NULL) {
return false;
}
/* create zathura (config/data) directory */
g_mkdir_with_parents(zathura->config.config_dir, 0771);
g_mkdir_with_parents(zathura->config.data_dir, 0771);
/* load plugins */ /* load plugins */
zathura_plugin_manager_load(zathura->plugins.manager); zathura_plugin_manager_load(zathura->plugins.manager);
@ -198,9 +124,7 @@ zathura_init(int argc, char* argv[])
config_load_file(zathura, configuration_file); config_load_file(zathura, configuration_file);
g_free(configuration_file); g_free(configuration_file);
/* initialize girara */ /* UI */
zathura->ui.session->gtk.embed = embed;
if (girara_session_init(zathura->ui.session, "zathura") == false) { if (girara_session_init(zathura->ui.session, "zathura") == false) {
goto error_free; goto error_free;
} }
@ -210,7 +134,13 @@ zathura_init(int argc, char* argv[])
zathura->ui.session->events.unknown_command = cb_unknown_command; zathura->ui.session->events.unknown_command = cb_unknown_command;
/* page view */ /* page view */
#if (GTK_MAJOR_VERSION == 3)
zathura->ui.page_widget = gtk_grid_new();
gtk_grid_set_row_homogeneous(GTK_GRID(zathura->ui.page_widget), TRUE);
gtk_grid_set_column_homogeneous(GTK_GRID(zathura->ui.page_widget), TRUE);
#else
zathura->ui.page_widget = gtk_table_new(0, 0, TRUE); zathura->ui.page_widget = gtk_table_new(0, 0, TRUE);
#endif
if (zathura->ui.page_widget == NULL) { if (zathura->ui.page_widget == NULL) {
goto error_free; goto error_free;
} }
@ -230,6 +160,14 @@ zathura_init(int argc, char* argv[])
} }
gtk_container_add(GTK_CONTAINER(zathura->ui.page_widget_alignment), zathura->ui.page_widget); gtk_container_add(GTK_CONTAINER(zathura->ui.page_widget_alignment), zathura->ui.page_widget);
#if (GTK_MAJOR_VERSION == 3)
gtk_widget_set_hexpand_set(zathura->ui.page_widget_alignment, TRUE);
gtk_widget_set_hexpand(zathura->ui.page_widget_alignment, FALSE);
gtk_widget_set_vexpand_set(zathura->ui.page_widget_alignment, TRUE);
gtk_widget_set_vexpand(zathura->ui.page_widget_alignment, FALSE);
#endif
gtk_widget_show(zathura->ui.page_widget); gtk_widget_show(zathura->ui.page_widget);
/* statusbar */ /* statusbar */
@ -257,8 +195,13 @@ zathura_init(int argc, char* argv[])
int page_padding = 1; int page_padding = 1;
girara_setting_get(zathura->ui.session, "page-padding", &page_padding); girara_setting_get(zathura->ui.session, "page-padding", &page_padding);
#if (GTK_MAJOR_VERSION == 3)
gtk_grid_set_row_spacing(GTK_GRID(zathura->ui.page_widget), page_padding);
gtk_grid_set_column_spacing(GTK_GRID(zathura->ui.page_widget), page_padding);
#else
gtk_table_set_row_spacings(GTK_TABLE(zathura->ui.page_widget), page_padding); gtk_table_set_row_spacings(GTK_TABLE(zathura->ui.page_widget), page_padding);
gtk_table_set_col_spacings(GTK_TABLE(zathura->ui.page_widget), page_padding); gtk_table_set_col_spacings(GTK_TABLE(zathura->ui.page_widget), page_padding);
#endif
/* database */ /* database */
char* database = NULL; char* database = NULL;
@ -287,33 +230,12 @@ zathura_init(int argc, char* argv[])
zathura->bookmarks.bookmarks = girara_sorted_list_new2((girara_compare_function_t) zathura_bookmarks_compare, zathura->bookmarks.bookmarks = girara_sorted_list_new2((girara_compare_function_t) zathura_bookmarks_compare,
(girara_free_function_t) zathura_bookmark_free); (girara_free_function_t) zathura_bookmark_free);
/* open document if passed */
if (argc > 1) {
zathura_document_info_t* document_info = g_malloc0(sizeof(zathura_document_info_t));
document_info->zathura = zathura;
document_info->path = argv[1];
document_info->password = password;
gdk_threads_add_idle(document_info_open, document_info);
/* open additional files */
for (int i = 2; i < argc; i++) {
char* new_argv[] = {
*(zathura->global.arguments),
argv[i],
NULL
};
g_spawn_async(NULL, new_argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL);
}
}
/* add even to purge old pages */ /* add even to purge old pages */
int interval = 30; int interval = 30;
girara_setting_get(zathura->ui.session, "page-store-interval", &interval); girara_setting_get(zathura->ui.session, "page-store-interval", &interval);
g_timeout_add_seconds(interval, purge_pages, zathura); g_timeout_add_seconds(interval, purge_pages, zathura);
return zathura; return true;
error_free: error_free:
@ -325,11 +247,7 @@ error_free:
g_object_unref(zathura->ui.page_widget_alignment); g_object_unref(zathura->ui.page_widget_alignment);
} }
error_out: return false;
zathura_free(zathura);
return NULL;
} }
void void
@ -376,6 +294,103 @@ zathura_free(zathura_t* zathura)
g_free(zathura); g_free(zathura);
} }
void
#if (GTK_MAJOR_VERSION == 2)
zathura_set_xid(zathura_t* zathura, GdkNativeWindow xid)
#else
zathura_set_xid(zathura_t* zathura, Window xid)
#endif
{
g_return_if_fail(zathura != NULL);
zathura->ui.session->gtk.embed = xid;
}
void
zathura_set_config_dir(zathura_t* zathura, const char* dir)
{
g_return_if_fail(zathura != NULL);
if (dir != NULL) {
zathura->config.config_dir = g_strdup(dir);
} else {
gchar* path = girara_get_xdg_path(XDG_CONFIG);
zathura->config.config_dir = g_build_filename(path, "zathura", NULL);
g_free(path);
}
}
void
zathura_set_data_dir(zathura_t* zathura, const char* dir)
{
if (dir != NULL) {
zathura->config.data_dir = g_strdup(dir);
} else {
gchar* path = girara_get_xdg_path(XDG_DATA);
zathura->config.data_dir = g_build_filename(path, "zathura", NULL);
g_free(path);
}
g_return_if_fail(zathura != NULL);
}
void
zathura_set_plugin_dir(zathura_t* zathura, const char* dir)
{
g_return_if_fail(zathura != NULL);
g_return_if_fail(zathura->plugins.manager != NULL);
if (dir != NULL) {
girara_list_t* paths = girara_split_path_array(dir);
GIRARA_LIST_FOREACH(paths, char*, iter, path)
zathura_plugin_manager_add_dir(zathura->plugins.manager, path);
GIRARA_LIST_FOREACH_END(paths, char*, iter, path);
girara_list_free(paths);
} else {
#ifdef ZATHURA_PLUGINDIR
girara_list_t* paths = girara_split_path_array(ZATHURA_PLUGINDIR);
GIRARA_LIST_FOREACH(paths, char*, iter, path)
zathura_plugin_manager_add_dir(zathura->plugins.manager, path);
GIRARA_LIST_FOREACH_END(paths, char*, iter, path);
girara_list_free(paths);
#endif
}
}
void
zathura_set_synctex_editor_command(zathura_t* zathura, const char* command)
{
g_return_if_fail(zathura != NULL);
if (zathura->synctex.editor != NULL) {
g_free(zathura->synctex.editor);
}
if (command != NULL) {
zathura->synctex.editor = g_strdup(command);
} else {
zathura->synctex.editor = NULL;
}
}
void
zathura_set_syntex(zathura_t* zathura, bool value)
{
g_return_if_fail(zathura != NULL);
g_return_if_fail(zathura->ui.session != NULL);
girara_setting_set(zathura->ui.session, "synctex", &value);
}
void
zathura_set_argv(zathura_t* zathura, char** argv)
{
g_return_if_fail(zathura != NULL);
zathura->global.arguments = argv;
}
static gchar* static gchar*
prepare_document_open_from_stdin(zathura_t* zathura) prepare_document_open_from_stdin(zathura_t* zathura)
{ {
@ -384,8 +399,7 @@ prepare_document_open_from_stdin(zathura_t* zathura)
GError* error = NULL; GError* error = NULL;
gchar* file = NULL; gchar* file = NULL;
gint handle = g_file_open_tmp("zathura.stdin.XXXXXX", &file, &error); gint handle = g_file_open_tmp("zathura.stdin.XXXXXX", &file, &error);
if (handle == -1) if (handle == -1) {
{
if (error != NULL) { if (error != NULL) {
girara_error("Can not create temporary file: %s", error->message); girara_error("Can not create temporary file: %s", error->message);
g_error_free(error); g_error_free(error);
@ -395,8 +409,7 @@ prepare_document_open_from_stdin(zathura_t* zathura)
// read from stdin and dump to temporary file // read from stdin and dump to temporary file
int stdinfno = fileno(stdin); int stdinfno = fileno(stdin);
if (stdinfno == -1) if (stdinfno == -1) {
{
girara_error("Can not read from stdin."); girara_error("Can not read from stdin.");
close(handle); close(handle);
g_unlink(file); g_unlink(file);
@ -406,10 +419,8 @@ prepare_document_open_from_stdin(zathura_t* zathura)
char buffer[BUFSIZ]; char buffer[BUFSIZ];
ssize_t count = 0; ssize_t count = 0;
while ((count = read(stdinfno, buffer, BUFSIZ)) > 0) while ((count = read(stdinfno, buffer, BUFSIZ)) > 0) {
{ if (write(handle, buffer, count) != count) {
if (write(handle, buffer, count) != count)
{
girara_error("Can not write to temporary file: %s", file); girara_error("Can not write to temporary file: %s", file);
close(handle); close(handle);
g_unlink(file); g_unlink(file);
@ -417,10 +428,10 @@ prepare_document_open_from_stdin(zathura_t* zathura)
return NULL; return NULL;
} }
} }
close(handle); close(handle);
if (count != 0) if (count != 0) {
{
girara_error("Can not read from stdin."); girara_error("Can not read from stdin.");
g_unlink(file); g_unlink(file);
g_free(file); g_free(file);
@ -494,7 +505,7 @@ document_open(zathura_t* zathura, const char* path, const char* password)
unsigned int number_of_pages = zathura_document_get_number_of_pages(document); unsigned int number_of_pages = zathura_document_get_number_of_pages(document);
/* read history file */ /* read history file */
zathura_fileinfo_t file_info = { 0, 0, 1, 0, 1, 0, 0 }; zathura_fileinfo_t file_info = { 0, 0, 1, 0, 0, 0, 0, 0 };
bool known_file = zathura_db_get_fileinfo(zathura->database, file_path, &file_info); bool known_file = zathura_db_get_fileinfo(zathura->database, file_path, &file_info);
/* set page offset */ /* set page offset */
@ -622,14 +633,22 @@ document_open(zathura_t* zathura, const char* path, const char* password)
/* view mode */ /* view mode */
int pages_per_row = 1; int pages_per_row = 1;
int first_page_column = 1;
if (file_info.pages_per_row > 0) { if (file_info.pages_per_row > 0) {
pages_per_row = file_info.pages_per_row; pages_per_row = file_info.pages_per_row;
} else { } else {
girara_setting_get(zathura->ui.session, "pages-per-row", &pages_per_row); girara_setting_get(zathura->ui.session, "pages-per-row", &pages_per_row);
} }
if (file_info.first_page_column > 0) {
first_page_column = file_info.first_page_column;
} else {
girara_setting_get(zathura->ui.session, "first-page-column", &first_page_column);
}
girara_setting_set(zathura->ui.session, "pages-per-row", &pages_per_row); girara_setting_set(zathura->ui.session, "pages-per-row", &pages_per_row);
page_widget_set_mode(zathura, pages_per_row); girara_setting_set(zathura->ui.session, "first-page-column", &first_page_column);
page_widget_set_mode(zathura, pages_per_row, first_page_column);
girara_set_view(zathura->ui.session, zathura->ui.page_widget_alignment); girara_set_view(zathura->ui.session, zathura->ui.page_widget_alignment);
@ -648,7 +667,15 @@ document_open(zathura_t* zathura, const char* path, const char* password)
zathura_bookmarks_load(zathura, file_path); zathura_bookmarks_load(zathura, file_path);
/* update title */ /* update title */
girara_set_window_title(zathura->ui.session, file_path); bool basename_only = false;
girara_setting_get(zathura->ui.session, "window-title-basename", &basename_only);
if (basename_only == false) {
girara_set_window_title(zathura->ui.session, file_path);
} else {
char* tmp = g_path_get_basename(file_path);
girara_set_window_title(zathura->ui.session, tmp);
g_free(tmp);
}
g_free(file_uri); g_free(file_uri);
@ -679,6 +706,22 @@ error_out:
return false; return false;
} }
void
document_open_idle(zathura_t* zathura, const char* path, const char* password)
{
if (zathura == NULL || path == NULL) {
return;
}
zathura_document_info_t* document_info = g_malloc0(sizeof(zathura_document_info_t));
document_info->zathura = zathura;
document_info->path = path;
document_info->password = password;
gdk_threads_add_idle(document_info_open, document_info);
}
bool bool
document_save(zathura_t* zathura, const char* path, bool overwrite) document_save(zathura_t* zathura, const char* path, bool overwrite)
{ {
@ -750,13 +793,14 @@ document_close(zathura_t* zathura, bool keep_monitor)
/* store file information */ /* store file information */
const char* path = zathura_document_get_path(zathura->document); const char* path = zathura_document_get_path(zathura->document);
zathura_fileinfo_t file_info = { 0, 0, 1, 0, 1, 0, 0 }; zathura_fileinfo_t file_info = { 0, 0, 1, 0, 1, 1, 0, 0 };
file_info.current_page = zathura_document_get_current_page_number(zathura->document); file_info.current_page = zathura_document_get_current_page_number(zathura->document);
file_info.page_offset = zathura_document_get_page_offset(zathura->document); file_info.page_offset = zathura_document_get_page_offset(zathura->document);
file_info.scale = zathura_document_get_scale(zathura->document); file_info.scale = zathura_document_get_scale(zathura->document);
file_info.rotation = zathura_document_get_rotation(zathura->document); file_info.rotation = zathura_document_get_rotation(zathura->document);
girara_setting_get(zathura->ui.session, "pages-per-row", &(file_info.pages_per_row)); girara_setting_get(zathura->ui.session, "pages-per-row", &(file_info.pages_per_row));
girara_setting_get(zathura->ui.session, "first-page-column", &(file_info.first_page_column));
/* get position */ /* get position */
GtkScrolledWindow *window = GTK_SCROLLED_WINDOW(zathura->ui.session->gtk.view); GtkScrolledWindow *window = GTK_SCROLLED_WINDOW(zathura->ui.session->gtk.view);
@ -884,13 +928,22 @@ statusbar_page_number_update(zathura_t* zathura)
} }
void void
page_widget_set_mode(zathura_t* zathura, unsigned int pages_per_row) page_widget_set_mode(zathura_t* zathura, unsigned int pages_per_row, unsigned int first_page_column)
{ {
/* show at least one page */ /* show at least one page */
if (pages_per_row == 0) { if (pages_per_row == 0) {
pages_per_row = 1; pages_per_row = 1;
} }
/* ensure: 0 < first_page_column <= pages_per_row */
if (first_page_column < 1) {
first_page_column = 1;
}
if (first_page_column > pages_per_row) {
first_page_column = ((first_page_column - 1) % pages_per_row) + 1;
}
if (zathura->document == NULL) { if (zathura->document == NULL) {
return; return;
} }
@ -898,15 +951,22 @@ page_widget_set_mode(zathura_t* zathura, unsigned int pages_per_row)
gtk_container_foreach(GTK_CONTAINER(zathura->ui.page_widget), remove_page_from_table, (gpointer)0); gtk_container_foreach(GTK_CONTAINER(zathura->ui.page_widget), remove_page_from_table, (gpointer)0);
unsigned int number_of_pages = zathura_document_get_number_of_pages(zathura->document); unsigned int number_of_pages = zathura_document_get_number_of_pages(zathura->document);
gtk_table_resize(GTK_TABLE(zathura->ui.page_widget), ceil(number_of_pages / pages_per_row), pages_per_row); #if (GTK_MAJOR_VERSION == 3)
for (unsigned int i = 0; i < number_of_pages; i++) #else
{ gtk_table_resize(GTK_TABLE(zathura->ui.page_widget), ceil((number_of_pages + first_page_column - 1) / pages_per_row), pages_per_row);
int x = i % pages_per_row; #endif
int y = i / pages_per_row;
for (unsigned int i = 0; i < number_of_pages; i++) {
int x = (i + first_page_column - 1) % pages_per_row;
int y = (i + first_page_column - 1) / pages_per_row;
zathura_page_t* page = zathura_document_get_page(zathura->document, i); zathura_page_t* page = zathura_document_get_page(zathura->document, i);
GtkWidget* page_widget = zathura_page_get_widget(zathura, page); GtkWidget* page_widget = zathura_page_get_widget(zathura, page);
#if (GTK_MAJOR_VERSION == 3)
gtk_grid_attach(GTK_GRID(zathura->ui.page_widget), page_widget, x, y, 1, 1);
#else
gtk_table_attach(GTK_TABLE(zathura->ui.page_widget), page_widget, x, x + 1, y, y + 1, GTK_SHRINK, GTK_SHRINK, 0, 0); gtk_table_attach(GTK_TABLE(zathura->ui.page_widget), page_widget, x, x + 1, y, y + 1, GTK_SHRINK, GTK_SHRINK, 0, 0);
#endif
} }
gtk_widget_show_all(zathura->ui.page_widget); gtk_widget_show_all(zathura->ui.page_widget);
@ -926,6 +986,7 @@ gboolean purge_pages(gpointer data)
return TRUE; return TRUE;
} }
girara_debug("purging pages ...");
unsigned int number_of_pages = zathura_document_get_number_of_pages(zathura->document); unsigned int number_of_pages = zathura_document_get_number_of_pages(zathura->document);
for (unsigned int page_id = 0; page_id < number_of_pages; page_id++) { for (unsigned int page_id = 0; page_id < number_of_pages; page_id++) {
zathura_page_t* page = zathura_document_get_page(zathura->document, page_id); zathura_page_t* page = zathura_document_get_page(zathura->document, page_id);

View file

@ -4,6 +4,13 @@ Type=Application
Name=Zathura Name=Zathura
Comment=A minimalistic document viewer Comment=A minimalistic document viewer
Comment[de]=Ein minimalistischer Dokumenten-Betrachter Comment[de]=Ein minimalistischer Dokumenten-Betrachter
Comment[fr]=Un visionneur de document minimaliste
Comment[ru]=Минималистичный просмотрщик документов
Comment[tr]=Minimalist bir belge görüntüleyicisi
Comment[es_CL]=Un visor de documentos minimalista
Comment[uk_UA]=Легкий переглядач документів
Comment[it]=Un visualizzatore di documenti minimalista
Comment[pl]=Minimalistyczna przeglądarka dokumentów
Exec=zathura %f Exec=zathura %f
Terminal=false Terminal=false
Categories=Office;Viewer; Categories=Office;Viewer;

View file

@ -9,6 +9,10 @@
#include "macros.h" #include "macros.h"
#include "types.h" #include "types.h"
#if (GTK_MAJOR_VERSION == 3)
#include <gtk/gtkx.h>
#endif
enum { NEXT, PREVIOUS, LEFT, RIGHT, UP, DOWN, BOTTOM, TOP, HIDE, HIGHLIGHT, enum { NEXT, PREVIOUS, LEFT, RIGHT, UP, DOWN, BOTTOM, TOP, HIDE, HIGHLIGHT,
DELETE_LAST_WORD, DELETE_LAST_CHAR, DEFAULT, ERROR, WARNING, NEXT_GROUP, DELETE_LAST_WORD, DELETE_LAST_CHAR, DEFAULT, ERROR, WARNING, NEXT_GROUP,
PREVIOUS_GROUP, ZOOM_IN, ZOOM_OUT, ZOOM_ORIGINAL, ZOOM_SPECIFIC, FORWARD, PREVIOUS_GROUP, ZOOM_IN, ZOOM_OUT, ZOOM_ORIGINAL, ZOOM_SPECIFIC, FORWARD,
@ -66,6 +70,12 @@ struct zathura_s
gchar* data_dir; /**< Path to the data directory */ gchar* data_dir; /**< Path to the data directory */
} config; } config;
struct
{
bool enabled;
gchar* editor;
} synctex;
struct struct
{ {
GtkPrintSettings* settings; /**< Print settings */ GtkPrintSettings* settings; /**< Print settings */
@ -74,6 +84,7 @@ struct zathura_s
struct struct
{ {
bool recolor_keep_hue; /**< Keep hue when recoloring */
bool recolor; /**< Recoloring mode switch */ bool recolor; /**< Recoloring mode switch */
bool update_page_number; /**< Update current page number */ bool update_page_number; /**< Update current page number */
girara_list_t* marks; /**< Marker */ girara_list_t* marks; /**< Marker */
@ -114,14 +125,20 @@ struct zathura_s
} file_monitor; } file_monitor;
}; };
/**
* Creates a zathura session
*
* @return zathura session object or NULL if zathura could not be creeated
*/
zathura_t* zathura_create(void);
/** /**
* Initializes zathura * Initializes zathura
* *
* @param argc Number of arguments * @param zathura The zathura session
* @param argv Values of arguments * @return true if initialization has been successful
* @return zathura session object or NULL if zathura could not been initialized
*/ */
zathura_t* zathura_init(int argc, char* argv[]); bool zathura_init(zathura_t* zathura);
/** /**
* Free zathura session * Free zathura session
@ -130,6 +147,66 @@ zathura_t* zathura_init(int argc, char* argv[]);
*/ */
void zathura_free(zathura_t* zathura); void zathura_free(zathura_t* zathura);
/**
* Set parent window id
*
* @param zathura The zathura session
* @param xid The window id
*/
#if (GTK_MAJOR_VERSION == 2)
void zathura_set_xid(zathura_t* zathura, GdkNativeWindow xid);
#else
void zathura_set_xid(zathura_t* zathura, Window xid);
#endif
/**
* Set the path to the configuration directory
*
* @param zathura The zathura session
* @param dir Directory path
*/
void zathura_set_config_dir(zathura_t* zathura, const char* dir);
/**
* Set the path to the data directory
*
* @param zathura The zathura session
* @param dir Directory path
*/
void zathura_set_data_dir(zathura_t* zathura, const char* dir);
/**
* Set the path to the plugin directory
*
* @param zathura The zathura session
* @param dir Directory path
*/
void zathura_set_plugin_dir(zathura_t* zathura, const char* dir);
/**
* Enables synctex support and sets the synctex editor command
*
* @param zathura The zathura session
* @param command Synctex editor command
*/
void zathura_set_synctex_editor_command(zathura_t* zathura, const char* command);
/**
* En/Disable zathuras syntex support
*
* @param zathura The zathura session
* @param value The value
*/
void zathura_set_syntex(zathura_t* zathura, bool value);
/**
* Sets the program parameters
*
* @param zathura The zathura session
* @param argv List of arguments
*/
void zathura_set_argv(zathura_t* zathura, char** argv);
/** /**
* Opens a file * Opens a file
* *
@ -141,6 +218,15 @@ void zathura_free(zathura_t* zathura);
*/ */
bool document_open(zathura_t* zathura, const char* path, const char* password); bool document_open(zathura_t* zathura, const char* path, const char* password);
/**
* Opens a file (idle)
*
* @param zathura The zathura session
* @param path The path to the file
* @param password The password of the file
*/
void document_open_idle(zathura_t* zathura, const char* path, const char* password);
/** /**
* Save a open file * Save a open file
* *
@ -194,8 +280,9 @@ bool position_set_delayed(zathura_t* zathura, double position_x, double position
* *
* @param zathura The zathura session * @param zathura The zathura session
* @param pages_per_row Number of shown pages per row * @param pages_per_row Number of shown pages per row
* @param first_page_column Column on which first page start
*/ */
void page_widget_set_mode(zathura_t* zathura, unsigned int pages_per_row); void page_widget_set_mode(zathura_t* zathura, unsigned int pages_per_row, unsigned int first_page_column);
/** /**
* Updates the page number in the statusbar. Note that 1 will be added to the * Updates the page number in the statusbar. Note that 1 will be added to the

View file

@ -542,6 +542,13 @@ Defines the number of pages that are rendered next to each other in a row.
* Value type: Integer * Value type: Integer
* Default value: 1 * Default value: 1
first-page-column
^^^^^^^^^^^^^^^^^
Defines the column in which the first page will be displayed.
* Value type: Integer
* Default value: 1
recolor recolor
^^^^^^^ ^^^^^^^
En/Disables recoloring En/Disables recoloring
@ -549,6 +556,13 @@ En/Disables recoloring
* Value type: Boolean * Value type: Boolean
* Default value: false * Default value: false
recolor-keephue
^^^^^^^^^^^^^^^
En/Disables keeping original hue when recoloring
* Value type: Boolean
* Default value: false
recolor-darkcolor recolor-darkcolor
^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^
Defines the color value that is used to represent dark colors in recoloring mode Defines the color value that is used to represent dark colors in recoloring mode
@ -570,6 +584,13 @@ Defines if the "Loading..." text should be displayed if a page is rendered.
* Value type: Boolean * Value type: Boolean
* Default value: true * Default value: true
scroll-hstep
^^^^^^^^^^^^
Defines the horizontal step size of scrolling by calling the scroll command once
* Value type: Float
* Default value: -1
scroll-step scroll-step
^^^^^^^^^^^ ^^^^^^^^^^^
Defines the step size of scrolling by calling the scroll command once Defines the step size of scrolling by calling the scroll command once
@ -584,6 +605,27 @@ Defines if the last/first page should be wrapped
* Value type: Boolean * Value type: Boolean
* Default value: false * Default value: false
search-hadjust
^^^^^^^^^^^^^^
En/Disables horizontally centered search results
* Value type: Boolean
* Default value: true
window-title-basename
^^^^^^^^^^^^^^^^^^^^^
Use basename of the file in the window title.
* Value type: Boolean
* Default value: false
zoom-center
^^^^^^^^^^^
En/Disables horizontally centered zooming
* Value type: Bool
* Default value: False
zoom-max zoom-max
^^^^^^^^ ^^^^^^^^
Defines the maximum percentage that the zoom level can be Defines the maximum percentage that the zoom level can be