aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lua
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim/lua')
-rw-r--r--.config/nvim/lua/options.lua17
-rw-r--r--.config/nvim/lua/plugins.lua1
-rw-r--r--.config/nvim/lua/plugins/comment.lua8
-rw-r--r--.config/nvim/lua/plugins/completions.lua44
-rw-r--r--.config/nvim/lua/plugins/gitsigns.lua11
-rw-r--r--.config/nvim/lua/plugins/indent.lua8
-rw-r--r--.config/nvim/lua/plugins/lsp.lua56
-rw-r--r--.config/nvim/lua/plugins/lualine.lua9
-rw-r--r--.config/nvim/lua/plugins/neotree.lua13
-rw-r--r--.config/nvim/lua/plugins/telescope.lua25
-rw-r--r--.config/nvim/lua/plugins/theme.lua9
-rw-r--r--.config/nvim/lua/plugins/treesitter.lua14
-rw-r--r--.config/nvim/lua/plugins/trim.lua8
13 files changed, 223 insertions, 0 deletions
diff --git a/.config/nvim/lua/options.lua b/.config/nvim/lua/options.lua
new file mode 100644
index 0000000..3a263e8
--- /dev/null
+++ b/.config/nvim/lua/options.lua
@@ -0,0 +1,17 @@
+vim.o.number = true
+vim.o.relativenumber = true
+vim.o.wrap = false
+vim.o.tabstop = 2
+vim.o.shiftwidth = 2
+vim.o.softtabstop = 2
+vim.o.expandtab = true
+vim.o.swapfile = false
+vim.g.mapleader = " "
+vim.o.clipboard = "unnamedplus"
+vim.o.undofile = true
+vim.o.cursorline = true
+vim.o.cursorlineopt = "number"
+vim.o.title = true
+vim.o.signcolumn = "yes"
+vim.g.mapleader = " "
+vim.api.nvim_set_keymap('n', ',c', ':w! | !compiler "%:p"<CR>', { noremap = true, silent = true })
diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua
new file mode 100644
index 0000000..a564707
--- /dev/null
+++ b/.config/nvim/lua/plugins.lua
@@ -0,0 +1 @@
+return {}
diff --git a/.config/nvim/lua/plugins/comment.lua b/.config/nvim/lua/plugins/comment.lua
new file mode 100644
index 0000000..aa8e8b7
--- /dev/null
+++ b/.config/nvim/lua/plugins/comment.lua
@@ -0,0 +1,8 @@
+return {
+ {
+ "numToStr/Comment.nvim",
+ config = function()
+ require('Comment').setup()
+ end
+ }
+}
diff --git a/.config/nvim/lua/plugins/completions.lua b/.config/nvim/lua/plugins/completions.lua
new file mode 100644
index 0000000..2e7396a
--- /dev/null
+++ b/.config/nvim/lua/plugins/completions.lua
@@ -0,0 +1,44 @@
+return {
+ {
+ "hrsh7th/cmp-nvim-lsp"
+ },
+ {
+ "L3MON4D3/LuaSnip",
+ dependencies = {
+ "saadparwaiz1/cmp_luasnip",
+ "rafamadriz/friendly-snippets",
+ },
+ },
+ {
+ "hrsh7th/nvim-cmp",
+ config = function()
+ local cmp = require("cmp")
+ require("luasnip.loaders.from_vscode").lazy_load()
+
+ cmp.setup({
+ snippet = {
+ expand = function(args)
+ require("luasnip").lsp_expand(args.body)
+ end,
+ },
+ window = {
+ completion = cmp.config.window.bordered(),
+ documentation = cmp.config.window.bordered(),
+ },
+ mapping = cmp.mapping.preset.insert({
+ ["<C-b>"] = cmp.mapping.scroll_docs(-4),
+ ["<C-f>"] = cmp.mapping.scroll_docs(4),
+ ["<C-Space>"] = cmp.mapping.complete(),
+ ["<C-e>"] = cmp.mapping.abort(),
+ ["<CR>"] = cmp.mapping.confirm({ select = true }),
+ }),
+ sources = cmp.config.sources({
+ { name = "nvim_lsp" },
+ { name = "luasnip" }, -- For luasnip users.
+ }, {
+ { name = "buffer" },
+ }),
+ })
+ end,
+ },
+}
diff --git a/.config/nvim/lua/plugins/gitsigns.lua b/.config/nvim/lua/plugins/gitsigns.lua
new file mode 100644
index 0000000..687fd25
--- /dev/null
+++ b/.config/nvim/lua/plugins/gitsigns.lua
@@ -0,0 +1,11 @@
+return {
+ {
+ "tpope/vim-fugitive",
+ },
+ {
+ "lewis6991/gitsigns.nvim",
+ config = function()
+ require("gitsigns").setup()
+ end,
+ }
+}
diff --git a/.config/nvim/lua/plugins/indent.lua b/.config/nvim/lua/plugins/indent.lua
new file mode 100644
index 0000000..3741ad6
--- /dev/null
+++ b/.config/nvim/lua/plugins/indent.lua
@@ -0,0 +1,8 @@
+return {
+ {
+ "lukas-reineke/indent-blankline.nvim",
+ config = function()
+ require("ibl").setup()
+ end,
+ }
+}
diff --git a/.config/nvim/lua/plugins/lsp.lua b/.config/nvim/lua/plugins/lsp.lua
new file mode 100644
index 0000000..3f691d6
--- /dev/null
+++ b/.config/nvim/lua/plugins/lsp.lua
@@ -0,0 +1,56 @@
+return {
+ {
+ "williamboman/mason.nvim",
+ lazy = false,
+ config = function()
+ require("mason").setup()
+ end,
+ },
+ {
+ "williamboman/mason-lspconfig.nvim",
+ lazy = false,
+ opts = {
+ auto_install = true,
+ ensure_installed = { "helm_ls", "dockerls" },
+ },
+ },
+ {
+ "neovim/nvim-lspconfig",
+ lazy = false,
+ config = function()
+ local capabilities = require('cmp_nvim_lsp').default_capabilities()
+
+ vim.lsp.enable({
+ "lua_ls", "clangd", "rust_analyzer", "bashls",
+ "html", "cssls", "jsonls", "helm_ls", "yamlls",
+ "dockerfile-language-server"
+ })
+
+ vim.lsp.config("*", {
+ capabilities = capabilities
+ })
+
+ vim.diagnostic.config({
+ virtual_text = {
+ prefix = '',
+ spacing = 4,
+ },
+ signs = {
+ text = {
+ [vim.diagnostic.severity.ERROR] = '',
+ [vim.diagnostic.severity.WARN] = '',
+ },
+ },
+ underline = true,
+ update_in_insert = true,
+ severity_sort = true,
+ })
+
+ vim.keymap.set('n', '<leader>lf', vim.lsp.buf.format)
+ -- vim.keymap.set("n", "K", vim.lsp.buf.hover, {})
+ -- vim.keymap.set("n", "<leader>gd", vim.lsp.buf.definition, {})
+ -- vim.keymap.set("n", "<leader>gr", vim.lsp.buf.references, {})
+ -- vim.keymap.set("n", "<leader>ca", vim.lsp.buf.code_action, {})
+ end,
+ },
+}
diff --git a/.config/nvim/lua/plugins/lualine.lua b/.config/nvim/lua/plugins/lualine.lua
new file mode 100644
index 0000000..097478c
--- /dev/null
+++ b/.config/nvim/lua/plugins/lualine.lua
@@ -0,0 +1,9 @@
+return {
+ {
+ 'nvim-lualine/lualine.nvim',
+ dependencies = { 'nvim-tree/nvim-web-devicons' },
+ config = function()
+ require('lualine').setup()
+ end,
+ }
+}
diff --git a/.config/nvim/lua/plugins/neotree.lua b/.config/nvim/lua/plugins/neotree.lua
new file mode 100644
index 0000000..904ce46
--- /dev/null
+++ b/.config/nvim/lua/plugins/neotree.lua
@@ -0,0 +1,13 @@
+return {
+ "nvim-neo-tree/neo-tree.nvim",
+ branch = "v3.x",
+ dependencies = {
+ "nvim-lua/plenary.nvim",
+ "nvim-tree/nvim-web-devicons",
+ "MunifTanjim/nui.nvim",
+ },
+ config = function()
+ vim.keymap.set("n", "<C-n>", ":Neotree filesystem reveal left<CR>", {})
+ vim.keymap.set("n", "<leader>bf", ":Neotree buffers reveal float<CR>", {})
+ end,
+}
diff --git a/.config/nvim/lua/plugins/telescope.lua b/.config/nvim/lua/plugins/telescope.lua
new file mode 100644
index 0000000..d616425
--- /dev/null
+++ b/.config/nvim/lua/plugins/telescope.lua
@@ -0,0 +1,25 @@
+return {
+ {
+ "nvim-telescope/telescope-ui-select.nvim",
+ },
+ {
+ "nvim-telescope/telescope.nvim",
+ tag = "0.1.9",
+ dependencies = { "nvim-lua/plenary.nvim" },
+ config = function()
+ require("telescope").setup({
+ extensions = {
+ ["ui-select"] = {
+ require("telescope.themes").get_dropdown({}),
+ },
+ },
+ })
+ local builtin = require("telescope.builtin")
+ vim.keymap.set("n", "<C-p>", builtin.find_files, {})
+ vim.keymap.set("n", "<leader>fg", builtin.live_grep, {})
+ vim.keymap.set("n", "<leader><leader>", builtin.oldfiles, {})
+
+ require("telescope").load_extension("ui-select")
+ end,
+ },
+}
diff --git a/.config/nvim/lua/plugins/theme.lua b/.config/nvim/lua/plugins/theme.lua
new file mode 100644
index 0000000..2be3d8e
--- /dev/null
+++ b/.config/nvim/lua/plugins/theme.lua
@@ -0,0 +1,9 @@
+return {
+ {
+ "ellisonleao/gruvbox.nvim",
+ priority = 1000,
+ config = function()
+ vim.cmd.colorscheme "gruvbox"
+ end
+ }
+}
diff --git a/.config/nvim/lua/plugins/treesitter.lua b/.config/nvim/lua/plugins/treesitter.lua
new file mode 100644
index 0000000..6312070
--- /dev/null
+++ b/.config/nvim/lua/plugins/treesitter.lua
@@ -0,0 +1,14 @@
+return {
+ {
+ "nvim-treesitter/nvim-treesitter",
+ build = ":TSUpdate",
+ config = function()
+ local config = require("nvim-treesitter.configs")
+ config.setup({
+ auto_install = true,
+ highlight = { enable = true },
+ indent = { enable = true },
+ })
+ end
+ }
+}
diff --git a/.config/nvim/lua/plugins/trim.lua b/.config/nvim/lua/plugins/trim.lua
new file mode 100644
index 0000000..148ed5d
--- /dev/null
+++ b/.config/nvim/lua/plugins/trim.lua
@@ -0,0 +1,8 @@
+return {
+ {
+ "cappyzawa/trim.nvim",
+ config = function()
+ require('trim').setup()
+ end
+ }
+}