Closed frid closed 6 years ago
Interesting. Thanks. Not a priority right now (I'm deep in Jedi internals right now, but thanks anyway).
So basically you're saying vtk
doesn't work, but normal things like os
or any other library seem to be working?
Can you post python --version
and :python import sys; print(sys.version_info)
in VIM?
Thanks for response.
Yes, os
work properly.
python --version
-> 2.7.6
:python import sys; print(sys.version_info)
-> sys.version_info(major=2, minor=7, micro=6, releaselevel='final', serial=0)
Could you try direct Jedi commands in VIM? (with python)
I think my problem is the same as issue 233.
After I installed jedi-vim
, Following error message is shown when open python file. My environment is Windows 7
and Windows 8.1
on PC and my laptop.
Error detected while processing function 47_init:
line 10:
E115: Missing quote: '(messy code here)'
E15: Invalid expression: '(messy code again)'
Error detected while processing ~/vimfiles/bundle/jedivim/after/syntax/python.vim:
line 4:
E121: Undefined variable: g:jedi#call_signature_escape
E15: Invalid expression: g:jedi#call_signature_escape
So I add followed encoding setting according to issus 233, and problem solved.
" encoding settings {{{
if has("multi_byte")
if &termencoding == ""
let &termencoding = &encoding
endif
set encoding=utf-8
setglobal fileencoding=utf-8
"setglobal bomb
set fileencodings=ucs-bom,utf-8,latin1
endif
" }}}
But the error become UnicodeDecodeError
, which is shown in message
in gvim (the same in issues 233)
Traceback (most recent call last):
File "C:\Program Files (x86)\Vim\vimfiles\bundle\jedi-vim\jedi_vim.py", line 134, in completions
info=PythonToVimStr(c.doc), # docstr
File "C:\Program Files (x86)\Vim\vimfiles\bundle\jedi-vim\jedi_vim.py", line 72, in __new__
return unicode.__new__(cls, obj, encoding)
File "C:\Python27\Lib\encodings\utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x9c in position 697: invalid start byte
Follow your suggestion, I add below python code into my vimrc. And the result is the same as test program I wrote before. Hope that help ^_^
python << endpython
import jedi
import vtk
print(jedi.Script('import vtk; vtk.').completions())
endpython
After check the commit history of jedi, I found the UnicodeDecodeError
problems begin since commit 3d9d0bfd03. I not sure if is caused by adding join(unicode(n) for n in names)
. Sorry, I am not good at python, but hope this information could give you some hints to figure out where the problem is.
Finally, I convert all related .py file to utf-8 by using iconv and problem solved. Now, It works pretty well. Thanks!!
Hmm All related .py files of vtk
? Or which ones? It still seems to be a jedi-vim issue. Even if your encoding was wrong it shouldn't raise an error.
yes, all file relate to vtk
to python wrapper. I am not test file by file but all convert at one time. If anything I can help you to find the problem, please tell me. I will try and report the result. :)
This is a version issue. It will get a lot easier with the next jedi release to specify which version you want to use.
Hi, I use VTK in gvim, after installed jedi-vim through
git submodule
andpathogen
. The autocomplete popup menu is not show after typevtk.
, butjedi.
will show popup menu correctly. I write a simple test program to test.The result show a lots of completion(as below), why these result won't show on completion popup menu?
Thx!