Skip to main content

用于管理 BibTeX 数据库和相关文档的 Python 包

项目描述

************************
BibTeX VCS 包
**********************

`BibTeX VCS` 是一个 python 包,可帮助与控制系统 (VCS) 共享 BibTeX_ 数据库。
它针对与 JabRef_BibTeX 管理器一起使用进行了优化。


简介
============
收集和管理书目信息可能很麻烦。因此,在一个研究小组中维护一个单一的 BibTeX 数据库是有意义的,
该数据库专注于同一主题,因此有很多
共同的参考书目。此外,像 JabRef_ 这样的工具允许将 PDF 文档链接到 BibTeX 条目,将
“bib”文件变成有价值的文献数据库。

由于 ``bib`` 文件是基于文本的,它可以有效地置于修订控制之下。然而,这样一个
由几个人长期使用的数据库往往会变得杂乱无章。此外,大多数人没有
受过培训,甚至对 VCS 系统的使用兴趣不大。

`BibTeX VCS` 通过自动化最常见的 VCS 操作并提供极简的、
独立于平台的 GUI 来解决这些问题。它允许定义许多在每次提交操作之前运行的“数据库检查”,以在数据库
中强制执行一致性和定义的引用样式。
例如,有一项检查可确保链接到 BibTeX 条目的文档确实存在,并且
每个 PDF 文档至少由一个 BibTeX 条目链接。有关默认检查以及如何
添加自定义检查的信息,请参阅:ref:`checksModule`。

安装
============
`BibTeX VCS` 需要 Python_ 解释器。建议使用 Python 3.x 版本,但该包也
将与 Python 2.7 一起运行。安装它的最简单方法是使用 pip_::

pip install bibtexvcs

您可能需要将上述命令中的 pip 替换为 pip-xy ,其中 xy 表示所需的 Python 版本。
如果要使用 GUI_,则需要为相同版本的 Python 安装 PyQt4_、PyQt5_ 或 PySide_。
对于使用模板导出数据库,Jinja2_ 是一个附加要求。

以下是一些特定于平台的说明。

在 Linux 上安装
---------
使用您的发行版的包管理器安装 Python_3、pip_ 和 PyQt5_(均适用于 Python 3)。
如果可用,您还可以安装 Python 3 版本的 `pyparsing`。然后打开终端并输入::

pip3 install --user bibtexvcs

要启动 GUI,要么运行 pip_ 创建的可执行文件(默认位置:``$HOME/.local/bin/btvcs``),要么
调用::

python3 -m bibtexvcs.gui

Mac 上安装
-------------------
按照主页上的说明安装 PySide_。然后如上所述运行``pip`` 命令。

在 Windows 上安装
------------------------
下载并安装 Python_。如果您选择 Python 3.4 或更高版本,请务必勾选 `pip` 和 `Add python.exe to Path`。
然后,为同一 Python 版本下载并安装 PyQt5_ 或 PySide_。然后打开终端并输入::

pip3 install bibtexvcs

这将安装 `BibTeX VCS` 及其所有要求。要启动 GUI,可以在终端中键入 ``btvcs``,
或者双击 `C:\\PythonX.Y\\Scripts` 中的 `btvcs.exe`。

存储库(数据库)布局
============================
`BibTeX VCS` 数据库由受支持类型的存储库组成(目前,此只有 Mercurial_,但
其他 VCS 系统很容易实现)。存储库的顶级目录,此后称为
“数据库目录”,必须包含一个名为“bibtexvcs.conf”的文件,其中包含“key = value”类型的
配置选项。可能的配置选项是:

``bibfile``
BibTeX 数据库文件的名称。默认为“references.bib”。

``documents``目录,其中 放置
了从 BibTeX 条目引用的 PDF(和其他)文档。
默认值:``文档``。

``name``(可选)
数据库的标题(例如,`Literature of the Optimization Research Group`)。

.. _journalstxt:

``journals``
期刊文件的名称。请参阅“期刊缩写”_。默认值:``journals.txt``。

``公共链接``(可选)
包含数据库导出版本的网页的 URL(请参阅 Exporting_)。

GUI
===

`BibTeX VCS` 包括一个基于 Qt_ 的图形用户界面 (GUI),它允许执行最常见的
任务而无需使用命令行:

- 从远程存储库克隆数据库,
- 更新本地签出存储库
- 查看和编辑期刊缩写,
- 将更改提交到远程存储库,从而运行数据库检查,
- 使用 JabRef_ 打开 BibTeX_ 数据库,
- :ref:`export <Exporting>` 使用默认模板将数据库导出为 HTML ,
- 打开公共 HTML 导出(如果存在)。

GUI 由随包自动安装的“btvcs”命令运行。或者,
您可以通过调用::

python -m bibtexvcs.gui直接运行 gui 模块

GUI 需要 PyQt5_、PyQt4_ 或 PySide_ 才能安装 Python 3。

期刊缩写
=====================
根据出版商的要求,参考文献列表中的期刊名称应该缩写
(如 `J. Comput. Syst. Sci .`)与否(`Journal of Computer and Journal Sciences`)。由于 BibTeX 不
支持在同一个条目中指定两个版本,一个常见的解决方法是使用“宏”。在
BibTeX 文件中,“journal”条目被定义为宏引用(例如,“J_COM_SS”)。然后,有两个
附加的 BibTeX 文件,一个包含完整的宏(字符串)定义,一个包含缩写
期刊名称。然后,在您的论文中,您包含主 bibfile 和相应的宏定义
文件。这样,就不必在共享数据库中指定期刊名称的版本。

为了简化期刊缩写的处理,`BibTeX VCS` 使用了一个简单的:ref:`配置文件 <journalstxt>`
,对于每个期刊,该文件包含以下形式的条目::

[MACRO_NAME]
full = Full Journal Name
abbr =缩写。J. 名称

GUI_ 允许在表结构中方便地编辑日志宏。

`BibTeX VCS` 然后自动生成包含宏定义的 BibTeX 文件,用于完整和
缩写的期刊名称,分别。它们将像主 bibfile 一样命名,但
分别由 ``_full`` 和 ``_abbr`` 扩充。

.. _Exporting: E​​xporting

=========
可以
使用 Jinja2_ 模板引擎将 `BibTeX VCS` 数据库导出为 HTML 和其他格式。
默认模板为每个条目创建一个可搜索的 HTML 表格,其中包含最常见的字段,
放置指向 PDF 文档的链接(如果存在),并允许查看每个条目的原始 BibTeX 源。
如果将结果上传到公共网络空间,数据库可以只读模式使用,无需
访问版本控制系统,也无需安装“BibTeX VCS”包。



.. _BibTeX:http://www.bibtex.org
.. _JabRef: http://jabref.sourceforge.net
.. _Mercurial: http://mercurial.selenic.com
.. _Jinja2: http://jinja.pocoo.org
.. _Qt: http://qt-project .org
.. _PyQt5:http
://riverbankcomputing.com/software/pyqt/download5 .._PyQt4:http://riverbankcomputing.com/software/pyqt/download .._PySide:http:
//qt-project.org/ wiki/PySide
.. _Python: http://www.python.org
.. _pip: http://www.pip-installer.org

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

bibtexvcs-2015.16.zip (46.7 kB 查看哈希

已上传 source