Я даже не могу попытаться продвинуться дальше из-за ошибки. Как только буфер открывается, он завершает работу с ошибкой. Я пытаюсь посмотреть, смогу ли я заставить его работать с файлами php и Blade в качестве примечания. То, что вы видите ниже, — это все, что я сделал для phpactor, и ничего больше.
lsp.lua
Код: Выделить всё
["phpactor"] = function()
lspconfig.phpactor.setup {
filetypes = { "php", "php_only", "blade" },
root_dir = vim.fs.root(0, { "composer.json", ".git", "phpactor.json", "phpactor.yml" }),
cmd = { "phpactor", "language-server" },
init_options = {
["indexer.supported_extensions"] = { "blade" },
["language_server_completion.trim_leading_dollar"] = true,
["language_server_phpstan.enabled"] = false,
["language_server_psalm.enabled"] = false,
}
}
end,
Код: Выделить всё
[ERROR][2024-10-27 15:40:28] .../vim/lsp/rpc.lua:770 "rpc" "...\\AppData\\Local\\nvim-data\\mason\\bin\\phpactor.CMD" "stderr" "PHP Fatal error: Uncaught TypeError: trim(): Argument #1 ($string) must be of type string, false given in phar://.../AppData/Local/nvim-data/mason/packages/phpactor/phpactor.phar/.box/src/Terminal.php:60\nStack trace:\n#0 phar://.../AppData/Local/nvim-data/mason/packages/phpactor/phpactor.phar/.box/src/Terminal.php(60): trim(false)\n#1 phar://.../AppData/Local/nvim-data/mason/packages/phpactor/phpactor.phar/.box/src/Terminal.php(31): HumbugBox436\\KevinGH\\RequirementChecker\\Terminal::initDimensions()\n#2 phar://.../AppData/Local/nvim-data/mason/packages/phpactor/phpactor.phar/.box/src/Printer.php(28): HumbugBox436\\KevinGH\\RequirementChecker\\Terminal->getWidth()\n#3 phar://.../AppData/Local/nvim-data/mason/packages/phpactor/phpactor.phar/.box/src/Checker.php(17): HumbugBox436\\KevinGH\\RequirementChecker\\Printer->__construct(32, false)\n#4 phar://.../AppData/Local/nvim-data/mason/packages/phpactor/phpactor.phar/.box/bin/check-requirements.php(22): HumbugBox436\\KevinGH\\RequirementChecker\\Checker::checkRequirements()\n#5 C:\\Users\\thadl\\AppData\\Local\\nvim-data\\mason\\packages\\phpactor\\phpactor.phar(13): require('phar://C:/Users...')\n#6 {main}\n thrown in phar://.../AppData/Local/nvim-data/mason/packages/phpactor/phpactor.phar/.box/src/Terminal.php on line 60\n"
Я новичок в neovim, и стараюсь изо всех сил работать с конфигурациями, так что, возможно, я что-то упускаю очевидно или делает что-то не так.
По сути, мне нужен работающий PHP LSP для neovim, который работает как с файлами PHP, так и с файлами .blade.php. Мне удалось заставить парсер TreeSitter работать для Blade, что заняло некоторое время, но теперь мне действительно нужен LSP для работы.
Любой совет, который мог бы мне помочь, был бы замечательным. Я не уверен, куда идти дальше.

Подробнее здесь: https://stackoverflow.com/questions/791 ... g-lsp-erro