我用的是windows系统,GNU Emacs版,http://ftp.gnu.org/pub/gnu/emacs/windows/下载的emacs-25.2-x86_64版本。装了org-ref、helm、 helm-bibtex等插件。在使用doi-utils-add-bibtex-entry-from-doi时提示如下:
Debugger entered–Lisp error: (void-function org-ref-find-bibliography)
org-ref-find-bibliography()
doi-utils-add-bibtex-entry-from-doi(“10.1016/j.cell.2017.03.020”)
funcall-interactively(doi-utils-add-bibtex-entry-from-doi “10.1016/j.cell.2017.03.020”)
call-interactively(doi-utils-add-bibtex-entry-from-doi record nil)
command-execute(doi-utils-add-bibtex-entry-from-doi record)
execute-extended-command(nil “doi-utils-add-bibtex-entry-from-doi” “doi-add”)
funcall-interactively(execute-extended-command nil “doi-utils-add-bibtex-entry-from-doi” “doi-add”)
call-interactively(execute-extended-command nil nil)
command-execute(execute-extended-command)
求问是什么问题,该怎么解决。谢谢。
另,安装org-ref插件时其实提示过一些warning,但是不能理解,没有处理。
doi-utils.el:1371:1:Warning: the following functions are not known to be defined:
org-ref-find-bibliography, reftex-get-bib-field,
org-ref-bib-citation
org-ref-arxiv.el:231:1:Warning: the function ‘parsebib-find-bibtex-dialect’
is not known to be defined.
In org-ref-bibtex-assoc-pdf-with-entry:
org-ref-bibtex.el:728:25:Warning: reference to free variable
‘org-ref-pdf-directory’
In orhc-bibtex-field-formatter:
org-ref-bibtex.el:1092:27:Warning: reference to free variable
‘org-ref-pdf-directory’
org-ref-bibtex.el:1098:27:Warning: reference to free variable
‘org-ref-notes-directory’
In end of data:
org-ref-bibtex.el:1324:1:Warning: the following functions are not known to be defined:
reftex-get-bib-field, bibtex-completion-edit-notes,
parsebib-find-next-item, parsebib-read-entry,
bibtex-completion-get-value, org-ref-find-bibliography,
bibtex-completion-get-entry
In end of data:
org-ref-citeproc.el:919:1:Warning: the following functions are not known to be defined:
org-ref-get-bibtex-key-and-file, parsebib-find-bibtex-dialect
还有很多…………
以及各种error
In org-ref:
org-ref-helm.el:289:78:Error: ‘add-to-list’ can’t use lexical var
‘matches’; use ‘push’ or ‘cl-pushnew’
org-ref-helm.el:317:54:Error: ‘add-to-list’ can’t use lexical var
‘matches’; use ‘push’ or ‘cl-pushnew’
org-ref-helm.el:306:39:Error: ‘add-to-list’ can’t use lexical var
‘matches’; use ‘push’ or ‘cl-pushnew’
/(ㄒoㄒ)/~~求帮助……
恐怕你没有用正确的方法安装插件,或者 org-ref-core.el
没正确加载,所以会报错
package-install,或者 use-package 什么的。用Cask 管理也行。
我把emacs以及package全删了,重新装了一下。结果连doi-add都不能用了/(ㄒoㄒ)/~~。使用doi-insert-bibtex时显示error in process filter: Could not create connection to data.crossref.org:443。使用doi-utils-add-bibtex-entry-from-doi则显示symbol’sfunction definition is void: org-ref-find-bibliography。是啥情况……这次安装除了提示Warning (emacs): pdftotext not found.没见有错啊……
前面一个是网络问题。后面一个,看起来你要 spacemacs/recompile-elpa
试一下。
我觉得我好像忽略了个重要的问题……
你的 bibtex layer 的配置是哪些?
表示不懂什么是spacemacs/recompile-elpa……
另外,什么叫bibtex layer……/(ㄒoㄒ)/~~我是小白……
我装的package有org和org-ref(及其下需求的dash、helm、helm-bibtex、ivy、hydra、key-chord、s、f、pdf-tools),其他的基本是built-in的了。
大概明白了。
你可能不知道 Spacmacs 有现成配置好的 bibtex 工具能用。
额……还是没看懂。
如果配置文件就是.emacs或者init.el之类的话,我的里面貌似没有version-control shell auto-completion之类的东西。
我的init.el里面是这些东西,然后没有.emacs这个文件。
(require 'package)
(add-to-list ‘package-archives’
(“melpa” . “http://elpa.emacs-china.org/melpa/”) t)
(add-to-list ‘package-archives’
(“gnu” . “http://elpa.emacs-china.org/gnu/”) t)
(add-to-list ‘package-archives’
(“elpa” . “Welcome to ELPA”) t)
(add-to-list ‘package-archives’
(“marmalade” . “http://elpa.emacs-china.org/marmalade/”) t)
(add-to-list ‘package-archives’
(“org” . “http://elpa.emacs-china.org/org/”) t)
(add-to-list ‘package-archives’
(“user42 elpa” . “http://elpa.emacs-china.org/user42/”) t)
(add-to-list ‘package-archives’
(“melpa stable” . “http://elpa.emacs-china.org/melpa-stable/”) t)
;; Added by Package.el. This must come before configurations of
;; installed packages. Don’t delete this line. If you don’t want it,
;; just comment it out by adding a semicolon to the start of the line.
;; You may delete these explanatory comments.
(package-initialize)
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won’t work right.
'(package-selected-packages (quote (org org-ref))))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won’t work right.
)
;;中文与外文字体设置
(set-default-font “Cambria-12”)
(set-fontset-font “fontset-default”
‘gb18030’ (“楷体” . “unicode-bmp”))
(setq frame-title-format “%b %I”) ;显示文件名和大小
(auto-image-file-mode t) ;让Emacs可以直接打开、显示图片
(fset 'yes-or-no-p 'y-or-n-p) ;以Y/N代表yes/no
(setq x-select-enable-clipboard t) ;支持和外部程序的拷贝
另,我是想在org mode下通过doi插入bibtex类型的信息,类似于:
@article{邵明柏2013盐酸小檗碱对高糖、高脂联合诱导内皮细胞分泌,
title={盐酸小檗碱对高糖、高脂联合诱导内皮细胞分泌TNF-α的干预作用},
author={邵明柏 and 何秀婷 and 李杰},
journal={中国老年学},
volume={33},
number={18},
pages={4496-4498},
year={2013},
}
这种的
进入bibtex模式后貌似和org模式是冲突的?
Emacs 自带的 Org 是老版本。为了兼容你可能要再装个新的 Org。
已经是最新版的org,还是有问题。emacs比我想象的要麻烦太多了……
我按照你的配置尝试了一下,我只改了包的安装源。
安装org, org-ref后,运行你上面的命令,查找文献,没有出现任何问题。
论坛的安装源就可以了。
把可以你安装的elpa里的内容都删掉,重新试试。
(require 'package)
(setq package-archives '(("gnu" . "http://elpa.emacs-china.org/gnu/")
("melpa" . "http://elpa.emacs-china.org/melpa/")))
(package-initialize)
尝试了N多次,仍然不能解决。打算以后换台电脑试试,如果还不行,可能就是网络问题?who knows……十分感谢你的帮助。THANKS。
虽然问题至今没能解决,仍然感谢你的帮助。THANKS。
org-ref是一个非常好用的工具,我从作者那里得到了不少帮助。
如果你实在想解决问题,可以加群,我试试看能不能给你解决;
或者直接去github上问作者,一般是可以解决问题的。
已申请加群。另,之前几天想到一个问题,使用此功能是否需要先建立bibtex的文件?我貌似没有建过……该怎么建立呢?谢谢!