113 lines
3.0 KiB
Lua
113 lines
3.0 KiB
Lua
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
|
if not (vim.uv or 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)
|
|
|
|
require("lazy").setup({
|
|
-- Vscode-like pictograms
|
|
{
|
|
"onsails/lspkind.nvim",
|
|
event = { "VimEnter" },
|
|
},
|
|
|
|
-- Auto-completion engine
|
|
{
|
|
"hrsh7th/nvim-cmp",
|
|
dependencies = {
|
|
"lspkind.nvim",
|
|
"hrsh7th/cmp-nvim-lsp", -- lsp auto-completion
|
|
"hrsh7th/cmp-buffer", -- buffer auto-completion
|
|
"hrsh7th/cmp-path", -- path auto-completion
|
|
"hrsh7th/cmp-cmdline", -- cmdline auto-completion
|
|
},
|
|
config = function()
|
|
require("config.nvim-cmp")
|
|
end,
|
|
},
|
|
|
|
-- Code snippet engine
|
|
{
|
|
"L3MON4D3/LuaSnip",
|
|
version = "v2.*",
|
|
},
|
|
|
|
-- LSP manager
|
|
"williamboman/mason.nvim",
|
|
"williamboman/mason-lspconfig.nvim",
|
|
"neovim/nvim-lspconfig",
|
|
|
|
-- neogit setup
|
|
{
|
|
"NeogitOrg/neogit",
|
|
dependencies = {
|
|
"nvim-lua/plenary.nvim", -- required
|
|
"sindrets/diffview.nvim", -- optional - Diff integration
|
|
|
|
-- Only one of these is needed, not both.
|
|
-- "nvim-telescope/telescope.nvim", -- optional
|
|
"ibhagwan/fzf-lua", -- optional
|
|
},
|
|
config = true
|
|
},
|
|
|
|
-- org-mode
|
|
{
|
|
'nvim-orgmode/orgmode',
|
|
event = 'VeryLazy',
|
|
ft = { 'org' },
|
|
config = function()
|
|
-- Setup orgmode
|
|
require('orgmode').setup({
|
|
org_agenda_files = '~/orgfiles/**/*',
|
|
org_default_notes_file = '~/orgfiles/refile.org',
|
|
})
|
|
|
|
-- NOTE: If you are using nvim-treesitter with ~ensure_installed = "all"~ option
|
|
-- add ~org~ to ignore_install
|
|
-- require('nvim-treesitter.configs').setup({
|
|
-- ensure_installed = 'all',
|
|
-- ignore_install = { 'org' },
|
|
-- })
|
|
end,
|
|
},
|
|
|
|
-- fzf-lua
|
|
{
|
|
"ibhagwan/fzf-lua",
|
|
-- optional for icon support
|
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
|
config = function()
|
|
-- calling `setup` is optional for customization
|
|
require("fzf-lua").setup({})
|
|
end
|
|
},
|
|
|
|
-- whichkey
|
|
{
|
|
"folke/which-key.nvim",
|
|
event = "VeryLazy",
|
|
opts = {
|
|
-- your configuration comes here
|
|
-- or leave it empty to use the default settings
|
|
-- refer to the configuration section below
|
|
},
|
|
keys = {
|
|
{
|
|
"<leader>?",
|
|
function()
|
|
require("which-key").show({ global = false })
|
|
end,
|
|
desc = "Buffer Local Keymaps (which-key)",
|
|
},
|
|
},
|
|
},
|
|
})
|