Document viewer
Find a file
Marwan Tanager ae59da30c8 Bookmark the exact position, not just the page number (along with a number of fixes).
This patch adds some enhancements/fixes to the bookmarking feature of Zathura:

    - Bookmark the exact vertical and horizontal adjustments values, along with
      the page number. This is done in a backward-compatible way for both the
      plain and sqlite database backends, so that bookmarks that was taken
      previously (bookmarking only the page number) will still work as expected
      and won't be lost.

    - Fix the issue of not being able to remove bookmarks from the plain
      database; removing a bookmark in plain_remove_bookmark using
      g_key_file_remove_key corrupts the bookmarks file.  This is due to not
      truncating the entire bookmarks file in zathura_db_write_key_file_to_file
      prior to overriding it with a new one not containing the removed line.
      This is why, I guess, plain_remove_bookmark hadn't been implemented as
      expected using g_key_file_remove_key, because apparently, someone thought
      that the problem is caused by this API.

    - Fix not being able to update existing bookmarks persistently; updating a
      bookmark works only during the current session, but after the file is
      closed and reopened, the updated bookmark still has it's old value. This
      is due to changing only the bookmark structure in memory; the proper way
      to do it, is to call zathura_db_remove_bookmark on the old bookmark, then
      follow that by a call to zathura_db_add_bookmark on a bookmark structure
      containing the new position and the same old ID.

    - Make zathura_bookmark_add updates the bookmark if it already exists,
      rather than doing this externally in cmd_bookmark_create. This allows us
      to have all the relevant girara_notify messages in cmd_bookmark_create.

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-06-21 09:45:36 +02:00
po Update translations 2013-05-04 15:37:12 +02:00
tests Build tests with magic if WITH_MAGIC != 0 2013-02-22 15:58:13 +01:00
.gitignore Add girara version check. 2012-03-16 13:32:09 +01:00
adjustment.c CS 2013-03-23 16:12:38 +01:00
adjustment.h Use signals to readjust_view_after_zooming() 2013-03-23 16:02:56 +01:00
AUTHORS Add oblique 2013-03-09 18:54:42 +01:00
bookmarks.c Bookmark the exact position, not just the page number (along with a number of fixes). 2013-06-21 09:45:36 +02:00
bookmarks.h Bookmark the exact position, not just the page number (along with a number of fixes). 2013-06-21 09:45:36 +02:00
callbacks.c Enhancements/Cleanups for the jumplist mechansim 2013-06-10 14:48:10 +02:00
callbacks.h Use signals to readjust_view_after_zooming() 2013-03-23 16:02:56 +01:00
commands.c Bookmark the exact position, not just the page number (along with a number of fixes). 2013-06-21 09:45:36 +02:00
commands.h Implement cmd_exec with 2012-08-14 11:45:11 +02:00
common.mk add verbose build output 2011-08-31 16:04:55 +02:00
completion.c Update style 2012-10-09 01:12:18 +02:00
completion.h Add completion for :write (Closes: #138) 2012-03-20 00:54:12 +01:00
config.c Enhancements/Cleanups for the jumplist mechansim 2013-06-10 14:48:10 +02:00
config.h Update documentation 2012-02-08 15:30:13 +01:00
config.mk Version 0.2.3 2013-05-12 23:28:20 +02:00
database-plain.c Bookmark the exact position, not just the page number (along with a number of fixes). 2013-06-21 09:45:36 +02:00
database-plain.h Implement support to use both database backends. 2012-03-04 15:56:54 +01:00
database-sqlite.c Bookmark the exact position, not just the page number (along with a number of fixes). 2013-06-21 09:45:36 +02:00
database-sqlite.h Update typo in function description 2012-03-14 08:15:23 +01:00
database.c Drop zathura_db_free 2013-03-14 21:30:40 +01:00
database.h Drop zathura_db_free 2013-03-14 21:30:40 +01:00
document.c Fix 2013-05-28 23:39:18 +02:00
document.h Allow negative offsets 2013-05-08 18:28:32 +02:00
Doxyfile Update Doxyfile 2012-02-08 15:38:54 +01:00
glib-compat.h g_get_real_time appeard in 2.28 2013-02-09 15:18:35 +01:00
internal.h Improve zathura_link_t 2012-05-28 12:43:22 +02:00
LICENSE Update copyright years 2013-01-22 21:56:43 +01:00
links.c Enhancements/Cleanups for the jumplist mechansim 2013-06-10 14:48:10 +02:00
links.h Add new shortcut function to display links 2012-12-07 18:05:59 +01:00
macros.h Mark zathura->global.page_padding as deprecated. 2012-03-16 15:56:37 +01:00
main.c Add a '--page' option to open at the specified page 2013-03-17 11:30:22 +01:00
Makefile Add support to detect mimetypes with magic 2013-02-08 10:59:26 +01:00
marks.c Use jumplist with marks 2013-06-10 14:48:11 +02:00
marks.h Implemented marks 2012-04-21 04:59:58 +02:00
page-widget.c More Vim-like search behavior 2013-06-10 14:35:19 +02:00
page-widget.h Replace the periodic page reclaiming code with a LRU caching algorithm. 2013-03-26 12:45:43 +01:00
page.c Hide plugin structure and introduce new functions 2012-06-13 16:08:24 +02:00
page.h There is no need to include zathura.h anymore. 2012-04-03 18:39:00 +02:00
plugin-api.h Hide plugin structure and introduce new functions 2012-06-13 16:08:24 +02:00
plugin.c demote some info-level messages to debug 2013-01-15 11:31:35 +01:00
plugin.h Hide plugin structure and introduce new functions 2012-06-13 16:08:24 +02:00
print.c Add some comments 2012-12-07 15:24:57 +01:00
print.h Remove unnecessary include. 2012-06-08 18:10:54 +02:00
README Update README 2013-02-24 12:29:01 +01:00
render.c Fix some types 2013-04-02 11:39:06 +02:00
render.h Use a lock to lock the render thread for printing. 2012-06-03 22:06:57 +02:00
shortcuts.c CS 2013-06-20 20:22:07 +02:00
shortcuts.h bisect functionality to navigate documents 2013-04-02 21:22:20 +02:00
synctex.c Update style 2012-10-09 01:12:18 +02:00
synctex.h Synctex backwards synchronization 2012-07-13 15:39:16 +02:00
types.c Update style 2012-10-09 01:12:18 +02:00
types.h Don't scroll the document when focusing the inputbar 2013-03-23 16:03:11 +01:00
utils.c Use strrchr in file_get_extension 2013-05-04 19:33:14 +02:00
utils.h Use signals to readjust_view_after_zooming() 2013-03-23 16:02:56 +01:00
version.h.in Fix version.h misspelling 2012-05-28 10:08:03 +02:00
zathura.1.rst Document new bisect functionality 2013-04-02 21:22:20 +02:00
zathura.c Enhancements/Cleanups for the jumplist mechansim 2013-06-10 14:48:10 +02:00
zathura.desktop Put %f back. 2013-06-19 21:26:21 +02:00
zathura.h Use jumplist with marks 2013-06-10 14:48:11 +02:00
zathura.pc.in Don't need to depend on GTK+ anymore. 2012-04-06 13:46:35 +02:00
zathurarc.5.rst Update documentation 2013-06-18 12:52:01 +02:00

zathura - a document viewer
===========================
zathura is a highly customizable and functional document viewer based on the
girara user interface library and several document libraries.

Requirements
------------
gtk2 (>= 2.28)
girara
sqlite3 (optional, >= 3.5.9)
check (for tests)
intltool
python-docutils (optional, for man pages)
libmagic from file(1) (optional, for mime-type detection)

Please note that you need to have a working pkg-config installation and that the
Makefile is only compatible with GNU make. If you don't have a working
pkg-config installation please set the GTK_INC, GTK_LIB, GIRARA_INC, GIRARA_LIB,
SQLITE_INC and SQLITE_LIB variables accordingly.

And also note that rst2man from python-docutils is needed to build the man pages.
If it is not installed, the man pages won't be built.

If you don't want to build with support for sqlite databases, you can set
WITH_SQLITE=0 and sqlite support won't be available. Please note that sqlite3
with meta data support is required, i.e. sqlite3 has to be built with
SQLITE_ENABLE_COLUMN_METADATA defined.

The use of magic to detect mime types is optional and can be disabled by setting
WITH_MAGIC=0.

If you pass these flags as a command line argument to make, you have to ensure
to pass the same flags when executing the install target.

Installation
------------
To build and install zathura:

  make install

Uninstall:
----------
To delete zathura from your system, just type:

  make uninstall