我正在尝试修复一个小SublimeText2 插件。问题似乎是(来自 SublimeText python 控制台)是一个导入错误:
Traceback (most recent call last):
File ".\sublime_plugin.py", line 62, in reload_plugin
File ".\rtl.py", line 4, in <module>
from algorithm import get_display
File "lang\algorithm.py", line 20, in <module>
from unicodedata import bidirectional, mirrored
ImportError: No module named unicodedata
由于 unicodedata 是标准的 python 库,我尝试直接在控制台中导入它并得到相同的导入错误。我认为这是因为 sublimetext 没有使用系统安装的 python 版本(我在 windows 机器中使用 python2.7),但它是自己捆绑的 2.6 python,它不捆绑整个标准库。
当我尝试从我常用的 python 解释器导入时,一切正常。
我尝试添加一个指向“c:\python27\lib”和站点包等的 .pth 文件,但没有帮助。像这样直接添加到路径中:
sys.path.append(c:\\Python27\\lib)
也没有帮助。还尝试调整我的用户设置文件以包括:
{
"PATH": "C:\\Python27;c:\\Python27\\Scripts",
"PYTHONPATH": "C:\\Python27\\Lib;C:\\Python27\\Lib\\site-packages;C:\\Python27\\DLLs"
}
我的问题分为两个:
- 如何在我的开发计算机上专门解决这个问题
- 对于试图安装插件的人来说,解决这个问题的正确方法是什么。使插件动态了解默认的 python 安装并将其添加到路径中。
此外,最奇怪的是:程序文件中的主 SublimeText 文件夹实际上包含 unicodedata.pyd 文件。所以我无法弄清楚问题是什么!