config/nvim/init.vim

94 lines
2.4 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'
" 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'
" 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=dark
syntax on
colorscheme srcery