jalvesaq / zotcite

Neovim plugin for integration with Zotero
GNU General Public License v3.0
170 stars 14 forks source link

failed to create ZoteroEntries object again #3

Closed xiaoouwang closed 5 years ago

xiaoouwang commented 5 years ago

I've checked the previous issue but it seems that the problem appeared again on neovim. Here is the message:

Greetings

image

jalvesaq commented 5 years ago

Maybe Zotero database stores information on attachments whose parent item was deleted. So, I added not pKey is None to the condition preceding the line with the error. Does it work now?

xiaoouwang commented 5 years ago

yes but when I press ctrl x ctrl o it gives : image

jalvesaq commented 5 years ago

the Zinfo tells me that another omnifunc is enabled called CompleteR I don't know if it interferes with the plugin.

This is not a problem because CompleteR is from Nvim-R and it calls RmdNonRCompletion when the cursor is not in R code and, finally, RmdNonRCompletion calls zotcite#CompleteBib if it exists.

The real problem is that the Python object ZotCite is not defined. Although you are no longer getting the message "failed to create ZoteroEntries object", the object was not created. The output of :Zinfo in an Rmd file should be like this:

Information from the Python module:
  zotero.sqlite     : /home/yourlogin/Zotero/zotero.sqlite
  tmpdir            : /home/yourlogin/.cache/zotcite
  references found  : 157
  zotero.py         : /home/yourlogin/.config/nvim/plugged/zotcite/python3/zotero.py
  citation template : {Authors}_{Year}
  docs              : {'/tmp/test.Rmd': []}
  banned words      : a an the some from on in to of do with

Additional messages:
There is another omnifunc enabled: CompleteR
xiaoouwang commented 5 years ago

the Zinfo tells me that another omnifunc is enabled called CompleteR I don't know if it interferes with the plugin.

This is not a problem because CompleteR is from Nvim-R and it calls RmdNonRCompletion when the cursor is not in R code and, finally, RmdNonRCompletion calls zotcite#CompleteBib if it exists.

The real problem is that the Python object ZotCite is not defined. Although you are no longer getting the message "failed to create ZoteroEntries object", the object was not created. The output of :Zinfo in an Rmd file should be like this:

Information from the Python module:
  zotero.sqlite     : /home/yourlogin/Zotero/zotero.sqlite
  tmpdir            : /home/yourlogin/.cache/zotcite
  references found  : 157
  zotero.py         : /home/yourlogin/.config/nvim/plugged/zotcite/python3/zotero.py
  citation template : {Authors}_{Year}
  docs              : {'/tmp/test.Rmd': []}
  banned words      : a an the some from on in to of do with

Additional messages:
There is another omnifunc enabled: CompleteR

Yes and when I open a new markdown with only zotcite enabled it failed to build the python object too. The plugin citation.vim works.

jalvesaq commented 5 years ago

I started using Zotero a few months ago. My zotero.sqlite database is quite new and I don't have any error here. If you issue the command :messages, do you see any error messages preceeding the "failed to create ZoteroEntries object"?

jalvesaq commented 5 years ago

@xiaoouwang I believe that the bug that you reported (zotero.py, line 400) is fixed. Please, could you update the plugin and try again?

jalvesaq commented 5 years ago

I'm closing the issue because I believe it is fixed. Please, open it again if you still see the problem.