-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathshell.nix
51 lines (47 loc) · 1.16 KB
/
shell.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{self, pkgs ? import <nixpkgs> {} }:
with pkgs;
let
neovim = pkgs.neovim.override {
withPython3 = false;
withRuby = false;
configure = {
customRC = ''
let g:loaded_perl_provider = 0
source ${self}/init.lua
" nvim-compe
inoremap <silent><expr> <C-Space> compe#complete()
inoremap <silent><expr> <CR> compe#confirm('<CR>')
inoremap <silent><expr> <C-e> compe#close('<C-e>')
inoremap <silent><expr> <C-f> compe#scroll({ 'delta': +4 })
inoremap <silent><expr> <C-d> compe#scroll({ 'delta': -4 })
autocmd BufReadPost * exec "normal g'\""
'';
packages.myVimPackage = with pkgs.vimPlugins; {
# youtube.com/watch?v=P9jB7mz2Ax4
start = [
telescope-nvim
nvim-treesitter
nvim-lspconfig
lsp_signature-nvim
nvim-compe
nvim-tree-lua
gruvbox
lualine-nvim
vim-commentary
];
opt = [ ];
};
};
};
in
mkShell {
packages = [
neovim
tree-sitter
nodejs
python3
pyright
python3Packages.pylint
python3Packages.pytest
];
}