summaryrefslogtreecommitdiff
path: root/neovim/lua
diff options
context:
space:
mode:
authorMike Vink <mike1994vink@gmail.com>2022-11-21 01:22:38 +0100
committerMike Vink <mike1994vink@gmail.com>2022-11-21 01:22:38 +0100
commit389acba1bbddc5336eb65f752da36529c7f7b85d (patch)
tree1dd22444413a15e9e24a91ba6e2fbbbd406ed4a1 /neovim/lua
parent3cf5841352955d45d9ba8d0f72e23356e1f818ea (diff)
trying out fennel and failing miserably
Diffstat (limited to 'neovim/lua')
-rw-r--r--neovim/lua/setups.lua177
-rw-r--r--neovim/lua/vimrc.lua78
2 files changed, 177 insertions, 78 deletions
diff --git a/neovim/lua/setups.lua b/neovim/lua/setups.lua
new file mode 100644
index 0000000..48e775d
--- /dev/null
+++ b/neovim/lua/setups.lua
@@ -0,0 +1,177 @@
+-- {{{ git
+vim.cmd([[command! -bang Gap :G commit -am 'fixmeuplater' | G push]])
+-- }}}
+
+-- completion {{{
+vim.api.nvim_set_keymap('n', ']p', ':tabn<cr>', { silent = true, noremap = true})
+vim.api.nvim_set_keymap('n', '[p', ':tabp<cr>', { silent = true, noremap = true})
+
+require'vimrc.snippets'.setup()
+
+-- }}}
+
+-- buffers {{{
+vim.opt.switchbuf = "useopen,usetab"
+vim.opt.stal = 2
+
+vim.api.nvim_set_keymap(
+ "n",
+ "<leader>;",
+ "<C-^>",
+ { silent = true, noremap = true }
+)
+
+-- taken from: https://github.com/Furkanzmc/dotfiles/blob/master/vim/init.lua
+-- searching and replacing in buffers
+vim.api.nvim_set_keymap(
+ "v",
+ "<leader>s",
+ ":call buffers#visual_selection('search', '')<CR>",
+ { silent = true, noremap = true }
+)
+vim.api.nvim_set_keymap(
+ "v",
+ "<leader>r",
+ ":call buffers#visual_selection('replace', '')<CR>",
+ { silent = true, noremap = true }
+)
+vim.cmd([[command! -nargs=1 -complete=file E execute('silent! !mkdir -p "$(dirname "<args>")"') <Bar> e <args>]])
+-- wiping buffers and wiping nofile-buffers
+vim.cmd([[command! -nargs=1 -bang Bdeletes :call buffers#wipe_matching('<args>', <q-bang>)]])
+vim.cmd([[command! Bdnonexisting :call buffers#wipe_nonexisting_files()]])
+
+vim.cmd([[command! CleanTrailingWhiteSpace :lua require"vimrc.buffers".clean_trailing_spaces()]])
+
+vim.cmd([[augroup vimrc_plugin_buffers]])
+vim.cmd([[au!]])
+vim.cmd(
+ [[autocmd BufWritePre *.md,*.hcl,*.tf,*.py,*.cpp,*.qml,*.js,*.txt,*.json,*.html,*.lua,*.yaml,*.yml,*.bash,*.sh,*.go :lua require"vimrc.buffers".clean_trailing_spaces()]]
+)
+vim.cmd(
+ [[autocmd BufReadPost * lua require"vimrc.buffers".setup_white_space_highlight(vim.fn.bufnr())]]
+)
+vim.cmd(
+ [[autocmd BufReadPre *.tf,*.hcl packadd vim-terraform]]
+)
+vim.cmd([[augroup END]])
+
+-- }}}
+
+-- quickfix {{{
+vim.api.nvim_set_keymap(
+ "n",
+ "<C-q>o",
+ ":copen<cr>",
+ { silent = true, noremap = true }
+)
+vim.api.nvim_set_keymap(
+ "n",
+ "<C-q>z",
+ ":cclose<cr>",
+ { silent = true, noremap = true }
+)
+
+vim.api.nvim_set_keymap(
+ "n",
+ "<C-q>lo",
+ ":lopen<cr>",
+ { silent = true, noremap = true }
+)
+vim.api.nvim_set_keymap(
+ "n",
+ "<C-q>lz",
+ ":lclose<cr>",
+ { silent = true, noremap = true }
+)
+vim.api.nvim_set_keymap("n", "]q", ":cnext<cr>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "[q", ":cprevious<cr>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "]Q", ":cfirst<cr>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "[Q", ":clast<cr>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "]l", ":lnext<cr>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "[l", ":lprevious<cr>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "]L", ":lfirst<cr>", { silent = true, noremap = true })
+vim.api.nvim_set_keymap("n", "[L", ":llast<cr>", { silent = true, noremap = true })
+-- }}}
+
+-- firvish {{{
+require'firvish'.setup()
+vim.g.firvish_use_default_mappings=1
+require'vimrc'.setup_jq_function()
+require'vimrc'.setup_build_function()
+-- }}}
+
+-- {{{ trouble
+require"trouble".setup { }
+-- }}}
+
+-- {{{ tests
+-- require"nvim-test".setup{}
+-- vim.api.nvim_set_keymap(
+-- "n",
+-- "<leader>t",
+-- "<cmd>TestFile<CR>",
+-- {silent = true, noremap = true}
+-- )
+-- }}}
+
+-- lsp {{{
+vim.cmd [[augroup vimrc_nvim_lsp_setup]]
+vim.cmd [[au!]]
+vim.cmd [[au VimEnter * lua require'vimrc.lsp'.setup()]]
+vim.cmd [[augroup END]]
+-- }}}
+
+-- dap {{{
+require('vimrc.dap').setup_dap()
+vim.cmd [[augroup vimrc_nvim_dap_setup]]
+vim.cmd [[au!]]
+vim.cmd [[au VimEnter * lua require('vimrc.dap').setup_dap()]]
+vim.cmd [[augroup END]]
+-- }}}
+
+-- terminal {{{
+-- open close terminal
+vim.cmd [[command! Term :lua require('vimrc.term').toggle()]]
+-- run current file
+vim.cmd [[command! Run :lua require('vimrc.term').run()]]
+-- send selection
+vim.cmd [[command! -range Send :lua require('vimrc.term').sendSelection()]]
+vim.api.nvim_set_keymap(
+ "t",
+ "<c-q><c-w>",
+ "<c-\\><c-n>",
+ { silent = true, noremap = true }
+)
+-- }}}
+
+-- statusline {{{
+-- require('el').setup {}
+-- TODO: move to colortemplates
+vim.cmd [[hi! link Winbar StatusLine]]
+-- }}}
+
+-- init autocommand {{{
+vim.cmd([[augroup vimrc_init]])
+vim.cmd([[autocmd!]])
+vim.cmd(
+ [[autocmd BufReadPre,FileReadPre *.rest :if !exists("g:vimrc_rest_nvim_loaded") | packadd vim-rest-console | let g:vimrc_rest_nvim_loaded = v:true | endif | :e]]
+)
+vim.cmd(
+ [[autocmd TextYankPost * silent! lua vim.highlight.on_yank{on_visual=false, higroup="IncSearch", timeout=100}]]
+)
+vim.cmd(
+ [[ autocmd TextYankPost * if v:event.operator is 'y' && v:event.regname is '' | execute 'OSCYankReg "' | endif ]]
+)
+vim.cmd(
+ [[autocmd VimEnter * if filereadable(".exrc.lua") | call execute("luafile .exrc.lua") | endif]]
+)
+vim.cmd(
+ [[autocmd VimEnter * if filereadable(".env") | echo execute("Dotenv") | call execute("Dotenv .env") | endif]]
+)
+-- temp fix for screen redrawing issues
+-- cmd(
+-- [[autocmd BufEnter * mod]]
+-- )
+vim.cmd([[augroup END]])
+-- }}}
+-- vim: fdm=marker
diff --git a/neovim/lua/vimrc.lua b/neovim/lua/vimrc.lua
index 3a90ad9..59ab863 100644
--- a/neovim/lua/vimrc.lua
+++ b/neovim/lua/vimrc.lua
@@ -2,84 +2,6 @@
local log_warning = require 'vimrc.utils'.log_warning
local M = {}
-M.cwd_save_session = function()
- vim.cmd([[
-augroup vimrc_save_session
- au!
- au VimLeave * mksession! ]] .. os.getenv("PWD") .. [[/Session.vim
-augroup end
- ]])
-end
-
-function M.setup_cmp()
- local cmp = require 'cmp'
- cmp.setup({
- snippet = {
- -- REQUIRED - you must specify a snippet engine
- expand = function(args)
- require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
- end,
- },
- completion = {
- autocomplete = false
- },
- 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-A>'] = cmp.mapping.complete(),
- ['<C-e>'] = cmp.mapping.abort(),
- ['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
- }),
- sources = cmp.config.sources({
- { name = 'nvim_lsp' },
- { name = 'luasnip' },
- { name = 'path' },
- })
- })
-end
-
-function M.setup_treesitter()
- if vim.o.loadplugins == false then
- return
- end
-
- if vim.fn.exists(":TSInstall") == 1 then
- return vim.notify "TreeSitter is already configured."
- end
-
- -- vim.cmd([[packadd nvim-treesitter]])
- require 'nvim-treesitter.configs'.setup {
- highlight = {
- enable = true,
- -- Setting this to true will run `:h syntax` and tree-sitter at the same time.
- -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
- -- Using this option may slow down your editor, and you may see some duplicate highlights.
- -- Instead of true it can also be a list of languages
- },
- rainbow = {
- enable = true,
- -- disable = { "jsx", "cpp" }, list of languages you want to disable the plugin for
- extended_mode = true, -- Also highlight non-bracket delimiters like html tags, boolean or table: lang -> boolean
- max_file_lines = nil, -- Do not enable for files with more than n lines, int
- -- colors = {}, -- table of hex strings
- -- termcolors = {} -- table of colour name strings
- },
-
- incremental_selection = {
- enable = true,
- },
- indent = {
- enable = false,
- disable = { "python", "yaml" },
- },
- }
- vim.cmd [[hi link TSParameter Todo]]
-end
-
function M.setup_rest_nvim()
require("rest-nvim").setup({
result_split_horizontal = true,