组织8.2.10 Emacs 24.4.1
我在暂存缓冲区中有一个bibtex条目,然后是M-w条目。
它在杀戮戒指中
然后我交换到组织模式缓冲区并尝试
M org-bibtex-yank
我收到错误:错误的类型参数:stringp,nil
我已经切换了错误的调试,并且回溯在下面。我已经检查过该条目是在kill-ring上 - 我可以把它拉到临时缓冲区。
我为org-bibtex-yank设置了入门调试,并且在兔子洞里走了很长一段路!我可以在调试器的某些步骤中看到该条目,但丢失了!
对于问题的任何指示,或者获取可能有用的更多信息,我将不胜感激。
感谢
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
looking-at(nil)
bibtex-parse-entry()
org-bibtex-read()
org-bibtex-yank()
call-interactively(org-bibtex-yank record nil)
command-execute(org-bibtex-yank record)
execute-extended-command(nil "org-bibtex-yank")
smex-read-and-run(("toggle-debug-on-error" "org-bibtex-yank" "debug-on-entry" "describe-function" "apropos" "set-variable" "package-list-packages" "load-theme" "describe-variable" "bibtex-yank" "eshell" "package-refresh-contents" "yank" "org-mode" "org-bibtex" "flyspell-mode" "server-force-delete" "org-bibtex-read-buffer" "R" "S" "S+" "cd" "dm" "5x5" "S+3" "S+6" "SAS" "arp" "dbx" "dig" "erc" "ert" "eww" "ftp" "gdb" "irc" "jdb" "man" "mpc" "pdb" "pwd" "rsh" "sdb" "xdb" "Sqpe" "calc" "diff" "dirs" "ffap" "gnus" ...))
smex()
call-interactively(smex nil nil)
command-execute(smex)
答案 0 :(得分:1)
我知道这个问题“org-bibtex-yank使用错误的类型参数失败:stringp,nil”。特别是我无法从网上粘贴bibtex条目并通过org-bibtex-yank
将其粘贴到组织文件中。
我目前的工作:
现在我将bibtex-entry粘贴到bib文件并检查行为: - 通过M-w标记并复制bibtex模式缓冲区中的bibentry - 更改为您的组织文件 - 在那里使用 M-x org-bibtex-yank 。
现在通常可行。
问题似乎是bibtex-parse-entry要求在调用它之前调用bibtex-set-dialect。
不幸的是,你不能在bibtex文件中做一个(简单的)文件变量。 M-x add-file-local-variable 对于变量bibtex和值bibtex或biblatex将不起作用。 由于bibtex.el不支持此功能。
尝试组织文件
# Local Variables:
# eval: (bibtex-set-dialect 'biblatex)
# End:
尝试使用bibtex文件
M-x add-file-local-variable
并替换
行bibtex: biblatex
通过
eval: (bibtex-set-dialect 'biblatex)
或阅读: