Re: [O] Bug: pdf page numbers in links are ignored when exporting to latex [8.2.7b (8.2.7b-13-gd8a0ee-elpa @ /home/moritz/.emacs.d/elpa/org-20140728/)]
Hello, Moritz Kiefer moritz.kie...@gmail.com writes: Hi, tried to fix those issues. Applied. Thank you. Regards, -- Nicolas Goaziou
Re: [O] Bug: pdf page numbers in links are ignored when exporting to latex [8.2.7b (8.2.7b-13-gd8a0ee-elpa @ /home/moritz/.emacs.d/elpa/org-20140728/)]
Hello, Moritz Kiefer moritz.kie...@gmail.com writes: This is my first attempt at elisp so it's probably terrible code It's not. Thanks for the patch. Some comments follow. * lisp/ox-latex.el (org-latex--inline-image): Use page number (:search-option) of pdf links as page option in includegraphics Missing full stop. You also need to add TINYCHANGE on a line below if you don't have signed FSF papers yet. --- lisp/ox-latex.el | 4 1 file changed, 4 insertions(+) diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index ceea302..edbde70 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -1861,6 +1861,10 @@ used as a communication channel. (setq options (concat options ,width= width))) (when (org-string-nw-p height) (setq options (concat options ,height= height))) + (when (and (equal filetype pdf) + (string-match \\`[0-9]+\\' (org-element-property :search-option link)) + (not (string-match page= options))) + (setq options (concat options ,page= (org-element-property :search-option link I suggest to let-bind SEARCH-OPTION instead of calling `org-element-property' twice. Also, it's better to use `org-string-match-p' instead of `string-match' since you don't use match-data anyway. Eventually, you need to check if SEARCH-OPTION is non-nil, as (string-match REGEXP nil) throws an error. (let ((search-option (org-element-property :search-option link))) (when (and search-option (equal filetype pdf) (org-string-match-p \\`[0-9]+\\' search-option) ...) ...)) Regards, -- Nicolas Goaziou0x80A93738
Re: [O] Bug: pdf page numbers in links are ignored when exporting to latex [8.2.7b (8.2.7b-13-gd8a0ee-elpa @ /home/moritz/.emacs.d/elpa/org-20140728/)]
Nicolas Goaziou m...@nicolasgoaziou.fr writes: Hello, It's not. Thanks for the patch. Some comments follow. Hi, tried to fix those issues. From 82cb7209c912798b43a91b3dde1dd4428e09580e Mon Sep 17 00:00:00 2001 From: Moritz Kiefer moritz.kie...@gmail.com Date: Thu, 31 Jul 2014 17:45:36 +0200 Subject: [PATCH] ox-latex.el: Add page number of link when exporting to latex * lisp/ox-latex.el (org-latex--inline-image): Use page number (:search-option) of pdf links as page option in includegraphics. TINYCHANGE --- lisp/ox-latex.el | 6 ++ 1 file changed, 6 insertions(+) diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index ceea302..dd227ab 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -1861,6 +1861,12 @@ used as a communication channel. (setq options (concat options ,width= width))) (when (org-string-nw-p height) (setq options (concat options ,height= height))) + (let ((search-option (org-element-property :search-option link))) +(when (and search-option + (equal filetype pdf) + (string-match \\`[0-9]+\\' search-option) + (not (string-match page= options))) + (setq options (concat options ,page= search-option (setq image-code (format \\includegraphics%s{%s} (cond ((not (org-string-nw-p options)) ) -- 2.0.3
Re: [O] Bug: pdf page numbers in links are ignored when exporting to latex [8.2.7b (8.2.7b-13-gd8a0ee-elpa @ /home/moritz/.emacs.d/elpa/org-20140728/)]
Hello, Moritz Kiefer moritz.kie...@gmail.com writes: I have lots of links to specific pages in a pdf like [[filename.pdf::24]] which works fine (with a correctly configured org-file-apps) but when I export to latex the page number is ignored and the includegraphics directive includes the first page. This can obviously manually be changed using #+ATTR_LATEX: :options page=42 but as the page number is already there it would be nice if orgmode would automatically use that when exporting. Good idea. Page number can be accessed with (org-element-property :search-option link) However, it should be checked against \\`[0-9]+\\' since a search option can also be a headline: [[file:test.org::*My headline]] Also, I guess it should only apply to link to pdf files. Do you want to provide a patch for that? Regards, -- Nicolas Goaziou
[O] Bug: pdf page numbers in links are ignored when exporting to latex [8.2.7b (8.2.7b-13-gd8a0ee-elpa @ /home/moritz/.emacs.d/elpa/org-20140728/)]
Remember to cover the basics, that is, what you expected to happen and what in fact did happen. You don't know how to make a good report? See http://orgmode.org/manual/Feedback.html#Feedback Your bug report will be posted to the Org-mode mailing list. I have lots of links to specific pages in a pdf like [[filename.pdf::24]] which works fine (with a correctly configured org-file-apps) but when I export to latex the page number is ignored and the includegraphics directive includes the first page. This can obviously manually be changed using #+ATTR_LATEX: :options page=42 but as the page number is already there it would be nice if orgmode would automatically use that when exporting. Emacs : GNU Emacs 24.3.92.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.12.2) of 2014-06-27 on tuxedo-arch Package: Org-mode version 8.2.7b (8.2.7b-13-gd8a0ee-elpa @ /home/moritz/.emacs.d/elpa/org-20140728/) current state: == (setq org-tab-first-hook '(org-hide-block-toggle-maybe org-src-native-tab-command-maybe org-babel-hide-result-toggle-maybe org-babel-header-arg-expand) org-speed-command-hook '(org-speed-command-default-hook org-babel-speed-command-hook) org-occur-hook '(org-first-headline-recenter) org-metaup-hook '(org-babel-load-in-session-maybe) org-html-format-drawer-function '(lambda (name contents) contents) org-log-done 'time org-latex-format-inlinetask-function 'ignore org-confirm-shell-link-function 'yes-or-no-p org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default org-clock-idle-time 5 org-file-apps '((auto-mode . emacs) (\\.mm\\' . system) (\\.x?html?\\' . firefox-nightly %s) (\\.pdf::\\([0-9]+\\)\\' . zathura \%s\ -P %1) (\\.pdf\\' . zathura \%s\)) org-agenda-custom-commands '((h agenda 120 days ((org-agenda-show-all-dates nil) (org-agenda-span 120))) ) org-latex-format-headline-function 'org-latex-format-headline-default-function org-default-notes-file ~/org/notes.org org-after-todo-state-change-hook '(org-clock-out-if-current) org-latex-format-drawer-function '(lambda (name contents) contents) org-from-is-user-regexp nil org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer) org-agenda-before-write-hook '(org-agenda-add-entry-text) org-babel-pre-tangle-hook '(save-buffer) org-mode-hook '(org-clock-load #[nil \300\301\302\303\304$\207 [org-add-hook change-major-mode-hook org-show-block-all append local] 5] #[nil \300\301\302\303\304$\207 [org-add-hook change-major-mode-hook org-babel-show-result-all append local] 5] org-babel-result-hide-spec org-babel-hide-all-hashes turn-on-org-cdlatex) org-refile-targets '((org-agenda-files :maxlevel . 2)) org-ascii-format-drawer-function '(lambda (name contents width) contents) org-clock-persist 'history org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point org-babel-execute-safely-maybe) org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-hide-inline-tasks org-cycle-show-empty-lines org-optimize-window-after-visibility-change) org-agenda-span 'month org-confirm-elisp-link-function 'yes-or-no-p org-metadown-hook '(org-babel-pop-to-session-maybe) org-html-format-headline-function 'ignore org-mobile-directory ~/org/mobile org-babel-load-languages '((R . t)) org-html-format-inlinetask-function 'ignore org-agenda-files '(~/org) org-clock-out-hook '(org-clock-remove-empty-clock-drawer) )