-- Bootstrap lazy.nvim if not installed local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not vim.loop.fs_stat(lazypath) then vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath }) end vim.opt.rtp:prepend(lazypath) -- Plugins require("lazy").setup({ -- Core "nvim-lua/plenary.nvim", -- UI "nvim-lualine/lualine.nvim", "nvim-tree/nvim-web-devicons", -- Treesitter { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate" }, -- Telescope "nvim-telescope/telescope.nvim", -- LSP "neovim/nvim-lspconfig", -- Themes "folke/tokyonight.nvim", { 'sainnhe/sonokai', lazy = false, priority = 1000, config = function() -- Optionally configure and load the colorscheme -- directly inside the plugin declaration. vim.g.sonokai_enable_italic = true vim.cmd.colorscheme('sonokai') end }, -- Autocomplete { "hrsh7th/nvim-cmp", "hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-buffer", "hrsh7th/cmp-path", "hrsh7th/cmp-cmdline", "L3MON4D3/LuaSnip", "saadparwaiz1/cmp_luasnip", "rafamadriz/friendly-snippets", }, -- Markdown Preview Page { "iamcco/markdown-preview.nvim", cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" }, ft = { "markdown" }, build = function() require("lazy").load({ plugins = { "markdown-preview.nvim" } }) vim.fn["mkdp#util#install"]() end, config = function() vim.g.mkdp_echo_preview_url = 1 vim.cmd([[ function! OpenMarkdownPreview(url) call jobstart(['xdg-open', a:url], {'detach': v:true}) endfunction ]]) vim.g.mkdp_browserfunc = "OpenMarkdownPreview" end, }, -- Tabs { 'romgrk/barbar.nvim', dependencies = { 'lewis6991/gitsigns.nvim', -- OPTIONAL: for git status 'nvim-tree/nvim-web-devicons', -- OPTIONAL: for file icons }, init = function() vim.g.barbar_auto_setup = false end, opts = { -- lazy.nvim will automatically call setup for you. put your options here, anything missing will use the default: -- animation = true, -- insert_at_start = true, -- …etc. }, }, { "nvim-neo-tree/neo-tree.nvim", branch = "v3.x", dependencies = { "nvim-lua/plenary.nvim", "MunifTanjim/nui.nvim", "nvim-tree/nvim-web-devicons", -- optional, but recommended }, lazy = false, -- neo-tree will lazily load itself }, -- GitHub Copilot "github/copilot.vim", { "lervag/vimtex", lazy = false, -- we don't want to lazy load VimTeX -- tag = "v2.15", -- uncomment to pin to a specific release init = function() -- VimTeX configuration goes here, e.g. vim.g.vimtex_view_method = "zathura" end }, })