summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPZ31k0nauT <[email protected]>2021-07-04 18:50:38 +0200
committerGitHub <[email protected]>2021-07-04 12:50:38 -0400
commit7cd58b1228749f72a81ba84c265cafafe47fa5a6 (patch)
treedd32860a91db8f22d085db0cc817190d15f88dc4
parent927d5b165e668eb806fe0fa3150c09fc57427120 (diff)
Basics for php lsp (#664)
* Update php.lua * Update default-config.lua * Update lv-config.example.lua
-rw-r--r--ftplugin/php.lua25
-rw-r--r--lua/default-config.lua16
-rw-r--r--utils/installer/lv-config.example.lua9
3 files changed, 46 insertions, 4 deletions
diff --git a/ftplugin/php.lua b/ftplugin/php.lua
index abc90092..b571a213 100644
--- a/ftplugin/php.lua
+++ b/ftplugin/php.lua
@@ -1,4 +1,25 @@
require'lspconfig'.intelephense.setup {
cmd = { DATA_PATH .. "/lspinstall/php/node_modules/.bin/intelephense", "--stdio" },
- on_attach = require'lsp'.common_on_attach
-} \ No newline at end of file
+ on_attach = require'lsp'.common_on_attach,
+ handlers = {
+ ["textDocument/publishDiagnostics"] = vim.lsp.with(
+ vim.lsp.diagnostic.on_publish_diagnostics, {
+ virtual_text = O.lang.php.diagnostics.virtual_text,
+ signs = O.lang.php.diagnostics.signs,
+ underline = O.lang.php.diagnostics.underline,
+ update_in_insert = true
+
+ })
+ },
+ filetypes = O.lang.php.filetypes,
+ settings = {
+ intelephense = {
+ format = {
+ braces = O.lang.php.format.braces
+ },
+ environment = {
+ phpVersion = O.lang.php.environment.php_version
+ },
+ }
+ };
+}
diff --git a/lua/default-config.lua b/lua/default-config.lua
index 0023256f..0d33fe47 100644
--- a/lua/default-config.lua
+++ b/lua/default-config.lua
@@ -182,7 +182,21 @@ O = {
}
},
svelte = {},
- php = {},
+ php = {
+ format = {
+ braces = "psr12"
+ },
+ environment = {
+ php_version = "7.4"
+ },
+ autoformat = false,
+ diagnostics = {
+ virtual_text = {spacing = 0, prefix = "ï„‘"},
+ signs = true,
+ underline = true
+ },
+ filetypes = {'php', 'phtml'}
+ },
latex = {},
kotlin = {},
html = {},
diff --git a/utils/installer/lv-config.example.lua b/utils/installer/lv-config.example.lua
index 169cfcc8..6910a2cb 100644
--- a/utils/installer/lv-config.example.lua
+++ b/utils/installer/lv-config.example.lua
@@ -87,7 +87,14 @@ O.lang.rust.autoformat = true
-- clang
O.lang.clang.autoformat = false -- Set to true to enable auto-format in C/C++ files.
-
+-- php
+O.lang.php.format.braces = "k&r" -- options: psr12, allman, k&r
+O.lang.php.environment.php_version = "7.4"
+-- TODO: autoformat seems not to work at the moment
+O.lang.php.autoformat = false
+O.lang.php.diagnostics.signs = true
+O.lang.php.diagnostics.underline = true
+O.lang.php.filetypes = { "php", "phtml" }
-- TODO Autocommands
-- https://neovim.io/doc/user/autocmd.html