** THIS PACKAGE IS DEPRECATED A better implementation is provided by the [[https://github.com/dalanicolai/image-roll.el][image-roll]] package.
** Demo [[pdf-continuous-scroll-demo.gif]]
It includes keybindings to just work also on Spacemacs.
Development notes can be found in [[../../wiki][the wiki section]].
** Requirements To use the new pdf-continuous-scroll-mode, your Emacs must have been compiled with SVG support (the [[NOTE: cleaner version available][cleaner version]] of [[https://github.com/dalanicolai/pdf-tools][my pdf-tools fork]] eliminates this requirement).
However, compiling Emacs generally is very easy. Just make sure you have the =librsvg= development (dev/devel) library installed before compiling.
** Installation Note: If, for some reason, you prefer to use the previous two buffer solution then you could just download and load the script from e.g. [[https://github.com/dalanicolai/pdf-continuous-scroll-mode.el/tree/615dcfbf7a9b2ff602a39da189e5eb766600047f][this previous commit]].
Note: If you are using git to update the package, then you might want to use 'reset --hard', as I am frequently using 'push --force'.
To keep this package updated it is recommended to install it using a [[https://github.com/quelpa/quelpa#by-recipe][Quelpa recipe]]. Spacemacs users can install the package (using Quelpa) by adding the following lines to the list of =additional packages= in their .spacemacs file:
(pdf-continuous-scroll-mode :location (recipe :fetcher github :repo "dalanicolai/pdf-continuous-scroll-mode.el"))
Then just load the package using =use-package= (if you'd like to defer loading), =require= or just =M-x load-library=.
Unlike the previous two-buffer implementation, currently this implementation does not add an option for toggling the functionality.
You can set the scroll step size via the customizable variable =book-scroll-fraction=.
** Comments
As it is not trivial to find out how this functionality works exactly, help or donations are very welcome.
isearch functionality gets broken. However, pdf-occur does work, just without the highlighting because that makes use of isearch functionality.
Contribute As investigating how to get things right takes me a lot of time (both doc-view and pdf-tools are quite complex packages, and they are almost undocumented unfortunately). It really took me weeks to partly unravel how these packages work. As I am the extreme opposite of being rich, donations are very welcome (you could also have a look at my other packages on my [[https://github.com/dalanicolai][github profile]] page, for example the new alternative pdf-server that adds extra annotation features and support for EPUB, and some more document types, to pdf-tools).
Comment: Personally, I think the improved functionality quite much increases the value of Emacs for research/study purposes
Of course if you know some elisp you could also help investigating/fixing issues yourself. To save you a lot of time, you can read the 'development notes' in [[../../wiki][the wiki section]].
Any feedback is welcome (possibly by opening an issue in the repo).
** Keybindings | Emacs | Spacemacs | Function | |-------------+---------------------+-------------------------------------| | =C-n= | =j= | pdf-continuous-scroll-forward | | =C-p= | =k= | pdf-continuous-scroll-backward | | =n= | =J= | pdf-continuous-next-page | | =p= | =K= | pdf-continuous-previous-page | | =M-<= | =g g= | pdf-cscroll-first-page | | =M->= | =G= | pdf-cscroll-last-page | | =Q= | =q= | pdf-cscroll-kill-buffer-and-windows | | =C-c C-a l= | =SPC m a l (, a l)= | pdf-cscroll-annot-list-annotations |
** Comments
** Related: double page layout [[https://github.com/politza/pdf-tools/issues/303#issuecomment-397744326][In this comment]] the user apnewberry* posted code to realize a double page layout
Related projects ** pymupdf-mode https://github.com/dalanicolai/pymupdf-mode.el Extend pdf-tools annotation capabilities via pymupdf. The new, alternative, pdf-tools server, will provide the same functionality directly as a pdf-tools feature (including possibility for scripting). djvu3 https://github.com/dalanicolai/djvu3 Show djvu annotations within Emacs (extending [[https://github.com/emacsmirror/djvu/blob/master/djvu.el][djvu.el]], and improving [[https://github.com/dalanicolai/djvu2.el][djvu2.2l]]). There is also a [[https://github.com/dalanicolai/djvu-layer][Spacemacs djvu layer]] which additionally [[https://lists.gnu.org/archive/html/bug-gnu-emacs/2020-08/msg01014.html][implements smooth scrolling]] in djvu. toc-mode [[https://github.com/dalanicolai/toc-mode]] The best way to create and attach Table of contents to pdf and djvu documents. There is also a [[https://github.com/dalanicolai/toc-layer][toc-layer for Spacemacs]] calibredb https://melpa.org/#/calibredb A super nice [[https://calibre-ebook.com/][calibre]] frontend within Emacs *** handy or fun Emacs lisp functions https://github.com/dalanicolai/dala-emacs-lisp For example I like the elisp raytracer