Tuesday, June 4, 2024

My neovim configuration for python development

I have started experimenting with Neovim again. I can hardly wait to finish programming it so that I can start with the actual programming!

Here is my (current) init.vim file (credits included):

" https://www.youtube.com/watch?v=wzrZPcwh-bE

set encoding=utf-8
set number
syntax enable
set noswapfile
set backspace=indent,eol,start

set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
set autoindent
set fileformat=unix

set colorcolumn=80
highlight ColorColumn ctermbg=9

call plug#begin()

Plug 'catppuccin/nvim', { 'as': 'catppuccin' }
Plug 'morhetz/gruvbox'
Plug 'jiangmiao/auto-pairs'
Plug 'preservim/nerdtree'
Plug 'preservim/nerdcommenter'
Plug 'norcalli/nvim-colorizer.lua'
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
"Plug 'sirver/ultisnips'

" https://www.youtube.com/watch?v=JWReY93Vl6g
Plug 'tc50cal/vim-terminal'
Plug 'preservim/tagbar'
Plug 'neoclide/coc.nvim'

call plug#end()

"colorscheme gruvbox
colorscheme catppuccin " catppuccin catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha
"let g:airline_theme='gruvbox'
let g:airline_powerline_fonts=1

if !exists('g:airline_symbols')
    let g:airline_symbols = {}
endif

if (has("termguicolors"))
    set termguicolors
endif

lua require 'colorizer'.setup()

" NERDCommenter
nmap <C-_> <Plug>NERDCommenterToggle
nmap <C-_> <Plug>NERDCommenterToggle<CR>gv

" NERDTree
"let NERDTreeQuitOnOpen=1
let g:NERDTreeMinimalUI=1
nmap <F2> :NERDTreeToggle<CR>

" Tagbar
nmap <F3> :TagbarToggle<CR>

" Tabs
let g:airline#extensions#tabline#enabled=1
let g:airline#extensions#tabline#fnamemode=':t'

nmap <C-PageUp> :bp<CR>
nmap <C-PageDown> :bn<CR>
"nmap <C-w> :bd<CR>

" let mapleader = ' '

" Ultisnips
" let g:UltiSnipsSnippetDirectories=[$HOME.'/.config/nvim/ultisnips']
" let g:UltiSnipsExpandTrigger="<tab>"
" let g:UltiSnipsJumpForwardTrigger="<tab>"
" let g:UltiSnipsJumpBackwardTrigger='<s-tab>'

" Enable Tab / Shift Tab to cycle completion options
inoremap <expr> <Tab> pumvisible() ? coc#_select_confirm() : "<Tab>"
"inoremap <expr> <Tab>   pumvisible() ? "\<C-n>" : "\<Tab>"
"inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
"let g:completion_enable_fuzzy_match = 1
"set completeopt=menuone,noinsert,noselect


No comments:

Post a Comment