我刚刚通过包管理器在sublime text 2上安装了phpcs。当我去工具 - >嗅探这个文件时,我在控制台中收到了这个错误:
traceback (most recent call last):
File "./sublime_plugin.py", line 362, in run_
File "./phpcs.py", line 599, in run
File "./phpcs.py", line 424, in run
File "./phpcs.py", line 139, in get_errors
File "./phpcs.py", line 215, in execute
File "./phpcs.py", line 218, in parse_report
File "./phpcs.py", line 169, in shell_out
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 623, in __init__
errread, errwrite)
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 1141, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
错误是什么意思?如果我运行python --version
,我会看到2.7.5。也许有一些问题,因为它正在寻找/Versions/2.6?
答案 0 :(得分:2)
由于某些原因,Phpcs
插件无法找到您的php
二进制文件或phpcs
二进制文件。例如,如果你使用的是MacPorts,它们可能安装在/opt/local/bin
中,而Homebrew应该安装在/usr/local/bin
中(我想,我很久没有使用过HB)。首先,打开终端并输入which php
和which phpcs
,然后复制路径。
接下来,在Sublime中,选择 Sublime Text 2 -> Preferences -> Package Settings -> PHP Code Sniffer -> Settings-Default
。复制文件的全部内容,然后打开 Sublime Text 2 -> Preferences -> Package Settings -> PHP Code Sniffer -> Settings-User
(应为空)并将内容粘贴到其中。您现在可以关闭默认设置,因为永远不应该为任何ST2插件修改该文件 - 将任何更改放入用户设置文件中。现在,在“设置 - 用户文件”中,向下滚动到第64行,并在空引号之间放置phpcs
的完整路径,如下所示:
"phpcs_executable_path": "/opt/local/bin/phpcs",
如果php
二进制文件的路径是 其他 而不是/usr/bin/php
,则向上滚动到第36行并将完整路径放入空引号之间:
"phpcs_php_prefix_path": "/opt/local/bin/php",
那应该是它。保存文件,重新启动Sublime,然后尝试" Sniff"命令再次。它没有找到你安装的可执行文件的原因,即使你可以在终端中运行它们(希望如此)是因为从Finder或Dock启动的程序的PATH
与PATH
不同在.profile
或.bashrc
或您拥有的内容中设置终端如果您是Mac电源用户,并希望更改应用程序看到的默认路径,请在另一个堆栈交换站点this question上查看Unix & Linux的答案。