Skip to content

Instantly share code, notes, and snippets.

@ekmett

ekmett/init.vim Secret

Created April 5, 2021 01:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ekmett/7b29fdb6622de29332626a2655122bbe to your computer and use it in GitHub Desktop.
Save ekmett/7b29fdb6622de29332626a2655122bbe to your computer and use it in GitHub Desktop.
my vim config
set nocompatible " be iMproved, required
filetype off " required
set rtp+=$HOME/.vim/bundle/Vundle.vim
set hidden
let g:airline_solarized_bg='dark'
let g:airline_powerline_fonts = 1
let g:airline_theme='luna'
let g:airline_skip_empty_sections = 1
" let g:airline_section_a = '' "disable mode
let g:airline_section_x = '' "disable filetype
let g:airline_section_y = '' "disable encoding
let g:airline_section_z = '' "disable position
let g:cabal_indent_section = 2
let g:ghcid_lines=8
let g:ghcid_verbosity = 1
let g:haskell_enable_quantification = 1 " highlighting `forall`
let g:haskell_enable_recursivedo = 1 " highlighting `mdo` and `rec`
let g:haskell_enable_arrowsyntax = 1 " highlighting `proc`
let g:haskell_enable_pattern_synonyms = 1 " highlighting `pattern`
let g:haskell_enable_typeroles = 1 " highlighting type roles
let g:haskell_enable_static_pointers = 1 " highlighting `static`
let g:haskell_backpack = 1 " highlighting backpack keywords
let g:haskell_indent_disable = 1
let g:lucius_high_contrast = 1
let g:lucius_style = 'dark'
let g:lucius_no_term_bg = 1
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
Plugin 'jonathanfilip/vim-lucius'
Plugin 'neovimhaskell/haskell-vim'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
" Plugin 'zxqfl/tabnine-vim'
if (has("nvim"))
Plugin 'ndmitchell/ghcid',{'rtp':'plugins/nvim'}
endif
call vundle#end()
filetype plugin indent on
syntax on
map <C-N> :cr<CR>
map <C-B> :Ghcid -c 'cabal new-repl'<CR>
nmap + :r !paste<CR>
nnoremap <silent> <C-J> :let _s=@/ <Bar> :%s/\s\+$//e <Bar> :let @/=_s <Bar> :nohl <Bar> :unlet _s <CR><Paste>
set mouse=a
set number
autocmd BufNewFile,BufRead *.hsig,*.x set syntax=haskell " haskell signature files, alex lexer files
autocmd BufNewFile,BufRead .vimpagerrc,.vimcatrc set syntax=vim
set background=dark
set t_Co=256
if (empty($TMUX))
if (has("nvim"))
let $NVIM_TUI_ENABLE_TRUE_COLOR=1
endif
endif
colorscheme lucius
" i like italic comments
highlight Comment cterm=italic gui=italic
highlight Normal ctermbg=NONE guibg=NONE
highlight Comment cterm=italic gui=italic
highlight SpecialComment cterm=italic gui=italic ctermfg=DarkGreen
highlight Normal ctermbg=NONE guibg=NONE
highlight haskellBottom ctermfg=Red
highlight haskellFail ctermfg=LightRed
highlight HaskellDecl cterm=italic ctermfg=DarkCyan
highlight HaskellDeclKeyword cterm=italic ctermfg=DarkCyan
highlight haskellImportKeywords cterm=italic ctermfg=DarkCyan
highlight haskellWhere cterm=italic ctermfg=DarkCyan
highlight haskellLet cterm=italic ctermfg=DarkCyan
highlight haskellDefault cterm=italic ctermfg=DarkCyan
highlight haskellKeyword cterm=italic ctermfg=DarkCyan
highlight haskellStatic cterm=italic ctermfg=DarkCyan
highlight haskellConditional cterm=italic ctermfg=DarkCyan
highlight haskellBackpackStructure cterm=italic ctermfg=DarkCyan
highlight haskellForall cterm=italic ctermfg=DarkCyan
highlight haskellRecursiveDo cterm=italic ctermfg=DarkCyan
highlight haskellPatternKeyword cterm=italic ctermfg=DarkCyan
highlight haskellTypeRoles cterm=italic ctermfg=DarkCyan
" TabNine menu colors
highlight Pmenu cterm=italic ctermbg=Black ctermfg=DarkGrey
highlight PmenuSel cterm=italic ctermbg=DarkGrey ctermfg=Black
highlight LineNr ctermfg=DarkMagenta ctermbg=Black
set tags=./tags,tags;
set expandtab
set tabstop=2
set shiftwidth=2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment