From 7dc564c42727ac66dea1e9cb795a2568e00e4628 Mon Sep 17 00:00:00 2001 From: Mayank Dutta <33067129+mayankdutta@users.noreply.github.com> Date: Sun, 4 Jul 2021 02:43:57 +0530 Subject: added Clangd format_on_save (#621) * clang autoformat do save lot of trouble * clang autoformat do save lot of trouble * clang indentation done, comments updated * clang indentation done, comments updated Co-authored-by: Mayank Sharma --- ftplugin/c.lua | 10 ++++++++++ lua/default-config.lua | 3 ++- utils/installer/lv-config.example.lua | 6 ++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/ftplugin/c.lua b/ftplugin/c.lua index 8a7ef9fd..d5436315 100644 --- a/ftplugin/c.lua +++ b/ftplugin/c.lua @@ -19,3 +19,13 @@ require'lspconfig'.clangd.setup { }) } } + +if O.lang.clang.autoformat then + require('lv-utils').define_augroups({ + _clang_autoformat = { + { + 'BufWritePre *.cpp lua vim.lsp.buf.formatting_sync(nil,1000)' + + } + } }) +end diff --git a/lua/default-config.lua b/lua/default-config.lua index 83ff1cc2..7a26f242 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -150,7 +150,8 @@ O = { underline = true, }, cross_file_rename = true, - header_insertion = 'never' + header_insertion = 'never', + autoformat = false -- update this to true for enabling autoformat }, ruby = { diagnostics = { diff --git a/utils/installer/lv-config.example.lua b/utils/installer/lv-config.example.lua index c90d4876..f71ad561 100644 --- a/utils/installer/lv-config.example.lua +++ b/utils/installer/lv-config.example.lua @@ -83,6 +83,12 @@ O.lang.go.autoformat = true -- rust O.lang.rust.autoformat = true + +-- clang +O.lang.clang.autoformat = false -- Set to true to enable auto-format in C/C++ files. + + + -- create custom autocommand field (This would be easy with lua) -- Turn off relative_numbers -- cgit v1.2.3