1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
-- this file contains plugin settings as well as initialization of lazy.nvim
-- plugins to be installed
plugins = {
{ "folke/lazy.nvim" }, -- plugin manager
{ "nvim-lua/popup.nvim" }, -- some functions for other plugins
{ "nvim-lua/plenary.nvim" }, -- some functions for other plugins
{ "folke/which-key.nvim" }, -- pretty self-descriptive name
{ "rafi/awesome-vim-colorschemes" }, -- colorschemes
{ "lunarvim/colorschemes" }, -- colorschemes
{ "folke/tokyonight.nvim" }, -- colorschemes
{ "tpope/vim-commentary" }, -- gc & gcc for commenting
{ "preservim/nerdtree" }, -- file explorer
{
"windwp/nvim-autopairs",
event = { "InsertEnter" }, -- automatically pair brackets and quotes
},
{
"tpope/vim-surround", -- replace quotes e.t.c
event = { "InsertEnter" },
},
{
"nvim-treesitter/nvim-treesitter", -- folding code, advanced syntax highlighting & sitting on a tree
event = { "InsertEnter" },
},
{
"neovim/nvim-lspconfig", -- LSP configuration
event = { "InsertEnter" },
},
{
"simrat39/rust-tools.nvim",
},
-- { "hrsh7th/vim-vsnip" }, -- snippet engine
{
"L3MON4D3/LuaSnip", -- better snippet engine
event = { "InsertEnter" },
},
{
"saadparwaiz1/cmp_luasnip", -- for luasnip
event = { "InsertEnter" },
},
{
"rafamadriz/friendly-snippets", -- predefined snippets
event = { "InsertEnter" },
},
-- Autocompletion framework
{
"hrsh7th/nvim-cmp", -- the framework
event = { "InsertEnter" },
},
{
"hrsh7th/cmp-nvim-lua", -- lua config
event = { "InsertEnter" },
},
{
"hrsh7th/cmp-nvim-lsp-signature-help", -- ?????????? a monsterature-help"
event = { "InsertEnter" },
},
{
"hrsh7th/cmp-nvim-lsp", -- LSP completion
event = { "InsertEnter" },
},
{
"hrsh7th/cmp-path", -- /mnt/D/media/audio_sync/term_download_mp3/HELLO_I_AM_EMU_OTORI.mp3
event = { "InsertEnter" },
},
{
"hrsh7th/cmp-buffer", -- current buffer
event = { "InsertEnter" },
},
{
"hrsh7th/cmp-cmdline", -- command line tools
event = { "InsertEnter" },
},
{
"Saecki/crates.nvim", -- rust packages from crates.io
event = { "BufRead Cargo.toml" },
setup = function()
require('crates').setup()
end,
},
{
'akinsho/bufferline.nvim', -- tab & buffer line
version = "*",
-- dependencies = 'nvim-tree/nvim-web-devicons'
-- for more details on how to configure this plugin in details please see `:h bufferline-configuration`
},
--{ "lvimuser/lsp-inlayhints.nvim" } -- saved for the better times
}
-- options for lazy
opts = {
}
-- some lazy.nvim magic
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",
"--branch=stable", -- latest stable release
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
-- initialization
lazy = require("lazy")
lazy.setup(plugins, opts)
-- miscellanous plugin setup
require('bufferline').setup{}
|