init.lua/lua/fk/plugin.lua(view raw)
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 |
local function get_config(path)
return string.format("require[[%s]]", path)
end
local function get_setup(path)
return string.format("require[[%s]].setup()", path)
end
return require("packer").startup(function(use)
use "wbthomason/packer.nvim"
use "nvim-lua/plenary.nvim"
use "kyazdani42/nvim-web-devicons"
use "rmehri01/onenord.nvim" -- theme
use "gpanders/editorconfig.nvim"
use "lewis6991/impatient.nvim"
use { "tpope/vim-surround", keys = { "c", "d", "y" } }
use { "numToStr/Comment.nvim", keys = { "gc" }, config = get_setup "Comment" }
use { "windwp/nvim-autopairs", config = get_config "fk.plugin.autopairs" }
use { "ahmedkhalf/project.nvim", config = get_config "fk.plugin.project" }
-- languages
use { "~/code/gopher.nvim", ft = "go" }
use { "folke/lua-dev.nvim", ft = "lua", config = get_config "fk.plugin.lua-dev" }
use { "zah/nim.vim", ft = "nim" }
-- git
use { "TimUntersberger/neogit", cmd = "Neogit", config = get_setup "neogit" }
use { "lewis6991/gitsigns.nvim", config = get_config "fk.plugin.gitsigns" }
-- appearance
use { "folke/which-key.nvim", config = get_config "fk.plugin.whichkey" }
use { "nvim-lualine/lualine.nvim", config = get_config "fk.plugin.statusline" }
use { "folke/todo-comments.nvim", config = get_setup "todo-comments" }
-- another menus :D
use {
"kyazdani42/nvim-tree.lua",
cmd = "NvimTreeToggle",
config = get_config "fk.plugin.nvimtree",
}
use {
"folke/trouble.nvim",
cmd = { "Trouble", "TroubleToggle" },
config = get_setup "trouble",
}
use {
"akinsho/toggleterm.nvim",
config = get_config "fk.plugin.terminal",
module = "toggleterm",
keys = "<C-t>",
}
use {
"nvim-telescope/telescope.nvim",
cmd = "Telescope",
module = "telescope",
config = get_config "fk.plugin.telescope",
}
-- Lsp
use {
"neovim/nvim-lspconfig",
config = get_setup "fk.lsp",
requires = {
"williamboman/nvim-lsp-installer",
"jose-elias-alvarez/null-ls.nvim",
},
}
-- Completion
use {
"hrsh7th/nvim-cmp",
config = get_config "fk.plugin.cmp",
event = "InsertEnter",
module = "cmp",
requires = {
{ "hrsh7th/cmp-nvim-lua", after = "nvim-cmp" },
{ "hrsh7th/cmp-nvim-lsp", module = "cmp_nvim_lsp" },
{ "hrsh7th/cmp-buffer", after = "nvim-cmp" },
{ "hrsh7th/cmp-path", after = "nvim-cmp" },
{ "saadparwaiz1/cmp_luasnip", after = "nvim-cmp" },
"L3MON4D3/LuaSnip",
"rafamadriz/friendly-snippets",
},
}
-- Tests
use {
"rcarriga/vim-ultest",
requires = { { "vim-test/vim-test", after = "vim-ultest" } },
cmd = { "Ultest", "UltestStop", "UltestClear", "UltestNearest", "UltestStopNearest", "UltestOutput", "UltestSummary" },
}
-- Syntax
use {
"nvim-treesitter/nvim-treesitter",
run = ":TSUpdate",
config = get_config "fk.plugin.treesitter",
}
end)
|