Compare commits
No commits in common. "fa9e6e81e17b2482982e043e56514c452d0e0a60" and "903e30368a654f798c1bb885bbddaa064e11b9e0" have entirely different histories.
fa9e6e81e1
...
903e30368a
2 changed files with 4 additions and 179 deletions
|
@ -378,70 +378,4 @@ in
|
||||||
};
|
};
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# shell config
|
|
||||||
programs.zsh = {
|
|
||||||
enable = true;
|
|
||||||
enableSyntaxHighlighting = true;
|
|
||||||
history.ignoreSpace = true;
|
|
||||||
initExtra = ''
|
|
||||||
# Uncomment following line if you want red dots to be displayed while waiting for completion
|
|
||||||
COMPLETION_WAITING_DOTS="true"
|
|
||||||
### Fix slowness of pastes with zsh-syntax-highlighting.zsh
|
|
||||||
pasteinit() {
|
|
||||||
OLD_SELF_INSERT=$\{$\{(s.:.)widgets[self-insert]}[2,3]}
|
|
||||||
zle -N self-insert url-quote-magic # I wonder if you'd need `.url-quote-magic`?
|
|
||||||
}
|
|
||||||
|
|
||||||
pastefinish() {
|
|
||||||
zle -N self-insert $OLD_SELF_INSERT
|
|
||||||
}
|
|
||||||
zstyle :bracketed-paste-magic paste-init pasteinit
|
|
||||||
zstyle :bracketed-paste-magic paste-finish pastefinish
|
|
||||||
|
|
||||||
# automatic rehash of path completion
|
|
||||||
zstyle ':completion:*' rehash true
|
|
||||||
|
|
||||||
eval "$(${pkgs.thefuck}/bin/thefuck --alias)"
|
|
||||||
|
|
||||||
## helper functions
|
|
||||||
nixify() {
|
|
||||||
if [ ! -e ./.envrc ]; then
|
|
||||||
echo "eval \"$(lorri direnv)\"" > .envrc
|
|
||||||
direnv allow
|
|
||||||
fi
|
|
||||||
if [ ! -e shell.nix ]; then
|
|
||||||
cat > shell.nix <<'EOF'
|
|
||||||
with import <nixpkgs> {};
|
|
||||||
mkShell {
|
|
||||||
buildInputs = [
|
|
||||||
bashInteractive
|
|
||||||
];
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
${EDITOR:-vim} default.nix
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
binpath() {
|
|
||||||
realpath $(${pkgs.which}/bin/which $1)
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
|
|
||||||
|
|
||||||
oh-my-zsh = {
|
|
||||||
enable = true;
|
|
||||||
theme = "bira";
|
|
||||||
plugins = [ "git" "python" "systemd" "gpg-agent"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
home.shellAliases = {
|
|
||||||
ip = "ip --color";
|
|
||||||
ipb = "ip --color --brief";
|
|
||||||
ll = "ls -l";
|
|
||||||
wavesynth = "nix-shell -p sox --run 'play -n synth brownnoise synth pinknoise mix synth 0 0 0 15 40 80 trapezium amod 0.2 20'";
|
|
||||||
};
|
|
||||||
home.sessionVariables = {
|
|
||||||
EDITOR = "vim";
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,119 +27,10 @@
|
||||||
vim-jinja
|
vim-jinja
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
vimrcConfig.customRC = ''
|
vimrcConfig.customRC =
|
||||||
" disable vim modelines for security reasons
|
''if filereadable($HOME . "/.vimrc")
|
||||||
set modelines=0
|
source ~/.vimrc
|
||||||
set nomodeline
|
endif
|
||||||
|
|
||||||
" Uncomment the following to have Vim jump to the last position when
|
|
||||||
" reopening a file
|
|
||||||
if has("autocmd")
|
|
||||||
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
set nocompatible
|
|
||||||
set hidden
|
|
||||||
|
|
||||||
" automatically close preview window after suggestion
|
|
||||||
autocmd CompleteDone * pclose
|
|
||||||
|
|
||||||
" Pathogen
|
|
||||||
"execute pathogen#infect()
|
|
||||||
"call pathogen#infect()
|
|
||||||
"call pathogen#helptags()
|
|
||||||
|
|
||||||
set statusline=%<\ %n:%f\ %m%r%y%=%-35.(line:\ %l\ of\ %L,\ col:\ %c%V\ (%P)%)
|
|
||||||
filetype plugin indent on
|
|
||||||
|
|
||||||
syntax on
|
|
||||||
|
|
||||||
set number
|
|
||||||
set mouse=a
|
|
||||||
set mousehide
|
|
||||||
|
|
||||||
set backspace=indent,eol,start
|
|
||||||
|
|
||||||
set hlsearch
|
|
||||||
set showmatch
|
|
||||||
set incsearch
|
|
||||||
set autoindent
|
|
||||||
set history=1000
|
|
||||||
" set cursorline
|
|
||||||
if has("unnamedplus")
|
|
||||||
set clipboard=unnamedplus
|
|
||||||
elseif has("clipboard")
|
|
||||||
set clipboard=unnamed
|
|
||||||
endif
|
|
||||||
|
|
||||||
" set expandtab
|
|
||||||
set shiftwidth=4
|
|
||||||
set tabstop=4
|
|
||||||
set softtabstop=4
|
|
||||||
|
|
||||||
" enable truecolor support
|
|
||||||
"let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
|
|
||||||
"let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
|
|
||||||
"set termguicolors
|
|
||||||
"
|
|
||||||
"let base16colorspace=256
|
|
||||||
|
|
||||||
"colorscheme base16-tomorrow-night
|
|
||||||
"colorscheme Tomorrow-Night
|
|
||||||
"colorscheme base16-default-dark
|
|
||||||
|
|
||||||
set background=dark
|
|
||||||
|
|
||||||
" Use the same symbols as TextMate for tabstops and EOLs
|
|
||||||
set listchars=tab:▸\ ,eol:¬
|
|
||||||
|
|
||||||
" default tab completion with supertab
|
|
||||||
let g:SuperTabDefaultCompletionType = "context"
|
|
||||||
|
|
||||||
|
|
||||||
" LanguageClient
|
|
||||||
" Required for operations modifying multiple buffers like rename.
|
|
||||||
set hidden
|
|
||||||
nnoremap <F5> :call LanguageClient_contextMenu()<CR>
|
|
||||||
let g:LanguageClient_serverCommands = { 'haskell': ['hie-wrapper', '--lsp'] }
|
|
||||||
|
|
||||||
" enable LanguageClient functions only if a server mapping exists
|
|
||||||
function LC_maps()
|
|
||||||
if has_key(g:LanguageClient_serverCommands, &filetype)
|
|
||||||
nnoremap <buffer> <silent> K :call LanguageClient#textDocument_hover()<cr>
|
|
||||||
nnoremap <buffer> <silent> gd :call LanguageClient#textDocument_definition()<CR>
|
|
||||||
nnoremap <buffer> <silent> <F2> :call LanguageClient#textDocument_rename()<CR>
|
|
||||||
set omnifunc=LanguageClient#complete
|
|
||||||
set completefunc=LanguageClient#complete
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
autocmd FileType * call LC_maps()
|
|
||||||
|
|
||||||
au FileType python setlocal tabstop=4 expandtab shiftwidth=4 softtabstop=4
|
|
||||||
au FileType haskell setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4
|
|
||||||
" haskell-vim
|
|
||||||
let g:haskell_enable_quantification = 1 " to enable highlighting of `forall`
|
|
||||||
let g:haskell_enable_recursivedo = 1 " to enable highlighting of `mdo` and `rec`
|
|
||||||
let g:haskell_enable_arrowsyntax = 1 " to enable highlighting of `proc`
|
|
||||||
let g:haskell_enable_pattern_synonyms = 1 " to enable highlighting of `pattern`
|
|
||||||
let g:haskell_enable_typeroles = 1 " to enable highlighting of type roles
|
|
||||||
let g:haskell_enable_static_pointers = 1 " to enable highlighting of `static`
|
|
||||||
let g:haskell_backpack = 1 " to enable highlighting of backpack keywords
|
|
||||||
au FileType markdown setlocal tabstop=4 expandtab shiftwidth=4 softtabstop=4
|
|
||||||
au FileType nix setlocal tabstop=2 expandtab shiftwidth=2 softtabstop=2
|
|
||||||
set ofu=syntaxcomplete#Complete
|
|
||||||
" nmap <C-V> "+gP
|
|
||||||
" imap <C-V> <ESC><C-V>a
|
|
||||||
vmap <C-C> "+y
|
|
||||||
|
|
||||||
" ALE linter settings
|
|
||||||
let g:ale_linters = { 'python': ['flake8'] }
|
|
||||||
|
|
||||||
" vim-pandoc settings
|
|
||||||
let g:pandoc#modules#disabled = ["spell"]
|
|
||||||
set textwidth=0
|
|
||||||
set wrapmargin=0
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
# build with debug symbols and in debug mode (less optimized)
|
# build with debug symbols and in debug mode (less optimized)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue