vim to neovim

This commit is contained in:
Debucquoy Anthony 2024-08-23 11:20:30 +02:00
parent 446a7a9e1e
commit 750a43c708
Signed by: tonitch
GPG Key ID: A78D6421F083D42E
26 changed files with 431 additions and 31 deletions

16
.gitmodules vendored
View File

@ -40,14 +40,14 @@
[submodule "vim/.vim/pack/autoload/start/tagbar"] [submodule "vim/.vim/pack/autoload/start/tagbar"]
path = vim/.vim/pack/autoload/start/tagbar path = vim/.vim/pack/autoload/start/tagbar
url = https://github.com/majutsushi/tagbar url = https://github.com/majutsushi/tagbar
[submodule "vim/.vim/pack/autoload/start/vim-commentary"] [submodule "vim/.vim/pack/autoload/other/vim-commentary"]
path = vim/.vim/pack/autoload/start/vim-commentary path = vim/.vim/pack/autoload/other/vim-commentary
url = https://github.com/tpope/vim-commentary url = https://github.com/tpope/vim-commentary
[submodule "vim/.vim/pack/autoload/start/vimspector"] [submodule "vim/.vim/pack/autoload/start/vimspector"]
path = vim/.vim/pack/autoload/start/vimspector path = vim/.vim/pack/autoload/start/vimspector
url = https://github.com/puremourning/vimspector url = https://github.com/puremourning/vimspector
[submodule "vim/.vim/pack/autoload/start/YouCompleteMe"] [submodule "vim/.vim/pack/autoload/other/YouCompleteMe"]
path = vim/.vim/pack/autoload/start/YouCompleteMe path = vim/.vim/pack/autoload/other/YouCompleteMe
url = https://github.com/ycm-core/YouCompleteMe url = https://github.com/ycm-core/YouCompleteMe
[submodule "vim/.vim/pack/autoload/start/vim-signify"] [submodule "vim/.vim/pack/autoload/start/vim-signify"]
path = vim/.vim/pack/autoload/start/vim-signify path = vim/.vim/pack/autoload/start/vim-signify
@ -88,12 +88,12 @@
[submodule "vim/.vim/pack/autoload/start/latex-snippets"] [submodule "vim/.vim/pack/autoload/start/latex-snippets"]
path = vim/.vim/pack/autoload/start/latex-snippets path = vim/.vim/pack/autoload/start/latex-snippets
url = https://github.com/gillescastel/latex-snippets url = https://github.com/gillescastel/latex-snippets
[submodule "vim/.vim/pack/autoload/start/plantuml-previewer.vim"] [submodule "vim/.vim/pack/autoload/other/plantuml-previewer.vim"]
path = vim/.vim/pack/autoload/start/plantuml-previewer.vim path = vim/.vim/pack/autoload/other/plantuml-previewer.vim
url = https://github.com/weirongxu/plantuml-previewer.vim url = https://github.com/weirongxu/plantuml-previewer.vim
[submodule "vim/.vim/pack/autoload/start/open-browser.vim"] [submodule "vim/.vim/pack/autoload/start/open-browser.vim"]
path = vim/.vim/pack/autoload/start/open-browser.vim path = vim/.vim/pack/autoload/start/open-browser.vim
url = https://github.com/tyru/open-browser.vim url = https://github.com/tyru/open-browser.vim
[submodule "vim/.vim/pack/autoload/start/plantuml-syntax"] [submodule "vim/.vim/pack/autoload/other/plantuml-syntax"]
path = vim/.vim/pack/autoload/start/plantuml-syntax path = vim/.vim/pack/autoload/other/plantuml-syntax
url = https://github.com/aklt/plantuml-syntax url = https://github.com/aklt/plantuml-syntax

View File

@ -0,0 +1,5 @@
vim.lsp.start({
name = 'clangd',
cmd = {'clangd'},
-- root_dir = vim.fs.root(args.buf, {'Makefile'})
})

View File

@ -0,0 +1,4 @@
vim.lsp.start({
name = 'lua-language-server',
cmd = {'lua-language-server'},
})

View File

@ -0,0 +1,4 @@
vim.lsp.start({
name = 'jedi',
cmd = {'jedi-language-server'},
})

View File

@ -0,0 +1,4 @@
vim.lsp.start({
name = 'texlab',
cmd = {'texlab'},
})

View File

@ -0,0 +1,3 @@
set runtimepath^=~/.vim runtimepath+=~/.vim/after
let &packpath = &runtimepath
source ~/.vimrc

View File

@ -0,0 +1 @@
vim.g.vimtex_view_method="zathura"

View File

@ -0,0 +1,24 @@
--- Default maps for LSP functions.
---
--- These are mapped unconditionally to avoid different behavior depending on whether an LSP
--- client is attached. If no client is attached, or if a server does not support a capability, an
--- error message is displayed rather than exhibiting different behavior.
---
--- See |grr|, |grn|, |gra|, |i_CTRL-S|.
do
vim.keymap.set('n', 'grn', function()
vim.lsp.buf.rename()
end, { desc = 'vim.lsp.buf.rename()' })
vim.keymap.set({ 'n', 'x' }, 'gra', function()
vim.lsp.buf.code_action()
end, { desc = 'vim.lsp.buf.code_action()' })
vim.keymap.set('n', 'grr', function()
vim.lsp.buf.references()
end, { desc = 'vim.lsp.buf.references()' })
vim.keymap.set('i', '<C-S>', function()
vim.lsp.buf.signature_help()
end, { desc = 'vim.lsp.buf.signature_help()' })
end

View File

@ -3,6 +3,7 @@ bspwm
dmenu dmenu
feh feh
git git
nvim
picom picom
polybar polybar
sxhkd sxhkd

View File

@ -0,0 +1,18 @@
snippet base "Cmake Init" b
cmake_minimum_required(VERSION ${1:3.12})
project(${2:${VISUAL:project}})
# Generate compile_commands.json
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
# Dependencies
# find_package(package 0.0.1 REQUIRED)
# Project configurations
add_executable(${PROJECT_NAME})
add_subdirectory(src)
# target_link_libraries(${PROJECT_NAME} package)
endsnippet

View File

@ -0,0 +1,20 @@
snippet basev "base for vertex shader"
#version ${1:${VISUAL:420}} core
layout (location = 0) in vec3 aPos;
void main(){
gl_Position = vec4(aPos, 1.0);
$0
}
endsnippet
snippet basef "base for fragment shader"
#version ${1:${VISUAL:420}} core
out vec4 FragColor;
void main(){
FragColor = vec4(1.0, 0.0, 0.0, 1.0);
}
endsnippet

View File

@ -0,0 +1,10 @@
snippet sign "Header of vue file" b
/******************************************************
* @file `!p snip.rv = fn`
* @author `git config --global --get user.name`
* @scope ${1:Extension messagerie}
*
* $2
******************************************************/
$0
endsnippet

View File

@ -0,0 +1,10 @@
snippet sign "sign your work" b
/*******************************************************
* File: `!p snip.rv = fn`
* Author: `git config --global --get user.name`
* Scope: ${1:Extension messagerie}
* Description: $2
*******************************************************/
$0
endsnippet

View File

@ -17,3 +17,12 @@ $0
\end{document} \end{document}
endsnippet endsnippet
snippet bb "mathbb" i
\mathbb{${1:${VISUAL:R}}} $0
endsnippet
priority -9999999
snippet "(\w+)" "latex default" r
\\`!p snip.rv = match.group(1)` $1
endsnippet

View File

@ -0,0 +1,25 @@
snippet sign "Header of vue file"
<!----------------------------------------------------
File: `!p snip.rv = fn`
Author: `git config --global --get user.name`
Scope: ${1:Extension messagerie}
Description: $2
----------------------------------------------------->
$0
endsnippet
snippet basev "vue base"
<script setup>
$0
</script>
<template>
</template>
<style scoped>
</style>
endsnippet

View File

@ -0,0 +1 @@
let &makeprg="bff %"

View File

