Report missing plugin/unsupported file type
Fix previous commit
Fix
Use show-v-scrollbar instead of show-scrollbars

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Document the new show-{h, v}-scrollbar settings

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
More Vim-like search behavior

This patch activates the last aborted search when pressing the search shortcuts
('n' or 'N').

To avoid confusion, and to make things more predictable, I've chosen to always
reactivate an aborted search starting from the beginning (or end, in case of
'N' or '?') of the current page, as opposed to Vim which continues from the
next search term each time the search is reactivated.

Searching using '/' or '?' doesn't center the view at the current search term
like when using 'n' or 'N', so we fix this here.

Also, I managed to work around the issue of the thin rectangular margins that
show around the previously-highlighted search terms after the search is aborted
(either explicitly or as a result of following links), by redrawing the page
widget (only if it's visible) instead of redrawing the rectangles covering the
highlighted search terms.

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Include backward-search commands in the history plain database

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Enhancements/Cleanups for the jumplist mechansim

	- Don't delete the elements on the right of the current one, when
	  appending a new jump to the jumplist, because this makes no sense at
	  all; the point of the jumplist in the first place is to remember
	  previously jumped-to positions in the document, so there is no need
	  to delete anythings except to trim the oldest entries from the
	  beginning to maintain the maximum size. This also makes us compatible
	  with the Vim way of doing things.

	- Make the jumplist mechanism functional on the same page; if we
	  followed a link to a target on the same page, remember the
	  adjustments before and after following the link. The same holds for
	  navigating search results on the same page.

	- Implement position_set and use it instead of position_set_delayed
	  when following links in order to give zathura_jumplist_save a chance
	  to record the exact adjustments of the link target. Otherwise, it
	  will always record the adjustments after going to the target page,
	  but before going to the exact position within it.

	- Don't consider movements with ^i and ^o as jumps :)

	- Don't use page_set followed by setting the adjustments in
	  sc_jumplist, because this is redundant and causes clutter when using
	  ^i and ^o, as the adjustments is set twice this way (once in page_set
	  and again in position_set_delayed).  It's enough to only update the
	  page number on the statusbar and then set the adjustments.

	- Hide implementation details (zathura_jumplist_save and
	  zathura_jumplist_append), and make things more consistent by
	  exporting and using only zathura_jumplist_add for adding new entries.

The end result: A more slick jumping experience :-)

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Save position on the jumplist before and after jumping to a bookmark

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Use jumplist with marks

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Update documentation
Put %f back.

A missing %f causes more problems than expected.

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Make jumping with ^o and ^i more compatible with Vim

    - Allow the user to always start with the very last (or first) jump on the
      jumplist when pressing ^o (or ^i), while the jumplist iterator is
      pointing to the last (or first) jump, and the document is not currently
      at the position of this pointed-to jump. This is instead of jumping
      directly to the previous/next jump, and skipping the last/first one.

    - Don't jump to the current jump pointed to by the jumplist iterator, if
      there is no more next jumps, and the jump direction is FORWARD.

    - Don't jump to the current jump pointed to by the jumplist iterator, if
      there is no more previous jumps, and the jump direction is BACKWARD.

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Fix the segfault that happens when jumping while the jumplist is initially empty.

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
CS

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
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>
Create bookmarks table with {v,h}adj_ratio

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Eliminate the need for sqlite3_table_column_metadata

This is so that Zathura would compile without errors when enabling sqlite
support on systems that doesn't have sqlite compiled with
SQLITE_ENABLE_COLUMN_METADATA (which are the majority).

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Add some comments to the code

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
Remove note about SQLITE_ENABLE_COLUMN_METADATA

Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>