как мне управлять библиографией в мире, полном облаков (citeulike / mendeley)?

как мне управлять библиографией в мире, полном облаков (citeulike / mendeley)?

Я всегда использовал один babel.bibфайл BibTex для записи всех моих чтений. Отлично. Затем я управлял им с помощью VCS (сначала SVN, потом git). Супер здорово. Но в то же время, такие ресурсы, какCiteUlikeили Mendeley (но также и другие сервисы, такие как orcid) позволяют использовать облачные сервисы, чтобы иметь эти данные везде и в любое время. Супер-супер здорово!

Но это не сработает, если у вас нет подключения к Интернету (удаленная конференция, ...) или, что еще важнее, если эти сервисы изменят свою политику (синхронизация mendeley to citeulike внезапно исчезла). Работа, которую вы предоставляете, вам не принадлежит. Это в основном коммерческие сервисы, в то время как все инструменты с открытым исходным кодом есть. Самое главное, что множественность инструментов затрудняет простой обмен библиографическими данными, в то время как если бы у нас был инструмент для перевода между ними, это сделало бы это возможным (не меняя ваших привычек).

Вследствие этого я хочу создать такой сервис «BibCloud» со следующими функциями:

  • bibcloud init: использовать с biblatex (но формат, использующийбибджсонвозможно)
  • CLI написан на Python (широко распространен в научном сообществе), все базы данных и файлы конфигурации хранятся в простых текстовых файлах.
  • bibcloud commit -am' adding Sawyer14nature'; bibcloud push: Интеграция с CVS (git / hg / ...) - и хранение в удаленных репозиториях (github, bitbucket)
  • bibcloud pull citeulike, bibcloud push citeulike: простая конвертация + pull and push в существующие учетные записи (Citeulike, Mendeley) - включая синхронизацию PDF-файлов
  • bibcloud detect_dups recordsреализация инструментов для обнаружения и объединения дубликатов записей и дубликатов полей (например bibcloud detect_dups authors, автора с разными версиями, например Tom Sawyer, T Sawyer, T J Sawyerили для названий журналов с bibcloud detect_dups journals)
  • bibcloud pull 2323422.pdfсканировать PDF-файл для извлечения его метаданных (например, DOI) — позволяет включать ссылку в статью, bibcloud push 2323422.pdfчтобы просто отправить файл коллегам.
  • bibcloud citekey Sawyer14: сгенерировать citekey в соответствии с заданным правилом
  • bibcloud edit Sawyer14: редактирует одну конкретную запись
  • bibcloud file Sawyer14: файлы PDF, соответствующие записи, в соответствии с некоторым правилом
  • bibcloud push htmlпростое преобразование в какой-либо веб-формат (страницы github?) для чтения статей онлайн.

Прежде чем попытаться собрать все это воедино, я хотел бы узнать, какие части уже известны сообществу.

Примечания:

  • это отличается от этоговопрос «Рабочий процесс управления ссылками?»так как существующие решения, такие как zotero или не работают для меня. Я хочу собрать кусочки головоломки вместе, чтобы создать командный инструмент для управления библиографиями.
  • это отличается от этоговопросили кэтот другойпоскольку они больше просят решения с графическим интерфейсом.

решение1

Я думаю, что вы могли бы использовать облако.менеджер по работе с клиентами's APIs, такие как Mendeley APIs(http://apidocs.mendeley.com). Я бы просто "обернул" соответствующиеRESTful APIвИнтерфейс командной строки(конечно, API должны предоставлять необходимыезернистостьфункциональности).

Что касается ваших опасений по поводу потери подключения к Интернету и права собственности на ваши данные, то эти проблемы можно решить, соответственно, 1) включивавтономный режимчерез облачные сервисы synchronization APIs(где доступно) и 2)зеркалированиеиз собственной локальной базы данных сервиса в локальную базу данных с открытым исходным кодом export APIs(при наличии).

Связанный контент