@ -0,0 +1,24 @@
" Vim Compiler File
" Compiler: gradlew
if exists("current_compiler")
finish
endif
let current_compiler = "gradlew"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
CompilerSet makeprg=$PWD/gradlew
CompilerSet errorformat=
\%E[ant:scalac]\ %f:%l:\ error:\ %m,
\%W[ant:scalac]\ %f:%l:\ warning:\ %m,
\%E%.%#:compile%\\w%#Java%f:%l:\ error:\ %m,%-Z%p^,%-C%.%#,
\%W%.%#:compile%\\w%#Java%f:%l:\ warning:\ %m,%-Z%p^,%-C%.%#,
\%E%f:%l:\ error:\ %m,%-Z%p^,%-C%.%#,
\%W%f:%l:\ warning:\ %m,%-Z%p^,%-C%.%#,
\%E%f:\ %\\d%\\+:\ %m\ @\ line\ %l\\,\ column\ %c.,%-C%.%#,%Z%p^,
\%E%>%f:\ %\\d%\\+:\ %m,%C\ @\ line\ %l\\,\ column\ %c.,%-C%.%#,%Z%p^,
\%-G%.%#"

View File

@ -0,0 +1,2 @@
nnoremap K :YcmCompleter GetDoc<CR>
" let $JAVA_TOOL_OPTIONS = '-javaagent:/usr/share/lombok-common/lombok-api.jar -Xbootclasspath/p:/usr/share/lombok-common/lombok-api.jar'

View File

@ -1,4 +1,5 @@
set concealcursor="" set concealcursor=""
set textwidth=100
highlight Conceal ctermfg=red highlight Conceal ctermfg=red

205
vim/.vim/syntax/nim.vim Executable file
View File

