aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--vim/.install.yml37
-rw-r--r--vim/nvim/init.lua12
-rw-r--r--vim/nvim/lua/config/diagnostic.lua2
-rw-r--r--vim/nvim/lua/config/init.lua1
-rw-r--r--vim/nvim/lua/config/lsp.lua41
-rw-r--r--vim/nvim/lua/config/vimtex.lua0
-rw-r--r--vim/nvim/lua/plugins.lua45
7 files changed, 75 insertions, 63 deletions
diff --git a/vim/.install.yml b/vim/.install.yml
index edbdc99..30935f4 100644
--- a/vim/.install.yml
+++ b/vim/.install.yml
@@ -3,39 +3,10 @@ steps:
- !Link
from: ".vimrc"
to: "~/.vimrc"
- recursive: false
- !Link
- from: "nvim/init.lua"
- to: "~/.config/nvim/init.lua"
- recursive: false
- - !Link
- from: "nvim/lua/plugins.lua"
- to: "~/.config/nvim/lua/plugins.lua"
- recursive: false
- - !Link
- from: "nvim/lua/keybindings.lua"
- to: "~/.config/nvim/lua/keybindings.lua"
- recursive: false
- - !Link
- from: "nvim/lua/config/init.lua"
- to: "~/.config/nvim/lua/config/init.lua"
- recursive: false
- - !Link
- from: "nvim/lua/config/autocomplete.lua"
- to: "~/.config/nvim/lua/config/autocomplete.lua"
- recursive: false
- - !Link
- from: "nvim/lua/config/diagnostic.lua"
- to: "~/.config/nvim/lua/config/diagnostic.lua"
- recursive: false
- - !Link
- from: "nvim/lua/config/lsp.lua"
- to: "~/.config/nvim/lua/config/lsp.lua"
- recursive: false
- - !Link
- from: "nvim/lua/config/treesitter.lua"
- to: "~/.config/nvim/lua/config/treesitter.lua"
- recursive: false
+ from: "nvim"
+ to: "~/.config/nvim"
+ symbolic: true
# Install packer
- - !Shell "git clone --depth 1 https://github.com/wbthomason/packer.nvim ~/.local/share/nvim/site/pack/packer/start/packer.nvim" \ No newline at end of file
+ - !Shell "sh -c 'curl -fLo \"${XDG_DATA_HOME:-$HOME/.local/share}\"/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'"
diff --git a/vim/nvim/init.lua b/vim/nvim/init.lua
index 54839fb..7f5f7de 100644
--- a/vim/nvim/init.lua
+++ b/vim/nvim/init.lua
@@ -1,7 +1,12 @@
require('plugins')
+
+require('keybindings')
+require('config')
+
vim.api.nvim_exec(
[[
+silent!
syntax on
set number
@@ -19,10 +24,7 @@ set termguicolors
colorscheme onedark
highlight Normal guibg=NONE
highlight Comment cterm=italic gui=italic
+
+let g:vimtex_view_method = 'zathura'
]],
false)
---
-
-require('keybindings')
-require('config')
-
diff --git a/vim/nvim/lua/config/diagnostic.lua b/vim/nvim/lua/config/diagnostic.lua
index afa9c87..9a534b5 100644
--- a/vim/nvim/lua/config/diagnostic.lua
+++ b/vim/nvim/lua/config/diagnostic.lua
@@ -22,7 +22,7 @@ vim.lsp.handlers['textDocument/publishDiagnostics'] = vim.lsp.with(
}
)
-local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
+local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
for type, icon in pairs(signs) do
local hl = "DiagnosticSign" .. type
vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
diff --git a/vim/nvim/lua/config/init.lua b/vim/nvim/lua/config/init.lua
index 94d770c..e132de2 100644
--- a/vim/nvim/lua/config/init.lua
+++ b/vim/nvim/lua/config/init.lua
@@ -2,3 +2,4 @@ require('config.autocomplete')
require('config.diagnostic')
require('config.lsp')
require('config.treesitter')
+require('config.vimtex')
diff --git a/vim/nvim/lua/config/lsp.lua b/vim/nvim/lua/config/lsp.lua
index 7564795..81d4572 100644
--- a/vim/nvim/lua/config/lsp.lua
+++ b/vim/nvim/lua/config/lsp.lua
@@ -3,12 +3,32 @@ local capabilities = require("cmp_nvim_lsp").default_capabilities()
local lsp_flags = {
debounce_text_changes = 150,
}
+local on_attach = function(client, bufnr)
+ vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
+
+ local bufopts = { noremap=true, silent=true, buffer=bufnr }
+ vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
+ vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
+ vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
+ vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
+ vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, bufopts)
+ vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, bufopts)
+ vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
+ vim.keymap.set('n', '<space>wl', function()
+ print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
+ end, bufopts)
+ vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, bufopts)
+ vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, bufopts)
+ vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, bufopts)
+ vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
+ vim.keymap.set('n', '<space>f', function() vim.lsp.buf.format { async = true } end, bufopts)
+end
require('lspconfig')['hls'].setup{
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
}
-require('lspconfig')['tsserver'].setup{
+require('lspconfig')['ts_ls'].setup{
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
@@ -40,3 +60,22 @@ require('lspconfig')['texlab'].setup{
flags = lsp_flags,
capabilities = capabilities,
}
+require('lspconfig')['marksman'].setup{
+ on_attach = on_attach,
+ flags = lsp_flags,
+ capabilities = capabilities,
+}
+require('lspconfig')['pylsp'].setup{
+ on_attach = on_attach,
+ flags = lsp_flags,
+ capabilities = capabilities,
+}
+require('lspconfig')['clangd'].setup({
+ on_attach = on_attach,
+ flags = lsp_flags,
+ capabilities = capabilities,
+ -- cmd = {'clangd', '--background-index', '--clang-tidy', '--log=verbose'},
+ -- init_options = {
+ -- fallbackFlags = { '-std=c++17' },
+ -- },
+})
diff --git a/vim/nvim/lua/config/vimtex.lua b/vim/nvim/lua/config/vimtex.lua
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/vim/nvim/lua/config/vimtex.lua
diff --git a/vim/nvim/lua/plugins.lua b/vim/nvim/lua/plugins.lua
index c751adf..add1430 100644
--- a/vim/nvim/lua/plugins.lua
+++ b/vim/nvim/lua/plugins.lua
@@ -1,23 +1,22 @@
-return require('packer').startup(function(use)
- use 'wbthomason/packer.nvim'
- use 'vim-airline/vim-airline'
- use 'vim-airline/vim-airline-themes'
- use 'neovim/nvim-lspconfig'
- use 'hrsh7th/nvim-cmp'
- use 'hrsh7th/cmp-nvim-lsp'
- use 'saadparwaiz1/cmp_luasnip'
- use 'onsails/lspkind.nvim'
- use 'L3MON4D3/LuaSnip'
- use {
- 'folke/trouble.nvim',
- requires = 'kyazdani42/nvim-web-devicons',
- config = function()
- require('trouble').setup {
-}
- end
- }
- use 'p00f/clangd_extensions.nvim'
- use 'nvim-treesitter/nvim-treesitter'
- use { 'briones-gabriel/darcula-solid.nvim', requires = 'rktjmp/lush.nvim' }
- use 'joshdick/onedark.vim'
-end)
+local vim = vim
+local Plug = vim.fn['plug#']
+
+vim.call('plug#begin')
+
+Plug('vim-airline/vim-airline')
+Plug('vim-airline/vim-airline-themes')
+Plug('neovim/nvim-lspconfig')
+Plug('hrsh7th/nvim-cmp')
+Plug('hrsh7th/cmp-nvim-lsp')
+Plug('saadparwaiz1/cmp_luasnip')
+Plug('onsails/lspkind.nvim')
+Plug('L3MON4D3/LuaSnip')
+Plug('p00f/clangd_extensions.nvim')
+Plug('nvim-treesitter/nvim-treesitter')
+Plug('briones-gabriel/darcula-solid.nvim')
+Plug('rktjmp/lush.nvim')
+Plug('joshdick/onedark.vim')
+Plug('lervag/vimtex')
+
+vim.call('plug#end')
+