Clone kickstart.nvim:
# on Linux and Mac
git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim
- Inside of your copy, feel free to modify any file you like! It's your copy!
- Feel free to change any of the default options in
init.lua
to better suit your needs. - For adding plugins, there are 3 primary options:
- Add new configuration in
lua/custom/plugins/*
files, which will be auto sourced usinglazy.nvim
(uncomment the line importing thecustom/plugins
directory in theinit.lua
file to enable this) - Modify
init.lua
with additional plugins. - Include the
lua/kickstart/plugins/*
files in your configuration.
- Add new configuration in
You can also merge updates/changes from the repo back into your fork, to keep up-to-date with any changes for the default configuration.
In the file: lua/custom/plugins/autopairs.lua
, add:
-- File: lua/custom/plugins/autopairs.lua
return {
"windwp/nvim-autopairs",
-- Optional dependency
dependencies = { 'hrsh7th/nvim-cmp' },
config = function()
require("nvim-autopairs").setup {}
-- If you want to automatically add `(` after selecting a function or method
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
local cmp = require('cmp')
cmp.event:on(
'confirm_done',
cmp_autopairs.on_confirm_done()
)
end,
}
This will automatically install windwp/nvim-autopairs and enable it on startup. For more information, see documentation for lazy.nvim.
In the file: lua/custom/plugins/filetree.lua
, add:
-- Unless you are still migrating, remove the deprecated commands from v1.x
vim.cmd([[ let g:neo_tree_remove_legacy_commands = 1 ]])
return {
"nvim-neo-tree/neo-tree.nvim",
version = "*",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
"MunifTanjim/nui.nvim",
},
config = function ()
require('neo-tree').setup {}
end,
}
This will install the tree plugin and add the command :Neotree
for you. You can explore the documentation at neo-tree.nvim for more information.