@@ -71,6 +71,7 @@ require('lazy').setup({
7171 ' tpope/vim-fugitive' ,
7272 ' tpope/vim-rhubarb' ,
7373
74+
7475 -- Detect tabstop and shiftwidth automatically
7576 ' tpope/vim-sleuth' ,
7677
@@ -149,35 +150,13 @@ require('lazy').setup({
149150 ' lukas-reineke/indent-blankline.nvim' ,
150151 -- Enable `lukas-reineke/indent-blankline.nvim`
151152 -- See `:help indent_blankline.txt`
152- opts = {
153- char = ' ┊' ,
154- show_trailing_blankline_indent = false ,
155- },
153+ main = ' ibl' ,
154+ opts = {},
156155 },
157156
158157 -- "gc" to comment visual regions/lines
159158 { ' numToStr/Comment.nvim' , opts = {} },
160159
161- -- Fuzzy Finder (files, lsp, etc)
162- {
163- ' nvim-telescope/telescope.nvim' ,
164- branch = ' 0.1.x' ,
165- dependencies = {
166- ' nvim-lua/plenary.nvim' ,
167- -- Fuzzy Finder Algorithm which requires local dependencies to be built.
168- -- Only load if `make` is available. Make sure you have the system
169- -- requirements installed.
170- {
171- ' nvim-telescope/telescope-fzf-native.nvim' ,
172- -- NOTE: If you are having trouble with this installation,
173- -- refer to the README for telescope-fzf-native for more instructions.
174- build = ' make' ,
175- cond = function ()
176- return vim .fn .executable ' make' == 1
177- end ,
178- },
179- },
180- },
181160 {
182161 -- Highlight, edit, and navigate code
183162 ' nvim-treesitter/nvim-treesitter' ,
@@ -239,7 +218,7 @@ vim.o.smartcase = true
239218vim .wo .signcolumn = ' yes'
240219
241220-- Decrease update time
242- vim .o .updatetime = 250
221+ vim .o .updatetime = 100
243222vim .o .timeoutlen = 300
244223
245224-- Set completeopt to have a better completion experience
@@ -277,49 +256,18 @@ vim.api.nvim_create_autocmd("BufWritePre", {
277256 end
278257})
279258
280- -- [[ Configure Telescope ]]
281- -- See `:help telescope` and `:help telescope.setup()`
282- require (' telescope' ).setup {
283- defaults = {
284- mappings = {
285- i = {
286- [' <C-u>' ] = false ,
287- [' <C-d>' ] = false ,
288- },
289- },
259+ vim .filetype .add ({
260+ extension = {
261+ arb = " json" ,
290262 },
291- }
292-
293- -- Enable telescope fzf native, if installed
294- pcall (require (' telescope' ).load_extension , ' fzf' )
295-
296- -- See `:help telescope.builtin`
297- vim .keymap .set (' n' , ' <leader>?' , require (' telescope.builtin' ).oldfiles , { desc = ' [?] Find recently opened files' })
298- vim .keymap .set (' n' , ' <leader><space>' , require (' telescope.builtin' ).buffers , { desc = ' [ ] Find existing buffers' })
299- vim .keymap .set (' n' , ' <leader>/' , function ()
300- -- You can pass additional configuration to telescope to change theme, layout, etc.
301- require (' telescope.builtin' ).current_buffer_fuzzy_find (require (' telescope.themes' ).get_dropdown {
302- winblend = 10 ,
303- previewer = false ,
304- })
305- end , { desc = ' [/] Fuzzily search in current buffer' })
306-
307- vim .keymap .set (' n' , ' <leader>gf' , require (' telescope.builtin' ).git_files , { desc = ' Search [G]it [F]iles' })
308- vim .keymap .set (' n' , ' <leader>gs' , require (' telescope.builtin' ).git_status , { desc = ' Search [G]it [S]tatus' })
309- vim .keymap .set (' n' , ' <leader>sf' , require (' telescope.builtin' ).find_files , { desc = ' [S]earch [F]iles' })
310- vim .keymap .set (' n' , ' <leader>sh' , require (' telescope.builtin' ).help_tags , { desc = ' [S]earch [H]elp' })
311- vim .keymap .set (' n' , ' <leader>sw' , require (' telescope.builtin' ).grep_string , { desc = ' [S]earch current [W]ord' })
312- vim .keymap .set (' n' , ' <leader>sg' , require (' telescope.builtin' ).live_grep , { desc = ' [S]earch by [G]rep' })
313- vim .keymap .set (' n' , ' <leader>sd' , require (' telescope.builtin' ).diagnostics , { desc = ' [S]earch [D]iagnostics' })
314- vim .keymap .set (' n' , ' <leader>sr' , require (' telescope.builtin' ).resume , { desc = ' [S]earch [R]esume' })
315-
263+ })
316264
317265-- [[ Configure Treesitter ]]
318266-- See `:help nvim-treesitter`
319267require (' nvim-treesitter.configs' ).setup {
320268 -- Add languages to be installed here that you want installed for treesitter
321269 ensure_installed = { ' c' , ' cpp' , ' go' , ' lua' , ' python' , ' rust' , ' tsx' , ' javascript' , ' typescript' , ' vimdoc' , ' vim' ,
322- ' dart' , ' prisma' , ' graphql' },
270+ ' dart' , ' prisma' , ' graphql' , ' json ' },
323271
324272 -- Autoinstall languages that are not installed. Defaults to false (but you can change for yourself!)
325273 auto_install = false ,
@@ -396,6 +344,7 @@ vim.keymap.set("n", "<leader>n", '<Cmd>bnext<CR>', { desc = "[N]ext buffer" })
396344vim .keymap .set (" n" , " <leader>p" , ' <Cmd>bprevious<CR>' , { desc = " [P]revious buffer" })
397345vim .keymap .set (" n" , " <leader>d" , ' <Cmd>bdelete<CR>' , { desc = " [D]elete buffer" })
398346vim .keymap .set (" n" , " <leader>ot" , " <Cmd>20split | te<CR>" , { desc = " [O]pen [T]erminal below" })
347+ vim .keymap .set (" n" , " <leader>vs" , " <Cmd>vs<CR>" , { desc = " [V]ertical [S]plit" })
399348
400349-- Save file
401350vim .keymap .set (" n" , " <leader>s" , ' <Cmd>w<CR>' , { desc = " [S]ave file" })
@@ -462,6 +411,7 @@ local servers = {
462411 tsserver = {},
463412 prismals = {},
464413 graphql = {},
414+ clangd = {},
465415 -- prettierd = {},
466416 -- html = { filetypes = { 'html', 'twig', 'hbs'} }
467417 lua_ls = {
@@ -519,14 +469,15 @@ vim.api.nvim_create_autocmd('LspAttach', {
519469
520470-- Ensure the servers above are installed
521471local mason_lspconfig = require ' mason-lspconfig'
472+ local lspconfig = require (' lspconfig' )
522473
523474mason_lspconfig .setup {
524475 ensure_installed = vim .tbl_keys (servers ),
525476}
526477
527478mason_lspconfig .setup_handlers {
528479 function (server_name )
529- require ( ' lspconfig' ) [server_name ].setup {
480+ lspconfig [server_name ].setup {
530481 capabilities = capabilities ,
531482 on_attach = on_attach ,
532483 settings = servers [server_name ],
@@ -535,32 +486,26 @@ mason_lspconfig.setup_handlers {
535486 end
536487}
537488
538-
539- -- Setup language servers.
540- local lspconfig = require (' lspconfig' )
541-
542489capabilities .textDocument .completion .completionItem .snippetSupport = true
543- lspconfig .dartls .setup ({
544- cmd = { " dart" , " language-server" , " --protocol=lsp" },
545- filetypes = { " dart" },
546- init_options = {
547- closingLabels = true ,
548- flutterOutline = true ,
549- onlyAnalyzeProjectsWithOpenFiles = true ,
550- outline = true ,
551- suggestFromUnimportedLibraries = true ,
552- },
553- capabilities = capabilities ,
554- -- root_dir = root_pattern("pubspec.yaml"),
555- settings = {
556- dart = {
557- completeFunctionCalls = true ,
558- showTodos = true ,
559- },
560- },
561- })
562-
563- require (" telescope" ).load_extension (" flutter" )
490+ -- lspconfig.dartls.setup({
491+ -- cmd = { "dart", "language-server", "--protocol=lsp" },
492+ -- filetypes = { "dart" },
493+ -- init_options = {
494+ -- closingLabels = true,
495+ -- flutterOutline = true,
496+ -- onlyAnalyzeProjectsWithOpenFiles = true,
497+ -- outline = true,
498+ -- suggestFromUnimportedLibraries = true,
499+ -- },
500+ -- capabilities = capabilities,
501+ -- -- root_dir = root_pattern("pubspec.yaml"),
502+ -- settings = {
503+ -- dart = {
504+ -- completeFunctionCalls = true,
505+ -- showTodos = true,
506+ -- },
507+ -- },
508+ -- })
564509
565510-- [[ Configure nvim-cmp ]]
566511-- See `:help cmp`
@@ -576,10 +521,13 @@ cmp.setup {
576521 luasnip .lsp_expand (args .body )
577522 end ,
578523 },
524+ completion = {
525+ completeopt = ' menu,menuone,noinsert' ,
526+ },
579527 mapping = cmp .mapping .preset .insert {
580528 [' <C-n>' ] = cmp .mapping .select_next_item (),
581529 [' <C-p>' ] = cmp .mapping .select_prev_item (),
582- [' <C-d >' ] = cmp .mapping .scroll_docs (- 4 ),
530+ [' <C-b >' ] = cmp .mapping .scroll_docs (- 4 ),
583531 [' <C-f>' ] = cmp .mapping .scroll_docs (4 ),
584532 [' <C-Space>' ] = cmp .mapping .complete {},
585533 [' <CR>' ] = cmp .mapping .confirm {
@@ -608,6 +556,7 @@ cmp.setup {
608556 sources = {
609557 { name = ' nvim_lsp' },
610558 { name = ' luasnip' },
559+ { name = ' path' },
611560 },
612561}
613562
0 commit comments