100 lines
2.5 KiB
VimL
100 lines
2.5 KiB
VimL
" Interface settings
|
|
" Show line numbers
|
|
set number
|
|
|
|
" Tabbing settings
|
|
" Width of tab character
|
|
set tabstop=4
|
|
" Number of spaces per logical indent
|
|
set shiftwidth=4
|
|
" Tab key inserts space characters, not tab characters
|
|
set expandtab
|
|
" Jump to a level indented relative to code above, even if this line has no indents yet
|
|
set smarttab
|
|
|
|
" Settings for linting with ALE (requires ALE plugin activated below)
|
|
" Linters to use
|
|
let g:ale_linters={'python': ['pylama']}
|
|
" Only run linters that are referred to explicitly let g:ale_linters_explicit=1
|
|
" When to lint
|
|
let g:ale_lint_on_text_changed=1
|
|
let g:ale_lint_on_insert_leave=0
|
|
let g:ale_lint_on_enter=1
|
|
let g:ale_lint_on_save=1
|
|
let g:ale_lint_on_filetype_change=1
|
|
" How to display linting hints to the user
|
|
let g:ale_set_loclist=0
|
|
" let g:ale_set_quickfix=0
|
|
let g:ale_set_highlights=1
|
|
let g:ale_set_signs=1
|
|
let g:ale_echo_cursor=1
|
|
let g:ale_set_balloons=1
|
|
" Settings for completion using ALE
|
|
" Enable completion
|
|
let g:ale_completion_enabled=1
|
|
" Various completion settings
|
|
" What are the units for ale completion delay? ms? s?
|
|
" let g:ale_completion_delay=500
|
|
let g:ale_completion_max_suggestions=6
|
|
|
|
" zig.vim
|
|
" Do not autoformat code on save (would use `zig fmt`)
|
|
let g:zig_fmt_autosave = 0
|
|
|
|
" Plugins
|
|
" Load plugin manager
|
|
call plug#begin($XDG_CONFIG_HOME . 'nvim/plugins/')
|
|
|
|
" Semantic understanding of languages
|
|
" Linting and completion from ALE
|
|
Plug 'w0rp/ale'
|
|
" Zig language support
|
|
Plug 'ziglang/zig.vim'
|
|
" Odin language support
|
|
Plug 'Tetralux/odin.vim'
|
|
" Pony language support
|
|
Plug 'jakwings/vim-pony'
|
|
|
|
" Pencil, for writing prose
|
|
Plug 'reedes/vim-pencil'
|
|
|
|
" Vim Wiki
|
|
" Plug 'vimwiki/vimwiki'
|
|
|
|
" Colourschemes
|
|
" Following option should be set on a 256 color
|
|
" terminal to enable true colour
|
|
set termguicolors
|
|
Plug 'pgdouyon/vim-yin-yang'
|
|
Plug 'andreasvc/vim-256noir'
|
|
Plug 'ewilazarus/preto'
|
|
Plug 'owickstrom/vim-colors-paramount'
|
|
Plug 'nightsense/cosmic_latte'
|
|
Plug 'scheakur/vim-scheakur'
|
|
Plug 'ajmwagar/vim-deus'
|
|
Plug 'srcery-colors/srcery-vim'
|
|
Plug 'nice/sweater'
|
|
Plug 'noahfrederick/vim-hemisu'
|
|
Plug 'ajgrf/sprinkles'
|
|
Plug 'xero/sourcerer.vim'
|
|
Plug 'franbach/miramare'
|
|
Plug 'everard/vim-aurora'
|
|
" base16 colourscheme set (very large)
|
|
" Plug 'chriskempson/base16-vim'
|
|
|
|
" Initialise vim-plug
|
|
call plug#end()
|
|
|
|
" Colorscheme control (must be after loading of colorscheme plugins)
|
|
" Light color schemes don't work on the console
|
|
if $TERM ==# "linux"
|
|
set notermguicolors
|
|
else
|
|
set termguicolors
|
|
endif
|
|
set background=light
|
|
colorscheme aurora
|
|
|
|
" Rob Pike says that syntax highlighting is juvenile so it must be true
|
|
syntax off
|