Damien Broqua
0d384b22bf
Added some ignored folders and files Updated waybar clock for Debian 11 Fixed bug on screen definition Fixed Iiyama North America PL2483H 1173700204528 Merge branch 'gentoo-sway' of git.darkou.fr:dbroqua/home into gentoo-sway Some changes for work environment Some changes for work environment Merge branch 'gentoo-sway' of git.darkou.fr:dbroqua/home into gentoo-sway Added .mp3 files Updated waybar config for laptop Added vim-jsx Added Teams to startup section (sad day in life!) Updated mpd config (local source) Added script for syncing my music Merge branch 'gentoo-sway' of git.darkou.fr:dbroqua/home into gentoo-sway Updated ranger config Merge branch 'gentoo-sway' of git.darkou.fr:dbroqua/home into gentoo-sway Replaced termite with alacritty Replaced termite by alacritty Updated rsync.sh results Merge branch 'gentoo-sway' of git.darkou.fr:dbroqua/home into gentoo-sway Updated github user Updated irc alias Minor changes Added master if fail fait dev* Added zsh prompt Updated output definitions Added KDEConnect at startup Added second screen Merge branch 'gentoo-sway' of git.darkou.fr:dbroqua/home into gentoo-sway Updated README Added C.A.V.A. Fixed bug for vte Added Tofu HHKB keyboard config Added script to update system Updated FuzzFm entry Added menu entry for Carnet Added qcad's ebuild Updated waybar for Thinkpad Updated temperature list for Thinkpad Fixed bug Updated input for thinkpad Added script to order files for Alpine car audio system Updated Fuzz url Added Grammalecte plugin Added displays for ThinkStation and ThinkPad Merge branch 'gentoo-sway' of framagit.org:dbroqua/home into gentoo-sway Updated waybar for laptop Fixed bug on adjust brightness Moved applications Co-authored-by: dbroqua <contact@darkou.fr> Co-authored-by: dbroqua <dbroqua@mousur.org> Reviewed-on: #1 Co-Authored-By: Damien Broqua <dbroqua@noreply.localhost> Co-Committed-By: Damien Broqua <dbroqua@noreply.localhost>
161 lines
4.1 KiB
VimL
161 lines
4.1 KiB
VimL
" VIM Configuration - DarKou
|
|
|
|
" Cancel VI compatibility
|
|
set nocompatible
|
|
|
|
" -- Vim-plug
|
|
if empty(glob('~/.vim/autoload/plug.vim'))
|
|
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
|
|
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
|
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
|
|
endif
|
|
|
|
call plug#begin('~/.vim/plugged')
|
|
Plug 'arcticicestudio/nord-vim'
|
|
Plug 'sjbach/lusty'
|
|
Plug 'kshenoy/vim-signature'
|
|
Plug 'w0rp/ale'
|
|
Plug 'ap/vim-css-color'
|
|
Plug 'mileszs/ack.vim'
|
|
Plug 'ctrlpvim/ctrlp.vim'
|
|
Plug 'moll/vim-node'
|
|
Plug 'pangloss/vim-javascript'
|
|
Plug 'briancollins/vim-jst'
|
|
Plug '1995eaton/vim-better-javascript-completion'
|
|
Plug 'heavenshell/vim-jsdoc', {
|
|
\ 'for': ['javascript', 'javascript.jsx','typescript'],
|
|
\ 'do': 'make install'
|
|
\}
|
|
Plug 'JamshedVesuna/vim-markdown-preview'
|
|
Plug 'ternjs/tern_for_vim', {'do': 'yarn install'}
|
|
Plug 'alvan/vim-closetag'
|
|
Plug 'psykidellic/vim-jekyll'
|
|
Plug 'airblade/vim-gitgutter'
|
|
Plug 'yuezk/vim-js'
|
|
Plug 'maxmellon/vim-jsx-pretty'
|
|
Plug 'briancollins/vim-jst'
|
|
Plug 'dpelle/vim-grammalecte'
|
|
" Initialize plugin system
|
|
call plug#end()
|
|
|
|
" -- Markdown preview
|
|
let vim_markdown_preview_browser='Mozilla Firefox'
|
|
|
|
" -- Display
|
|
colorscheme nord
|
|
set title
|
|
set number
|
|
set ruler
|
|
set wrap
|
|
set scrolloff=5
|
|
syntax enable
|
|
set encoding=utf-8
|
|
set fileencoding=utf-8
|
|
set showmatch " When a bracket is inserted, briefly jump to the matching one
|
|
set cursorline " Highlight the screen line of the cursor
|
|
|
|
filetype on
|
|
filetype plugin on
|
|
filetype indent on
|
|
|
|
set omnifunc=syntaxcomplete#Complete
|
|
|
|
:highlight ExtraWhitespace ctermbg=red guibg=red
|
|
:match ExtraWhitespace /\s\+$/
|
|
:match errorMsg /\s\+$/
|
|
|
|
|
|
" -- Search
|
|
set ignorecase
|
|
set smartcase
|
|
set incsearch
|
|
set hlsearch
|
|
|
|
" -- Ack search
|
|
let g:ackprg="ack -H --nocolor --nogroup --column"
|
|
nmap <leader>j mA:Ack<space>
|
|
nmap <leader>ja mA:Ack "<C-r>=expand("<cword>")<cr>"
|
|
nmap <leader>jA mA:Ack "<C-r>=expand("<cWORD>")<cr>"
|
|
|
|
" -- Ctrlp
|
|
let g:ctrlp_map='<leader>c'
|
|
|
|
" -- Beep
|
|
set visualbell
|
|
set noerrorbells
|
|
|
|
"
|
|
set backspace=indent,eol,start
|
|
|
|
" Hide file when open other file
|
|
set hidden
|
|
|
|
" Code formating
|
|
set smartindent " Do smart autoindenting when starting a new line
|
|
set tabstop=2 " Number of spaces that a <Tab> in the file counts for
|
|
set shiftwidth=2 " Alignment with '<' and '>'
|
|
set expandtab " Use spaces instead of tab
|
|
|
|
augroup myTodo
|
|
autocmd!
|
|
autocmd Syntax * syntax match myTodo /\v\_.<(TODO|FIXME|INFO).*/hs=s+1 containedin=.*Comment
|
|
augroup END
|
|
highlight link myTodo Todo
|
|
|
|
" Auto close brackets/…
|
|
inoremap " ""<left>
|
|
inoremap ' ''<left>
|
|
inoremap ` ``<left>
|
|
inoremap ( ()<left>
|
|
inoremap [ []<left>
|
|
inoremap { {}<left>
|
|
inoremap {<CR> {<CR>}<ESC>O
|
|
inoremap {;<CR> {<CR>};<ESC>O
|
|
|
|
" -- Remove unwantedd spaces
|
|
function GlobalTrimWhiteSpace()
|
|
%s/\s*$//
|
|
''
|
|
endfunction
|
|
|
|
set list listchars=trail:.,extends:>
|
|
autocmd FileWritePre * call GlobalTrimWhiteSpace()
|
|
autocmd FileAppendPre * call GlobalTrimWhiteSpace()
|
|
autocmd FilterWritePre * call GlobalTrimWhiteSpace()
|
|
autocmd BufWritePre * call GlobalTrimWhiteSpace()
|
|
|
|
map <F2> :call GlobalTrimWhiteSpace()<CR>
|
|
map! <F2> :call GlobalTrimWhiteSpace()<CR>
|
|
|
|
|
|
" -- Plugins configurations
|
|
" Grammalecte
|
|
:let g:grammalecte_cli_py='$HOME/.Grammalecte/grammalecte-cli.py'
|
|
|
|
" ale
|
|
let b:ale_linters = ['eslint']
|
|
let g:ale_fixers = {
|
|
\ '*': ['remove_trailing_lines', 'trim_whitespace'],
|
|
\ 'javascript': ['prettier', 'eslint'],
|
|
\ 'css': ['prettier']
|
|
\ }
|
|
let g:ale_sign_error = '❌'
|
|
let g:ale_sign_warning = '⚠️'
|
|
let g:ale_fix_on_save = 1
|
|
|
|
" vim-javascript
|
|
let g:javascript_plugin_jsdoc = 1 " Enables syntax highlighting for JSDocs
|
|
let g:javascript_plugin_flow = 1 " Enables syntax highlighting for Flow
|
|
|
|
" vim-closetag
|
|
let g:closetag_filenames = '*.html,*.xhtml,*.phtml'
|
|
let g:closetag_xhtml_filenames = '*.xhtml,*.jsx, *.ejs'
|
|
let g:closetag_filetypes = 'html,xhtml,phtml'
|
|
let g:closetag_xhtml_filetypes = 'xhtml,jsx'
|
|
let g:closetag_emptyTags_caseSensitive = 1
|
|
let g:closetag_regions = {
|
|
\ 'typescript.tsx': 'jsxRegion,tsxRegion',
|
|
\ 'javascript.jsx': 'jsxRegion',
|
|
\ }
|
|
let g:closetag_shortcut = '>'
|
|
let g:closetag_close_shortcut = '<leader>>'
|