tenkawa php language server
1.0.0

Tenkawa是用于PHP的语言服务器,具有强大的静态分析和类型推理引擎,而无需向PHPSTAN询问。
仍然可以实验,但应该是可用的。欢迎任何错误报告,功能请求,建议,问题。
使用PDO_SQLITE扩展名需要php> = 7.1。
有关Visual Studio代码扩展,请参见此处。
用composer create-project ( ~目录是一个示例):
$ cd ~
$ composer create-project --no-dev --keep-vcs
tsufeki/tenkawa-php-language-server tenkawa/或克隆仓库:
$ cd ~
$ git clone https://github.com/tsufeki/tenkawa-php-language-server.git tenkawa/
$ cd tenkawa/
$ composer install --no-dev
$ cd ..构建标准库的索引:
$ php ~ /tenkawa/bin/tenkawa.php --build-index现在,配置您的客户端以使用此命令启动服务器以使用stdio:
php ~ /tenkawa/bin/tenkawa.php或连接到TCP插座:
php ~ /tenkawa/bin/tenkawa.php --socket=tcp://127.0.0.1:12345尚未完成(但是?):
--socket=<socket> - 连接到插座而不是通过STDIO进行通信。允许格式: tcp://127.0.0.1:12345或unix:///path/to/socket 。--log-stderr登录到stderr。--log-file=<file> - 登录给定文件。--log-client使用window/logMessage协议方法的日志。--log-level=<level> - 仅记录给定级别及向上的消息。 <level>可以是emergency , alert , critical , error , warning , notice , info , debug之一。默认为info 。--build-index - 构建标准库索引,而不是启动服务器。--config-json=<json> - 默认选项,请参阅配置。示例: --config-json={"completion":{"autoImport":false}} 。 您可以通过initializationOptions协议方法的initialize参数或实现workspace/configuration请求并从客户端发送workspace/didChangeConfiguration通知,将配置选项传递给服务器。
公认的选项:
{
"tenkawaphp" : {
"diagnostics" : {
"phpstan" : {
// Enable PHPStan diagnostics.
"enabled" : true
}
} ,
"completion" : {
// Enable automatic import (use) of completed classes.
"autoImport" : true ,
// By default, only some PHP extensions are used for autocompletion.
// Additional ones can be enabled here.
"extensions" : [ "mysqli" , "redis" ]
} ,
"index" : {
// Additional stubs directories
"stubs" : [ "/path/to/stubs/dir" ]
}
}
} 版权(C)2017 Tsufeki
该程序是免费的软件:您可以根据自由软件基金会发布的GNU通用公共许可证的条款对其进行重新分配和/或修改它,该版本是该许可证的版本3,或(按您的选项)任何以后的版本。
该程序的分布是希望它将有用的,但没有任何保修;即使没有对特定目的的适销性或适合性的隐含保证。有关更多详细信息,请参见GNU通用公共许可证。
您应该已经收到了GNU通用公共许可证的副本以及此计划。如果没有,请参见http://www.gnu.org/licenses/。