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/。