@@ -51,7 +51,41 @@ | |||||
"inputs": { | "inputs": { | ||||
"flake-utils": "flake-utils", | "flake-utils": "flake-utils", | ||||
"nixpkgs": "nixpkgs", | "nixpkgs": "nixpkgs", | ||||
"rainbow-vim-src": "rainbow-vim-src" | |||||
"rainbow-vim-src": "rainbow-vim-src", | |||||
"slimv-src": "slimv-src", | |||||
"vim-racket-src": "vim-racket-src" | |||||
} | |||||
}, | |||||
"slimv-src": { | |||||
"flake": false, | |||||
"locked": { | |||||
"lastModified": 1600894996, | |||||
"narHash": "sha256-5HCyyBXoA/esoTYlFBX/5vxQ7LK/w+rcXoAc6gQ5WCs=", | |||||
"owner": "kovisoft", | |||||
"repo": "slimv", | |||||
"rev": "6dfc46912655ab629634d021e9c5b0bd27023417", | |||||
"type": "github" | |||||
}, | |||||
"original": { | |||||
"owner": "kovisoft", | |||||
"repo": "slimv", | |||||
"type": "github" | |||||
} | |||||
}, | |||||
"vim-racket-src": { | |||||
"flake": false, | |||||
"locked": { | |||||
"lastModified": 1595555951, | |||||
"narHash": "sha256-XqbR9qMvvaeZ7LHUemocJQQ/CaJSHxEwh7B7Y1o6KhU=", | |||||
"owner": "wlangstroth", | |||||
"repo": "vim-racket", | |||||
"rev": "bca2643c3d8bd0fcd46ab73bee69023a5da1964b", | |||||
"type": "github" | |||||
}, | |||||
"original": { | |||||
"owner": "wlangstroth", | |||||
"repo": "vim-racket", | |||||
"type": "github" | |||||
} | } | ||||
} | } | ||||
}, | }, | ||||
@@ -13,14 +13,31 @@ | |||||
url = "github:frazrepo/vim-rainbow"; | url = "github:frazrepo/vim-rainbow"; | ||||
flake = false; | flake = false; | ||||
}; | }; | ||||
vim-racket-src = { | |||||
url = "github:wlangstroth/vim-racket"; | |||||
flake = false; | |||||
}; | |||||
slimv-src = { | |||||
url = "github:kovisoft/slimv"; | |||||
flake = false; | |||||
}; | |||||
}; | }; | ||||
outputs = { self, nixpkgs, flake-utils, rainbow-vim-src, ... }: | |||||
outputs = { self, nixpkgs, flake-utils, rainbow-vim-src | |||||
, vim-racket-src, slimv-src, ... }: | |||||
let | let | ||||
customPlugins = pkgs: { | customPlugins = pkgs: { | ||||
rainbow-vim = pkgs.vimUtils.buildVimPlugin { | rainbow-vim = pkgs.vimUtils.buildVimPlugin { | ||||
name = "rainbow-vim"; | name = "rainbow-vim"; | ||||
src = rainbow-vim-src; | src = rainbow-vim-src; | ||||
}; | }; | ||||
vim-racket = pkgs.vimUtils.buildVimPlugin { | |||||
name = "vim-racket"; | |||||
src = vim-racket-src; | |||||
}; | |||||
slimv = pkgs.vimUtils.buildVimPlugin { | |||||
name = "slimv"; | |||||
src = slimv-src; | |||||
}; | |||||
}; | }; | ||||
in flake-utils.lib.eachDefaultSystem (system: | in flake-utils.lib.eachDefaultSystem (system: | ||||
let | let | ||||
@@ -4,8 +4,9 @@ customPlugins: self: super: { | |||||
name = "vim"; | name = "vim"; | ||||
vimrcConfig = { | vimrcConfig = { | ||||
pathogen = { | pathogen = { | ||||
knownPlugins = (customPlugins super) // super.vimPlugins; | |||||
knownPlugins = super.vimPlugins // (customPlugins super); | |||||
pluginNames = [ | pluginNames = [ | ||||
"vim-racket" | |||||
"haskell-vim" | "haskell-vim" | ||||
"rainbow-vim" | "rainbow-vim" | ||||
"vimwiki" | "vimwiki" | ||||
@@ -13,35 +14,41 @@ customPlugins: self: super: { | |||||
"vim-sexp" | "vim-sexp" | ||||
"vim-surround" | "vim-surround" | ||||
"vim-repeat" | "vim-repeat" | ||||
"slimv" | |||||
]; | ]; | ||||
}; | }; | ||||
customRC = '' | customRC = '' | ||||
set colorcolumn=80 | |||||
set nocompatible | set nocompatible | ||||
filetype on | |||||
filetype plugin on | filetype plugin on | ||||
filetype indent on | filetype indent on | ||||
filetype on | |||||
syntax on | syntax on | ||||
set encoding=utf-8 | set encoding=utf-8 | ||||
set autoindent | set autoindent | ||||
set smartindent | set smartindent | ||||
set ignorecase | set ignorecase | ||||
set smartcase | set smartcase | ||||
set hlsearch | set hlsearch | ||||
set history=100 | set history=100 | ||||
set number | set number | ||||
set wildmenu | set wildmenu | ||||
set backspace=eol,indent,start | set backspace=eol,indent,start | ||||
set tabstop=3 softtabstop=3 expandtab shiftwidth=3 smarttab | |||||
set tabstop=2 softtabstop=2 expandtab shiftwidth=2 smarttab | |||||
autocmd BufNewFile,BufRead *.rkt set filetype=scheme | autocmd BufNewFile,BufRead *.rkt set filetype=scheme | ||||
autocmd FileType scheme :packadd vim-sexp | autocmd FileType scheme :packadd vim-sexp | ||||
autocmd FileType scheme :packadd vim-sexp-for-normies | |||||
autocmd FileType scheme :packadd vim-sexp-for-regular-people | |||||
autocmd FileType scheme :packadd vim-surround | autocmd FileType scheme :packadd vim-surround | ||||
autocmd FileType scheme :packadd vim-repeat | autocmd FileType scheme :packadd vim-repeat | ||||
autocmd FileType scheme :packadd paredit-vim | |||||
autocmd FileType scheme :packadd vim-tslime | |||||
autocmd FileType scheme :packadd racket-vim | |||||
autocmd FileType scheme :packadd slimv | |||||
autocmd FileType scheme :packadd vim-racket | |||||
autocmd BufNewFile,BufRead *.hoon set filetype=hoon | autocmd BufNewFile,BufRead *.hoon set filetype=hoon | ||||
autocmd FileType hoon :packadd hoon-vim | autocmd FileType hoon :packadd hoon-vim | ||||
@@ -0,0 +1 @@ | |||||