aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lsp/intelephense.lua
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim/lsp/intelephense.lua')
-rw-r--r--.config/nvim/lsp/intelephense.lua33
1 files changed, 33 insertions, 0 deletions
diff --git a/.config/nvim/lsp/intelephense.lua b/.config/nvim/lsp/intelephense.lua
new file mode 100644
index 0000000..8a91c40
--- /dev/null
+++ b/.config/nvim/lsp/intelephense.lua
@@ -0,0 +1,33 @@
+---@brief
+---
+--- https://intelephense.com/
+---
+--- `intelephense` can be installed via `npm`:
+--- ```sh
+--- npm install -g intelephense
+--- ```
+---
+--- ```lua
+--- -- See https://github.com/bmewburn/intelephense-docs/blob/master/installation.md#initialisation-options
+--- init_options = {
+--- storagePath = …, -- Optional absolute path to storage dir. Defaults to os.tmpdir().
+--- globalStoragePath = …, -- Optional absolute path to a global storage dir. Defaults to os.homedir().
+--- licenceKey = …, -- Optional licence key or absolute path to a text file containing the licence key.
+--- clearCache = …, -- Optional flag to clear server state. State can also be cleared by deleting {storagePath}/intelephense
+--- }
+--- -- See https://github.com/bmewburn/intelephense-docs
+--- settings = {
+--- intelephense = {
+--- files = {
+--- maxSize = 1000000;
+--- };
+--- };
+--- }
+--- ```
+
+---@type vim.lsp.Config
+return {
+ cmd = { 'intelephense', '--stdio' },
+ filetypes = { 'php' },
+ root_markers = { '.git', 'composer.json' },
+}