
Tenkawa هو خادم لغة لـ PHP ، مع تحليل ثابت قوي ومحرك الاستدلال المستعارة دون أن يسأل من Phpstan.
لا تزال تجريبية ، ولكن يجب أن تكون قابلة للاستخدام. أي تقارير الأخطاء ، وطلبات الميزات ، والاقتراحات ، والأسئلة مرحب بها.
يتطلب php> = 7.1 مع امتداد pdo_sqlite.
للاطلاع على تمديد رمز الاستوديو المرئي ، انظر هنا.
إما مع create-project composer (الدليل ~ هو مثال):
$ 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" ]
}
}
} حقوق الطبع والنشر (ج) 2017 تسوفيكي
هذا البرنامج هو برنامج مجاني: يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة GNU العامة العامة كما تم نشرها من قبل مؤسسة البرمجيات المجانية ، إما الإصدار 3 من الترخيص ، أو (في خيارك) أي إصدار لاحق.
يتم توزيع هذا البرنامج على أمل أن يكون مفيدًا ، ولكن بدون أي ضمان ؛ بدون حتى الضمان الضمني للتسويق أو اللياقة لغرض معين. راجع رخصة GNU العامة لمزيد من التفاصيل.
يجب أن تكون قد تلقيت نسخة من رخصة GNU العامة العامة مع هذا البرنامج. إذا لم يكن الأمر كذلك ، راجع http://www.gnu.org/licenses/.