summaryrefslogtreecommitdiff
path: root/files/config/nvim
diff options
context:
space:
mode:
Diffstat (limited to 'files/config/nvim')
-rw-r--r--files/config/nvim/init.lua246
1 files changed, 0 insertions, 246 deletions
diff --git a/files/config/nvim/init.lua b/files/config/nvim/init.lua
deleted file mode 100644
index 50d50c8..0000000
--- a/files/config/nvim/init.lua
+++ /dev/null
@@ -1,246 +0,0 @@
---[[ CONFIG ]]--
-
--- global config for iris configuration
-config = {
- -- colorscheme for nvim
- flavour = "mocha",
- -- indentation
- tab_width = 4,
- expand_tab = false,
- -- keybinds to be set to actions
- keybinds = {
- -- leader key
- leader = ' ',
- -- toggle menus
- menus = {
- -- file browser
- browser = '<leader>e',
- -- active buffers
- buffers = '<leader>fb',
- -- error list
- error = '<leader>t',
- -- find files
- find = '<leader>ff',
- -- grep files
- grep = '<leader>fg',
- -- help browser
- help = '<leader>fh',
- -- undo tree
- undo = '<leader>u',
- },
- -- lsp actions
- lsp = {
- hover = 'K',
- action = '<leader>la',
- references = '<leader>lr',
- rename = '<leader>ln',
- },
- -- completion
- cmp = {
- -- prev item
- prev = '<C-p>',
- -- next item
- next = '<C-n>',
- -- confirm
- confirm = '<CR>',
- -- complete
- complete = '<C-Space>',
- },
- -- disable active selection
- noh = '<leader>h',
- },
- -- lsp servers
- lsps = {
- -- rust
- rust_analyzer = {},
- -- c / c++
- clangd = {},
- -- java
- jdtls = {},
- },
-};
-
---[[ VIM ]]--
-
-vim.opt.tabstop = config.tab_width
-vim.opt.softtabstop = config.tab_width
-vim.opt.shiftwidth = config.tab_width
-vim.opt.expandtab = config.expand_tab
-vim.opt.mouse = "a"
-vim.opt.clipboard = "unnamedplus"
-vim.opt.hlsearch = true
-vim.opt.autoindent = true
-vim.opt.ttyfast = true
-vim.opt.number = true
-vim.opt.relativenumber = true
-vim.opt.rnu = true
-vim.opt.swapfile = false
-vim.opt.termguicolors = true
-
--- remove trailing whitespace on save
-vim.api.nvim_create_autocmd({ "BufWritePre" }, {
- pattern = { "*" },
- command = [[%s/\s\+$//e]],
-})
-
---[[ THEME ]]--
-
-vim.api.nvim_set_hl(0, "Normal", { bg = "none" })
-vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" })
-vim.api.nvim_set_hl(0, "NvimTreeNormal", { bg = "none" })
-vim.api.nvim_set_hl(0, "Comment", { fg = colorscheme.colors.base04 })
-vim.api.nvim_set_hl(0, "@comment", { link = "Comment" })
-
---[[ LINES ]]--
-
--- mode line
-require('lualine').setup {
- options = {
- theme = config.colorscheme,
- icons_enabled = true,
- globalstatus = true,
- },
-}
-
--- buffer line
-require("bufferline").setup {}
-
---[[ MENUS ]]--
-
--- file browser
-vim.g.loaded_netrw = 1
-vim.g.loaded_netrwPlugin = 1
-vim.opt.termguicolors = true
-
-require("nvim-tree").setup {
- sort = {
- sorter = "case_sensitive",
- },
- view = {
- width = 30,
- },
- renderer = {
- group_empty = true,
- },
- actions = {
- open_file = {
- quit_on_open = true,
- },
- },
- filters = {
- dotfiles = false,
- },
-}
-
---[[ COMPLETION ]]--
-
--- completion engine
---local cmp = require('cmp')
---
---local cmp_select = {behavior = cmp.SelectBehavior.Select}
---local cmp_mappings = cmp.mapping.preset.insert({
--- [config.keybinds.cmp.prev] = cmp.mapping.select_prev_item(cmp_select),
--- [config.keybinds.cmp.next] = cmp.mapping.select_next_item(cmp_select),
--- [config.keybinds.cmp.confirm] = cmp.mapping.confirm({ select = true }),
--- [config.keybinds.cmp.complete] = cmp.mapping.complete(),
---})
---
---cmp_mappings['<Tab>'] = nil
---cmp_mappings['<S-Tab>'] = nil
---
---cmp.setup {
--- snippet = {
--- expand = function(args)
--- vim.fn["vsnip#anonymous"](args.body)
--- end,
--- },
--- sources = cmp.config.sources({
--- { name = 'nvim_lsp' },
--- { name = 'vsnip' },
--- { name = 'buffer' },
--- }),
--- mapping = cmp_mappings,
---}
---
--- delimiter completion
-require'nvim-surround'.setup {}
-
---[[ LSP ]]--
-
-local capabilities = require'cmp_nvim_lsp'.default_capabilities()
-for lsp,config in pairs(config.lsps) do
- config.capabilities = capabilities
- require'lspconfig'[lsp].setup(config)
-end
-
--- illuminate
-require'illuminate'.configure {
- providers = {
- 'lsp',
- 'treesitter',
- 'regex',
- },
-}
-
--- todo comments
-require('todo-comments').setup()
-
--- auto indentation
-require('indent-o-matic').setup {
- max_lines = 2048,
- standard_widths = { 2, 4, 8 },
- skip_multiline = true,
-}
-
--- image viewer
---require'hologram'.setup {
--- auto_display = true
---}
-
--- 80 col bar
-require'virt-column'.setup {
- enabled = true,
- virtcolumn = "80"
-}
-
--- notifications
-require("fidget").setup {
- notification = {
- window = {
- winblend = 0,
- },
- },
-}
-
---[[ KEYBINDS ]]--
-
-vim.g.mapleader = config.keybinds.leader
-vim.g.maplocalleader = config.keybinds.leader
-vim.keymap.set('', '<leader>', '<Nop>', { noremap = true, silent = true })
-
-local function bind(key, action, opts)
- opts = opts or {}
- vim.keymap.set('n', key, action, opts)
-end
-
-bind(config.keybinds.noh, vim.cmd.noh)
-bind(config.keybinds.menus.browser, vim.cmd.NvimTreeToggle)
-bind(config.keybinds.menus.undo, vim.cmd.UndotreeToggle)
-bind(config.keybinds.menus.error, function() require'trouble'.toggle() end)
-
-local telescope = require'telescope.builtin'
-bind(config.keybinds.menus.buffers, telescope.buffers)
-bind(config.keybinds.menus.find, telescope.find_files)
-bind(config.keybinds.menus.grep, telescope.live_grep)
-bind(config.keybinds.menus.help, telescope.help_tags)
-
-vim.api.nvim_create_autocmd('LspAttach', {
- desc = 'LSP actions',
- callback = function(event)
- local opts = {buffer = event.buf}
- bind(config.keybinds.lsp.hover, function() vim.lsp.buf.hover() end, opts)
- bind(config.keybinds.lsp.action, function() vim.lsp.buf.code_action() end, opts)
- bind(config.keybinds.lsp.references, function() vim.lsp.buf.references() end, opts)
- bind(config.keybinds.lsp.rename, function() vim.lsp.buf.rename() end, opts)
- end
-})