Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python kyLink.py'})_Python_Python 3.x_Sublimetext3_Sublimetext_Sublime Text Plugin - Fatal编程技术网

Python kyLink.py'})

Python kyLink.py'}),python,python-3.x,sublimetext3,sublimetext,sublime-text-plugin,Python,Python 3.x,Sublimetext3,Sublimetext,Sublime Text Plugin,不过,您需要将包拆分为两个文件。一个文件,描述您的软件包和升华内部所需的命令。另一个文件(应该在包目录的子目录中——这样升华就不会将其作为插件处理)包含其余代码。 第二个文件是导入Sublime内部Python中未包含的Python模块的位置。 此外,还需要找到一种方法,将要使用的选择或字符串/url传输到第二个脚本 您可以在我的Sublime软件包中查看我是如何做到这一点的。错误: bs4.FeatureNotFound: Couldn't find a tree builder with t

不过,您需要将包拆分为两个文件。一个文件,描述您的软件包和升华内部所需的命令。另一个文件(应该在包目录的子目录中——这样升华就不会将其作为插件处理)包含其余代码。 第二个文件是导入Sublime内部Python中未包含的Python模块的位置。 此外,还需要找到一种方法,将要使用的选择或字符串/url传输到第二个脚本

您可以在我的Sublime软件包中查看我是如何做到这一点的。

错误:

bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?
很可能是因为Sublime Text发现作为全局Python环境的一部分安装的
lxml
,该环境是为不同于ST使用的Python版本编译的,因此无法加载它

我们希望ST找到您在问题中链接到的
sublime lxml
依赖项。你可能会问:“为什么它找错了?”。很难说清楚,但我认为-ST出于某种原因看到的
sys.path
包含了所有的全局Python包。默认情况下,ST应仅使用其可执行文件所在的文件夹和ST数据目录中的Packages文件夹。例如,在我的系统上,执行
import sys;ST控制台中的sys.path
为我提供:

[
 'C:\\Program Files\\Sublime Text 3',
 'C:\\Program Files\\Sublime Text 3/python3.3.zip',
 'C:\\Users\\Keith\\AppData\\Roaming\\Sublime Text 3\\Packages',
 'C:\\Users\\Keith\\AppData\\Roaming\\SUBLIM~1\\Packages\\lxml\\ST3_WI~2'
]
i、 e.没有
站点包
文件夹

因此,解决办法是:

a。您可以尝试卸载系统范围的
lxml
包,这样ST将只找到
sublime lxml
依赖项包,但实际上这只是一个临时措施。最好是: B调整ST正在使用的path环境变量(项目的顺序)。(即,删除对
网站包的所有引用,或至少将其移动到ST文件夹之后。)

选项B不应该影响任何其他ST插件,因为它们也会遇到同样的问题。我怀疑其他包更改了ST使用的路径,但如果不搜索所有包,可能很难找到哪一个。使用构建系统时,用于这些系统的路径与插件加载其模块时使用的路径截然不同,因此构建系统也应不受此“修复”的影响。

是的,插件可以与Python模块一起工作,用户可以全局安装。您没有义务向Sublime文本插件引入模块。 问题 1.Python 3.3兼容性 2018年初:

    插件中使用的所有全局模块必须与Python 3.3兼容。

1.1. 论证 1.1.1. 升华文本系统路径顺序 例如,我添加到
Default.sublime包
archive文件
0000.py
。来自
Default.sublime包的模块由sublime Text start启动

0000.py
内容:

导入系统 sys.path.append('C:\\Python36') sys.path.append('C:\\Python36\\Python36.zip') sys.path.append('C:\\Python36\\DLLs') sys.path.append('C:\\Python36\\lib') sys.path.append('C:\\Python36\\lib\\site packages')
其中路径-我的全局
sys.path

导入系统;搜索路径 ['''C:\\Python36','C:\\Python36\\Python36.zip','C:\\Python36\\dll','C:\\Python36\\lib','C:\\Python36\\lib\\site packages']
我重新开始崇高的文本→ 我在控制台中看到:

DPI比例:1
启动,版本:3143 windows x64通道:稳定
可执行文件:/D/Sublime Text Build 3143 x64用于调试/Sublime_Text.exe
工作总监:/D/克里斯汀塔
包路径:/D/Sublime Text Build 3143 x64用于调试/数据/包
状态路径:/D/Sublime Text Build 3143 x64用于调试/数据/本地
zip路径:/D/Sublime Text Build 3143 x64用于调试/软件包
zip路径:/D/Sublime Text Build 3143 x64用于调试/数据/安装的软件包
被忽略的包装:[“水蟒”,“年份”]
会话前恢复时间:0.458819
启动时间:0.493818
首次涂漆时间:0.506818
重新加载插件Default.0000
重新加载插件Default.auto_indent_标记
重新加载插件Default.block
#等等
导入系统;搜索路径 ['D:\\Sublime Text Build 3143 x64 For Debug','D:\\Sublime Text Build 3143 x64 For Debug\\python3.3.zip','D:\\Sublime Text Build 3143 x64 For Debug\\Data\\Lib\\python3.3','D:\\Sublime Text Build 3143 x64 For Debug\\Data\\Packages','C:\\Python36\\Python36.zip','C:\\Python36\\Python36\\DLLs','C:\\Python36\\Lib\\C:\\Python36\\site-p包装'] 来自内部环境的路径在前面,即全局环境中的路径。我不知道,我怎样才能改变它

1.1.2. Python3.6模块 例如,我想在我的插件PyPI模块中使用。它与Python3.6兼容,但是

我按照上面的小节插入文件
0000.py
→ 我创建了plugin
SashaGSearch.py
,它的内容:

导入升华插件
从gsearch.googlesearch导入搜索
类GoogleSearchCommand(升华插件.TextCommand):
def运行(自我,编辑):
结果=搜索('kristinitaluckylife',num_results=1)
r=结果[0][1]
印刷品(r)
我重新开始崇高的文本→ 我得到,好像
0000.py
没有实现

1.2. 2018年初情况 见Sublime文本论坛讨论:

  • ,
我希望,在内部崇高的文本环境中,Python3.3将在不久的将来被替换为3.6或下一个3.7版本


2.环境变量 如果您知道,可能不添加新的环境变量,请回答

2.1. 插件代码 您需要在PC上创建环境变量,其中value-path to
site packages
文件夹。例如,我将其命名为
PYTHONPACKAGES

您需要添加到代码行中,如下所示:

#PYTHONPACKAGES路径:
# https://stackoverflow.com/a/4907053/5951529
#禁用重复路径:
# https://stacko
bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?
[
 'C:\\Program Files\\Sublime Text 3',
 'C:\\Program Files\\Sublime Text 3/python3.3.zip',
 'C:\\Users\\Keith\\AppData\\Roaming\\Sublime Text 3\\Packages',
 'C:\\Users\\Keith\\AppData\\Roaming\\SUBLIM~1\\Packages\\lxml\\ST3_WI~2'
]