doomemacs,使用org-ref,ebib均无法读取zotero 导出的bib文件

本人小白 很奇怪,网上搜了一下几乎没人碰到类似问题? 总是报错说“unbalanced parenthesis , 23323,123424" 打开bib文件check paren ,无数{}不对……难道emacs不能用better bibtex导出的文件? 或者什么方法导出的bib是能用的? 谢指教!

version: doomemacs 3.0 zotero:6.0.14-beta.6+2271913e4

有遇到过,就是你的bib文件有问题。你试试只用一个

我只有一个 :face_with_head_bandage: 萌新还有一个问题,为什么很多人的配置都有好多bib文件?他们还管理什么吗?

应该是在文件里先只用一个 bib entry 试试有没有问题。

用多个 bib 文件可以管理不同来源的资源,比如我用了两个,一个是 zotero 从网页里自动下载的论文(这个自动同步,所以没必要手动改),另一个是手动下载的其他资源。因为 bib 只是一个元数据索引表,理论上所有能索引的都可以用 bib 来管理,比如网页,ppt,epub,视频,音乐,只要愿意,可以通过一个 ivy-bibtex 前端来操作所有自己“在意”的资源,充当书签,收藏夹之类的。

我在使用 zetero connector 收集豆瓣网页的时候遇到这个问题。原因就是报错英文提示 “unbalanced parenthesis”,括号匹配问题。

必须找到出错的 bib 条目这个问题才有可能消失,问题通常出现在条目里的 Title 或者 Abstract 。

我剔除掉问题条目的方法是 二分法,不断手动一半一半地剔除没问题的,定位到有问题的条目。

小建议 : 在使用 zetero connector 收集豆瓣书籍信息的时候,最好删掉 Abstract 里的介绍文字,很大概率会导致括号匹配的错误。

很详细,明白了…

这…我条目挺多的,岂不是要累死…有没有曲线救国的办法…比如从zotero 网页api获得条目…自己本地索引附件…

这个主要是因为你的zotero可能收集了网页的资料,zotero在抓取网页时候,会把网页内容存在note里面。如果你导出bib时候选择导出了note, 那么有一定概率因为网页中过多的字符和括号,导致大括号不匹配。解决方法我最后在helm-bibtex的github最后一个注意问题中找到了。 你可以用emacs打开你的bib文件,找到不匹配的项目:

输入M-: (goto char xxx)

xxx就是你的报错数字23323, 比如在你的这个例子中。让后emacs会自动定位到不匹配的括号。 在这个条目的最后加上几个},一旦匹配上,你的报错数字就会消失。或者报错数字出现变化,那就是还有其他条目也有错误,继续上面的操作,直到所有报错消失就可以了。 其实在导出bib时候不要导出note项目,可能就能解决你的问题。