44

Switching from docview to pdf-tools happens 'automatically' when you install pdf-tools. Once you've done this, any time Emacs tries to open a pdf in Emacs, it will use pdf-tools. However, some packages will call out to the operating system, or use different config within Emacs, to decide if they should use Emacs or another program to open a pdf. So there is ...


18

Here's my setup, using auctex-11.89 and pdf-tools-20151224.1159: ;; Use pdf-tools to open PDF files (setq TeX-view-program-selection '((output-pdf "PDF Tools")) TeX-source-correlate-start-server t) ;; Update PDF buffers after successful LaTeX runs (add-hook 'TeX-after-compilation-finished-functions #'TeX-revert-document-buffer)


12

It can't do that. I have some ideas about how to implement this, but nothing has materialized yet.


7

I don't know if it is possible with pdf-tools, but it is possible with org-noter (https://github.com/weirdNox/org-noter). Here is a little demonstration: You call org-noter in the pdf buffer. Then use the org-noter-create-skeleton function to exoprt the highlights to the org-noter notes file.


6

C-M-s to invoke isearch-forward-regexp then type aaa\|bbb, where aaa is your first word and bbb is your second. Alternatives, just C-s to invoke isearch, then press M-r to toggle to regex.


5

The solution is to run texdoc within an asynchronous process. The best way to do that is probably to use start-file-process instead of shell-command-to-string (which is a handy function for quick&dirty code when it's more expedient to write a little shell script than the corresponding Elisp code, but is otherwise better avoided in my experience). But ...


5

You need to set the variable pdf-misc-print-programm and possibly also pdf-misc-print-programm-args in the pdf-misc customisation group. They should be set to the system command that you will print your document with, and that program must be installed on your system. I use lpr, with the settings: '(pdf-misc-print-programm "/usr/bin/lpr") '(pdf-misc-...


5

At first, note that pdf-sync binds mouse-double-1 in the minor mode pdf-sync-minor-mode to pdf-sync-backward-search-mouse. So one should probably only bind it in a minor mode that can be deactivated again. The following code defines a minor mode pdf-sel-mode that binds mouse-double-1 to a new command pdf-sel-mouse. pdf-sel-mouse selects the word below the ...


4

Currently, this is not possible. Several feature requests have been submitted on the project's GitHub page: Feature request: continuous view #27, and more recently, Double pages layout #303. Apparently, this will not be fixed soon, quoting the package author in one of his replies to issue #27: Generally speaking, there are two issues: Large parts ...


4

I just set this up yesterday so all you need in your init file is. ;; to use pdfview with auctex (setq TeX-view-program-selection '((output-pdf "PDF Tools")) TeX-view-program-list '(("PDF Tools" TeX-pdf-tools-sync-view)) TeX-source-correlate-start-server t) ;; not sure if last line is neccessary ;; to have the buffer refresh after compilation (...


4

As @kaushalmodi's post notes, rotation is apparently an open issue for pdf-tools, and it's apparently trickier to implement than expected. Comments on github indicate that a workaround is to use pdftk. Either I missed the code, or it wasn't posted. So here's the code for a workaround until rotation gets implemented in pdf-tools. Two points: It requires ...


4

You need Emacs and cask installed before compiling pdf-tools. pacman -S python pacman -S git curl -fsSL https://raw.githubusercontent.com/cask/cask/master/go | python git clone https://github.com/politza/pdf-tools cd pdf-tools/ export PATH=/home/<your username>/.cask/bin:/c/emax64/bin:$PATH make -s Even then the build process might fail once or twice....


4

The reason you were asked for your password was that apt-get install was being invoked to install the additional software (poppler and friends) needed by pdf-tools. 1) Is this typical? No -- the vast majority of elisp packages do not attempt to automatically install other system requirements. It's not uncommon for other system software to be required by ...


3

Indirect buffer need special support, since their buffer-file-name is nil. But this is currently not implemented in pdf-tools. So it seems that the answer is no.


3

I'll answer your actual problem of modifying the action for following links with pdf-tools. The customizable option pdf-links-browse-uri-function holds a function that receives a string with the uri as an argument and should take the appropriate action, e.g., open the link in a browser. You can define your own function and register it there with M-x ...


3

The solution at the bottom of this answer does not work anymore after https://github.com/emacs-mirror/emacs/commit/f646675cd1637948b2df2351a9666792ea8251ea The extra argument DEDICATE of window--display-buffer has been removed by that commit. Since window--display-buffer does consider display-buffer-mark-dedicated anyway maybe Emacs does like the OP wanted ...


3

TL;DR Go to path/to/.emacs.d/elpa/pdf-tools-xxx/build and run make clean to clean previously compiled contents manually. Restart emacs and let it build pdf-tools. Then, pdf-tools works again :) I have also met this problem. Follow the error message, we can tell the problem is epdfinfo cannot find the library it wants, which is libpoppler.so.101. After check ...


2

It looks like this feature needs to be added to pdf-tools. Someone has already posted an issue on this github requesting this enhancement: pdf-tools/Issue#89 From one comment, the workaround used by someone is to, use pdftk to rotate the PDF and save it to another file.


2

I guess one option is to add a .gitignore which prevents Git from tracking that executable. The downside of course is that it will force you to re-build that executable on every machine. Another is to set pdf-info-epdfinfo-program to a filename that includes some system info, such as (expand-file-name (concat "epdfinfo-" system-type) ...) and then to ...


2

Got it to work! Thanks guys! I added (add-to-list 'auto-mode-alist '("\\.pdf\\'" . doc-view-mode)) and (add-hook 'doc-view-mode-hook #'pdf-tools-install)


2

pdf-tools depends on the tablist package (which you can find on MELPA, for example). I can't help you with the second error.


2

Look into helm's persistent actions. Basically allows you to execute an action (like opening the PDF) without ending the helm session. If your helm-bibtex is setup to use pdf-tools for viewing PDFs (see helm-bibtex-pdf-open-function), you're basically good to go.


2

The pdf-view-restore works for me and is available on MELPA. But the pdf-view-restore github page seems to provide more useful configuration instructions.


2

pdf-tools requires a separate executable, epdfinfo, in order to function. This executable is distributed as source code within the pdf-tools package. As such, it gets compiled whenever you install or update the pdf-tools package. This is convenient, as it provides one-step installation of the pdf-tools package, which includes code for installing the ...


2

Maybe a bit late, but there is a fix that works for me, see here: https://github.com/politza/pdf-tools/issues/55 The second-to-last post has a fix which works for me. Place the functions somewhere in your Emacs config and bind them to C-M-v or C-M-S-v respectively. Not a pretty hack, but works so far for me - at least with pdf-tools.


2

After having pdf-tools installed (just once), put the following in your init file: (add-hook 'doc-view-mode-hook 'pdf-tools-install)


2

Recapping discussion in comments: Pressing A e, for "in-emacs", opens the attachment in PDFView. o e works exactly the same.


2

Apart from choosing the right buffer, this function suggests the necessary steps. (defun pdf-search-forward (string) (interactive "sString: ") ;; Expect a pdf-window, else the highlighting won't work. (pdf-util-assert-pdf-window) ;; Get a list of matches, discarding all but the first. (let-alist (car (pdf-info-search-string "...


2

This is a variation of the question about preview the pdf in a split buffer beside the source. You can use the following Elisp code in your init file. If you do not have already two frames. The pdf view will open in a window beside the window with the LaTeX source. Select that window and type C-x 5 2 for make-frame-command. There will be a new frame ...


2

You can do this with the Java variant of pdftk, starting from version 3.1.0. First, create a file with the metadata you want, e.g.: PageLabelBegin PageLabelNewIndex: 1 PageLabelStart: 1 PageLabelPrefix: Cover PageLabelNumStyle: NoNumber PageLabelBegin PageLabelNewIndex: 2 PageLabelStart: 1 PageLabelPrefix: Back Cover PageLabelNumStyle: NoNumber ...


Only top voted, non community-wiki answers of a minimum length are eligible