From 21e4721f258a38bb98236d8a686505252f3032e2 Mon Sep 17 00:00:00 2001 From: AYM1607 Date: Mon, 12 Dec 2022 15:56:52 -0800 Subject: [PATCH 1/8] Changes from MacOS --- init.lua | 7 +- lua/keymappings.lua | 28 +++++++ lua/lsp/arduino-ls.lua | 9 ++ lua/lsp/flutter-ls.lua | 3 + lua/lsp/go-ls.lua | 3 + lua/lsp/init.lua | 14 ---- lua/nv-telescope/init.lua | 10 +++ lua/plugins.lua | 16 +++- plugin/packer_compiled.lua | 166 +++++++++++++++++++++++++++++++------ 9 files changed, 215 insertions(+), 41 deletions(-) create mode 100644 lua/lsp/arduino-ls.lua create mode 100644 lua/lsp/flutter-ls.lua diff --git a/init.lua b/init.lua index 180e2ab..c1b45db 100644 --- a/init.lua +++ b/init.lua @@ -1,10 +1,8 @@ require('settings') -require('keymappings') require('nv-globals') require('plugins') require('colorscheme') require('settings') -require('keymappings') -- LSP require('lsp') @@ -13,6 +11,8 @@ require('lsp.python-ls') require('lsp.lua-ls') require('lsp.elixir-ls') require('lsp.go-ls') +require('lsp.arduino-ls') +require('lsp.flutter-ls') -- Completion require('nv-compe') @@ -20,3 +20,6 @@ require('nv-compe') require('nv-prettier') require('nv-telescope') + +-- Set up keymaps after everything is configured. +require('keymappings') diff --git a/lua/keymappings.lua b/lua/keymappings.lua index 9b7bac9..3e772cc 100644 --- a/lua/keymappings.lua +++ b/lua/keymappings.lua @@ -1,3 +1,8 @@ +local lsp = vim.lsp +local handlers = lsp.handlers +local saga = require('lspsaga') +saga.init_lsp_saga() + -- Space as leader. vim.api.nvim_set_keymap('n', '', '', {noremap = true, silent = true}) vim.g.mapleader = ' ' @@ -33,6 +38,11 @@ vim.api.nvim_set_keymap('t', '', '', {silent = true}) -- Move right when in insert mode. vim.api.nvim_set_keymap("i", '', '', {noremap = true, silent = true}) +-- Leader window movement. +vim.api.nvim_set_keymap("n", 'wm', 'h', {noremap = true, silent = true}) +vim.api.nvim_set_keymap("n", 'wn', 'j', {noremap = true, silent = true}) +vim.api.nvim_set_keymap("n", 'we', 'k', {noremap = true, silent = true}) +vim.api.nvim_set_keymap("n", 'wi', 'l', {noremap = true, silent = true}) -- Quick save. vim.api.nvim_set_keymap('n', 'fw', ':w', {silent = true}) @@ -50,6 +60,24 @@ vim.api.nvim_set_keymap('n', 'fc', 'Telescope file_browser path=%:p vim.api.nvim_set_keymap('n', 'ps', 'Telescope live_grep',{}) -- Search among the currently open buffers. vim.api.nvim_set_keymap('n', 'bs', 'Telescope buffers',{}) +-- Code actions. +vim.api.nvim_set_keymap('n', 'ca', "lua vim.lsp.buf.code_action()",{silent = true, noremap = true}) +vim.api.nvim_set_keymap('x', 'ca', "lua vim.lsp.buf.range_code_action()",{silent = true, noremap = true}) +-- Flutter commands. +vim.api.nvim_set_keymap('n', 'fl', "lua require('telescope').extensions.flutter.commands()",{silent = true, noremap = true}) + + +-- Hover doc popup +local pop_opts = { border = "rounded", max_width = 80 } +handlers["textDocument/hover"] = lsp.with(handlers.hover, pop_opts) +handlers["textDocument/signatureHelp"] = lsp.with(handlers.signature_help, pop_opts) + +vim.api.nvim_set_keymap('n', 'lgd', 'lua vim.lsp.buf.definition()', {noremap = true, silent = true}) +vim.api.nvim_set_keymap('n', 'lgD', 'lua vim.lsp.buf.declaration()', {noremap = true, silent = true}) +vim.api.nvim_set_keymap('n', 'lgr', 'lua vim.lsp.buf.references()', {noremap = true, silent = true}) +vim.api.nvim_set_keymap('n', 'lgi', 'lua vim.lsp.buf.implementation()', {noremap = true, silent = true}) +vim.api.nvim_set_keymap('n', 'lr', 'Lspsaga rename', {silent = true}) +vim.api.nvim_set_keymap('n', 'K', 'lua vim.lsp.buf.hover()', {noremap = true, silent = true}) ------ Trouble vim.api.nvim_set_keymap("n", "lwd", "Trouble workspace_diagnostics", diff --git a/lua/lsp/arduino-ls.lua b/lua/lsp/arduino-ls.lua new file mode 100644 index 0000000..ac22b2e --- /dev/null +++ b/lua/lsp/arduino-ls.lua @@ -0,0 +1,9 @@ +require'lspconfig'.arduino_language_server.setup { + cmd = { + "arduino-language-server", + "-cli-config", "/Users/aym/Library/Arduino15/arduino-cli.yaml", + "-fqbn", "adafruit:nrf52:feather52841", + "-cli", "arduino-cli", + "-clangd", "clangd" + } +} diff --git a/lua/lsp/flutter-ls.lua b/lua/lsp/flutter-ls.lua new file mode 100644 index 0000000..7d664a7 --- /dev/null +++ b/lua/lsp/flutter-ls.lua @@ -0,0 +1,3 @@ +require("flutter-tools").setup{ +} -- use defaults + diff --git a/lua/lsp/go-ls.lua b/lua/lsp/go-ls.lua index a007170..3e1a9f8 100644 --- a/lua/lsp/go-ls.lua +++ b/lua/lsp/go-ls.lua @@ -69,3 +69,6 @@ vim.g.go_highlight_types = 1 vim.g.go_highlight_extra_types = 1 vim.g.go_highlight_functions = 1 vim.g.go_highlight_function_calls = 1 + +local saga = require 'lspsaga' +saga.init_lsp_saga() diff --git a/lua/lsp/init.lua b/lua/lsp/init.lua index 377ae3a..e69de29 100644 --- a/lua/lsp/init.lua +++ b/lua/lsp/init.lua @@ -1,14 +0,0 @@ -local lsp = vim.lsp -local handlers = lsp.handlers - --- Hover doc popup -local pop_opts = { border = "rounded", max_width = 80 } -handlers["textDocument/hover"] = lsp.with(handlers.hover, pop_opts) -handlers["textDocument/signatureHelp"] = lsp.with(handlers.signature_help, pop_opts) - -vim.api.nvim_set_keymap('n', 'lgd', 'lua vim.lsp.buf.definition()', {noremap = true, silent = true}) -vim.api.nvim_set_keymap('n', 'lgD', 'lua vim.lsp.buf.declaration()', {noremap = true, silent = true}) -vim.api.nvim_set_keymap('n', 'lgr', 'lua vim.lsp.buf.references()', {noremap = true, silent = true}) -vim.api.nvim_set_keymap('n', 'lgi', 'lua vim.lsp.buf.implementation()', {noremap = true, silent = true}) -vim.api.nvim_set_keymap('n', 'lr', 'lua require("lspsaga.rename").rename()', {noremap = true, silent = true}) -vim.api.nvim_set_keymap('n', 'K', 'lua vim.lsp.buf.hover()', {noremap = true, silent = true}) diff --git a/lua/nv-telescope/init.lua b/lua/nv-telescope/init.lua index 7085a0c..874064c 100644 --- a/lua/nv-telescope/init.lua +++ b/lua/nv-telescope/init.lua @@ -1 +1,11 @@ +-- This is your opts table +require("telescope").setup { + extensions = { + ["ui-select"] = { + require("telescope.themes").get_dropdown {} + } + } +} + +require("telescope").load_extension("ui-select") require("telescope").load_extension "file_browser" diff --git a/lua/plugins.lua b/lua/plugins.lua index 0b8282f..5d7b558 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -14,7 +14,17 @@ return require('packer').startup(function(use) -- LSP use 'neovim/nvim-lspconfig' - use 'glepnir/lspsaga.nvim' + use({ + "glepnir/lspsaga.nvim", + branch = "main", + config = function() + local saga = require("lspsaga") + + saga.init_lsp_saga({ + -- your configuration + }) + end, + }) use 'kabouzeid/nvim-lspinstall' -- Autocomplete use 'hrsh7th/nvim-compe' @@ -53,6 +63,7 @@ return require('packer').startup(function(use) -- Telescope use { "nvim-telescope/telescope-file-browser.nvim" } + use {'nvim-telescope/telescope-ui-select.nvim' } use { 'nvim-telescope/telescope.nvim', requires = {{'nvim-lua/popup.nvim'}, {'nvim-lua/plenary.nvim'}}, @@ -90,6 +101,9 @@ return require('packer').startup(function(use) -- Golang use 'fatih/vim-go' + -- Flutter/Dart + use {'akinsho/flutter-tools.nvim', requires = 'nvim-lua/plenary.nvim'} + -- Pyhton -- use 'a-vrma/black-nvim' use { diff --git a/plugin/packer_compiled.lua b/plugin/packer_compiled.lua index 15ad5b6..78519f9 100644 --- a/plugin/packer_compiled.lua +++ b/plugin/packer_compiled.lua @@ -44,8 +44,8 @@ local function save_profiles(threshold) end time([[Luarocks path setup]], true) -local package_path_str = "/Users/juva/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/Users/juva/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/Users/juva/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/Users/juva/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" -local install_cpath_pattern = "/Users/juva/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so" +local package_path_str = "/Users/aym/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/Users/aym/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/Users/aym/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/Users/aym/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/Users/aym/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so" if not string.find(package.path, package_path_str, 1, true) then package.path = package.path .. ';' .. package_path_str end @@ -71,121 +71,239 @@ time([[Defining packer_plugins]], true) _G.packer_plugins = { ["auto-pairs"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/auto-pairs", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/auto-pairs", url = "https://github.com/jiangmiao/auto-pairs" }, black = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/black", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/black", url = "https://github.com/psf/black" }, + ["flutter-tools.nvim"] = { + loaded = true, + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/flutter-tools.nvim", + url = "https://github.com/akinsho/flutter-tools.nvim" + }, ["gitsigns.nvim"] = { config = { "\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rgitsigns\frequire\0" }, loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/gitsigns.nvim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/gitsigns.nvim", url = "https://github.com/lewis6991/gitsigns.nvim" }, + ["indent-blankline.nvim"] = { + config = { "\27LJ\2\næ\1\0\0\4\0\v\0\0256\0\0\0009\0\1\0+\1\2\0=\1\2\0006\0\0\0009\0\1\0009\0\3\0\18\2\0\0009\0\4\0'\3\5\0B\0\3\0016\0\0\0009\0\1\0009\0\3\0\18\2\0\0009\0\4\0'\3\6\0B\0\3\0016\0\a\0'\2\b\0B\0\2\0029\0\t\0005\2\n\0B\0\2\1K\0\1\0\1\0\2\25space_char_blankline\6 \21show_end_of_line\2\nsetup\21indent_blankline\frequire\feol:↴\14space:â‹…\vappend\14listchars\tlist\bopt\bvim\0" }, + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/Users/aym/.local/share/nvim/site/pack/packer/opt/indent-blankline.nvim", + url = "https://github.com/lukas-reineke/indent-blankline.nvim" + }, ["lightline.vim"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/lightline.vim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/lightline.vim", url = "https://github.com/itchyny/lightline.vim" }, ["lsp_signature.nvim"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/lsp_signature.nvim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/lsp_signature.nvim", url = "https://github.com/ray-x/lsp_signature.nvim" }, ["lspsaga.nvim"] = { + config = { "\27LJ\2\nA\0\0\4\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\1\2\0004\3\0\0B\1\2\1K\0\1\0\18init_lsp_saga\flspsaga\frequire\0" }, loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/lspsaga.nvim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/lspsaga.nvim", url = "https://github.com/glepnir/lspsaga.nvim" }, ["nvim-compe"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/nvim-compe", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/nvim-compe", url = "https://github.com/hrsh7th/nvim-compe" }, ["nvim-lspconfig"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/nvim-lspconfig", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/nvim-lspconfig", url = "https://github.com/neovim/nvim-lspconfig" }, ["nvim-lspinstall"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/nvim-lspinstall", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/nvim-lspinstall", url = "https://github.com/kabouzeid/nvim-lspinstall" }, ["nvim-web-devicons"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/nvim-web-devicons", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/nvim-web-devicons", url = "https://github.com/kyazdani42/nvim-web-devicons" }, ["packer.nvim"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/packer.nvim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/packer.nvim", url = "https://github.com/wbthomason/packer.nvim" }, ["palenight.vim"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/palenight.vim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/palenight.vim", url = "https://github.com/drewtempelmeyer/palenight.vim" }, ["plenary.nvim"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/plenary.nvim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/plenary.nvim", url = "https://github.com/nvim-lua/plenary.nvim" }, ["popup.nvim"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/popup.nvim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/popup.nvim", url = "https://github.com/nvim-lua/popup.nvim" }, + ["telescope-file-browser.nvim"] = { + loaded = true, + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/telescope-file-browser.nvim", + url = "https://github.com/nvim-telescope/telescope-file-browser.nvim" + }, + ["telescope-ui-select.nvim"] = { + loaded = true, + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/telescope-ui-select.nvim", + url = "https://github.com/nvim-telescope/telescope-ui-select.nvim" + }, ["telescope.nvim"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/telescope.nvim", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/telescope.nvim", url = "https://github.com/nvim-telescope/telescope.nvim" }, + ["trouble.nvim"] = { + config = { "\27LJ\2\n9\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\ftrouble\frequire\0" }, + loaded = true, + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/trouble.nvim", + url = "https://github.com/folke/trouble.nvim" + }, ["vim-commentary"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/vim-commentary", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim-commentary", url = "https://github.com/tpope/vim-commentary" }, + ["vim-gitbranch"] = { + loaded = true, + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim-gitbranch", + url = "https://github.com/itchyny/vim-gitbranch" + }, ["vim-go"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/vim-go", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim-go", url = "https://github.com/fatih/vim-go" }, ["vim-polyglot"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/vim-polyglot", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim-polyglot", url = "https://github.com/sheerun/vim-polyglot" }, ["vim-prettier"] = { - loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/vim-prettier", + loaded = false, + needs_bufread = true, + only_cond = false, + path = "/Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier", url = "https://github.com/prettier/vim-prettier" }, ["vim-rooter"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/vim-rooter", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim-rooter", url = "https://github.com/airblade/vim-rooter" }, + ["vim-smoothie"] = { + loaded = true, + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim-smoothie", + url = "https://github.com/psliwka/vim-smoothie" + }, ["vim-styled-components"] = { loaded = true, - path = "/Users/juva/.local/share/nvim/site/pack/packer/start/vim-styled-components", + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim-styled-components", url = "https://github.com/styled-components/vim-styled-components" + }, + vim_current_word = { + loaded = true, + path = "/Users/aym/.local/share/nvim/site/pack/packer/start/vim_current_word", + url = "https://github.com/dominikduda/vim_current_word" } } time([[Defining packer_plugins]], false) +-- Config for: trouble.nvim +time([[Config for trouble.nvim]], true) +try_loadstring("\27LJ\2\n9\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\ftrouble\frequire\0", "config", "trouble.nvim") +time([[Config for trouble.nvim]], false) +-- Config for: lspsaga.nvim +time([[Config for lspsaga.nvim]], true) +try_loadstring("\27LJ\2\nA\0\0\4\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\1\2\0004\3\0\0B\1\2\1K\0\1\0\18init_lsp_saga\flspsaga\frequire\0", "config", "lspsaga.nvim") +time([[Config for lspsaga.nvim]], false) -- Config for: gitsigns.nvim time([[Config for gitsigns.nvim]], true) try_loadstring("\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rgitsigns\frequire\0", "config", "gitsigns.nvim") time([[Config for gitsigns.nvim]], false) +vim.cmd [[augroup packer_load_aucmds]] +vim.cmd [[au!]] + -- Filetype lazy-loads +time([[Defining lazy-load filetype autocommands]], true) +vim.cmd [[au FileType yaml ++once lua require("packer.load")({'indent-blankline.nvim'}, { ft = "yaml" }, _G.packer_plugins)]] +vim.cmd [[au FileType yml ++once lua require("packer.load")({'indent-blankline.nvim'}, { ft = "yml" }, _G.packer_plugins)]] +vim.cmd [[au FileType helm ++once lua require("packer.load")({'indent-blankline.nvim'}, { ft = "helm" }, _G.packer_plugins)]] +vim.cmd [[au FileType javascript ++once lua require("packer.load")({'vim-prettier'}, { ft = "javascript" }, _G.packer_plugins)]] +vim.cmd [[au FileType typescript ++once lua require("packer.load")({'vim-prettier'}, { ft = "typescript" }, _G.packer_plugins)]] +vim.cmd [[au FileType json ++once lua require("packer.load")({'vim-prettier'}, { ft = "json" }, _G.packer_plugins)]] +time([[Defining lazy-load filetype autocommands]], false) +vim.cmd("augroup END") +vim.cmd [[augroup filetypedetect]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/css.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/css.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/css.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/graphql.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/graphql.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/graphql.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/html.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/html.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/html.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/javascript.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/javascript.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/javascript.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/json.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/json.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/json.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/less.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/less.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/less.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/lua.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/lua.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/lua.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/markdown.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/markdown.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/markdown.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/php.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/php.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/php.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/ruby.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/ruby.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/ruby.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/scss.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/scss.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/scss.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/svelte.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/svelte.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/svelte.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/typescript.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/typescript.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/typescript.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/vue.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/vue.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/vue.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/xml.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/xml.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/xml.vim]], false) +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/yaml.vim]], true) +vim.cmd [[source /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/yaml.vim]] +time([[Sourcing ftdetect script at: /Users/aym/.local/share/nvim/site/pack/packer/opt/vim-prettier/ftdetect/yaml.vim]], false) +vim.cmd("augroup END") if should_profile then save_profiles() end end) if not no_errors then + error_msg = error_msg:gsub('"', '\\"') vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None') end From 2e869c931767e0e4a6e57c7506b04e71acbf0e65 Mon Sep 17 00:00:00 2001 From: Mariano Uvalle Date: Tue, 13 Dec 2022 12:20:32 -0800 Subject: [PATCH 2/8] Ignore compiled lua, add lua lsp --- .gitignore | 1 + lua/lsp/lua-ls.lua | 8 +++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 0c55d47..ac6a0d7 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ lang-srvrs/**/* .netrwhist packer_compiled.vim +packer_compiled.lua diff --git a/lua/lsp/lua-ls.lua b/lua/lsp/lua-ls.lua index 0974674..7287c1b 100644 --- a/lua/lsp/lua-ls.lua +++ b/lua/lsp/lua-ls.lua @@ -15,7 +15,6 @@ else end require'lspconfig'.sumneko_lua.setup { - cmd = {sumneko_binary, "-E", sumneko_root_path .. "/main.lua"}, settings = { Lua = { runtime = { @@ -30,8 +29,11 @@ require'lspconfig'.sumneko_lua.setup { }, workspace = { -- Make the server aware of Neovim runtime files - library = {[vim.fn.expand('$VIMRUNTIME/lua')] = true, [vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true} - } + library = vim.api.nvim_get_runtime_file("", true), + }, + telemetry = { + enable = false, + }, } } } From 88b76cc278a3f8b94327dfb31d45758511513950 Mon Sep 17 00:00:00 2001 From: AYM1607 Date: Tue, 13 Dec 2022 12:28:15 -0800 Subject: [PATCH 3/8] Delete compiled lua --- plugin/packer_compiled.lua | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 plugin/packer_compiled.lua diff --git a/plugin/packer_compiled.lua b/plugin/packer_compiled.lua deleted file mode 100644 index e69de29..0000000 From 34d0d79a3381eee5c8caf07ee5e6f7bf1b7d75da Mon Sep 17 00:00:00 2001 From: Mariano Uvalle Date: Sat, 2 Sep 2023 20:35:31 -0700 Subject: [PATCH 4/8] Fixes --- init.lua | 4 ++-- lua/keymappings.lua | 4 ++-- lua/lsp/go-ls.lua | 3 --- lua/lsp/typescript-ls.lua | 3 --- lua/plugins.lua | 26 +++++++++++++------------- 5 files changed, 17 insertions(+), 23 deletions(-) diff --git a/init.lua b/init.lua index 8fd0cbe..23f2c52 100644 --- a/init.lua +++ b/init.lua @@ -8,8 +8,8 @@ require('settings') require('lsp') require('lsp.typescript-ls') require('lsp.python-ls') -require('lsp.lua-ls') -require('lsp.elixir-ls') +-- require('lsp.lua-ls') +-- require('lsp.elixir-ls') require('lsp.go-ls') require('lsp.ocaml-ls') require('lsp.sml-ls') diff --git a/lua/keymappings.lua b/lua/keymappings.lua index d308709..16bfc5f 100644 --- a/lua/keymappings.lua +++ b/lua/keymappings.lua @@ -1,7 +1,7 @@ local lsp = vim.lsp local handlers = lsp.handlers -local saga = require('lspsaga') -saga.init_lsp_saga() +-- local saga = require('lspsaga') +-- saga.init_lsp_saga() -- Space as leader. vim.api.nvim_set_keymap('n', '', '', {noremap = true, silent = true}) diff --git a/lua/lsp/go-ls.lua b/lua/lsp/go-ls.lua index 3e1a9f8..a007170 100644 --- a/lua/lsp/go-ls.lua +++ b/lua/lsp/go-ls.lua @@ -69,6 +69,3 @@ vim.g.go_highlight_types = 1 vim.g.go_highlight_extra_types = 1 vim.g.go_highlight_functions = 1 vim.g.go_highlight_function_calls = 1 - -local saga = require 'lspsaga' -saga.init_lsp_saga() diff --git a/lua/lsp/typescript-ls.lua b/lua/lsp/typescript-ls.lua index e1317cb..fca66b7 100644 --- a/lua/lsp/typescript-ls.lua +++ b/lua/lsp/typescript-ls.lua @@ -15,6 +15,3 @@ require'lspconfig'.tsserver.setup{ filetypes = { "javascript", "javascriptreact", "javascript.jsx", "typescript", "typescriptreact", "typescript.tsx" }, root_dir = require('lspconfig/util').root_pattern("package.json", "tsconfig.json", "jsconfig.json", ".git") } - -local saga = require 'lspsaga' -saga.init_lsp_saga() diff --git a/lua/plugins.lua b/lua/plugins.lua index 55c953b..732ba8f 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -18,11 +18,11 @@ return require('packer').startup(function(use) "glepnir/lspsaga.nvim", branch = "main", config = function() - local saga = require("lspsaga") + -- local saga = require("lspsaga") - saga.init_lsp_saga({ + -- saga.init_lsp_saga({ -- your configuration - }) + -- }) end, }) use 'kabouzeid/nvim-lspinstall' @@ -37,11 +37,11 @@ return require('packer').startup(function(use) -- Syntax use 'sheerun/vim-polyglot' - use { - 'prettier/vim-prettier', - run = "yarn install", - ft = {"javascript", "typescript", "json"} - } + -- use { + --- 'prettier/vim-prettier', + -- run = "yarn install", + -- ft = {"javascript", "typescript", "json"} + -- } use {'styled-components/vim-styled-components', branch = "main"} use 'dominikduda/vim_current_word' use { @@ -87,11 +87,11 @@ return require('packer').startup(function(use) -- Git symobls. use { - 'lewis6991/gitsigns.nvim', - tag = 'release', - config = function() - require('gitsigns').setup() - end + 'lewis6991/gitsigns.nvim', + tag = 'release', + config = function() + require('gitsigns').setup() + end } use 'jiangmiao/auto-pairs' From 5178f457ec7672846bd0dcbca06d5b87b4bad7e7 Mon Sep 17 00:00:00 2001 From: Mariano Uvalle Date: Sun, 28 Apr 2024 00:31:06 +0000 Subject: [PATCH 5/8] plugin fixes --- init.lua | 5 ++--- lua/lsp/go-ls.lua | 7 ++++--- lua/lsp/init.lua | 5 ++++- lua/lsp/typescript-ls.lua | 3 --- lua/plugins.lua | 28 ++++++++++++++++++++++------ 5 files changed, 32 insertions(+), 16 deletions(-) diff --git a/init.lua b/init.lua index 1ca0277..71b3a0b 100644 --- a/init.lua +++ b/init.lua @@ -1,5 +1,4 @@ require('settings') -require('keymappings') require('nv-globals') require('plugins') require('colorscheme') @@ -10,8 +9,8 @@ require('keymappings') require('lsp') require('lsp.typescript-ls') require('lsp.python-ls') -require('lsp.lua-ls') -require('lsp.elixir-ls') +-- require('lsp.lua-ls') +-- require('lsp.elixir-ls') require('lsp.go-ls') require('lsp.ocaml-ls') -- require('lsp.sml-ls') diff --git a/lua/lsp/go-ls.lua b/lua/lsp/go-ls.lua index a007170..baca891 100644 --- a/lua/lsp/go-ls.lua +++ b/lua/lsp/go-ls.lua @@ -6,7 +6,7 @@ lspconfig.gopls.setup { -- floating_window = true, --hint_enable = true, fix_pos = true, - use_lspsaga = true, + -- use_lspsaga = true, handler_opts = { border = "rounded" -- double, single, shadow, none }, @@ -28,7 +28,7 @@ lspconfig.gopls.setup { } ------- Configre vim-go +------ Configure vim-go -- Disable autocomplete since we already have it with native lsp. vim.g.go_code_completion_enabled = 0 -- Disable gopls for the same reasons as above. @@ -39,8 +39,9 @@ vim.g.go_fmt_command = 'gofmt' vim.g.go_fmt_options = { gofmt = '-s', } - vim.g.go_imports_mode = 'goimports' +vim.g.go_mod_fmt_autosave = 1 +vim.g.go_imports_autosave = 1 -- Could confilg with lsp saga, should experiment. vim.g.go_doc_keywordprg_enabled = 0 diff --git a/lua/lsp/init.lua b/lua/lsp/init.lua index 377ae3a..37367a9 100644 --- a/lua/lsp/init.lua +++ b/lua/lsp/init.lua @@ -1,5 +1,6 @@ local lsp = vim.lsp local handlers = lsp.handlers +local keymap = vim.keymap.set -- Hover doc popup local pop_opts = { border = "rounded", max_width = 80 } @@ -10,5 +11,7 @@ vim.api.nvim_set_keymap('n', 'lgd', 'lua vim.lsp.buf.definition()lgD', 'lua vim.lsp.buf.declaration()', {noremap = true, silent = true}) vim.api.nvim_set_keymap('n', 'lgr', 'lua vim.lsp.buf.references()', {noremap = true, silent = true}) vim.api.nvim_set_keymap('n', 'lgi', 'lua vim.lsp.buf.implementation()', {noremap = true, silent = true}) -vim.api.nvim_set_keymap('n', 'lr', 'lua require("lspsaga.rename").rename()', {noremap = true, silent = true}) +-- vim.api.nvim_set_keymap('n', 'lr', 'lua require("lspsaga.rename").rename()', {noremap = true, silent = true}) +-- Rename all occurrences of the hovered word for the selected files +keymap("n", "lr", "Lspsaga rename ++project") vim.api.nvim_set_keymap('n', 'K', 'lua vim.lsp.buf.hover()', {noremap = true, silent = true}) diff --git a/lua/lsp/typescript-ls.lua b/lua/lsp/typescript-ls.lua index e1317cb..fca66b7 100644 --- a/lua/lsp/typescript-ls.lua +++ b/lua/lsp/typescript-ls.lua @@ -15,6 +15,3 @@ require'lspconfig'.tsserver.setup{ filetypes = { "javascript", "javascriptreact", "javascript.jsx", "typescript", "typescriptreact", "typescript.tsx" }, root_dir = require('lspconfig/util').root_pattern("package.json", "tsconfig.json", "jsconfig.json", ".git") } - -local saga = require 'lspsaga' -saga.init_lsp_saga() diff --git a/lua/plugins.lua b/lua/plugins.lua index cbd89b3..69f74ef 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -14,7 +14,23 @@ return require('packer').startup(function(use) -- LSP use 'neovim/nvim-lspconfig' - use 'glepnir/lspsaga.nvim' + use({ + 'nvimdev/lspsaga.nvim', + after = 'nvim-lspconfig', + config = function() + require("lspsaga").setup({ + lightbulb = { + enable = false, + sign = false, + }, + }) + end, + requires = { + {"nvim-tree/nvim-web-devicons"}, + --Please make sure you install markdown and markdown_inline parser + {"nvim-treesitter/nvim-treesitter"} + } + }) use 'kabouzeid/nvim-lspinstall' -- Autocomplete use 'hrsh7th/nvim-compe' @@ -27,11 +43,11 @@ return require('packer').startup(function(use) -- Syntax use 'sheerun/vim-polyglot' - use { - 'prettier/vim-prettier', - run = "yarn install", - ft = {"javascript", "typescript", "json"} - } + -- use { + -- 'prettier/vim-prettier', + -- run = "yarn install", + -- ft = {"javascript", "typescript", "json"} + -- } use {'styled-components/vim-styled-components', branch = "main"} use 'dominikduda/vim_current_word' use { From 8917eae5314ba517f75f57d4c8ebcb08ef1cdd7e Mon Sep 17 00:00:00 2001 From: Mariano Uvalle Date: Sun, 28 Apr 2024 00:31:18 +0000 Subject: [PATCH 6/8] Add window movements --- lua/keymappings.lua | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lua/keymappings.lua b/lua/keymappings.lua index 781d226..6b18161 100644 --- a/lua/keymappings.lua +++ b/lua/keymappings.lua @@ -33,6 +33,11 @@ vim.api.nvim_set_keymap('t', '', '', {silent = true}) -- Move right when in insert mode. vim.api.nvim_set_keymap("i", '', '', {noremap = true, silent = true}) +-- Easily move between windows +vim.api.nvim_set_keymap("n", 'wm', 'h', {silent = true}) +vim.api.nvim_set_keymap("n", 'wn', 'j', {silent = true}) +vim.api.nvim_set_keymap("n", 'we', 'k', {silent = true}) +vim.api.nvim_set_keymap("n", 'wi', 'l', {silent = true}) -- Quick save. vim.api.nvim_set_keymap('n', 'fw', ':w', {silent = true}) From 25a1f1b1bee7965346c8069ee090864e73a983a9 Mon Sep 17 00:00:00 2001 From: jmug Date: Sat, 30 Nov 2024 23:42:20 +0000 Subject: [PATCH 7/8] New lua and ts/js lsp config. Signed-off-by: jmug --- init.lua | 3 +- lua/lsp/lua-ls.lua | 66 ++++++++++++++++++--------------------- lua/lsp/typescript-ls.lua | 15 +-------- 3 files changed, 32 insertions(+), 52 deletions(-) diff --git a/init.lua b/init.lua index 23f2c52..ece8189 100644 --- a/init.lua +++ b/init.lua @@ -8,8 +8,7 @@ require('settings') require('lsp') require('lsp.typescript-ls') require('lsp.python-ls') --- require('lsp.lua-ls') --- require('lsp.elixir-ls') +require('lsp.lua-ls') require('lsp.go-ls') require('lsp.ocaml-ls') require('lsp.sml-ls') diff --git a/lua/lsp/lua-ls.lua b/lua/lsp/lua-ls.lua index 7287c1b..e7fd924 100644 --- a/lua/lsp/lua-ls.lua +++ b/lua/lsp/lua-ls.lua @@ -1,39 +1,33 @@ --- https://github.com/sumneko/lua-language-server/wiki/Build-and-Run-(Standalone) -USER = vim.fn.expand('$USER') +require'lspconfig'.lua_ls.setup { + on_init = function(client) + if client.workspace_folders then + local path = client.workspace_folders[1].name + if vim.uv.fs_stat(path..'/.luarc.json') or vim.uv.fs_stat(path..'/.luarc.jsonc') then + return + end + end -local sumneko_root_path = "" -local sumneko_binary = "" - -if vim.fn.has("mac") == 1 then - sumneko_root_path = "/Users/" .. USER .. "/.config/nvim/lang-srvrs/lua-language-server" - sumneko_binary = "/Users/" .. USER .. "/.config/nvim/lang-srvrs/lua-language-server/bin/macOS/lua-language-server" -elseif vim.fn.has("unix") == 1 then - sumneko_root_path = "/home/" .. USER .. "/.config/nvim/lang-srvrs/lua-language-server" - sumneko_binary = "/home/" .. USER .. "/.config/nvim/lang-srvrs/lua-language-server/bin/Linux/lua-language-server" -else - print("Unsupported system for sumneko") -end - -require'lspconfig'.sumneko_lua.setup { - settings = { - Lua = { - runtime = { - -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) - version = 'LuaJIT', - -- Setup your lua path - path = vim.split(package.path, ';') - }, - diagnostics = { - -- Get the language server to recognize the `vim` global - globals = {'vim'} - }, - workspace = { - -- Make the server aware of Neovim runtime files - library = vim.api.nvim_get_runtime_file("", true), - }, - telemetry = { - enable = false, - }, + client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua, { + runtime = { + -- Tell the language server which version of Lua you're using + -- (most likely LuaJIT in the case of Neovim) + version = 'LuaJIT' + }, + -- Make the server aware of Neovim runtime files + workspace = { + checkThirdParty = false, + library = { + vim.env.VIMRUNTIME + -- Depending on the usage, you might want to add additional paths here. + -- "${3rd}/luv/library" + -- "${3rd}/busted/library", } - } + -- or pull in all of 'runtimepath'. NOTE: this is a lot slower and will cause issues when working on your own configuration (see https://github.com/neovim/nvim-lspconfig/issues/3189) + -- library = vim.api.nvim_get_runtime_file("", true) + } + }) + end, + settings = { + Lua = {} + } } diff --git a/lua/lsp/typescript-ls.lua b/lua/lsp/typescript-ls.lua index fca66b7..0506d00 100644 --- a/lua/lsp/typescript-ls.lua +++ b/lua/lsp/typescript-ls.lua @@ -1,17 +1,4 @@ -require'lspconfig'.tsserver.setup{ - on_attach = function(client, bufnr) - require "lsp_signature".on_attach({ - bind = false, - -- floating_window = true, - --hint_enable = true, - fix_pos = true, - use_lspsaga = true, - --handler_opts = { - -- border = "single" -- double, single, shadow, none - --}, - }) - end, - cmd = {DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server", "--stdio"}, +require'lspconfig'.ts_ls.setup{ filetypes = { "javascript", "javascriptreact", "javascript.jsx", "typescript", "typescriptreact", "typescript.tsx" }, root_dir = require('lspconfig/util').root_pattern("package.json", "tsconfig.json", "jsconfig.json", ".git") } From 39d7ddcd8b21046c3886151f8684ba2ce7f7cb5f Mon Sep 17 00:00:00 2001 From: jmug Date: Sat, 30 Nov 2024 23:42:32 +0000 Subject: [PATCH 8/8] remove elixir ls config Signed-off-by: jmug --- elixir-ls.lua | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 elixir-ls.lua diff --git a/elixir-ls.lua b/elixir-ls.lua deleted file mode 100644 index fc0a1b0..0000000 --- a/elixir-ls.lua +++ /dev/null @@ -1,6 +0,0 @@ -local elixir_ls_binary = "/Users/" .. USER .. "/.config/nvim/lang-srvrs/elixir-ls/language_server.sh" - -require'lspconfig'.elixirls.setup{ - -- Unix - cmd = {elixir_ls_binary}; -}