Jabref-4.1 仍不如 Jabref-3.8 稳定。Jabref 存储了一些元数据,例如 Bibtex 数据库注释中的组。
不幸的是,Jabref-4.x 改变了文件格式。我不确定这是否只是组保存格式的问题。
如何将 Linux 系统上的 .bib 数据库从 Jabref-4.x 格式转换回最终版本 3.8.2 使用的旧格式?
是否有任何功能将会丢失,因为它在旧的文件格式中不为人所知?
更新:感谢您迄今为止提供的有益评论。我已经点赞了几个。我将在接下来的几天内进行审查,也许我的问题无效或需要改进。
答案1
我的 v3.8.2 中的 bib 文件与 v4.1 中的略有不同。唯一的区别在于@Comment{jabref-meta
要将 bib 文件降级为与 v3.8.2 兼容的格式,只需进行 3 处替换。它们是:
grouping
->groupstree
StaticGroup
->ExplicitGroup
- 删除所有出现的
\;1\;\;\;
仅供参考,在我的 v3.8.2 bib 文件中,组信息与条目相关联---groups
条目的字段记录了相关联的组(以逗号分隔)。组注释仅存储层次结构。
例如
@Article{LEcuyer-2007a,
author = {L'Ecuyer, Pierre and Simard, Richard},
title = {TestU01: A C Library for Empirical Testing of Random Number Generators},
journal = {ACM Trans. Math. Softw.},
year = {2007},
volume = {33},
number = {4},
pages = {22:1--22:40},
month = aug,
doi = {10.1145/1268776.1268777},
groups = {PRNG},
numpages = {40},
publisher = {ACM},
}
答案2
感谢@Eli4ph 的正确答案。如果您遇到同样的问题,这里有一个用于转换的简短 bash 脚本。请不要忘记为 Eli4ph 的答案点赞。
#!/bin/bash
sed -i 's/grouping/groupstree/g' $1
sed -i 's/StaticGroup/ExplicitGroup/g' $1
sed -i 's|\\;1\\;\\;\\;||g' $1