blob: dc52b63b8d071094b3fa39efa6abe7a8c5be2460 [file] [log] [blame]
Skyler Greyc96cd8a2022-06-15 12:28:27 +01001{ pkgs, ... }: {
Skyler Greye6995322022-06-12 09:29:17 +01002 programs.neovim = {
3 enable = true;
Skyler Greyc96cd8a2022-06-15 12:28:27 +01004 coc = {
5 enable = true;
6 settings = {
7 "suggest.noselect" = false;
8 };
9 };
Skyler Greye6995322022-06-12 09:29:17 +010010 viAlias = true;
11 vimAlias = true;
12 vimdiffAlias = true;
Skyler Greyc96cd8a2022-06-15 12:28:27 +010013 extraConfig = ''
14 set whichwrap=b,s,<,>,[,]
Skyler Grey2e80a192022-06-15 14:23:01 +010015 set wrap
16 set number
Skyler Greya949ffd2022-06-23 23:32:48 +010017 set cursorline
18 colorscheme onehalfdark
19
20 if exists('+termguicolors')
21 let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
22 let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
23 set termguicolors
24 endif
Skyler Greyc96cd8a2022-06-15 12:28:27 +010025 '';
26 plugins = [
27 pkgs.vimPlugins.vim-nix
Skyler Greye96d0112022-06-15 15:39:56 +010028 pkgs.vimPlugins.copilot-vim
Skyler Greyf2b5e262022-06-15 15:59:50 +010029 pkgs.vimPlugins.coc-tsserver
Skyler Grey58867232022-06-23 22:02:10 +010030 pkgs.vimPlugins.zoomwintab-vim
31 pkgs.vimPlugins.onehalf
Skyler Greyc96cd8a2022-06-15 12:28:27 +010032 ];
Skyler Greye6995322022-06-12 09:29:17 +010033 };
Skyler Greyc96cd8a2022-06-15 12:28:27 +010034
35 home.sessionVariables.EDITOR = "${pkgs.neovim}/bin/nvim";
Skyler Grey73c55fc2022-06-12 09:18:59 +010036}