2011-01-24 12 views
9

Molti articoli scientifici, in particolare nelle scienze della vita, sono pubblicati in formato pdf.Consigli su come annotare i PDF mentre si lavora all'interno di Emacs?

Voglio lavorare il più possibile in emacs (in particolare in modalità org). Sono a conoscenza della modalità DocView che almeno mi consente di visualizzare i pdf in emacs. Sospetto che possa fare di più per me, ma non sono andato oltre la semplice visualizzazione del rendering basato su immagini di un file pdf.

Qualcuno può consigliare modi di lavorare con i pdf, in particolare il collegamento a file, l'esecuzione di testo e l'aggiunta di annotazioni ai pdf (l'equivalente elettronico della scrittura ai margini)?

Modifica: Giusto per chiarire che non sto cercando di modificare effettivamente l'immagine pdf. Piuttosto voglio le annotazioni con collegamenti ipertestuali o con segnalibri in un file org. Non avevo ancora visto la modalità testo di DocView, che potrebbe darmi quello che voglio, ma non so se posso aggiungere un collegamento ipertestuale o un collegamento ipertestuale ad esso.

risposta

7

IMO, non esiste un flusso di lavoro ottimale per la gestione delle pubblicazioni in emacs. Personalmente, semplicemente memorizzo i collegamenti ai PDF in modalità org e li apro nel visualizzatore esterno (evince o Acrobat, a seconda della piattaforma). Esistono soluzioni per annotare i PDF scrivendo letteralmente ai margini del PDF (in linea di principio, Xournal, Jarnal e alcuni software proprietari di Windows possono farlo), ma non ho mai trovato nessuno di questi molto utilizzabile. Quando prendo appunti sui giornali, li memorizzo come elementi piegati all'interno della struttura in modalità org o come collegamenti a file esterni.

Altre persone sono venuto con i flussi di lavoro simili - si veda per esempio, un bel screencast qui: http://tincman.wordpress.com/2011/01/04/research-paper-management-with-emacs-org-mode-and-reftex/

Per me, un ambiente ideale di carta per la gestione sarebbe org-mode interfacciato con Mendeley. Sfortunatamente, la natura a codice chiuso di Mendeley rende questo piuttosto improbabile.

+0

I secondo Xournal: sembra buono e consente di annotare a mano i documenti PDF se si utilizza LINUX su un tablet. – Tilo

4

La modalità DocView può passare da modifica a visualizzazione. Ma dalle pagine informative di doc-view-mode, il PDF non è (facilmente) modificabile dall'uomo e i documenti non parlano di funzionalità di annotazione PDF.

Altrimenti, Xournal o tali strumenti dovrebbero essere il modo di annotare PDF a meno che non si trovi il modo di farlo funzionare con Emacs.

10

Il pdf-tools, tra le altre cose, consente di annotare i file pdf in emacs. Progetto giovane ma promettente!

https://github.com/politza/pdf-tools

+0

Mi piacerebbe sapere perché questa risposta è stata downvoted. C'è qualche svantaggio per gli strumenti pdf? – YoungFrog

+0

Ho appena installato gli strumenti pdf e ho provato su linux, funzionando come pubblicizzato. È stato in grado di visualizzare rapidamente un pdf, creare un'annotazione e salvarlo. –

+0

Un paio di anni dopo questa risposta, devo dire che 'pdf-tools' è il modo migliore per gestire le annotazioni. Emacs può riassumere tutte le annotazioni per te. E se questo non è abbastanza per i tuoi gusti, controlla 'interleave-mode' per prendere appunti direttamente in un file org. – KevinG

0

questo non è davvero una risposta, ma in PDF-Tools è possibile collegare funzioni di gestione con annotazioni selezionati. È solo che qualcuno deve implementarlo.

;; Toy Example for custom annotations. 

(require 'pdf-annot) 

(add-hook 'pdf-annot-activate-handler-functions 'pdf-org-annotation-handler) 
(add-hook 'pdf-annot-print-annotation-functions 'pdf-org-print-annotation) 

(setq pdf-annot-activate-created-annotations t) 

(defvar pdf-org-annot-label-guid "www.orgmode.org/annotation" 
    "Unique annotation label used for org-annot annotations.") 

(defun pdf-org-add-annotation (pos) 
    (interactive 
    (list (pdf-util-read-image-position "Click ..."))) 
    (pdf-util-assert-pdf-buffer) 
    (pdf-annot-add-text-annotation 
    pos 
    "Circle" 
    `((color . "orange") 
    (label . ,pdf-org-annot-label-guid)))) 

(defun pdf-org-annotation-handler (a) 
    (when (equal (pdf-annot-get a 'label) 
       pdf-org-annot-label-guid) 
    (pop-to-buffer (get-buffer-create 
        (format "%s-annotations.org" 
          (pdf-annot-get-buffer a)))) 
    ;; Do SOMETHING. 
    t)) 

(defun pdf-org-print-annotation (a) 
    (when (equal (pdf-annot-get a 'label) 
       pdf-org-annot-label-guid) 
    "Org annotation, click to do SOMETHING")) 

(provide 'pdf-org) 
+0

Questo non fornisce una risposta alla domanda. Per criticare o richiedere chiarimenti da un autore, lascia un commento sotto il loro post. – Ethaan

+0

@Ethaan, difficile da fare quando non si ha il privilegio di commentare ... – Vivi

Problemi correlati