mirror of
https://github.com/larstvei/dot-emacs.git
synced 2024-11-26 07:28:31 +00:00
Add org-sync-pdf function
This commit is contained in:
parent
d782dd248e
commit
637faa1788
22
init.org
22
init.org
@ -832,6 +832,26 @@
|
|||||||
(untabify beg (if (< end (point-max)) end (point-max)))))
|
(untabify beg (if (< end (point-max)) end (point-max)))))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
|
Org mode does currently not support synctex (which enables you to jump from
|
||||||
|
a point in your TeX-file to the corresponding point in the pdf), and it
|
||||||
|
[[http://comments.gmane.org/gmane.emacs.orgmode/69454][seems like a tricky problem]].
|
||||||
|
|
||||||
|
Calling this function from an org-buffer jumps to the corresponding section
|
||||||
|
in the exported pdf (given that the pdf-file exists), using pdf-tools.
|
||||||
|
|
||||||
|
#+BEGIN_SRC emacs-lisp
|
||||||
|
(defun org-sync-pdf ()
|
||||||
|
(interactive)
|
||||||
|
(let ((headline (nth 4 (org-heading-components)))
|
||||||
|
(pdf (concat (file-name-base (buffer-name)) ".pdf")))
|
||||||
|
(when (file-exists-p pdf)
|
||||||
|
(find-file-other-window pdf)
|
||||||
|
(pdf-links-action-perform
|
||||||
|
(cl-find headline (pdf-info-outline pdf)
|
||||||
|
:key (lambda (alist) (cdr (assoc 'title alist)))
|
||||||
|
:test 'string-equal)))))
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
** Advice
|
** Advice
|
||||||
|
|
||||||
An advice can be given to a function to make it behave differently. This
|
An advice can be given to a function to make it behave differently. This
|
||||||
@ -1306,6 +1326,8 @@
|
|||||||
(define-key custom-bindings-map (kbd "C-c j") 'cycle-spacing-delete-newlines)
|
(define-key custom-bindings-map (kbd "C-c j") 'cycle-spacing-delete-newlines)
|
||||||
(define-key custom-bindings-map (kbd "C-c d") 'duplicate-thing)
|
(define-key custom-bindings-map (kbd "C-c d") 'duplicate-thing)
|
||||||
(define-key custom-bindings-map (kbd "<C-tab>") 'tidy)
|
(define-key custom-bindings-map (kbd "<C-tab>") 'tidy)
|
||||||
|
(with-eval-after-load 'org
|
||||||
|
(define-key org-mode-map (kbd "C-'") 'org-sync-pdf))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
Lastly we need to activate the map by creating and activating the
|
Lastly we need to activate the map by creating and activating the
|
||||||
|
Loading…
Reference in New Issue
Block a user