From 0d7bcd581dc12eeca4645f7ac4317478b65b1eee Mon Sep 17 00:00:00 2001 From: juan Date: Thu, 13 Apr 2023 10:54:07 +0800 Subject: [PATCH] Fix null-ls --- lua/plugins.lua | 303 ++++++++++++++++++-------------- lua/plugins/null-ls.lua | 7 +- lua/plugins/nvim-ts-rainbow.lua | 9 - lua/plugins/treesitter.lua | 40 +++-- 4 files changed, 201 insertions(+), 158 deletions(-) delete mode 100644 lua/plugins/nvim-ts-rainbow.lua diff --git a/lua/plugins.lua b/lua/plugins.lua index 56e8615..9a932f5 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -1,19 +1,21 @@ -return require('packer').startup(function(use) - use { 'wbthomason/packer.nvim' } +return require("packer").startup(function(use) + use({ "wbthomason/packer.nvim" }) -- core UI use({ - 'ellisonleao/gruvbox.nvim', + "ellisonleao/gruvbox.nvim", config = function() - vim.cmd('colorscheme gruvbox') - end + vim.cmd("colorscheme gruvbox") + end, + }) + use({ "nvim-tree/nvim-web-devicons" }) + use({ + "nvim-lualine/lualine.nvim", + after = { "nvim-web-devicons" }, + config = function() + require("plugins.statusline") + end, }) - use { 'kyazdani42/nvim-web-devicons' } - use { - 'nvim-lualine/lualine.nvim', - after = { 'nvim-web-devicons' }, - config = function() require 'plugins.statusline' end - } -- use { -- 'romgrk/barbar.nvim', -- requires = {'kyazdani42/nvim-web-devicons'}, @@ -23,130 +25,155 @@ return require('packer').startup(function(use) -- } -- lsp stuff - use { - 'neovim/nvim-lspconfig', + use({ + "neovim/nvim-lspconfig", after = { "mason-lspconfig.nvim", "null-ls.nvim" }, - config = function() require 'plugins.lsp' end - } - use { 'williamboman/mason-lspconfig.nvim', after = 'mason.nvim' } - use { 'hrsh7th/cmp-nvim-lsp', after = 'nvim-lspconfig' } - use { - 'ray-x/lsp_signature.nvim', - after = 'nvim-lspconfig', - config = function() require 'plugins.lsp-signature' end - } + config = function() + require("plugins.lsp") + end, + }) + use({ "williamboman/mason-lspconfig.nvim", after = "mason.nvim" }) + use({ "hrsh7th/cmp-nvim-lsp", after = "nvim-lspconfig" }) + use({ + "ray-x/lsp_signature.nvim", + after = {"nvim-cmp"}, + config = function() + require("plugins.lsp-signature") + end, + }) - -- tree sitter - use { - 'nvim-treesitter/nvim-treesitter', - event = 'UIEnter', - config = function() require 'plugins.treesitter' end, - run = ':TSUpdate' - } + -- tree sitter modules and tree sitter + use({ + "nvim-treesitter/nvim-treesitter", + requires = { + { + "HiPhish/nvim-ts-rainbow2", + after = { "nvim-treesitter" }, + config = function() + require("plugins.treesitter") + end, + }, + }, + event = "BufEnter", + run = ":TSUpdate", + }) -- completer - use { - 'L3MON4D3/LuaSnip', - event = 'UIEnter', - requires = { 'rafamadriz/friendly-snippets' } - } - use { - 'hrsh7th/nvim-cmp', - event = 'InsertEnter', - after = { 'LuaSnip', 'cmp-nvim-lsp', 'nvim-treesitter' }, - config = function() require 'plugins.cmp' end, + use({ + "L3MON4D3/LuaSnip", + event = "UIEnter", + requires = { "rafamadriz/friendly-snippets" }, + }) + use({ + "hrsh7th/nvim-cmp", + event = "InsertEnter", + after = { "LuaSnip", "cmp-nvim-lsp", "nvim-treesitter" }, + config = function() + require("plugins.cmp") + end, requires = { -- local - { 'hrsh7th/cmp-cmdline', after = 'nvim-cmp' }, - { 'hrsh7th/cmp-buffer', after = 'nvim-cmp' }, - { 'hrsh7th/cmp-path', after = 'nvim-cmp' }, { - 'petertriho/cmp-git', - after = 'nvim-cmp', - config = function() require("cmp_git").setup() end - }, { 'delphinus/cmp-ctags', after = 'nvim-cmp' }, -- end + { "hrsh7th/cmp-cmdline", after = "nvim-cmp" }, + { "hrsh7th/cmp-buffer", after = "nvim-cmp" }, + { "hrsh7th/cmp-path", after = "nvim-cmp" }, + { + "petertriho/cmp-git", + after = "nvim-cmp", + config = function() + require("cmp_git").setup() + end, + }, + { "delphinus/cmp-ctags", after = "nvim-cmp" }, -- end -- lsp - { 'hrsh7th/cmp-nvim-lsp-document-symbol', after = 'nvim-cmp' }, -- TS - { 'ray-x/cmp-treesitter', after = 'nvim-cmp' }, -- end + { "hrsh7th/cmp-nvim-lsp-document-symbol", after = "nvim-cmp" }, -- TS + { "ray-x/cmp-treesitter", after = "nvim-cmp" }, -- end -- Snip - { 'saadparwaiz1/cmp_luasnip', after = { 'nvim-cmp', 'LuaSnip' } }, - } - } + { "saadparwaiz1/cmp_luasnip", after = { "nvim-cmp", "LuaSnip" } }, + }, + }) -- formating and editing - use { "williamboman/mason.nvim", event = 'BufEnter' } - use { - 'windwp/nvim-autopairs', - after = 'nvim-cmp', - config = function() require('plugins.nvim-autopairs') end - } - use { + use({ "williamboman/mason.nvim", event = "BufEnter" }) + use({ + "windwp/nvim-autopairs", + after = "nvim-cmp", + config = function() + require("plugins.nvim-autopairs") + end, + }) + use({ "jose-elias-alvarez/null-ls.nvim", requires = { "nvim-lua/plenary.nvim" }, - event = 'BufEnter' - } - use { + event = "BufEnter", + }) + use({ "jay-babu/mason-null-ls.nvim", config = function() - require 'plugins.null-ls' + require("plugins.null-ls") end, - after = { "mason.nvim", "null-ls.nvim" } - } - use { - 'mattn/emmet-vim', - ft = { 'html', 'htmldjango', 'css', 'markdown' }, - setup = function() require 'plugins.emmet' end - } - use { 'machakann/vim-sandwich', event = 'UIEnter' } + after = { "mason.nvim", "null-ls.nvim" }, + }) + use({ + "mattn/emmet-vim", + ft = { "html", "htmldjango", "css", "markdown" }, + setup = function() + require("plugins.emmet") + end, + }) + use({ "machakann/vim-sandwich", event = "UIEnter" }) - use { - 'numToStr/Comment.nvim', - event = 'UIEnter', - config = function() require('Comment').setup() end - } + use({ + "numToStr/Comment.nvim", + event = "UIEnter", + config = function() + require("Comment").setup() + end, + }) -- navigation - use { - 'andymass/vim-matchup', - after = 'nvim-treesitter', - config = function() require 'plugins.matchup' end - } - use { - 'nvim-telescope/telescope.nvim', - event = 'UIEnter', - requires = { 'nvim-lua/plenary.nvim' }, - config = function() require 'plugins.telescope' end - } - use { 'preservim/tagbar', cmd = 'TagbarToggle' } - use { - 'phaazon/hop.nvim', - event = 'UIEnter', - as = 'hop', + use({ + "andymass/vim-matchup", + after = "nvim-treesitter", config = function() - require 'hop'.setup { keys = 'etovxqpdygfblzhckisuran' } - end - } + require("plugins.matchup") + end, + }) + use({ + "nvim-telescope/telescope.nvim", + event = "UIEnter", + requires = { "nvim-lua/plenary.nvim" }, + config = function() + require("plugins.telescope") + end, + }) + use({ "preservim/tagbar", cmd = "TagbarToggle" }) + use({ + "phaazon/hop.nvim", + event = "UIEnter", + as = "hop", + config = function() + require("hop").setup({ keys = "etovxqpdygfblzhckisuran" }) + end, + }) -- eye-candy - use { - 'eandrju/cellular-automaton.nvim', - cmd = "CellularAutomaton" - } - use { - 'lewis6991/gitsigns.nvim', - event = 'UIEnter', - requires = { 'nvim-lua/plenary.nvim' }, - config = function() require 'plugins.gitsigns' end - } - use { - 'p00f/nvim-ts-rainbow', - after = 'nvim-treesitter', - config = function() require 'plugins.nvim-ts-rainbow' end - } - use { - 'nvim-treesitter/nvim-treesitter-context', - after = 'nvim-treesitter', + use({ + "eandrju/cellular-automaton.nvim", + cmd = "CellularAutomaton", + }) + use({ + "lewis6991/gitsigns.nvim", + event = "UIEnter", + requires = { "nvim-lua/plenary.nvim" }, config = function() - require 'treesitter-context'.setup { + require("plugins.gitsigns") + end, + }) + use({ + "nvim-treesitter/nvim-treesitter-context", + after = "nvim-treesitter", + config = function() + require("treesitter-context").setup({ enable = true, -- Enable this plugin (Can be enabled/disabled later via commands) max_lines = 0, -- How many lines the window should span. Values <= 0 mean no limit. patterns = { @@ -156,29 +183,39 @@ return require('packer').startup(function(use) -- By setting the 'default' entry below, you can control which nodes you want to -- appear in the context window. default = { - 'class', 'function', 'method', 'for', -- These won't appear in the context - 'while', 'if', 'switch', 'case' - } - } - } - end - } - use { - 'winston0410/range-highlight.nvim', - event = 'CmdlineEnter', - config = function() require('range-highlight').setup {} end, - requires = 'winston0410/cmd-parser.nvim' - } - use { - 'norcalli/nvim-colorizer.lua', - event = 'BufEnter', - config = function() require 'plugins.nvim-colorizer' end - } + "class", + "function", + "method", + "for", -- These won't appear in the context + "while", + "if", + "switch", + "case", + }, + }, + }) + end, + }) + use({ + "winston0410/range-highlight.nvim", + event = "CmdlineEnter", + config = function() + require("range-highlight").setup({}) + end, + requires = "winston0410/cmd-parser.nvim", + }) + use({ + "norcalli/nvim-colorizer.lua", + event = "BufEnter", + config = function() + require("plugins.nvim-colorizer") + end, + }) -- integrations - use { 'tpope/vim-fugitive', cmd = 'G' } + use({ "tpope/vim-fugitive", cmd = "G" }) -- fixes and misc. stuff - use { 'antoinemadec/FixCursorHold.nvim', event = 'UIEnter' } + use({ "antoinemadec/FixCursorHold.nvim", event = "UIEnter" }) end) -- vim:set shiftwidth=4 tabstop=4: diff --git a/lua/plugins/null-ls.lua b/lua/plugins/null-ls.lua index 55f9026..0a79f71 100644 --- a/lua/plugins/null-ls.lua +++ b/lua/plugins/null-ls.lua @@ -1,12 +1,13 @@ require("mason").setup() require("mason-null-ls").setup({ + ensure_installed = { + -- Opt to list sources here, when available in mason. + }, automatic_installation = false, - automatic_setup = true, -- Recommended, but optional + handlers = {}, }) require("null-ls").setup({ sources = { -- Anything not supported by mason. } }) - -require 'mason-null-ls'.setup_handlers() -- If `automatic_setup` is true. diff --git a/lua/plugins/nvim-ts-rainbow.lua b/lua/plugins/nvim-ts-rainbow.lua deleted file mode 100644 index 76a37ec..0000000 --- a/lua/plugins/nvim-ts-rainbow.lua +++ /dev/null @@ -1,9 +0,0 @@ -require'nvim-treesitter.configs'.setup { - rainbow = { - enable = true, - extended_mode = true, -- Also highlight non-bracket delimiters like html tags, boolean or table: lang -> boolean - max_file_lines = 4096, -- Do not enable for files with more than n lines, int - termcolors = {"red", "yellow", "green", "blue"} -- table of colour name strings - } -} - diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index a9f5a77..d0e6773 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -1,13 +1,27 @@ -require'nvim-treesitter.configs'.setup { - ensure_installed = {"lua"}, -- one of "all", "maintained" (parsers with maintainers), or a list of languages - highlight = { - enable = true, -- false will disable the whole extension - -- Setting this to true will run `:h syntax` and tree-sitter at the same time. - -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation). - -- Using this option may slow down your editor, and you may see some duplicate highlights. - -- Instead of true it can also be a list of languages - additional_vim_regex_highlighting = true, - use_languagetree = true - }, - indent = {enable = true} -} +local rainbow = require("ts-rainbow") +require("nvim-treesitter.configs").setup({ + ensure_installed = { "lua" }, -- one of "all", "maintained" (parsers with maintainers), or a list of languages + highlight = { + enable = true, -- false will disable the whole extension + -- Setting this to true will run `:h syntax` and tree-sitter at the same time. + -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation). + -- Using this option may slow down your editor, and you may see some duplicate highlights. + -- Instead of true it can also be a list of languages + additional_vim_regex_highlighting = true, + use_languagetree = true, + }, + indent = { enable = true }, + rainbow = { + enable = true, + strategy = rainbow.strategy['local'], + hlgroups = { + "TSRainbowYellow", + "TSRainbowBlue", + "TSRainbowOrange", + "TSRainbowGreen", + "TSRainbowViolet", + "TSRainbowCyan", + "TSRainbowRed", + }, + }, +})