diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml index f28f1ed..2081460 100644 --- a/.config/alacritty/alacritty.yml +++ b/.config/alacritty/alacritty.yml @@ -16,7 +16,8 @@ font: family: Hack Nerd Font style: Bold Italic - size: 11 + size: 15 + ligatures: true # Gruvbox colors: @@ -47,5 +48,11 @@ colors: white: '#ebdbb2' window: - opacity: 0.75 + opacity: 0.95 + decorations: none + +key_bindings: + - { key: Right, mods: Alt, chars: "\x1BF" } + - { key: Left, mods: Alt, chars: "\x1BB" } +alt_send_esc: true diff --git a/.config/nvim/after/plugin/cmp.lua b/.config/nvim/after/plugin/cmp.lua index fef4513..da5a1b1 100644 --- a/.config/nvim/after/plugin/cmp.lua +++ b/.config/nvim/after/plugin/cmp.lua @@ -3,96 +3,120 @@ local lspkind = require('lspkind') local luasnip = require 'luasnip' local source_mapping = { - buffer = "[Buffer]", - nvim_lsp = "[LSP]", - nvim_lua = "[Lua]", - cmp_tabnine = "[TN]", - path = "[Path]", + buffer = "[Buffer]", + nvim_lsp = "[LSP]", + nvim_lua = "[Lua]", + cmp_tabnine = "[TN]", + path = "[Path]", + orgmode = "[Org]", + luasnip = "[Snippet]", } + +local has_words_before = function() + local line, col = unpack(vim.api.nvim_win_get_cursor(0)) + return col ~= 0 and + vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub( + col, col):match("%s") == nil +end + cmp.setup({ - -- snippet = { - -- -- REQUIRED - you must specify a snippet engine - -- expand = function(args) - -- vim.fn["vsnip#anonymous"](args.body) -- For `vsnip` users. - -- -- require('luasnip').lsp_expand(args.body) -- For `luasnip` users. - -- -- vim.fn["UltiSnips#Anon"](args.body) -- For `ultisnips` users. - -- -- require'snippy'.expand_snippet(args.body) -- For `snippy` users. - -- end, - -- }, - --mapping = { - --[''] = cmp.mapping(cmp.mapping.scroll_docs(-4), { 'i', 'c' }), - --[''] = cmp.mapping(cmp.mapping.scroll_docs(4), { 'i', 'c' }), - --[''] = cmp.mapping(cmp.mapping.complete(), { 'i', 'c' }), - --[''] = cmp.mapping.confirm({ select = true }), - --}, - snippet = { - expand = function(args) - require'luasnip'.lsp_expand(args.body) - end, + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end, + }, + mapping = { + [''] = cmp.mapping(cmp.mapping.select_prev_item(), { 'i', 'c' }), + [''] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 'c' }), + [''] = cmp.mapping.scroll_docs(-4), + [''] = cmp.mapping.scroll_docs(4), + [''] = cmp.mapping.complete(), + [''] = cmp.mapping.close(), + [''] = cmp.mapping.confirm { + behavior = cmp.ConfirmBehavior.Replace, + select = false, -- only replace if explicitly selected }, - mapping = { - [''] = cmp.mapping(cmp.mapping.select_prev_item(), { 'i', 'c' }), - [''] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 'c' }), - [''] = cmp.mapping.scroll_docs(-4), - [''] = cmp.mapping.scroll_docs(4), - [''] = cmp.mapping.complete(), - [''] = cmp.mapping.close(), - [''] = cmp.mapping.confirm { - behavior = cmp.ConfirmBehavior.Replace, - select = false, -- only replace if explicitly selected - }, - }, - sources = cmp.config.sources({ - { name = 'cmp_tabnine' }, - { name = 'nvim_lsp' }, - }), - formatting = { - format = function(entry, vim_item) - vim_item.kind = lspkind.presets.default[vim_item.kind] - local menu = source_mapping[entry.source.name] - if entry.source.name == 'cmp_tabnine' then - if entry.completion_item.data ~= nil and entry.completion_item.data.detail ~= nil then - menu = entry.completion_item.data.detail .. ' ' .. menu - end - vim_item.kind = '?' - end - vim_item.menu = menu - return vim_item + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + elseif has_words_before() then + cmp.complete() + else + fallback() + end + end, { "i", "s" }), + + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_prev_item() + elseif luasnip.jumpable(-1) then + luasnip.jump(-1) + else + fallback() + end + end, { "i", "s" }) + }, + sources = cmp.config.sources({ + { name = 'cmp_tabnine' }, + { name = 'nvim_lsp' }, + { name = 'luasnip' }, + }), + formatting = { + format = function(entry, vim_item) + vim_item.kind = lspkind.presets.default[vim_item.kind] + local menu = source_mapping[entry.source.name] + if entry.source.name == 'cmp_tabnine' then + if entry.completion_item.data ~= nil and entry.completion_item.data.detail ~= nil then + menu = entry.completion_item.data.detail .. ' ' .. menu end - } + vim_item.kind = '?' + end + vim_item.menu = menu + return vim_item + end + } +}) + +-- Set configuration for specific filetype. +cmp.setup.filetype('org', { + sources = cmp.config.sources({ + { name = 'orgmode' }, + { name = 'cmp_tabnine' }, + }, { + { name = 'buffer' }, + }) }) -- Use buffer source for `/` (if you enabled `native_menu`, this won't work anymore). cmp.setup.cmdline('/', { - sources = { - { name = 'buffer' } - } + sources = { + { name = 'buffer' } + } }) -- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore). cmp.setup.cmdline(':', { - sources = cmp.config.sources({ - { name = 'path' } - }, { - { name = 'cmdline' } + sources = cmp.config.sources({ + { name = 'path' } + }, { + { name = 'cmdline' } }), - mappings = cmp.mapping.preset.cmdline(), + mappings = cmp.mapping.preset.cmdline(), }) -- Setup tabnine local tabnine = require('cmp_tabnine.config') tabnine:setup({ - max_lines = 1000; - max_num_results = 20; - sort = true; - run_on_every_keystroke = true; - snippet_placeholder = '..'; - ignored_file_types = { -- default is not to ignore - -- uncomment to ignore in lua: - lua = true - }; + max_lines = 1000; + max_num_results = 20; + sort = true; + run_on_every_keystroke = true; + snippet_placeholder = '..'; + ignored_file_types = { -- default is not to ignore + -- uncomment to ignore in lua: + lua = true + }; }) --- Setup lspconfig. -local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol.make_client_capabilities()) -capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities) diff --git a/.config/nvim/after/plugin/git-worktree.lua b/.config/nvim/after/plugin/git-worktree.lua new file mode 100644 index 0000000..a6ebb5c --- /dev/null +++ b/.config/nvim/after/plugin/git-worktree.lua @@ -0,0 +1,25 @@ +local Worktree = require("git-worktree") +local Job = require("plenary.job") + +local function is_massdriver() + return not not (string.find(vim.loop.cwd(), "massdriver.git", 1, true)) +end + +Worktree.on_tree_change(function (op, metadata) + local compile_job = Job:new({ + "mix", "compile" + }) + + if op == Worktree.Operations.Create and is_massdriver() then + local deps_job = Job:new({ + "mix", "deps.get" + }) + deps_job:and_then(compile_job) + deps_job:sync() + compile_job:wait() + end + + if op == Worktree.Operations.Switch and is_massdriver() then + compile_job:start() + end +end) diff --git a/.config/nvim/after/plugin/keymappings.lua b/.config/nvim/after/plugin/keymappings.lua index c7fa80a..53114d0 100644 --- a/.config/nvim/after/plugin/keymappings.lua +++ b/.config/nvim/after/plugin/keymappings.lua @@ -47,6 +47,10 @@ vnoremap('>', '>gv') nnoremap('', ':bnext') nnoremap('', ':bprevious') +-- Quickfix list +nnoremap('[q', ':cprev') +nnoremap(']q', ':cnext') + -- Move selected line / block of text in visual mode xnoremap('J', ':move \'>+1gv-gv') xnoremap('K', ':move \'<-2gv-gv') diff --git a/.config/nvim/after/plugin/lsp.lua b/.config/nvim/after/plugin/lsp.lua index 009a383..6848d74 100644 --- a/.config/nvim/after/plugin/lsp.lua +++ b/.config/nvim/after/plugin/lsp.lua @@ -2,37 +2,52 @@ local Remap = require("halfdan.keymap") local nnoremap = Remap.nnoremap local inoremap = Remap.inoremap --- TODO figure out why this don't work -vim.fn.sign_define( - "LspDiagnosticsSignError", - {texthl = "LspDiagnosticsSignError", text = "", numhl = "LspDiagnosticsSignError"} -) -vim.fn.sign_define( - "LspDiagnosticsSignWarning", - {texthl = "LspDiagnosticsSignWarning", text = "", numhl = "LspDiagnosticsSignWarning"} -) -vim.fn.sign_define( - "LspDiagnosticsSignHint", - {texthl = "LspDiagnosticsSignHint", text = "", numhl = "LspDiagnosticsSignHint"} -) -vim.fn.sign_define( - "LspDiagnosticsSignInformation", - {texthl = "LspDiagnosticsSignInformation", text = "", numhl = "LspDiagnosticsSignInformation"} -) +vim.fn.sign_define("DiagnosticSignError", {text = "", texthl = "DiagnosticSignError"}) +vim.fn.sign_define("DiagnosticSignWarn", {text = "", texthl = "DiagnosticSignWarn"}) +vim.fn.sign_define("DiagnosticSignInfo", {text = "", texthl = "DiagnosticSignInfo"}) +vim.fn.sign_define("DiagnosticSignHint", {text = "", texthl = "DiagnosticSignHint"}) -- Set Default Prefix. -- Note: You can set a prefix per lsp server in the lv-globals.lua file vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with( vim.lsp.diagnostic.on_publish_diagnostics, { - virtual_text = { - prefix = "", - spacing = 1, - }, + -- virtual_text = { + -- prefix = "", + -- spacing = 1, + -- }, signs = true, underline = true, } ) +-- Setup for nvim-notify +vim.lsp.set_log_level(1 ) + +local convert_lsp_log_level_to_neovim_log_level = function(lsp_log_level) + if lsp_log_level == 1 then + return 4 + elseif lsp_log_level == 2 then + return 3 + elseif lsp_log_level == 3 then + return 2 + elseif lsp_log_level == 4 then + return 1 + end +end + +local levels = { + "ERROR", + "WARN", + "INFO", + "DEBUG", + [0] = "TRACE", +} +vim.lsp.handlers["window/showMessage"] = function(_, result, ...) + if require("vim.lsp.log").should_log(convert_lsp_log_level_to_neovim_log_level(result.type)) then + vim.notify(result.message, levels[result.type]) + end +end + -- symbols for autocomplete vim.lsp.protocol.CompletionItemKind = { "  (Text) ", @@ -81,12 +96,12 @@ local function documentHighlight(client, bufnr) end end --- needed for the LSP to recognize elixir files (alternativly just use elixir-editors/vim-elixir) -vim.cmd([[ - au BufRead,BufNewFile *.ex,*.exs set filetype=elixir - au BufRead,BufNewFile *.eex,*.leex,*.sface set filetype=eelixir - au BufRead,BufNewFile mix.lock set filetype=elixir -]]) +-- -- needed for the LSP to recognize elixir files (alternativly just use elixir-editors/vim-elixir) +-- vim.cmd([[ +-- au BufRead,BufNewFile *.ex,*.exs set filetype=elixir +-- au BufRead,BufNewFile *.eex,*.leex,*.sface set filetype=eelixir +-- au BufRead,BufNewFile mix.lock set filetype=elixir +-- ]]) @@ -95,47 +110,64 @@ vim.api.nvim_set_keymap('n', 'e', 'lua vim.diagnostic.open_float()< vim.api.nvim_set_keymap('n', 'q', 'lua vim.diagnostic.setloclist()', { noremap = true, silent = true }) -- LSP settings +local lsp_status = require('lsp-status') +lsp_status.register_progress() + local lspconfig = require 'lspconfig' + +local on_attach = function(client, bufnr) + nnoremap("gd", function() vim.lsp.buf.definition() end) + nnoremap("gD", function() vim.lsp.buf.declaration() end) + nnoremap("K", function() vim.lsp.buf.hover() end) + nnoremap("gW", function() vim.lsp.buf.workspace_symbol() end) + nnoremap("vd", function() vim.diagnostic.open_float() end) + nnoremap("[d", function() vim.diagnostic.goto_next() end) + nnoremap("]d", function() vim.diagnostic.goto_prev() end) + nnoremap("ca", function() vim.lsp.buf.code_action() end) + nnoremap("gr", function() vim.lsp.buf.references() end) + nnoremap("rn", function() vim.lsp.buf.rename() end) + nnoremap("cl", function() vim.lsp.codelens.run() end) + nnoremap("ff", function() vim.lsp.buf.format{async = true} end) + inoremap("", function() vim.lsp.buf.signature_help() end) + + lsp_status.on_attach(client, bufnr) +end + local function config(_config) - return vim.tbl_deep_extend("force", { - capabilities = require("cmp_nvim_lsp").update_capabilities(vim.lsp.protocol.make_client_capabilities()), - on_attach = function() - -- local opts = { noremap = true, silent = true } - nnoremap("gd", function() vim.lsp.buf.definition() end) - nnoremap("gD", function() vim.lsp.buf.declaration() end) - nnoremap("K", function() vim.lsp.buf.hover() end) - nnoremap("gW", function() vim.lsp.buf.workspace_symbol() end) - nnoremap("vd", function() vim.diagnostic.open_float() end) - nnoremap("[d", function() vim.diagnostic.goto_next() end) - nnoremap("]d", function() vim.diagnostic.goto_prev() end) - nnoremap("ca", function() vim.lsp.buf.code_action() end) - nnoremap("rr", function() vim.lsp.buf.references() end) - nnoremap("rn", function() vim.lsp.buf.rename() end) - nnoremap("cl", function() vim.lsp.codelens.run() end) - nnoremap("ff", function() vim.lsp.buf.format{async = true} end) - inoremap("", function() vim.lsp.buf.signature_help() end) - --vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gi', 'lua vim.lsp.buf.implementation()', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, 'n', '', 'lua vim.lsp.buf.signature_help()', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'wa', 'lua vim.lsp.buf.add_workspace_folder()', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'wr', 'lua vim.lsp.buf.remove_workspace_folder()', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'wl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'D', 'lua vim.lsp.buf.type_definition()', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'ca', 'lua vim.lsp.buf.code_action()', opts) - -- vim.api.nvim_buf_set_keymap(bufnr, 'n', 'so', [[lua require('telescope.builtin').lsp_document_symbols()]], opts) - -- vim.cmd [[ command! Format execute 'lua vim.lsp.buf.formatting()' ]] - end, - }, _config or {}) + _config = vim.tbl_deep_extend("force", { + log_level = vim.lsp.protocol.MessageType.Log, + message_level = vim.lsp.protocol.MessageType.Log, + capabilities = require("cmp_nvim_lsp").update_capabilities(vim.lsp.protocol.make_client_capabilities()), + on_attach = on_attach, + }, _config or {}) + + -- Set default client capabilities plus window/workDoneProgress + _config.capabilities = vim.tbl_extend('keep', _config.capabilities or {}, lsp_status.capabilities) + + return _config end local elixir = require('elixir') elixir.setup(config({ - cmd = {"/Users/fbecker18/opt/elixir-ls/bin/language_server.sh"}, + -- repo = "mhanberg/elixir-ls", -- defaults to elixir-lsp/elixir-ls + -- branch = "mh/all-workspace-symbols", -- defaults to nil, just checkouts out the default branch, mutually exclusive with the `tag` option settings = elixir.settings({ dialyzerEnabled = true, fetchDeps = false, enableTestLenses = true, suggestSpecs = false, }), + on_attach = function(client, bufnr) + on_attach(client, bufnr) + + local map_opts = { buffer = true, noremap = true} + + -- remove the pipe operator + vim.keymap.set("n", "fp", ":ElixirFromPipe", map_opts) + -- add the pipe operator + vim.keymap.set("n", "tp", ":ElixirToPipe", map_opts) + vim.keymap.set("v", "em", ":ElixirExpandMacro", map_opts) + end })) -- Enable the following language servers @@ -144,6 +176,16 @@ for _, lsp in ipairs(servers) do lspconfig[lsp].setup(config()) end +lspconfig.sumneko_lua.setup(config({ + settings = { + Lua = { + diagnostics = { + globals = { 'vim' } + } + } + } +})) + require('rust-tools').setup({ tools = { inlay_hints = { diff --git a/.config/nvim/after/plugin/lspsaga.lua b/.config/nvim/after/plugin/lspsaga.lua index bbbc523..554ac45 100644 --- a/.config/nvim/after/plugin/lspsaga.lua +++ b/.config/nvim/after/plugin/lspsaga.lua @@ -1,12 +1,12 @@ local saga = require 'lspsaga' saga.init_lsp_saga({ -- symbols in winbar - symbol_in_winbar = { - enable = true, - click_support = true, - show_file = true, - in_custom = true, - }, + -- symbol_in_winbar = { + -- enable = true, + -- click_support = true, + -- show_file = true, + -- in_custom = true, + -- }, }) local function get_file_name(include_path) diff --git a/.config/nvim/after/plugin/luasnip.lua b/.config/nvim/after/plugin/luasnip.lua new file mode 100644 index 0000000..c011f1d --- /dev/null +++ b/.config/nvim/after/plugin/luasnip.lua @@ -0,0 +1,7 @@ +local luasnip = require('luasnip') +luasnip.config.set_config { + history = true, + updateevents = "TextChanged,TextChangedI" +} + +require("luasnip/loaders/from_vscode").lazy_load() diff --git a/.config/nvim/after/plugin/neotest.lua b/.config/nvim/after/plugin/neotest.lua index 7297fb1..c3bc03b 100644 --- a/.config/nvim/after/plugin/neotest.lua +++ b/.config/nvim/after/plugin/neotest.lua @@ -1,5 +1,6 @@ require("neotest").setup({ adapters = { - require("neotest-vim-test")({ allow_file_types = { "haskell", "elixir" } }), + require("neotest-vim-test")({ allow_file_types = { "haskell"} }), + require("neotest-elixir") }, }) diff --git a/.config/nvim/after/plugin/notify.lua b/.config/nvim/after/plugin/notify.lua new file mode 100644 index 0000000..ba4462b --- /dev/null +++ b/.config/nvim/after/plugin/notify.lua @@ -0,0 +1,3 @@ +require('notify').setup({ + background_colour = "#000000", +}) diff --git a/.config/nvim/after/plugin/orgmode.lua b/.config/nvim/after/plugin/orgmode.lua new file mode 100644 index 0000000..d45e649 --- /dev/null +++ b/.config/nvim/after/plugin/orgmode.lua @@ -0,0 +1,23 @@ +local orgmode = require('orgmode') + +orgmode.setup_ts_grammar() + +orgmode.setup({ + org_agenda_files = { '~/org/*' }, + org_default_notes_file = '~/org/inbox.org', + org_todo_keywords = {'TODO(t)', 'WAITING(w)', '|', 'DONE(d)', 'CANCELLED(c)'}, + org_capture_templates = { + t = { + description = 'Todo', + template = '* TODO %?\n %u', + target = '~/org/inbox.org' + }, + j = { + description = 'Journal', + template = '\n*** %<%Y-%m-%d> %<%A>\n**** %U\n\n%?', + target = '~/org/journal.org' + }, + }, + +}) + diff --git a/.config/nvim/after/plugin/telescope.lua b/.config/nvim/after/plugin/telescope.lua index 0f1b31b..8579650 100644 --- a/.config/nvim/after/plugin/telescope.lua +++ b/.config/nvim/after/plugin/telescope.lua @@ -2,8 +2,8 @@ local Remap = require("halfdan.keymap") local nnoremap = Remap.nnoremap local builtin = require("telescope.builtin") -nnoremap("ps", function() - builtin.grep_string({ search = vim.fn.input("Grep For > ")}) +nnoremap("pg", function() + builtin.grep_string({ search = vim.fn.input("Grep For > ")}) end) nnoremap("", function() if not pcall(builtin.git_files) then @@ -14,22 +14,22 @@ nnoremap("pf", function() builtin.find_files() end) +nnoremap("ps", function() + builtin.lsp_workspace_symbols() +end) nnoremap("pw", function() - builtin.grep_string { search = vim.fn.expand("") } + builtin.grep_string { search = vim.fn.expand("") } end) nnoremap("pb", function() - builtin.buffers() + builtin.buffers() end) nnoremap("vh", function() - builtin.help_tags() + builtin.help_tags() +end) +nnoremap("gw", function() + require('telescope').extensions.git_worktree.git_worktrees() +end) +nnoremap("gc", function() + builtin.git_branches() end) --- Telescope --- nnoremap('fs', ':lua require(\'telescope.builtin\').grep_string({ search = vim.fn.input("Grep For > ")})') --- nnoremap('ff', ':lua require(\'telescope.builtin\').find_files()') - --- nnoremap('fw', ':lua require(\'telescope.builtin\').grep_string { search = vim.fn.expand("") }') --- nnoremap('fb', ':lua require(\'telescope.builtin\').buffers()') --- nnoremap('vh', ':lua require(\'telescope.builtin\').help_tags()') --- nnoremap('gwl', ':lua require(\'telescope\').extensions.git_worktree.git_worktrees()') --- nnoremap('gwc', ':lua require(\'telescope\').extensions.git_worktree.create_git_worktree()') diff --git a/.config/nvim/lua/halfdan/colorscheme.lua b/.config/nvim/lua/halfdan/colorscheme.lua index 3b279e0..7414bf9 100644 --- a/.config/nvim/lua/halfdan/colorscheme.lua +++ b/.config/nvim/lua/halfdan/colorscheme.lua @@ -2,4 +2,4 @@ vim.cmd('let g:nvcode_termcolors=256') vim.cmd('colorscheme ' .. O.colorscheme) -vim.cmd('highlight Normal guibg=NONE ctermbg=NONE') +-- vim.cmd('highlight Normal guibg=NONE ctermbg=NONE') diff --git a/.config/nvim/lua/halfdan/lualine.lua b/.config/nvim/lua/halfdan/lualine.lua index 5becaf3..e288782 100644 --- a/.config/nvim/lua/halfdan/lualine.lua +++ b/.config/nvim/lua/halfdan/lualine.lua @@ -1,7 +1,7 @@ require'lualine'.setup { options = { icons_enabled = true, - theme = 'auto', + theme = 'gruvbox-baby', --component_separators = {'', ''}, --section_separators = {'', ''}, disabled_filetypes = {} @@ -9,8 +9,8 @@ require'lualine'.setup { sections = { lualine_a = {'mode'}, lualine_b = {'branch'}, - lualine_c = { 'filename', 'data', "require'lsp-status'.status()" }, - lualine_x = {'filetype'}, + lualine_c = { 'filename', 'diff' }, + lualine_x = {"require'lsp-status'.status()", 'filetype'}, lualine_y = {'progress'}, lualine_z = {'location'} }, @@ -23,5 +23,14 @@ require'lualine'.setup { lualine_z = {} }, tabline = {}, - extensions = {} + extensions = {}, + winbar = { + lualine_a = { + }, + lualine_b = {}, + lualine_c = {'filename' }, + lualine_x = {}, + lualine_y = {}, + lualine_z = {} + } } diff --git a/.config/nvim/lua/halfdan/packer.lua b/.config/nvim/lua/halfdan/packer.lua index ca218e7..1461882 100644 --- a/.config/nvim/lua/halfdan/packer.lua +++ b/.config/nvim/lua/halfdan/packer.lua @@ -47,10 +47,21 @@ return require("packer").startup({ -- Goodies use {'tpope/vim-fugitive'} use {'tpope/vim-surround'} -- ✅ - use {'tpope/vim-dispatch'} + use {'tpope/vim-dispatch'} -- Testing use {'vim-test/vim-test'} + use { + "nvim-neotest/neotest", + requires = { + "nvim-lua/plenary.nvim", + "nvim-treesitter/nvim-treesitter", + "antoinemadec/FixCursorHold.nvim", + + "jfpedroza/neotest-elixir" + } + } + use {"nvim-neotest/neotest-vim-test" } -- Treesitter use {"nvim-treesitter/nvim-treesitter", run = ":TSUpdate"} @@ -65,6 +76,9 @@ return require("packer").startup({ requires = {'kyazdani42/nvim-web-devicons'} } + use {'rcarriga/nvim-notify'} + + use {'nvim-orgmode/orgmode'} use {'justinmk/vim-sneak'} @@ -84,7 +98,10 @@ return require("packer").startup({ use {'hrsh7th/nvim-cmp'} use {'tzachar/cmp-tabnine', run = './install.sh'} use {'onsails/lspkind-nvim'} -- Display symbol with cmp suggestions - use {'L3MON4D3/LuaSnip'} + use { + 'L3MON4D3/LuaSnip', + requires = {"rafamadriz/friendly-snippets"}, + } use {'saadparwaiz1/cmp_luasnip'} use {'glepnir/lspsaga.nvim'} diff --git a/.config/nvim/lua/halfdan/settings.lua b/.config/nvim/lua/halfdan/settings.lua index fe7af78..976b7f9 100644 --- a/.config/nvim/lua/halfdan/settings.lua +++ b/.config/nvim/lua/halfdan/settings.lua @@ -1,3 +1,5 @@ +vim.notify = require("notify") + vim.cmd('set iskeyword+=-') -- treat dash separated words as a word text object" vim.cmd('set shortmess+=c') -- Don't pass messages to |ins-completion-menu|. vim.cmd('set inccommand=split') -- Make substitution work in realtime @@ -17,7 +19,8 @@ vim.o.mouse = "a" -- Enable your mouse vim.o.splitbelow = true -- Horizontal splits will automatically be below vim.o.termguicolors = true -- set term gui colors most terminals support this vim.o.splitright = true -- Vertical splits will automatically be to the right -vim.o.conceallevel = 0 -- So that I can see `` in markdown files +vim.opt.conceallevel = 2 +vim.opt.concealcursor = 'nc' vim.cmd('set ts=2') -- Insert 4 spaces for a tab vim.cmd('set sw=2') -- Change the number of space characters inserted for indentation vim.cmd('set expandtab') -- Converts tabs to spaces @@ -34,10 +37,10 @@ vim.o.updatetime = 300 -- Faster completion vim.o.timeoutlen = 500 -- By default timeoutlen is 1000 ms vim.o.clipboard = "unnamedplus" -- Copy paste between vim and everything else vim.o.laststatus = 3 -- Set global status bar -vim.opt.winbar = "%=%m %f" -- Show winbar with modified flag and filename right adjusted -- Enable telescope theme -vim.g.gruvbox_baby_telescope_theme = 1 -vim.g.gruvbox_baby_background_color = "dark" +-- vim.g.gruvbox_baby_telescope_theme = 1 +-- vim.g.gruvbox_baby_background_color = "dark" +vim.g.colorscheme = "gruvbox-baby" -- Set colorscheme vim.g.mapleader = ' ' diff --git a/.config/nvim/lua/halfdan/telescope.lua b/.config/nvim/lua/halfdan/telescope.lua index b5f780a..0b256cd 100644 --- a/.config/nvim/lua/halfdan/telescope.lua +++ b/.config/nvim/lua/halfdan/telescope.lua @@ -1,10 +1,12 @@ local actions = require('telescope.actions') + +require("telescope").load_extension("git_worktree") + -- Global remapping ------------------------------- --- '--color=never', require('telescope').setup { defaults = { find_command = {'rg', '--no-heading', '--with-filename', '--line-number', '--column', '--smart-case'}, + file_ignore_patterns = {"_build", "node_modules", "deps" }, prompt_position = "bottom", --prompt_prefix = " ", prompt_prefix = "  ", @@ -16,7 +18,6 @@ require('telescope').setup { layout_strategy = "horizontal", layout_defaults = {horizontal = {mirror = false}, vertical = {mirror = false}}, file_sorter = require'telescope.sorters'.get_fuzzy_file, - file_ignore_patterns = {"_build", "node_modules", "deps" }, generic_sorter = require'telescope.sorters'.get_generic_fuzzy_sorter, shorten_path = true, winblend = 0, @@ -32,7 +33,6 @@ require('telescope').setup { file_previewer = require'telescope.previewers'.vim_buffer_cat.new, grep_previewer = require'telescope.previewers'.vim_buffer_vimgrep.new, qflist_previewer = require'telescope.previewers'.vim_buffer_qflist.new, - layout_strategy = "horizontal", -- Developer configurations: Not meant for general override buffer_previewer_maker = require'telescope.previewers'.buffer_previewer_maker, mappings = { @@ -43,7 +43,6 @@ require('telescope').setup { -- To disable a keymap, put [map] = false -- So, to not map "", just put -- [""] = false, - -- Otherwise, just set the mapping to the function that you want it to be. -- [""] = actions.select_horizontal, diff --git a/.config/nvim/lua/halfdan/treesitter.lua b/.config/nvim/lua/halfdan/treesitter.lua index 7cd7daf..598cb71 100644 --- a/.config/nvim/lua/halfdan/treesitter.lua +++ b/.config/nvim/lua/halfdan/treesitter.lua @@ -1,11 +1,13 @@ require('nvim-treesitter.configs').setup({ - ensure_installed = { "python", "go", "elixir", "rust", "gomod", "json", "lua", "ruby", "yaml" }, + ensure_installed = { "python", "go", "elixir", "rust", "gomod", "json", "lua", "ruby", "yaml", "org" }, ignore_install = { "haskell" }, highlight = { - enable = true + enable = true, + additional_vim_regex_highlighting = {'org'}, }, indent = { - enable = true + enable = true, + disable = { 'org' }, }, incremental_selection = { enable = true, diff --git a/.config/nvim/plugin/packer_compiled.lua b/.config/nvim/plugin/packer_compiled.lua index 426446c..4f83299 100644 --- a/.config/nvim/plugin/packer_compiled.lua +++ b/.config/nvim/plugin/packer_compiled.lua @@ -9,23 +9,26 @@ vim.api.nvim_command('packadd packer.nvim') local no_errors, error_msg = pcall(function() - local time - local profile_info - local should_profile = false - if should_profile then - local hrtime = vim.loop.hrtime - profile_info = {} - time = function(chunk, start) - if start then - profile_info[chunk] = hrtime() - else - profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6 - end +_G._packer = _G._packer or {} +_G._packer.inside_compile = true + +local time +local profile_info +local should_profile = false +if should_profile then + local hrtime = vim.loop.hrtime + profile_info = {} + time = function(chunk, start) + if start then + profile_info[chunk] = hrtime() + else + profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6 end - else - time = function(chunk, start) end end - +else + time = function(chunk, start) end +end + local function save_profiles(threshold) local sorted_times = {} for chunk_name, time_taken in pairs(profile_info) do @@ -38,14 +41,16 @@ local function save_profiles(threshold) results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms' end end + if threshold then + table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)') + end - _G._packer = _G._packer or {} _G._packer.profile_output = results end time([[Luarocks path setup]], true) -local package_path_str = "/Users/halfdan/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/Users/halfdan/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/Users/halfdan/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/Users/halfdan/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" -local install_cpath_pattern = "/Users/halfdan/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so" +local package_path_str = "/Users/matthiasnienaber/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/Users/matthiasnienaber/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/Users/matthiasnienaber/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/Users/matthiasnienaber/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/Users/matthiasnienaber/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so" if not string.find(package.path, package_path_str, 1, true) then package.path = package.path .. ';' .. package_path_str end @@ -69,249 +74,286 @@ end time([[try_loadstring definition]], false) time([[Defining packer_plugins]], true) _G.packer_plugins = { - ["JuliaFormatter.vim"] = { + ["Comment.nvim"] = { + config = { "\27LJ\2\n5\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\fComment\frequire\0" }, loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/JuliaFormatter.vim", - url = "https://github.com/kdheepak/JuliaFormatter.vim" + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/Comment.nvim", + url = "https://github.com/numToStr/Comment.nvim" + }, + ["FixCursorHold.nvim"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/FixCursorHold.nvim", + url = "https://github.com/antoinemadec/FixCursorHold.nvim" }, LuaSnip = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/LuaSnip", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/LuaSnip", url = "https://github.com/L3MON4D3/LuaSnip" }, ["cmp-buffer"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/cmp-buffer", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/cmp-buffer", url = "https://github.com/hrsh7th/cmp-buffer" }, ["cmp-cmdline"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/cmp-cmdline", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/cmp-cmdline", url = "https://github.com/hrsh7th/cmp-cmdline" }, ["cmp-nvim-lsp"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp", url = "https://github.com/hrsh7th/cmp-nvim-lsp" }, ["cmp-path"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/cmp-path", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/cmp-path", url = "https://github.com/hrsh7th/cmp-path" }, ["cmp-tabnine"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/cmp-tabnine", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/cmp-tabnine", url = "https://github.com/tzachar/cmp-tabnine" }, cmp_luasnip = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/cmp_luasnip", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/cmp_luasnip", url = "https://github.com/saadparwaiz1/cmp_luasnip" }, - ["darcula-solid.nvim"] = { - loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/darcula-solid.nvim", - url = "https://github.com/briones-gabriel/darcula-solid.nvim" - }, - dracula = { - loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/dracula", - url = "https://github.com/dracula/vim" - }, ["editorconfig-vim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/editorconfig-vim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/editorconfig-vim", url = "https://github.com/editorconfig/editorconfig-vim" }, - everforest = { + ["elixir.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/everforest", - url = "https://github.com/sainnhe/everforest" + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/elixir.nvim", + url = "https://github.com/mhanberg/elixir.nvim" }, ["git-worktree.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/git-worktree.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/git-worktree.nvim", url = "https://github.com/theprimeagen/git-worktree.nvim" }, - ["jsonc.vim"] = { + gruvbox = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/jsonc.vim", - url = "https://github.com/neoclide/jsonc.vim" + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/gruvbox", + url = "https://github.com/gruvbox-community/gruvbox" }, - ["julia-vim"] = { - loaded = false, - needs_bufread = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/opt/julia-vim", - url = "https://github.com/JuliaEditorSupport/julia-vim" + ["gruvbox-baby"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/gruvbox-baby", + url = "https://github.com/luisiacc/gruvbox-baby" }, ["lsp-status.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/lsp-status.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/lsp-status.nvim", url = "https://github.com/nvim-lua/lsp-status.nvim" }, ["lspkind-nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/lspkind-nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/lspkind-nvim", url = "https://github.com/onsails/lspkind-nvim" }, ["lspsaga.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/lspsaga.nvim", - url = "https://github.com/tami5/lspsaga.nvim" + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/lspsaga.nvim", + url = "https://github.com/glepnir/lspsaga.nvim" }, ["lualine.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/lualine.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/lualine.nvim", url = "https://github.com/nvim-lualine/lualine.nvim" }, - ["lush.nvim"] = { + neogit = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/lush.nvim", - url = "https://github.com/rktjmp/lush.nvim" + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/neogit", + url = "https://github.com/TimUntersberger/neogit" }, - moonlight = { + neotest = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/moonlight", - url = "https://github.com/shaunsingh/moonlight.nvim" + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/neotest", + url = "https://github.com/nvim-neotest/neotest" }, - nerdcommenter = { + ["neotest-elixir"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nerdcommenter", - url = "https://github.com/preservim/nerdcommenter" + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/neotest-elixir", + url = "https://github.com/jfpedroza/neotest-elixir" + }, + ["neotest-vim-test"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/neotest-vim-test", + url = "https://github.com/nvim-neotest/neotest-vim-test" }, ["nord-vim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nord-vim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nord-vim", url = "https://github.com/arcticicestudio/nord-vim" }, ["nvim-cmp"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nvim-cmp", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-cmp", url = "https://github.com/hrsh7th/nvim-cmp" }, ["nvim-dap"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nvim-dap", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-dap", url = "https://github.com/mfussenegger/nvim-dap" }, ["nvim-dap-ui"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nvim-dap-ui", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-dap-ui", url = "https://github.com/rcarriga/nvim-dap-ui" }, + ["nvim-dap-virtual-text"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-dap-virtual-text", + url = "https://github.com/theHamsta/nvim-dap-virtual-text" + }, ["nvim-lsp-installer"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nvim-lsp-installer", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-lsp-installer", url = "https://github.com/williamboman/nvim-lsp-installer" }, ["nvim-lspconfig"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nvim-lspconfig", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-lspconfig", url = "https://github.com/neovim/nvim-lspconfig" }, + ["nvim-notify"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-notify", + url = "https://github.com/rcarriga/nvim-notify" + }, ["nvim-treesitter"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nvim-treesitter", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-treesitter", url = "https://github.com/nvim-treesitter/nvim-treesitter" }, + ["nvim-treesitter-textobjects"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-treesitter-textobjects", + url = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects" + }, ["nvim-web-devicons"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/nvim-web-devicons", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/nvim-web-devicons", url = "https://github.com/kyazdani42/nvim-web-devicons" }, ["onedark.vim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/onedark.vim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/onedark.vim", url = "https://github.com/joshdick/onedark.vim" }, + orgmode = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/orgmode", + url = "https://github.com/nvim-orgmode/orgmode" + }, ["packer.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/packer.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/packer.nvim", url = "https://github.com/wbthomason/packer.nvim" }, ["plenary.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/plenary.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/plenary.nvim", url = "https://github.com/nvim-lua/plenary.nvim" }, ["popup.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/popup.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/popup.nvim", url = "https://github.com/nvim-lua/popup.nvim" }, ["rust-tools.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/rust-tools.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/rust-tools.nvim", url = "https://github.com/simrat39/rust-tools.nvim" }, ["rust.vim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/rust.vim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/rust.vim", url = "https://github.com/rust-lang/rust.vim" }, - ["symbols-outline.nvim"] = { - loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/symbols-outline.nvim", - url = "https://github.com/marcuscaisey/symbols-outline.nvim" - }, tagbar = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/tagbar", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/tagbar", url = "https://github.com/preservim/tagbar" }, ["telescope-fzy-native.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/telescope-fzy-native.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/telescope-fzy-native.nvim", url = "https://github.com/nvim-telescope/telescope-fzy-native.nvim" }, ["telescope-project.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/telescope-project.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/telescope-project.nvim", url = "https://github.com/nvim-telescope/telescope-project.nvim" }, ["telescope.nvim"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/telescope.nvim", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/telescope.nvim", url = "https://github.com/nvim-telescope/telescope.nvim" }, + ["vim-dispatch"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-dispatch", + url = "https://github.com/tpope/vim-dispatch" + }, ["vim-easy-align"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/vim-easy-align", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-easy-align", url = "https://github.com/junegunn/vim-easy-align" }, ["vim-fugitive"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/vim-fugitive", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-fugitive", url = "https://github.com/tpope/vim-fugitive" }, ["vim-gitgutter"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/vim-gitgutter", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-gitgutter", url = "https://github.com/airblade/vim-gitgutter" }, ["vim-highlightedyank"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/vim-highlightedyank", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-highlightedyank", url = "https://github.com/machakann/vim-highlightedyank" }, ["vim-sneak"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/vim-sneak", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-sneak", url = "https://github.com/justinmk/vim-sneak" }, ["vim-surround"] = { loaded = true, - path = "/Users/halfdan/.local/share/nvim/site/pack/packer/start/vim-surround", + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-surround", url = "https://github.com/tpope/vim-surround" + }, + ["vim-test"] = { + loaded = true, + path = "/Users/matthiasnienaber/.local/share/nvim/site/pack/packer/start/vim-test", + url = "https://github.com/vim-test/vim-test" } } time([[Defining packer_plugins]], false) +-- Config for: Comment.nvim +time([[Config for Comment.nvim]], true) +try_loadstring("\27LJ\2\n5\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\fComment\frequire\0", "config", "Comment.nvim") +time([[Config for Comment.nvim]], false) + +_G._packer.inside_compile = false +if _G._packer.needs_bufread == true then + vim.cmd("doautocmd BufRead") +end +_G._packer.needs_bufread = false + if should_profile then save_profiles() end end) if not no_errors then + error_msg = error_msg:gsub('"', '\\"') vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None') end diff --git a/.config/tmux/tmux.conf b/.config/tmux/tmux.conf index 397487b..d59e683 100644 --- a/.config/tmux/tmux.conf +++ b/.config/tmux/tmux.conf @@ -5,6 +5,8 @@ # Plugin manager for tmux set -g @plugin 'tmux-plugins/tpm' +set-environment -g TMUX_PLUGIN_MANAGER_PATH '~/.tmux/plugins/' + # Simple tmux options for anyone set -g @plugin 'tmux-plugins/tmux-sensible'