@ -0,0 +1,205 @@
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if v:version < 600
syntax clear
elseif exists('b:current_syntax')
finish
endif
" Keep user-supplied options
if !exists('nim_highlight_numbers')
let nim_highlight_numbers = 1
endif
if !exists('nim_highlight_builtins')
let nim_highlight_builtins = 1
endif
if !exists('nim_highlight_exceptions')
let nim_highlight_exceptions = 1
endif
if !exists('nim_highlight_space_errors')
let nim_highlight_space_errors = 1
endif
if !exists('nim_highlight_special_vars')
let nim_highlight_special_vars = 1
endif
if exists('nim_highlight_all')
let nim_highlight_numbers = 1
let nim_highlight_builtins = 1
let nim_highlight_exceptions = 1
let nim_highlight_space_errors = 1
let nim_highlight_special_vars = 1
endif
syn region nimBrackets contained extend keepend matchgroup=Bold start=+\(\\\)\@<!\[+ end=+]\|$+ skip=+\\\s*$\|\(\\\)\@<!\\]+ contains=@tclCommandCluster
syn keyword nimKeyword addr and as asm atomic
syn keyword nimKeyword bind block break
syn keyword nimKeyword case cast concept const continue converter
syn keyword nimKeyword defer discard distinct div do
syn keyword nimKeyword elif else end enum except export
syn keyword nimKeyword finally for from
syn keyword nimKeyword generic
syn keyword nimKeyword if import in include interface is isnot iterator
syn keyword nimKeyword let
syn keyword nimKeyword mixin using mod
syn keyword nimKeyword nil not notin
syn keyword nimKeyword object of or out
syn keyword nimKeyword proc func method macro template nextgroup=nimFunction skipwhite
syn keyword nimKeyword ptr
syn keyword nimKeyword raise ref return
syn keyword nimKeyword shared shl shr static
syn keyword nimKeyword try tuple type
syn keyword nimKeyword var vtref vtptr
syn keyword nimKeyword when while with without
syn keyword nimKeyword xor
syn keyword nimKeyword yield
syn match nimFunction "[a-zA-Z_][a-zA-Z0-9_]*" contained
syn match nimClass "[a-zA-Z_][a-zA-Z0-9_]*" contained
syn keyword nimRepeat for while
syn keyword nimConditional if elif else case of
syn keyword nimOperator and in is not or xor shl shr div
syn match nimComment "#.*$" contains=nimTodo,@Spell
syn region nimComment start="#\[" end="\]#" contains=nimTodo,@Spell
syn keyword nimTodo TODO FIXME XXX contained
syn keyword nimBoolean true false
" Strings
syn region nimString start=+'+ skip=+\\\\\|\\'\|\\$+ excludenl end=+'+ end=+$+ keepend contains=nimEscape,nimEscapeError,@Spell
syn region nimString start=+"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end=+$+ keepend contains=nimEscape,nimEscapeError,@Spell
syn region nimString start=+"""+ end=+"""+ keepend contains=nimEscape,nimEscapeError,@Spell
syn region nimRawString matchgroup=Normal start=+[rR]"+ end=+"+ skip=+\\\\\|\\"+ contains=@Spell
syn match nimEscape +\\[abfnrtv'"\\]+ contained
syn match nimEscape "\\\o\{1,3}" contained
syn match nimEscape "\\x\x\{2}" contained
syn match nimEscape "\(\\u\x\{4}\|\\U\x\{8}\)" contained
syn match nimEscape "\\$"
syn match nimEscapeError "\\x\x\=\X" display contained
if nim_highlight_numbers == 1
" numbers (including longs and complex)
let s:dec_num = '\d%(_?\d)*'
let s:int_suf = '%(''%(%(i|I|u|U)%(8|16|32|64)|u|U))'
let s:float_suf = '%(''%(%(f|F)%(32|64|128)?|d|D))'
let s:exp = '%([eE][+-]?'.s:dec_num.')'
exe 'syn match nimNumber /\v<0[bB][01]%(_?[01])*%('.s:int_suf.'|'.s:float_suf.')?>/'
exe 'syn match nimNumber /\v<0[ocC]\o%(_?\o)*%('.s:int_suf.'|'.s:float_suf.')?>/'
exe 'syn match nimNumber /\v<0[xX]\x%(_?\x)*%('.s:int_suf.'|'.s:float_suf.')?>/'
exe 'syn match nimNumber /\v<'.s:dec_num.'%('.s:int_suf.'|'.s:exp.'?'.s:float_suf.'?)>/'
exe 'syn match nimNumber /\v<'.s:dec_num.'\.'.s:dec_num.s:exp.'?'.s:float_suf.'?>/'
unlet s:dec_num s:int_suf s:float_suf s:exp
endif
if nim_highlight_builtins == 1
" builtin functions, types and objects, not really part of the syntax
syn keyword nimBuiltin int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 float float32 float64
syn keyword nimBuiltin bool void chr char string cstring pointer range array openarray openArray seq varargs varArgs
syn keyword nimBuiltin set Byte Natural Positive Conversion
syn keyword nimBuiltin BiggestInt BiggestFloat cchar cschar cshort cint csize cuchar cushort
syn keyword nimBuiltin clong clonglong cfloat cdouble clongdouble cuint culong culonglong cchar
syn keyword nimBuiltin CompileDate CompileTime nimversion nimVersion nimmajor nimMajor
syn keyword nimBuiltin nimminor nimMinor nimpatch nimPatch cpuendian cpuEndian hostos hostOS hostcpu hostCPU inf
syn keyword nimBuiltin neginf nan QuitSuccess QuitFailure dbglinehook dbgLineHook stdin
syn keyword nimBuiltin stdout stderr defined new high low sizeof succ pred
syn keyword nimBuiltin inc dec newseq newSeq len incl excl card ord chr ze ze64
syn keyword nimBuiltin tou8 toU8 tou16 toU16 tou32 toU32 abs min max add repr
syn match nimBuiltin "\<contains\>"
syn keyword nimBuiltin tofloat toFloat tobiggestfloat toBiggestFloat toint toInt tobiggestint toBiggestInt
syn keyword nimBuiltin addquitproc addQuitProc
syn keyword nimBuiltin copy setlen setLen newstring newString zeromem zeroMem copymem copyMem movemem moveMem
syn keyword nimBuiltin equalmem equalMem alloc alloc0 realloc dealloc assert
syn keyword nimBuiltin typedesc typed untyped stmt expr
syn keyword nimBuiltin echo swap getrefcount getRefcount getcurrentexception getCurrentException Msg
syn keyword nimBuiltin getoccupiedmem getOccupiedMem getfreemem getFreeMem gettotalmem getTotalMem isnil isNil seqtoptr seqToPtr
syn keyword nimBuiltin find pop GC_disable GC_enable GC_fullCollect
syn keyword nimBuiltin GC_setStrategy GC_enableMarkAndSweep GC_Strategy
syn keyword nimBuiltin GC_disableMarkAnd Sweep GC_getStatistics GC_ref
syn keyword nimBuiltin GC_ref GC_ref GC_unref GC_unref GC_unref quit
syn keyword nimBuiltin OpenFile OpenFile CloseFile EndOfFile readChar
syn keyword nimBuiltin FlushFile readfile readFile readline readLine write writeln writeLn writeline writeLine
syn keyword nimBuiltin getfilesize getFileSize ReadBytes ReadChars readbuffer readBuffer writebytes writeBytes
syn keyword nimBuiltin writechars writeChars writebuffer writeBuffer setfilepos setFilePos getfilepos getFilePos
syn keyword nimBuiltin filehandle fileHandle countdown countup items lines
syn keyword nimBuiltin FileMode File RootObj FileHandle ByteAddress Endianness
endif
if nim_highlight_exceptions == 1
" builtin exceptions and warnings
syn keyword nimException E_Base EAsynch ESynch ESystem EIO EOS
syn keyword nimException ERessourceExhausted EArithmetic EDivByZero
syn keyword nimException EOverflow EAccessViolation EAssertionFailed
syn keyword nimException EControlC EInvalidValue EOutOfMemory EInvalidIndex
syn keyword nimException EInvalidField EOutOfRange EStackOverflow
syn keyword nimException ENoExceptionToReraise EInvalidObjectAssignment
syn keyword nimException EInvalidObject EInvalidLibrary EInvalidKey
syn keyword nimException EInvalidObjectConversion EFloatingPoint
syn keyword nimException EFloatInvalidOp EFloatDivByZero EFloatOverflow
syn keyword nimException EFloatInexact EDeadThread EResourceExhausted
syn keyword nimException EFloatUnderflow
endif
if nim_highlight_space_errors == 1
" trailing whitespace
syn match nimSpaceError display excludenl "\S\s\+$"ms=s+1
" any tabs are illegal in nim
syn match nimSpaceError display "\t"
endif
if nim_highlight_special_vars
syn keyword nimSpecialVar result
endif
syn sync match nimSync grouphere NONE "):$"
syn sync maxlines=200
syn sync minlines=2000
if v:version >= 508 || !exists('did_nim_syn_inits')
if v:version <= 508
let did_nim_syn_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
" The default methods for highlighting. Can be overridden later
HiLink nimBrackets Operator
HiLink nimKeyword Keyword
HiLink nimFunction Function
HiLink nimConditional Conditional
HiLink nimRepeat Repeat
HiLink nimString String
HiLink nimRawString String
HiLink nimBoolean Boolean
HiLink nimEscape Special
HiLink nimOperator Operator
HiLink nimPreCondit PreCondit
HiLink nimComment Comment
HiLink nimTodo Todo
HiLink nimDecorator Define
HiLink nimSpecialVar Identifier
if nim_highlight_numbers == 1
HiLink nimNumber Number
endif
if nim_highlight_builtins == 1
HiLink nimBuiltin Number
endif
if nim_highlight_exceptions == 1
HiLink nimException Exception
endif
if nim_highlight_space_errors == 1
HiLink nimSpaceError Error
endif
delcommand HiLink
endif
let b:current_syntax = 'nim'

View File

@ -1,20 +1,19 @@
import os import os
PATH_TO_LOMBOK = os.path.expanduser("/usr/lib/lombok-common/lombok.jar") PATH_TO_LOMBOK = os.path.expanduser("/usr/lib/lombok-common/lombok.jar")
jdtls_args = ['-noverify', jdtls_args = ['-Xmx1G',
'-Xmx1G',
'-XX:+UseG1GC', '-XX:+UseG1GC',
'-XX:+UseStringDeduplication'] '-XX:+UseStringDeduplication']
def Settings( **kwargs ): # def Settings( **kwargs ):
if not os.path.exists(PATH_TO_LOMBOK): # if not os.path.exists(PATH_TO_LOMBOK):
raise RuntimeError("Didn't find lombok jar") # raise RuntimeError("Didn't find lombok jar")
if kwargs['language'] == 'java': # if kwargs['language'] == 'java':
return { # return {
'server': { # 'server': {
'jvm_args': [ # 'jvm_args': [
'-javaagent:' + PATH_TO_LOMBOK, # '-javaagent:' + PATH_TO_LOMBOK,
'-Xbootclasspath/a:' + PATH_TO_LOMBOK # '-Xbootclasspath/a:' + PATH_TO_LOMBOK
] + jdtls_args # ] + jdtls_args
} # }
} # }

View File

@ -1,5 +1,26 @@
nnoremap <C-p> :Buffers<CR> nnoremap <C-p> :Buffers<CR>
nnoremap <C-g> :Ag<CR> nnoremap <C-g> :Ag<CR>
map gf :e <cfile><CR>
"FZF Buffer Delete
function! s:list_buffers()
redir => list
silent ls
redir END
return split(list, "\n")
endfunction
function! s:delete_buffers(lines)
execute 'bwipeout' join(map(a:lines, {_, line -> split(line)[0]}))
endfunction
command! BD call fzf#run(fzf#wrap({
\ 'source': s:list_buffers(),
\ 'sink*': { lines -> s:delete_buffers(lines) },
\ 'options': '--multi --reverse --bind ctrl-a:select-all+accept'
\ }))
"alt g to :Gfiles (if in git folder) else :Files "alt g to :Gfiles (if in git folder) else :Files
function! GFilesFallback() function! GFilesFallback()
@ -31,17 +52,17 @@ let g:vimtex_grammar_textidote = {'jar': '/usr/share/java/textidote.jar'}
let g:vimtex_view_method = 'zathura' let g:vimtex_view_method = 'zathura'
nnoremap gd :YcmCompleter GoToDefinition<CR> " nnoremap gd :YcmCompleter GoToDefinition<CR>
nnoremap gr :YcmCompleter GoToReferences<CR> " nnoremap gr :YcmCompleter GoToReferences<CR>
nnoremap K :YcmCompleter GetDoc<CR> " nnoremap K :YcmCompleter GetDoc<CR>
nnoremap \<CR> :YcmCompleter FixIt<CR> " nnoremap \<CR> :YcmCompleter FixIt<CR>
noremap gN :Lex<CR> noremap gN :Lex<CR>
nnoremap <F12> :Make<CR> nnoremap <F12> :Make<CR>
nnoremap <leader><F12> :Make run<CR> nnoremap <leader><F12> :Make run<CR>
"Documentation "Documentation
nnoremap K :execute 'vert term' &keywordprg '<cexpr>'<cr> " nnoremap K :execute 'vert term' &keywordprg '<cexpr>'<cr>
command Curl :execute 'vert term lynx -dump' escape(@+, '#') command Curl :execute 'vert term lynx -dump' escape(@+, '#')
command OpenLink :silent w !urlscan command OpenLink :silent w !urlscan
@ -79,6 +100,11 @@ let g:ycm_language_server = [
\ 'filetypes': ['tex'], \ 'filetypes': ['tex'],
\ }, \ },
\ { \ {
\ 'name': 'vue',
\ 'cmdline': [ 'vue-language-server', '--stdio' ],
\ 'filetypes': ['vue'],
\ },
\ {
\ 'name': 'godot', \ 'name': 'godot',
\ 'filetypes': ['gdscript'], \ 'filetypes': ['gdscript'],
\ 'port': 6008, \ 'port': 6008,
@ -120,16 +146,20 @@ set nu
set rnu set rnu
set scrolloff=10 set scrolloff=10
set shiftwidth=4 set shiftwidth=4
set shortmess-=S set shortmess=atToOs
set showcmd set showcmd
set spelllang+=fr set spelllang+=fr
set splitbelow splitright set splitbelow splitright
set tabstop=4 set tabstop=4
if !has('nvim')
set ttymouse=xterm2 set ttymouse=xterm2
endif
color desert color desert
hi Normal ctermfg=None ctermbg=None hi Normal ctermfg=None ctermbg=None
hi NonText ctermfg=None ctermbg=None hi NonText ctermfg=None ctermbg=None
packadd termdebug " packadd termdebug
let termdebug_wide=1 let g:termdebug_wide=1
filetype plugin indent on