2012-06-02 15 views
16

Acabo de empezar a usar org-mode, y hasta ahora lo encuentro bastante útil. Tengo una gran colección de papeles técnicos muy en un árbol de directorios, y me gustaría revisarlos e indexarlos a través de org-mode. Lo que me gustaría es tener una forma de revisarlos, mirar los que no se han anotado y anotarlos uno por uno. Me imagino haciendo esto creando primero un archivo de enlaces como [[xxx.pdf] [aún no terminado]], y luego me presentan los que no se han hecho, mirándolos y decidiendo qué anotaciones poner. Además Me gustaría agregar etiquetas Lo que realmente me gustaría es poder crear nuevas etiquetas sobre la marcha. ¿Alguien ha hecho algo así en org-mode?Organizando mis documentos en org-mode

Victor

+1

Si usted no recibe una respuesta aquí a continuación, [tratar la lista de org-mode] (http.: //news.gmane.org/gmane.emacs.orgmode). Todos los gurús de la organización están allí. – Tom

+1

No hay nada aquí que no puedas hacer solo con stock org-mode y Emacs. ¿Qué es exactamente lo que te detiene? –

Respuesta

15

Si usted tiene sus papeles organizados así,

% ls -1 ~/References/functional-programming 
The Lambda Calculus.pdf 
Recursive Functions of Symbolic Expressions and Their.pdf 

puede ejecutar una secuencia de comandos rápidos de construir un archivo-org. Guarde lo siguiente como make-org y ejecútelo desde su directorio de documentos (sh make-org > papers.org).

#! /bin/sh 
# 
# make-org -- generates an org-mode file from a directory of PDFs 
# 
# AUTHOR: 
# Jon-Michael Deldin 
# USAGE: 
# cd ~/path/to/papers && make-org > papers.org 
# 

echo "#+TITLE: Research Papers" 
echo "#+STARTUP: align hidestars indent lognotedone" 
echo 

for f in *.pdf; do 
    name=${f%.*} # strip extension 
    path=$(echo $f | sed 's/ /%20/') # encode spaces as %20 
    echo "* TODO $name :unread:" 
    echo 
    echo "[[file:$path][$name]]" 
    echo 
done 

abierto papers.org en Emacs, ejecute C-u C-c C-q para realinear las etiquetas. Su archivo debe parecerse a esto:

org-mode research papers

Además me gustaría añadir etiquetas. Lo que realmente me gustaría es poder crear nuevas etiquetas sobre la marcha.

Una vez que tenga un titular (cosa con * al principio, usted puede golpear C-c C-c y agregar cualquier etiqueta que desee.

Usted puede encontrar this detailed write-up of using org-mode and RefTeX o this alternate approach útil, sobre todo si se utiliza LaTeX.

+0

¿Hay alguna forma de encontrar archivos dentro de subdirectorios y agregar un nuevo archivo creado al archivo papers.org existente? Siempre podemos agregarlo manualmente, pero supongo que puede haber una solución de línea de comandos que ejecuta el script y agrega solo los archivos agregados recientemente. Gracias. – Anusha

+0

@Anusha: para archivos dentro de subdirectorios, puede cambiar 'for f in * .pdf' por' for f in $ (find.-name '* .pdf') '. En lugar de usar una base de datos o volver a implementar una dentro de Emacs, no tiene suerte si solo agrega nuevos archivos. – jmdeldin

2

Heres es la versión modificada que funciona en un directorio

#! /bin/sh 
# 
# make-org -- generates an org-mode file from a directory of PDFs 
# 
# AUTHOR: 
# Jon-Michael Deldin 
# USAGE: 
# cd ~/path/to/papers && make-org > papers.org 
# 

echo "#+TITLE: Research Papers" 
echo "#+STARTUP: align hidestars indent lognotedone" 
echo 

for f in $(find . -name '*.pdf'); do 
name=${f%.*} # strip extension 
path=$(echo $f | sed 's/ /%20/') # encode spaces as %20 
echo "* TODO $name :unread:" 
echo 
echo "[[file:$path][$name]]" 
echo 
done 
Cuestiones relacionadas