summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua')
-rw-r--r--lua/colorscheme.lua3
-rw-r--r--lua/keymappings.lua36
-rw-r--r--lua/lsp-wrapper.lua254
-rw-r--r--lua/lsp-wrapper.vim37
-rw-r--r--lua/lsp/bash-ls.lua3
-rw-r--r--lua/lsp/css-ls.lua3
-rw-r--r--lua/lsp/docker-ls.lua3
-rw-r--r--lua/lsp/general-ls.lua15
-rw-r--r--lua/lsp/graphql-ls.lua3
-rw-r--r--lua/lsp/html-ls.lua11
-rw-r--r--lua/lsp/init.lua0
-rw-r--r--lua/lsp/java-ls.lua8
-rw-r--r--lua/lsp/javascript-ls.lua3
-rw-r--r--lua/lsp/json-ls.lua11
-rw-r--r--lua/lsp/lsp-config.lua61
-rw-r--r--lua/lsp/lsp-kind.lua27
-rw-r--r--lua/lsp/lua-ls.lua8
-rw-r--r--lua/lsp/python-ls.lua3
-rw-r--r--lua/lsp/vim-ls.lua3
-rw-r--r--lua/lsp/yaml-ls.lua3
-rw-r--r--lua/nv-bufferline/init.lua13
-rw-r--r--lua/nv-colorizer/init.lua (renamed from lua/plugins/colorizer-config.lua)5
-rw-r--r--lua/nv-compe/init.lua (renamed from lua/plugins/compe-config.lua)42
-rw-r--r--lua/nv-galaxyline/init.lua (renamed from lua/plugins/galaxyline-config.lua)22
-rw-r--r--lua/nv-gitsigns/init.lua37
-rw-r--r--lua/nv-nvim-autopairs/init.lua40
-rw-r--r--lua/nv-nvimtree/init.lua (renamed from lua/plugins/nvimtree-config.lua)0
-rw-r--r--lua/nv-treesitter/init.lua (renamed from lua/plugins/treesitter-config.lua)18
-rw-r--r--lua/plugins.lua69
-rw-r--r--lua/plugins/lspsaga-config.lua2
-rw-r--r--lua/plugins/telescope-config.lua73
-rw-r--r--lua/settings.lua39
32 files changed, 274 insertions, 581 deletions
diff --git a/lua/colorscheme.lua b/lua/colorscheme.lua
new file mode 100644
index 00000000..0090af8f
--- /dev/null
+++ b/lua/colorscheme.lua
@@ -0,0 +1,3 @@
+vim.cmd('colorscheme nvcode')
+vim.cmd('let g:nvcode_termcolors=256')
+--vim.api.nvim_exec([[colorscheme nvcode]])
diff --git a/lua/keymappings.lua b/lua/keymappings.lua
new file mode 100644
index 00000000..1d20f49e
--- /dev/null
+++ b/lua/keymappings.lua
@@ -0,0 +1,36 @@
+vim.api.nvim_set_keymap('n', '<Space>', '<NOP>', { noremap = true, silent = true })
+vim.g.mapleader = ' '
+
+-- no hl
+vim.api.nvim_set_keymap('n', '<Leader>h', ':set hlsearch!<CR>', { noremap = true, silent = true })
+
+-- explorer
+vim.api.nvim_set_keymap('n', '<Leader>e', ':NvimTreeToggle<CR>', { noremap = true, silent = true })
+
+
+-- better window movement
+vim.api.nvim_set_keymap('n', '<C-h>', '<C-w>h', { silent = true })
+vim.api.nvim_set_keymap('n', '<C-j>', '<C-w>j', { silent = true })
+vim.api.nvim_set_keymap('n', '<C-k>', '<C-w>k', { silent = true })
+vim.api.nvim_set_keymap('n', '<C-l>', '<C-w>l', { silent = true })
+
+-- better indenting
+vim.api.nvim_set_keymap('v', '<', '<gv', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('v', '>', '>gv', { noremap = true, silent = true })
+
+-- I hate escape
+vim.api.nvim_set_keymap('i', 'jk', '<ESC>', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('i', 'kj', '<ESC>', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('i', 'jj', '<ESC>', { noremap = true, silent = true })
+
+-- Tab switch buffer
+vim.api.nvim_set_keymap('n', '<TAB>', ':bnext<CR>', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('n', '<S-TAB>', ':bprevious<CR>', { noremap = true, silent = true })
+
+-- Move selected line / block of text in visual mode
+vim.api.nvim_set_keymap('x', 'K', ':move \'<-2<CR>gv-gv\'', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('x', 'J', ':move \'>+1<CR>gv-gv\'', { noremap = true, silent = true })
+
+-- TAB Complete
+--vim.api.nvim_set_keymap('i', '<expr><TAB>', 'pumvisible() ? \"\\<C-n>\" : \"\\<TAB>\"', { noremap = true, silent = true })
+
diff --git a/lua/lsp-wrapper.lua b/lua/lsp-wrapper.lua
deleted file mode 100644
index 0771f1df..00000000
--- a/lua/lsp-wrapper.lua
+++ /dev/null
@@ -1,254 +0,0 @@
-local lsp_wrapper = {}
-
--- buf
-
-function lsp_wrapper.add_to_workspace_folder()
- vim.lsp.buf.add_workspace_folder()
-end
-
-function lsp_wrapper.clear_references()
- vim.lsp.buf.clear_references()
-end
-
-function lsp_wrapper.code_action()
- vim.lsp.buf.code_action()
-end
-
-function lsp_wrapper.declaration()
- vim.lsp.buf.declaration()
- vim.lsp.buf.clear_references()
-end
-
-function lsp_wrapper.definition()
- vim.lsp.buf.definition()
- vim.lsp.buf.clear_references()
-end
-
-function lsp_wrapper.document_highlight()
- vim.lsp.buf.document_highlight()
-end
-
-function lsp_wrapper.document_symbol()
- vim.lsp.buf.document_symbol()
-end
-
-function lsp_wrapper.formatting()
- vim.lsp.buf.formatting()
-end
-
-function lsp_wrapper.formatting_sync()
- vim.lsp.buf.formatting_sync()
-end
-
-function lsp_wrapper.hover()
- vim.lsp.buf.hover()
-end
-
-function lsp_wrapper.implementation()
- vim.lsp.buf.implementation()
-end
-
-function lsp_wrapper.incoming_calls()
- vim.lsp.buf.incoming_calls()
-end
-
-function lsp_wrapper.list_workspace_folders()
- vim.lsp.buf.list_workspace_folders()
-end
-
-function lsp_wrapper.outgoing_calls()
- vim.lsp.buf.outgoing_calls()
-end
-
-function lsp_wrapper.range_code_action()
- vim.lsp.buf.range_code_action()
-end
-
-function lsp_wrapper.range_formatting()
- vim.lsp.buf.range_formatting()
-end
-
-function lsp_wrapper.references()
- vim.lsp.buf.references()
- vim.lsp.buf.clear_references()
-end
-
-function lsp_wrapper.remove_workspace_folder()
- vim.lsp.buf.remove_workspace_folder()
-end
-
-function lsp_wrapper.rename()
- vim.lsp.buf.rename()
-end
-
-function lsp_wrapper.signature_help()
- vim.lsp.buf.signature_help()
-end
-
-function lsp_wrapper.type_definition()
- vim.lsp.buf.type_definition()
-end
-
-function lsp_wrapper.workspace_symbol()
- vim.lsp.buf.workspace_symbol()
-end
-
--- diagnostic
-
-function lsp_wrapper.get_all()
- vim.lsp.diagnostic.get_all()
-end
-
-function lsp_wrapper.get_next()
- vim.lsp.diagnostic.get_next()
-end
-
-function lsp_wrapper.get_prev()
- vim.lsp.diagnostic.get_prev()
-end
-
-function lsp_wrapper.goto_next()
- vim.lsp.diagnostic.goto_next()
-end
-
-function lsp_wrapper.goto_prev()
- vim.lsp.diagnostic.goto_prev()
-end
-
-function lsp_wrapper.show_line_diagnostics()
- vim.lsp.diagnostic.show_line_diagnostics()
-end
-
--- misc
-
--- :lua print(vim.inspect(vim.lsp.buf_get_clients()))
-
--- autoformat
--- autocmd BufWritePre *.rs lua vim.lsp.buf.formatting_sync(nil, 1000)
-
-return lsp_wrapper
-
--- You can see more about the differences in types here:
--- https://microsoft.github.io/language-server-protocol/specification#textDocument_documentHighlight
-
--- *hl-LspReferenceText*
--- LspReferenceText used for highlighting "text" references
--- *hl-LspReferenceRead*
--- LspReferenceRead used for highlighting "read" references
--- *hl-LspReferenceWrite*
--- LspReferenceWrite used for highlighting "write" references
-
--- *lsp-highlight-diagnostics*
--- All highlights defined for diagnostics begin with `LspDiagnostics` followed by
--- the type of highlight (e.g., `Sign`, `Underline`, etc.) and then the Severity
--- of the highlight (e.g. `Error`, `Warning`, etc.)
-
--- Sign, underline and virtual text highlights (by default) are linked to their
--- corresponding LspDiagnosticsDefault highlight.
-
--- For example, the default highlighting for |hl-LspDiagnosticsSignError| is
--- linked to |hl-LspDiagnosticsDefaultError|. To change the default (and
--- therefore the linked highlights), use the |:highlight| command: >
-
--- highlight LspDiagnosticsDefaultError guifg="BrightRed"
--- <
-
--- *hl-LspDiagnosticsDefaultError*
--- LspDiagnosticsDefaultError
--- Used as the base highlight group.
--- Other LspDiagnostic highlights link to this by default (except Underline)
-
--- *hl-LspDiagnosticsDefaultWarning*
--- LspDiagnosticsDefaultWarning
--- Used as the base highlight group.
--- Other LspDiagnostic highlights link to this by default (except Underline)
-
--- *hl-LspDiagnosticsDefaultInformation*
--- LspDiagnosticsDefaultInformation
--- Used as the base highlight group.
--- Other LspDiagnostic highlights link to this by default (except Underline)
-
--- *hl-LspDiagnosticsDefaultHint*
--- LspDiagnosticsDefaultHint
--- Used as the base highlight group.
--- Other LspDiagnostic highlights link to this by default (except Underline)
-
--- *hl-LspDiagnosticsVirtualTextError*
--- LspDiagnosticsVirtualTextError
--- Used for "Error" diagnostic virtual text.
--- See |vim.lsp.diagnostic.set_virtual_text()|
-
--- *hl-LspDiagnosticsVirtualTextWarning*
--- LspDiagnosticsVirtualTextWarning
--- Used for "Warning" diagnostic virtual text.
--- See |vim.lsp.diagnostic.set_virtual_text()|
-
--- *hl-LspDiagnosticsVirtualTextInformation*
--- LspDiagnosticsVirtualTextInformation
--- Used for "Information" diagnostic virtual text.
--- See |vim.lsp.diagnostic.set_virtual_text()|
-
--- *hl-LspDiagnosticsVirtualTextHint*
--- LspDiagnosticsVirtualTextHint
--- Used for "Hint" diagnostic virtual text.
--- See |vim.lsp.diagnostic.set_virtual_text()|
-
--- *hl-LspDiagnosticsUnderlineError*
--- LspDiagnosticsUnderlineError
--- Used to underline "Error" diagnostics.
--- See |vim.lsp.diagnostic.set_underline()|
-
--- *hl-LspDiagnosticsUnderlineWarning*
--- LspDiagnosticsUnderlineWarning
--- Used to underline "Warning" diagnostics.
--- See |vim.lsp.diagnostic.set_underline()|
-
--- *hl-LspDiagnosticsUnderlineInformation*
--- LspDiagnosticsUnderlineInformation
--- Used to underline "Information" diagnostics.
--- See |vim.lsp.diagnostic.set_underline()|
-
--- *hl-LspDiagnosticsUnderlineHint*
--- LspDiagnosticsUnderlineHint
--- Used to underline "Hint" diagnostics.
--- See |vim.lsp.diagnostic.set_underline()|
-
--- *hl-LspDiagnosticsFloatingError*
--- LspDiagnosticsFloatingError
--- Used to color "Error" diagnostic messages in diagnostics float.
--- See |vim.lsp.diagnostic.show_line_diagnostics()|
-
--- *hl-LspDiagnosticsFloatingWarning*
--- LspDiagnosticsFloatingWarning
--- Used to color "Warning" diagnostic messages in diagnostics float.
--- See |vim.lsp.diagnostic.show_line_diagnostics()|
-
--- *hl-LspDiagnosticsFloatingInformation*
--- LspDiagnosticsFloatingInformation
--- Used to color "Information" diagnostic messages in diagnostics float.
--- See |vim.lsp.diagnostic.show_line_diagnostics()|
-
--- *hl-LspDiagnosticsFloatingHint*
--- LspDiagnosticsFloatingHint
--- Used to color "Hint" diagnostic messages in diagnostics float.
--- See |vim.lsp.diagnostic.show_line_diagnostics()|
-
--- *hl-LspDiagnosticsSignError*
--- LspDiagnosticsSignError
--- Used for "Error" signs in sign column.
--- See |vim.lsp.diagnostic.set_signs()|
-
--- *hl-LspDiagnosticsSignWarning*
--- LspDiagnosticsSignWarning
--- Used for "Warning" signs in sign column.
--- See |vim.lsp.diagnostic.set_signs()|
-
--- *hl-LspDiagnosticsSignInformation*
--- LspDiagnosticsSignInformation
--- Used for "Information" signs in sign column.
--- See |vim.lsp.diagnostic.set_signs()|
-
--- *hl-LspDiagnosticsSignHint*
--- LspDiagnosticsSignHint
--- Used for "Hint" signs in sign column.
--- See |vim.lsp.diagnostic.set_signs()|
diff --git a/lua/lsp-wrapper.vim b/lua/lsp-wrapper.vim
deleted file mode 100644
index ca400bb6..00000000
--- a/lua/lsp-wrapper.vim
+++ /dev/null
@@ -1,37 +0,0 @@
-command! LspCodeAction lua require 'lsp-wrapper'.code_action()
-command! LspDeclaration lua require 'lsp-wrapper'.declaration()
-command! LspDefinition lua require 'lsp-wrapper'.definition()
-command! LspDocumentSymbol lua require 'lsp-wrapper'.document_symbol()
-command! LspFormatting lua require 'lsp-wrapper'.formatting()
-command! LspFormattingSync lua require 'lsp-wrapper'.formatting_sync()
-command! LspHover lua require 'lsp-wrapper'.hover()
-command! LspImplementation lua require 'lsp-wrapper'.implementation()
-command! LspRangeCodeAction lua require 'lsp-wrapper'.range_code_action()
-command! LspRangeFormatting lua require 'lsp-wrapper'.range_formatting()
-command! LspReferences lua require 'lsp-wrapper'.references()
-command! LspRename lua require 'lsp-wrapper'.rename()
-command! LspTypeDefinition lua require 'lsp-wrapper'.type_definition()
-command! LspWorkspaceSymbol lua require 'lsp-wrapper'.workspace_symbol()
-command! LspGotoNext lua require 'lsp-wrapper'.goto_next()
-command! LspGotoPrev lua require 'lsp-wrapper'.goto_prev()
-command! LspShowLineDiagnostics lua require 'lsp-wrapper'.show_line_diagnostics()
-" command! LspAddToWorkspaceFolder lua require 'lsp-wrapper'.add_to_workspace_folder()
-" command! LspRemoveWorkspaceFolder lua require 'lsp-wrapper'.remove_workspace_folder()
-" command! LspListWorkspaceFolders lua require 'lsp-wrapper'.list_workspace_folders()
-" command! LspClearReferences lua require 'lsp-wrapper'.clear_references()
-" command! LspGetNext lua require 'lsp-wrapper'.get_next()
-" command! LspGetPrev lua require 'lsp-wrapper'.get_prev()
-" command! LspGetAll lua require 'lsp-wrapper'.get_all()
-" command! LspIncomingCalls lua require 'lsp-wrapper'.incoming_calls()
-" command! LspOutGoingCalls lua require 'lsp-wrapper'.outgoing_calls()
-" command! LspDocumentHighlight lua require 'lsp-wrapper'.document_highlight()
-
-" Java
-
-" command! FileType java LspCodeAction <Esc><Cmd>lua require('jdtls').code_action(true)<CR>
-" command! FileType java LspCodeAction <Esc><Cmd>lua require('jdtls').code_action(false, 'refactor')<CR>
-
-" nnoremap <A-o> <Cmd>lua require'jdtls'.organize_imports()<CR>
-" nnoremap crv <Cmd>lua require('jdtls').extract_variable()<CR>
-" vnoremap crv <Esc><Cmd>lua require('jdtls').extract_variable(true)<CR>
-" vnoremap crm <Esc><Cmd>lua require('jdtls').extract_method(true)<CR>
diff --git a/lua/lsp/bash-ls.lua b/lua/lsp/bash-ls.lua
deleted file mode 100644
index ae3e7d70..00000000
--- a/lua/lsp/bash-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm i -g bash-language-server
-require'lspconfig'.bashls.setup{}
-
diff --git a/lua/lsp/css-ls.lua b/lua/lsp/css-ls.lua
deleted file mode 100644
index 337fd585..00000000
--- a/lua/lsp/css-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm install -g vscode-css-languageserver-bin
-require'lspconfig'.cssls.setup{}
-
diff --git a/lua/lsp/docker-ls.lua b/lua/lsp/docker-ls.lua
deleted file mode 100644
index 32b8b946..00000000
--- a/lua/lsp/docker-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm install -g dockerfile-language-server-nodejs
-require'lspconfig'.dockerls.setup{}
-
diff --git a/lua/lsp/general-ls.lua b/lua/lsp/general-ls.lua
deleted file mode 100644
index fa28dbcf..00000000
--- a/lua/lsp/general-ls.lua
+++ /dev/null
@@ -1,15 +0,0 @@
-require"lspconfig".efm.setup {
- init_options = {documentFormatting = true},
- filetypes = {"lua"},
- settings = {
- rootMarkers = {".git/"},
- languages = {
- lua = {
- {
- formatCommand = "lua-format -i --no-keep-simple-function-one-line --no-break-after-operator --column-limit=150 --break-after-table-lb",
- formatStdin = true
- }
- }
- }
- }
-}
diff --git a/lua/lsp/graphql-ls.lua b/lua/lsp/graphql-ls.lua
deleted file mode 100644
index 6369446d..00000000
--- a/lua/lsp/graphql-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm install -g graphql-language-service-cli
-require'lspconfig'.graphql.setup{}
-
diff --git a/lua/lsp/html-ls.lua b/lua/lsp/html-ls.lua
deleted file mode 100644
index b27650a6..00000000
--- a/lua/lsp/html-ls.lua
+++ /dev/null
@@ -1,11 +0,0 @@
--- npm install -g vscode-html-languageserver-bin
---Enable (broadcasting) snippet capability for completion
-local capabilities = vim.lsp.protocol.make_client_capabilities()
-capabilities.textDocument.completion.completionItem.snippetSupport = true
-
-require'lspconfig'.html.setup {
- capabilities = capabilities,
-}
-
-
-require'lspconfig'.html.setup{}
diff --git a/lua/lsp/init.lua b/lua/lsp/init.lua
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/lua/lsp/init.lua
diff --git a/lua/lsp/java-ls.lua b/lua/lsp/java-ls.lua
deleted file mode 100644
index 689b71eb..00000000
--- a/lua/lsp/java-ls.lua
+++ /dev/null
@@ -1,8 +0,0 @@
--- In Vimscript
--- augroup lsp
--- au!
--- au FileType java lua require('jdtls').start_or_attach({cmd = {'java-linux-ls'}})
--- augroup end
--- find_root looks for parent directories relative to the current buffer containing one of the given arguments.
--- require'lspconfig'.jdtls.setup {cmd = {'java-linux-ls'}}
-require('jdtls').start_or_attach({cmd = {'java-linux-ls'}, root_dir = require('jdtls.setup').find_root({'gradle.build', 'pom.xml'})})
diff --git a/lua/lsp/javascript-ls.lua b/lua/lsp/javascript-ls.lua
deleted file mode 100644
index 62ca0675..00000000
--- a/lua/lsp/javascript-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm install -g typescript typescript-language-server
-require'lspconfig'.tsserver.setup{}
-
diff --git a/lua/lsp/json-ls.lua b/lua/lsp/json-ls.lua
deleted file mode 100644
index 474f1803..00000000
--- a/lua/lsp/json-ls.lua
+++ /dev/null
@@ -1,11 +0,0 @@
--- npm install -g vscode-json-languageserver
-require'lspconfig'.jsonls.setup {
- commands = {
- Format = {
- function()
- vim.lsp.buf.range_formatting({},{0,0},{vim.fn.line("$"),0})
- end
- }
- }
-}
-
diff --git a/lua/lsp/lsp-config.lua b/lua/lsp/lsp-config.lua
deleted file mode 100644
index 74b82865..00000000
--- a/lua/lsp/lsp-config.lua
+++ /dev/null
@@ -1,61 +0,0 @@
--- local nvim_lsp = require('lspconfig')
--- local on_attach = function(client, bufnr)
--- local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end
--- local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end
-
--- buf_set_option('omnifunc', 'v:lua.vim.lsp.omnifunc')
-
--- -- Mappings.
--- local opts = { noremap=true, silent=true }
--- buf_set_keymap('n', 'gD', '<Cmd>lua vim.lsp.buf.declaration()<CR>', opts)
--- -- buf_set_keymap('n', 'gd', ':lua vim.lsp.buf.definition()')
--- buf_set_keymap('n', 'K', '<Cmd>lua vim.lsp.buf.hover()<CR>', opts)
--- buf_set_keymap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
--- buf_set_keymap('n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
--- buf_set_keymap('n', '<space>wa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', opts)
--- buf_set_keymap('n', '<space>wr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>', opts)
--- buf_set_keymap('n', '<space>wr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>', opts)
--- buf_set_keymap('n', '<space>wl', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>', opts)
--- buf_set_keymap('n', '<space>D', '<cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
--- buf_set_keymap('n', '<space>rn', '<cmd>lua vim.lsp.buf.rename()<CR>', opts)
--- -- buf_set_keymap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
--- buf_set_keymap('n', '<space>e', '<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>', opts)
--- buf_set_keymap('n', '[d', '<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>', opts)
--- buf_set_keymap('n', ']d', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>', opts)
--- buf_set_keymap('n', '<space>q', '<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>', opts)
-
--- -- *vim.lsp.buf.code_action()
-
--- -- Set some keybinds conditional on server capabilities
--- if client.resolved_capabilities.document_formatting then
--- buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.formatting()<CR>", opts)
--- elseif client.resolved_capabilities.document_range_formatting then
--- buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.range_formatting()<CR>", opts)
--- end
--- -- Set autocommands conditional on server_capabilities
--- -- if client.resolved_capabilities.document_highlight then
--- -- vim.api.nvim_exec([[
--- -- hi LspReferenceRead cterm=bold ctermbg=red guibg=Pink
--- -- hi LspReferenceText cterm=bold ctermbg=red guibg=Pink
--- -- hi LspReferenceWrite cterm=bold ctermbg=red guibg=Pink
--- -- augroup lsp_document_highlight
--- -- autocmd! * <buffer>
--- -- autocmd CursorHold <buffer> lua vim.lsp.buf.document_highlight()
--- -- autocmd CursorMoved <buffer> lua vim.lsp.buf.clear_references()
--- -- augroup END
--- -- ]], false)
--- -- end
--- end
-
--- -- Use a loop to conveniently both setup defined servers
--- -- and map buffer local keybindings when the language server attaches
--- local servers = { "pyright", "rust_analyzer", "tsserver" }
--- for _, lsp in ipairs(servers) do
--- nvim_lsp[lsp].setup { on_attach = on_attach }
--- end
-
-
-vim.fn.sign_define("LspDiagnosticsSignError", {text = "", numhl = "LspDiagnosticsDefaultError"})
-vim.fn.sign_define("LspDiagnosticsSignWarning", {text = "", numhl = "LspDiagnosticsDefaultWarning"})
-vim.fn.sign_define("LspDiagnosticsSignInformation", {text = "", numhl = "LspDiagnosticsDefaultInformation"})
-vim.fn.sign_define("LspDiagnosticsSignHint", {text = "", numhl = "LspDiagnosticsDefaultHint"})
diff --git a/lua/lsp/lsp-kind.lua b/lua/lsp/lsp-kind.lua
deleted file mode 100644
index 7ac3fefa..00000000
--- a/lua/lsp/lsp-kind.lua
+++ /dev/null
@@ -1,27 +0,0 @@
--- commented options are defaults
-require('lspkind').init({
- with_text = false,
- symbol_map = {
- Text = ' ī”Ģ ',
- Method = '  ',
- Function = '  ',
- Constructor = '  ',
- Variable = '[]',
- Class = ' ī – ',
- Interface = ' ',
- Module = '  ',
- Property = ' ī‚­ ',
- Unit = ' īĨŦ ',
- Value = ' īĸŸ ',
- Enum = ' īŠ—',
- Keyword = ' ī§ ',
- Snippet = ' ī— ',
- Color = 'îˆĢ',
- File = 'ī…›',
- Folder = ' īąŽ ',
- EnumMember = ' ī… ',
- Constant = ' ī›ŧ ',
- Struct = '  '
- },
-})
-
diff --git a/lua/lsp/lua-ls.lua b/lua/lsp/lua-ls.lua
index c04219a9..c2bd79c0 100644
--- a/lua/lsp/lua-ls.lua
+++ b/lua/lsp/lua-ls.lua
@@ -5,11 +5,11 @@ local sumneko_root_path = ""
local sumneko_binary = ""
if vim.fn.has("mac") == 1 then
- sumneko_root_path = "/Users/" .. USER .. "/.config/nvim/lua-language-server"
- sumneko_binary = "/Users/" .. USER .. "/.config/nvim/lua-language-server/bin/macOS/lua-language-server"
+ sumneko_root_path = "/Users/" .. USER .. "/.config/nvim/ls/lua-language-server"
+ sumneko_binary = "/Users/" .. USER .. "/.config/nvim/ls/lua-language-server/bin/macOS/lua-language-server"
elseif vim.fn.has("unix") == 1 then
- sumneko_root_path = "/home/" .. USER .. "/.config/nvim/lua-language-server"
- sumneko_binary = "/home/" .. USER .. "/.config/nvim/lua-language-server/bin/Linux/lua-language-server"
+ sumneko_root_path = "/home/" .. USER .. "/.config/nvim/ls/lua-language-server"
+ sumneko_binary = "/home/" .. USER .. "/.config/nvim/ls/lua-language-server/bin/Linux/lua-language-server"
else
print("Unsupported system for sumneko")
end
diff --git a/lua/lsp/python-ls.lua b/lua/lsp/python-ls.lua
deleted file mode 100644
index 0be71acb..00000000
--- a/lua/lsp/python-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm i -g pyright
-require'lspconfig'.pyright.setup{}
-
diff --git a/lua/lsp/vim-ls.lua b/lua/lsp/vim-ls.lua
deleted file mode 100644
index ac1e6e19..00000000
--- a/lua/lsp/vim-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm install -g vim-language-server
-require'lspconfig'.vimls.setup{}
-
diff --git a/lua/lsp/yaml-ls.lua b/lua/lsp/yaml-ls.lua
deleted file mode 100644
index 6b2de91e..00000000
--- a/lua/lsp/yaml-ls.lua
+++ /dev/null
@@ -1,3 +0,0 @@
--- npm install -g yaml-language-server
-require'lspconfig'.yamlls.setup{}
-
diff --git a/lua/nv-bufferline/init.lua b/lua/nv-bufferline/init.lua
new file mode 100644
index 00000000..760bb517
--- /dev/null
+++ b/lua/nv-bufferline/init.lua
@@ -0,0 +1,13 @@
+require'bufferline'.setup{}
+vim.api.nvim_set_keymap('n', '<TAB>', ':BufferLineCycleNext<CR>', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('n', '<S-TAB>', ':BufferLineCyclePrev<CR>', { noremap = true, silent = true })
+
+
+--" These commands will move the current buffer backwards or forwards in the bufferline
+--nnoremap <silent><mymap> :BufferLineMoveNext<CR>
+--nnoremap <silent><mymap> :BufferLineMovePrev<CR>
+
+--" These commands will sort buffers by directory, language, or a custom criteria
+--nnoremap <silent>be :BufferLineSortByExtension<CR>
+--nnoremap <silent>bd :BufferLineSortByDirectory<CR>
+--nnoremap <silent><mymap> :lua require'bufferline'.sort_buffers_by(function (buf_a, buf_b) return buf_a.id < buf_b.id end)<CR>
diff --git a/lua/plugins/colorizer-config.lua b/lua/nv-colorizer/init.lua
index e990d505..1b22f7f7 100644
--- a/lua/plugins/colorizer-config.lua
+++ b/lua/nv-colorizer/init.lua
@@ -1,6 +1,6 @@
require'colorizer'.setup(
{'*';},
- {
+ {
RGB = true; -- #RGB hex codes
RRGGBB = true; -- #RRGGBB hex codes
-- names = true; -- "Name" codes like Blue
@@ -10,6 +10,3 @@ require'colorizer'.setup(
css = true; -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB
css_fn = true; -- Enable all CSS *functions*: rgb_fn, hsl_fn
})
-
-
-
diff --git a/lua/plugins/compe-config.lua b/lua/nv-compe/init.lua
index 75630c6d..4dcfe26a 100644
--- a/lua/plugins/compe-config.lua
+++ b/lua/nv-compe/init.lua
@@ -1,9 +1,3 @@
--- TODO we need snippet support and to maybe get better docs idk
-
-
-vim.cmd [[set shortmess+=c]]
-vim.o.completeopt = "menuone,noselect"
-
require'compe'.setup {
enabled = true;
autocomplete = true;
@@ -13,10 +7,9 @@ require'compe'.setup {
throttle_time = 80;
source_timeout = 200;
incomplete_delay = 400;
- allow_prefix_unmatch = false;
- max_abbr_width = 1000;
- max_kind_width = 1000;
- max_menu_width = 1000000;
+ max_abbr_width = 100;
+ max_kind_width = 100;
+ max_menu_width = 100;
documentation = true;
source = {
@@ -33,9 +26,37 @@ require'compe'.setup {
};
}
+
+
+
+
local t = function(str)
return vim.api.nvim_replace_termcodes(str, true, true, true)
end
+
+local check_back_space = function()
+ local col = vim.fn.col('.') - 1
+ if col == 0 or vim.fn.getline('.'):sub(col, col):match('%s') then
+ return true
+ else
+ return false
+ end
+end
+
+-- Use (s-)tab to:
+--- move to prev/next item in completion menuone
+--- jump to prev/next snippet's placeholder
+_G.tab_complete = function()
+ if vim.fn.pumvisible() == 1 then
+ return t "<C-n>"
+ elseif vim.fn.call("vsnip#available", {1}) == 1 then
+ return t "<Plug>(vsnip-expand-or-jump)"
+ elseif check_back_space() then
+ return t "<Tab>"
+ else
+ return vim.fn['compe#complete']()
+ end
+end
_G.s_tab_complete = function()
if vim.fn.pumvisible() == 1 then
return t "<C-p>"
@@ -46,6 +67,7 @@ _G.s_tab_complete = function()
end
end
+vim.api.nvim_set_keymap("i", "<Tab>", "v:lua.tab_complete()", {expr = true})
vim.api.nvim_set_keymap("s", "<Tab>", "v:lua.tab_complete()", {expr = true})
vim.api.nvim_set_keymap("i", "<S-Tab>", "v:lua.s_tab_complete()", {expr = true})
vim.api.nvim_set_keymap("s", "<S-Tab>", "v:lua.s_tab_complete()", {expr = true})
diff --git a/lua/plugins/galaxyline-config.lua b/lua/nv-galaxyline/init.lua
index e416b2c3..79cf2af0 100644
--- a/lua/plugins/galaxyline-config.lua
+++ b/lua/nv-galaxyline/init.lua
@@ -247,25 +247,3 @@ gls.short_line_left[1] = {
highlight = {colors.purple,colors.bg}
}
}
-
--- gls.short_line_right[1] = {
--- BufferIcon = {
--- provider= 'BufferIcon',
--- separator = ' ',
--- separator_highlight = {colors.purple,colors.bg},
--- highlight = {colors.grey,colors.purple}
--- }
--- }
--- function! s:my_bookmark_color() abort
--- let s:scl_guibg = matchstr(execute('hi SignColumn'), 'guibg=\zs\S*')
--- if empty(s:scl_guibg)
--- let s:scl_guibg = 'NONE'
--- endif
--- exe 'hi MyBookmarkSign guifg=' . s:scl_guibg
--- endfunction
--- call s:my_bookmark_color() " don't remove this line!
-
--- augroup UserGitSignColumnColor
--- autocmd!
--- autocmd ColorScheme * call s:my_bookmark_color()
--- augroup END
diff --git a/lua/nv-gitsigns/init.lua b/lua/nv-gitsigns/init.lua
new file mode 100644
index 00000000..7d183247
--- /dev/null
+++ b/lua/nv-gitsigns/init.lua
@@ -0,0 +1,37 @@
+require('gitsigns').setup {
+ signs = {
+ -- TODO add hl to colorscheme
+ add = {hl = 'GitSignsAdd' , text = '▎', numhl='GitSignsAddNr' , linehl='GitSignsAddLn'},
+ change = {hl = 'GitSignsChange', text = '▎', numhl='GitSignsChangeNr', linehl='GitSignsChangeLn'},
+ delete = {hl = 'GitSignsDelete', text = '', numhl='GitSignsDeleteNr', linehl='GitSignsDeleteLn'},
+ topdelete = {hl = 'GitSignsDelete', text = '', numhl='GitSignsDeleteNr', linehl='GitSignsDeleteLn'},
+ changedelete = {hl = 'GitSignsChange', text = '▎', numhl='GitSignsChangeNr', linehl='GitSignsChangeLn'},
+ },
+ numhl = false,
+ linehl = false,
+ keymaps = {
+ -- Default keymap options
+ noremap = true,
+ buffer = true,
+
+ ['n ]c'] = { expr = true, "&diff ? ']c' : '<cmd>lua require\"gitsigns\".next_hunk()<CR>'"},
+ ['n [c'] = { expr = true, "&diff ? '[c' : '<cmd>lua require\"gitsigns\".prev_hunk()<CR>'"},
+
+ ['n <leader>hs'] = '<cmd>lua require"gitsigns".stage_hunk()<CR>',
+ ['n <leader>hu'] = '<cmd>lua require"gitsigns".undo_stage_hunk()<CR>',
+ ['n <leader>hr'] = '<cmd>lua require"gitsigns".reset_hunk()<CR>',
+ ['n <leader>hp'] = '<cmd>lua require"gitsigns".preview_hunk()<CR>',
+ ['n <leader>hb'] = '<cmd>lua require"gitsigns".blame_line()<CR>',
+
+ -- Text objects
+ ['o ih'] = ':<C-U>lua require"gitsigns".text_object()<CR>',
+ ['x ih'] = ':<C-U>lua require"gitsigns".text_object()<CR>'
+ },
+ watch_index = {
+ interval = 1000
+ },
+ sign_priority = 6,
+ update_debounce = 200,
+ status_formatter = nil, -- Use default
+ use_decoration_api = false
+}
diff --git a/lua/nv-nvim-autopairs/init.lua b/lua/nv-nvim-autopairs/init.lua
new file mode 100644
index 00000000..6810a774
--- /dev/null
+++ b/lua/nv-nvim-autopairs/init.lua
@@ -0,0 +1,40 @@
+require('nvim-autopairs').setup()
+
+local pairs_map = {
+ ["'"] = "'",
+ ['"'] = '"',
+ ['('] = ')',
+ ['['] = ']',
+ ['{'] = '}',
+ ['`'] = '`',
+}
+local disable_filetype = { "TelescopePrompt" }
+local break_line_filetype = nil -- mean all file type
+local html_break_line_filetype = {'html' , 'vue' , 'typescriptreact' , 'svelte' , 'javascriptreact'}
+local ignored_next_char = "%w"
+
+local remap = vim.api.nvim_set_keymap
+local npairs = require('nvim-autopairs')
+
+-- skip it, if you use another global object
+_G.MUtils= {}
+
+vim.g.completion_confirm_key = ""
+MUtils.completion_confirm=function()
+ if vim.fn.pumvisible() ~= 0 then
+ if vim.fn.complete_info()["selected"] ~= -1 then
+ vim.fn["compe#confirm"]()
+ return npairs.esc("<c-y>")
+ else
+ vim.defer_fn(function()
+ vim.fn["compe#confirm"]("<cr>")
+ end, 20)
+ return npairs.esc("<c-n>")
+ end
+ else
+ return npairs.check_break_line_char()
+ end
+end
+
+
+remap('i' , '<CR>','v:lua.MUtils.completion_confirm()', {expr = true , noremap = true})
diff --git a/lua/plugins/nvimtree-config.lua b/lua/nv-nvimtree/init.lua
index 3803765a..3803765a 100644
--- a/lua/plugins/nvimtree-config.lua
+++ b/lua/nv-nvimtree/init.lua
diff --git a/lua/plugins/treesitter-config.lua b/lua/nv-treesitter/init.lua
index 30b65d82..f0ecf6ac 100644
--- a/lua/plugins/treesitter-config.lua
+++ b/lua/nv-treesitter/init.lua
@@ -14,21 +14,3 @@ require'nvim-treesitter.configs'.setup {
}
}
-
--- require'nvim-treesitter.configs'.setup {
--- refactor = {
--- highlight_current_scope = { enable = false },
--- },
--- }
-
--- require'nvim-treesitter.configs'.setup {
--- refactor = {
--- smart_rename = {
--- enable = true,
--- keymaps = {
--- smart_rename = "grr",
--- },
--- },
--- },
--- }
-
diff --git a/lua/plugins.lua b/lua/plugins.lua
new file mode 100644
index 00000000..4830dfd2
--- /dev/null
+++ b/lua/plugins.lua
@@ -0,0 +1,69 @@
+local execute = vim.api.nvim_command
+local fn = vim.fn
+
+local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
+
+
+if fn.empty(fn.glob(install_path)) > 0 then
+ execute('!git clone https://github.com/wbthomason/packer.nvim '..install_path)
+ execute 'packadd packer.nvim'
+end
+
+
+return require('packer').startup(function()
+ -- Packer can manage itself as an optional plugin
+ use {'wbthomason/packer.nvim', opt = true}
+
+ -- Information
+ use 'nanotee/nvim-lua-guide'
+
+ -- LSP
+ use 'neovim/nvim-lspconfig'
+ use 'glepnir/lspsaga.nvim'
+ use 'onsails/lspkind-nvim'
+ use 'kosayoda/nvim-lightbulb'
+ use 'mfussenegger/nvim-jdtls'
+
+ -- Debugging
+ use 'mfussenegger/nvim-dap'
+
+ -- Autocomplete
+ use 'hrsh7th/nvim-compe'
+ use 'hrsh7th/vim-vsnip'
+
+ -- Treesitter
+ use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' }
+ use 'nvim-treesitter/playground'
+ use 'p00f/nvim-ts-rainbow'
+
+ -- Icons
+ use 'kyazdani42/nvim-web-devicons'
+
+ -- Status Line and Bufferline
+ use 'glepnir/galaxyline.nvim'
+ use {'akinsho/nvim-bufferline.lua', requires = 'kyazdani42/nvim-web-devicons'}
+
+ -- Telescope
+ use 'nvim-lua/popup.nvim'
+ use 'nvim-lua/plenary.nvim'
+ use 'nvim-telescope/telescope.nvim'
+ use 'nvim-telescope/telescope-media-files.nvim'
+
+ -- Explorer
+ use 'kyazdani42/nvim-tree.lua'
+
+
+ -- Color
+ use 'christianchiarulli/nvcode-color-schemes.vim'
+ use 'norcalli/nvim-colorizer.lua'
+
+ -- Git
+ use 'TimUntersberger/neogit'
+ use {'lewis6991/gitsigns.nvim', requires = { 'nvim-lua/plenary.nvim' } }
+
+ -- General Plugins
+ use 'windwp/nvim-autopairs'
+ use 'kevinhwang91/nvim-bqf'
+ use 'unblevable/quick-scope'
+ use 'airblade/vim-rooter'
+end)
diff --git a/lua/plugins/lspsaga-config.lua b/lua/plugins/lspsaga-config.lua
deleted file mode 100644
index 139597f9..00000000
--- a/lua/plugins/lspsaga-config.lua
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/lua/plugins/telescope-config.lua b/lua/plugins/telescope-config.lua
deleted file mode 100644
index c9ea4b90..00000000
--- a/lua/plugins/telescope-config.lua
+++ /dev/null
@@ -1,73 +0,0 @@
-local actions = require('telescope.actions')
--- Global remapping
-------------------------------
--- '--color=never',
-require('telescope').load_extension('media_files')
-require('telescope').setup {
- defaults = {
- vimgrep_arguments = {'rg', '--no-heading', '--with-filename', '--line-number', '--column', '--smart-case'},
- prompt_position = "top",
- prompt_prefix = "īĄˆ ",
- selection_caret = " ",
- entry_prefix = " ",
- initial_mode = "insert",
- selection_strategy = "reset",
- sorting_strategy = "descending",
- layout_strategy = "horizontal",
- layout_defaults = {horizontal = {mirror = false}, vertical = {mirror = false}},
- file_sorter = require'telescope.sorters'.get_fuzzy_file,
- file_ignore_patterns = {},
- generic_sorter = require'telescope.sorters'.get_generic_fuzzy_sorter,
- shorten_path = true,
- winblend = 0,
- width = 0.75,
- preview_cutoff = 120,
- results_height = 1,
- results_width = 0.8,
- border = {},
- borderchars = {'─', '│', '─', '│', '╭', '╮', '╯', '╰'},
- color_devicons = true,
- use_less = true,
- set_env = {['COLORTERM'] = 'truecolor'}, -- default = nil,
- 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,
-
- -- Developer configurations: Not meant for general override
- buffer_previewer_maker = require'telescope.previewers'.buffer_previewer_maker,
- mappings = {
- i = {
- ["<C-j>"] = actions.move_selection_next,
- ["<C-k>"] = actions.move_selection_previous,
- -- To disable a keymap, put [map] = false
- -- So, to not map "<C-n>", just put
- -- ["<c-x>"] = false,
-
- -- Otherwise, just set the mapping to the function that you want it to be.
- -- ["<C-i>"] = actions.select_horizontal,
-
- -- Add up multiple actions
- ["<CR>"] = actions.select_default + actions.center
-
- -- You can perform as many actions in a row as you like
- -- ["<CR>"] = actions.select_default + actions.center + my_cool_custom_action,
- },
- n = {
- ["<C-j>"] = actions.move_selection_next,
- ["<C-k>"] = actions.move_selection_previous
- -- ["<esc>"] = actions.close,
- -- ["<C-i>"] = my_cool_custom_action,
- }
- }
- },
- require'telescope'.setup {
- extensions = {
- media_files = {
- -- filetypes whitelist
- -- defaults to {"png", "jpg", "mp4", "webm", "pdf"}
- filetypes = {"png", "webp", "jpg", "jpeg"},
- find_cmd = "rg" -- find command (defaults to `fd`)
- }
- }
- }
-}
diff --git a/lua/settings.lua b/lua/settings.lua
new file mode 100644
index 00000000..fbf24713
--- /dev/null
+++ b/lua/settings.lua
@@ -0,0 +1,39 @@
+--vim.o.iskeyword="+=-" --treat dash separated words as a word text object"
+--vim.o.shortmess="c" --Don't pass messages to |ins-completion-menu|.
+
+--vim.o.formatoptions="cro" --Stop newline continution of comments
+vim.o.hidden=true --Required to keep multiple buffers open multiple buffers
+vim.o.wrap=false --Display long lines as just one line
+--vim.o.whichwrap="+=<,>,[,],h,l"
+vim.o.encoding="utf-8" --The encoding displayed
+vim.o.pumheight=10 --Makes popup menu smaller
+vim.o.fileencoding="utf-8" --The encoding written to file
+vim.o.ruler=true -- " Show the cursor position all the time
+vim.o.cmdheight=2 --More space for displaying messages
+vim.o.mouse="a" --Enable your mouse
+vim.o.splitbelow=true --Horizontal splits will automatically be below
+vim.o.termguicolors=true
+vim.o.splitright=true --Vertical splits will automatically be to the right
+vim.o.t_Co="256" --Support 256 colors
+vim.o.conceallevel=0 --So that I can see `` in markdown files
+vim.o.tabstop=2 --Insert 2 spaces for a tab
+vim.o.shiftwidth=2 --Change the number of space characters inserted for indentation
+vim.o.smarttab=true --Makes tabbing smarter will realize you have 2 vs 4
+vim.o.expandtab=true --Converts tabs to spaces
+vim.o.smartindent=true --Makes indenting smart
+vim.o.autoindent=true --Good auto indent
+vim.o.laststatus=2 --Always display the status line
+--vim.o.number=true --Line numbers
+vim.wo.number = true
+vim.o.cursorline=true --Enable highlighting of the current line
+vim.o.background="dark" --tell vim what the background color looks like
+vim.o.showtabline=2 --Always show tabs
+vim.o.showmode=false --We don't need to see things like -- INSERT -- anymore
+vim.o.backup=false --This is recommended by coc
+vim.o.writebackup=false --This is recommended by coc
+vim.o.signcolumn="yes" --Always show the signcolumn, otherwise it would shift the text each time
+vim.o.updatetime=300 --Faster completion
+vim.o.timeoutlen=1000 --By default timeoutlen is 1000 ms
+vim.o.clipboard="unnamedplus" --Copy paste between vim and everything else
+vim.o.incsearch=true
+vim.o.guifont="JetBrainsMono\\ Nerd\\ Font\\ Mono:h18"