mirror of
https://github.com/LukeSmithxyz/voidrice.git
synced 2026-01-30 09:48:11 +01:00
Add code completion and stuff
This commit is contained in:
parent
f0058c17f3
commit
bc8123de92
@ -9,26 +9,174 @@ endif
|
|||||||
|
|
||||||
call plug#begin(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/plugged"'))
|
call plug#begin(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/plugged"'))
|
||||||
Plug 'tpope/vim-surround'
|
Plug 'tpope/vim-surround'
|
||||||
|
Plug 'windwp/nvim-autopairs'
|
||||||
Plug 'preservim/nerdtree'
|
Plug 'preservim/nerdtree'
|
||||||
Plug 'junegunn/goyo.vim'
|
Plug 'junegunn/goyo.vim'
|
||||||
Plug 'jreybert/vimagit'
|
Plug 'jreybert/vimagit'
|
||||||
Plug 'lukesmithxyz/vimling'
|
Plug 'lukesmithxyz/vimling'
|
||||||
Plug 'vimwiki/vimwiki'
|
Plug 'vimwiki/vimwiki'
|
||||||
Plug 'vim-airline/vim-airline'
|
Plug 'itchyny/lightline.vim'
|
||||||
Plug 'tpope/vim-commentary'
|
Plug 'tpope/vim-commentary'
|
||||||
Plug 'ap/vim-css-color'
|
Plug 'ap/vim-css-color'
|
||||||
|
Plug 'neovim/nvim-lspconfig'
|
||||||
|
Plug 'hrsh7th/nvim-cmp'
|
||||||
|
Plug 'hrsh7th/cmp-buffer'
|
||||||
|
Plug 'hrsh7th/cmp-path'
|
||||||
|
Plug 'hrsh7th/cmp-nvim-lua'
|
||||||
|
Plug 'hrsh7th/cmp-nvim-lsp'
|
||||||
|
Plug 'hrsh7th/cmp-nvim-lsp-signature-help'
|
||||||
|
Plug 'onsails/lspkind.nvim'
|
||||||
|
Plug 'hrsh7th/vim-vsnip'
|
||||||
|
Plug 'hrsh7th/cmp-vsnip'
|
||||||
|
Plug 'hrsh7th/cmp-omni'
|
||||||
|
Plug 'simrat39/rust-tools.nvim'
|
||||||
|
Plug 'folke/tokyonight.nvim', { 'branch': 'main' }
|
||||||
|
Plug 'https://git.sr.ht/~whynothugo/lsp_lines.nvim'
|
||||||
|
Plug 'RRethy/vim-illuminate'
|
||||||
|
Plug 'lervag/vimtex'
|
||||||
call plug#end()
|
call plug#end()
|
||||||
|
|
||||||
set title
|
set title
|
||||||
set bg=light
|
|
||||||
set go=a
|
set go=a
|
||||||
set mouse=a
|
set mouse=a
|
||||||
set nohlsearch
|
set nohlsearch
|
||||||
set clipboard+=unnamedplus
|
set clipboard+=unnamedplus
|
||||||
set noshowmode
|
set noshowmode
|
||||||
set noruler
|
set noruler
|
||||||
set laststatus=0
|
set laststatus=2
|
||||||
set noshowcmd
|
set noshowcmd
|
||||||
|
set completeopt=menuone,noinsert,noselect
|
||||||
|
set signcolumn=yes
|
||||||
|
|
||||||
|
let g:tokyonight_style = "night"
|
||||||
|
let g:tokyonight_italic_functions = 1
|
||||||
|
let g:lightline = { 'colorscheme': 'tokyonight' }
|
||||||
|
colorscheme tokyonight
|
||||||
|
|
||||||
|
let g:vimtex_view_method = 'zathura'
|
||||||
|
let g:vimtex#re#neocomplete =
|
||||||
|
\ '\v\\%('
|
||||||
|
\ . '%(\a*cite|Cite)\a*\*?%(\s*\[[^]]*\]){0,2}\s*\{[^}]*'
|
||||||
|
\ . '|%(\a*cites|Cites)%(\s*\([^)]*\)){0,2}'
|
||||||
|
\ . '%(%(\s*\[[^]]*\]){0,2}\s*\{[^}]*\})*'
|
||||||
|
\ . '%(\s*\[[^]]*\]){0,2}\s*\{[^}]*'
|
||||||
|
\ . '|bibentry\s*\{[^}]*'
|
||||||
|
\ . '|%(text|block)cquote\*?%(\s*\[[^]]*\]){0,2}\s*\{[^}]*'
|
||||||
|
\ . '|%(for|hy)\w*cquote\*?\{[^}]*}%(\s*\[[^]]*\]){0,2}\s*\{[^}]*'
|
||||||
|
\ . '|defbibentryset\{[^}]*}\{[^}]*'
|
||||||
|
\ . '|\a*ref%(\s*\{[^}]*|range\s*\{[^,}]*%(}\{)?)'
|
||||||
|
\ . '|hyperref\s*\[[^]]*'
|
||||||
|
\ . '|includegraphics\*?%(\s*\[[^]]*\]){0,2}\s*\{[^}]*'
|
||||||
|
\ . '|%(include%(only)?|input|subfile)\s*\{[^}]*'
|
||||||
|
\ . '|([cpdr]?(gls|Gls|GLS)|acr|Acr|ACR)\a*\s*\{[^}]*'
|
||||||
|
\ . '|(ac|Ac|AC)\s*\{[^}]*'
|
||||||
|
\ . '|includepdf%(\s*\[[^]]*\])?\s*\{[^}]*'
|
||||||
|
\ . '|includestandalone%(\s*\[[^]]*\])?\s*\{[^}]*'
|
||||||
|
\ . '|%(usepackage|RequirePackage|PassOptionsToPackage)%(\s*\[[^]]*\])?\s*\{[^}]*'
|
||||||
|
\ . '|documentclass%(\s*\[[^]]*\])?\s*\{[^}]*'
|
||||||
|
\ . '|begin%(\s*\[[^]]*\])?\s*\{[^}]*'
|
||||||
|
\ . '|end%(\s*\[[^]]*\])?\s*\{[^}]*'
|
||||||
|
\ . '|\a*'
|
||||||
|
\ . ')'
|
||||||
|
|
||||||
|
lua <<EOF
|
||||||
|
local rt = require('rust-tools')
|
||||||
|
rt.setup({
|
||||||
|
server = {
|
||||||
|
on_attach = function(_, bufnr)
|
||||||
|
vim.keymap.set("n", "<C-space>", rt.hover_actions.hover_actions, { buffer = bufnr })
|
||||||
|
vim.keymap.set("n", "<Leader>a", rt.code_action_group.code_action_group, { buffer = bufnr })
|
||||||
|
end,
|
||||||
|
settings = {
|
||||||
|
["rust-analyzer"] = {
|
||||||
|
checkOnSave = {
|
||||||
|
command = "clippy",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
tools = { -- rust-tools options
|
||||||
|
autoSetHints = true,
|
||||||
|
inlay_hints = {
|
||||||
|
show_parameter_hints = false,
|
||||||
|
parameter_hints_prefix = "",
|
||||||
|
other_hints_prefix = "",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
local sign = function(name, text)
|
||||||
|
vim.fn.sign_define(name, {
|
||||||
|
texthl = name,
|
||||||
|
text = text,
|
||||||
|
numhl = '',
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
sign('DiagnosticSignError', '')
|
||||||
|
sign('DiagnosticSignWarn', '')
|
||||||
|
sign('DiagnosticSignHint', '')
|
||||||
|
sign('DiagnosticSignInfo', '')
|
||||||
|
|
||||||
|
vim.diagnostic.config({
|
||||||
|
virtual_text = false,
|
||||||
|
signs = true,
|
||||||
|
update_in_insert = true,
|
||||||
|
underline = true,
|
||||||
|
severity_sort = false,
|
||||||
|
float = {
|
||||||
|
border = 'rounded',
|
||||||
|
source = 'always',
|
||||||
|
header = '',
|
||||||
|
prefix = '',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
local cmp = require("cmp")
|
||||||
|
local lspkind = require('lspkind')
|
||||||
|
cmp.setup({
|
||||||
|
snippet = {
|
||||||
|
expand = function(args)
|
||||||
|
vim.fn["vsnip#anonymous"](args.body)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
mapping = {
|
||||||
|
["<C-p>"] = cmp.mapping.select_prev_item(),
|
||||||
|
["<C-n>"] = cmp.mapping.select_next_item(),
|
||||||
|
["<C-d>"] = cmp.mapping.scroll_docs(-4),
|
||||||
|
["<C-f>"] = cmp.mapping.scroll_docs(4),
|
||||||
|
["<C-e>"] = cmp.mapping.close(),
|
||||||
|
["<C-Space>"] = cmp.mapping.complete(),
|
||||||
|
["<CR>"] = cmp.mapping.confirm({
|
||||||
|
behavior = cmp.ConfirmBehavior.Insert,
|
||||||
|
select = true,
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
formatting = {
|
||||||
|
format = lspkind.cmp_format({
|
||||||
|
mode = 'symbol',
|
||||||
|
maxwidth = 50,
|
||||||
|
preset = 'codicons',
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
sources = {
|
||||||
|
{ name = "nvim_lua" },
|
||||||
|
{ name = "nvim_lsp", keyword_length = 3 },
|
||||||
|
{ name = "nvim_lsp_signature_help" },
|
||||||
|
{ name = "vsnip" },
|
||||||
|
{ name = "path" },
|
||||||
|
{ name = "buffer", keyword_length = 5 },
|
||||||
|
},
|
||||||
|
experimental = {
|
||||||
|
ghost_text = true,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
require('lspconfig').texlab.setup({})
|
||||||
|
|
||||||
|
require('lsp_lines').setup()
|
||||||
|
EOF
|
||||||
|
|
||||||
|
|
||||||
" Some basics:
|
" Some basics:
|
||||||
nnoremap c "_c
|
nnoremap c "_c
|
||||||
@ -40,8 +188,6 @@ set noshowcmd
|
|||||||
set expandtab
|
set expandtab
|
||||||
set tabstop=4
|
set tabstop=4
|
||||||
set shiftwidth=4
|
set shiftwidth=4
|
||||||
" Enable autocompletion:
|
|
||||||
set wildmode=longest,list,full
|
|
||||||
" Disables automatic commenting on newline:
|
" Disables automatic commenting on newline:
|
||||||
autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
|
autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
|
||||||
" Perform dot commands over visual blocks:
|
" Perform dot commands over visual blocks:
|
||||||
@ -145,7 +291,6 @@ function! ToggleHiddenAll()
|
|||||||
set noshowcmd
|
set noshowcmd
|
||||||
else
|
else
|
||||||
let s:hidden_all = 0
|
let s:hidden_all = 0
|
||||||
set showmode
|
|
||||||
set ruler
|
set ruler
|
||||||
set laststatus=2
|
set laststatus=2
|
||||||
set showcmd
|
set showcmd
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user