Siempre utilicé un único babel.bib
archivo BibTex para mantener un registro de todas mis lecturas. Excelente. Luego lo administré usando un VCS (primero SVN, luego git). Super grandioso. Pero al mismo tiempo, recursos comoCitarUlikeo Mendeley (pero también otros servicios como orcid) permiten servicios similares a la nube para tener estos datos en cualquier lugar y en cualquier momento. ¡Súper súper genial!
Pero esto falla si no tienes conexión a Internet (conferencia remota,...) o, lo que es más importante, si estos servicios cambian su política (la sincronización de mendeley a citeulike desapareció de repente). El trabajo que proporcionas no es tuyo. En su mayoría son servicios comerciales, mientras que todas las herramientas de código abierto están ahí. Lo más importante es que la multiplicidad de herramientas dificulta compartir datos bibliográficos fácilmente, mientras que si tuviéramos una herramienta para traducir entre ellos esto lo haría posible (sin cambiar sus hábitos).
Como consecuencia, deseo crear un servicio "BibCloud" con las siguientes características:
bibcloud init
: uso con biblatex (pero un formato que usabibjsones posible)- CLI codificado en Python (muy extendido en la comunidad científica), todas las bases de datos + archivos de configuración se almacenan en archivos de texto sin formato.
bibcloud commit -am' adding Sawyer14nature'; bibcloud push
: Integración CVS (git/hg/...) - y almacenamiento en repositorios remotos (github, bitbucket)bibcloud pull citeulike
,bibcloud push citeulike
: conversión sencilla + extracción y envío a cuentas existentes (Citeulike, Mendeley), incluida la sincronización de archivos PDFbibcloud detect_dups records
implementación de herramientas para detectar y fusionar registros duplicados y campos duplicados (comobibcloud detect_dups authors
: un autor con diferentes versiones, como por ejemploTom Sawyer
,,T Sawyer
oT J Sawyer
para nombres de revistas conbibcloud detect_dups journals
)bibcloud pull 2323422.pdf
escanee un pdf para extraer sus metadatos (como el DOI); permita incluir la cita en el artículobibcloud push 2323422.pdf
para simplemente enviar un archivo a sus colegas.bibcloud citekey Sawyer14
: genera una citekey de acuerdo con una regla dadabibcloud edit Sawyer14
: edita una entrada en particularbibcloud file Sawyer14
: archiva el PDF correspondiente a la entrada según alguna reglabibcloud push html
Fácil conversión a algún formato web (¿páginas de github?) para leer artículos en línea.
Antes de intentar armar eso, deseo conocer las piezas existentes que la comunidad pueda conocer.
Notas:
- es diferente a estopregunta "¿Flujo de trabajo para gestionar referencias?"ya que las soluciones existentes como zotero o no me funcionan. Deseo juntar las piezas del rompecabezas para construir una herramienta de línea de comandos para gestionar bibliografías.
- es diferente a estopreguntao paraeste otroya que piden más por una solución GUI.
Respuesta1
Creo que podrías usar la nube.gerente de referencia's APIs
, como Mendeley APIs
(http://apidocs.mendeley.com). Simplemente "envolvería" lo correspondienteAPI RESTfulen uninterfaz de línea de comandos(por supuesto, las API deberían proporcionar las necesariasgranularidadde funcionalidad).
Con respecto a sus inquietudes sobre la pérdida de conectividad a Internet y la propiedad de sus datos, estos problemas se pueden resolver, en consecuencia, 1) habilitandomodo offlinea través de servicios en la nube synchronization APIs
(donde estén disponibles) y 2)reflejandobase de datos local patentada del servicio a la base de datos local de código abierto a través de export APIs
(cuando esté disponible).