LanguageServer-php-neovim - это плагин Neovim, который отлично подходит для поиска определений кода. Это даже хорошо работает для переменных! В основном это позволяет вам использовать плагин php-language-server , который был первоначально разработан для VS Code, внутри Neovim через плагин LanguageClient-neovim . Это все возможно, потому что php-language-server был разработан для использования VS Server Language Server Protocol, который является открытым протоколом, созданным Microsoft, который теперь поддерживается многими редакторами для многих языков. Некоторые люди заинтересованы в том, чтобы протокол языкового сервера имел встроенную поддержку в Neovim без необходимости в плагине для поддержки этого протокола. Я не удивлюсь, если это произойдет в ближайшее время, поскольку уже ведется работа запрос на получение . Если Neovim начнет поддерживать это, вам понадобится только один плагин для языка.
Если вы не хотите или не можете настроить это для правильной работы вашего проекта, и вы полны решимости придерживаться тегов, важно понимать ограничения тегов. Файл тегов обычно представляет собой просто файл с ключевыми словами, которые появляются в вашем коде, и где они находятся в вашем коде. Потребовалось бы немало работы, настройки и изобретательности, чтобы использовать что-то подобное в редакторе или IDE для обеспечения завершения кода или перехода к функциям, которые столь же умны, как и другие инструменты, предназначенные для более глубокого понимания вашего кода. При этом, если вы действительно хотите придерживаться тегов, я лично считаю, что мой плагин project-tags - лучший опыт, который вы получите в Vim, поскольку я сделал это, чтобы удовлетворить эту потребность и сделать то, что я хотел, чтобы другие теги плагины сделали.
Ох, забудь об этом. Языковые серверы слишком проблематичны. Я разместил свой вопрос 5 лет назад, а через 5 лет все еще не нашел хорошего решения. Я сдаюсь! Я разочаровываюсь в PHP и разочаровываюсь в Vim и Neovim. Я переключаюсь на Kotlin и InjelliJ IDE. Хотя я все еще должен использовать PHP, я переключаюсь на PhpStorm. Я все еще буду использовать плагин Vim. Vim и Noevim - отличные редакторы, но пытаться свалить кучу интеллектуальных инструментов, чтобы работать внутри них, как если бы они все были разработаны для совместной работы, чтобы обеспечить хороший опыт, просто не работает для меня, и я пытался в течение многих лет. У меня всегда будут эти инструменты, чтобы обращаться к ним по мере необходимости, и они отлично подходят для случаев, когда вам необходимо подключиться к серверу через ssh и выполнить простое редактирование. Но для разработки ядра ядра вам нужны языковые средства, повышающие производительность инструменты, которые прекрасно продуманы для совместной работы в синергетическом ключе, чтобы обеспечить исключительный опыт. Или, другими словами, вам нужна интегрированная среда разработки.