2016-06-13 57 views
1

我最近將jedi-vim添加到了我的插件庫中。它適用於標準模塊,但無法找到bpy和bmesh的東西。使用jedi-vim自動完成攪拌機腳本

所以在攪拌機控制檯我把輸出的print(sys.path)並把它添加到vim腳本功能在.lvimrc文件,如:

function BpyPath() 
    python sys.path.append('/home/john/src/blender-2.77-linux-glibcl211-x86_64/2.77/python/lib/python3.5') 
    ... 
endfunction 

現在工作得更好。打字bpy.給我:

enter image description here

但輸入bpy.context.仍然給我:- 全能補未找到(^ o^N^P)模式

版本:

  • Blender:2.77a 64位linux
  • 操作系統:Fedora 22
  • 的Python:2.7.10
  • 的Vim:7.4

我不是一個非常先進的蟒蛇或者vim用戶,所以任何幫助表示讚賞。

+0

你想要顯示什麼? – SibiCoder

+0

@SibiCoder bpy.context命名空間中的函數和變量 – John

+0

你可以給一個示例代碼片斷,解釋它並告訴我你想要什麼嗎? – SibiCoder

回答

2

我剛剛意識到沒有太多的希望,因爲你已經在與一個編譯的(C/C++)模塊交談。

如果dir(bpy.context)(在Python shell中)沒有給你所需的完成項,Jedi也將無法推斷出這些信息。如果dir爲您提供了合理的內容,只需在Jedi問題跟蹤器中創建問題即可。這將是一個錯誤,國際海事組織。

我正在計劃Jedi的一個插件系統,以便可以將Jedi與這些用例一起使用。但這可能需要兩年時間。

+0

沒有。這沒有給出任何有用的輸出。我會等兩年。謝謝。 – John

+1

戴夫 - 我希望你會得到更多的關於攪拌機自動完成的問題,因爲這會更頻繁地出現。查看我對此的回答,因爲攪拌機的bpy模塊不是普通的python模塊,並且需要在項目之外進行額外的設置。 – sambler

2

這經常會把人們趕出去。 Blender的bpy模塊是根據攪拌機內的源代碼創建的編譯模塊。該模塊的二進制文件被合併到攪拌機的二進制文件中,並且不能在攪拌機內的python解釋器之外使用。

您可以自己編譯攪拌器,並啓用一個選項來構建blender as a python module,您可以將它導入任何python解釋器,並且可能會是您正在尋找的解決方案。

this answer您還可以找到一些鏈接到其他答案,有使用eclipse和pycharm與攪拌器,可能有一些幫助提示。