neovim: install mind, setup some lsp for lua and more telescope bindings

This commit is contained in:
Aaron Bieber 2023-01-16 06:43:06 -07:00
parent f795c8123c
commit 1b805cdde4
No known key found for this signature in database
2 changed files with 64 additions and 37 deletions

View File

@ -17,18 +17,18 @@ cmd("hi! LineNr NONE");
cmd("hi! Search cterm=NONE ctermbg=yellow");
require("compe").setup {
enabled = true;
autocomplete = true;
source = {
path = true;
buffer = true;
calc = true;
nvim_lsp = true;
nvim_lua = true;
vsnip = true;
ultisnips = true;
luasnip = true;
};
enabled = true;
autocomplete = true;
source = {
path = true;
buffer = true;
calc = true;
nvim_lsp = true;
nvim_lua = true;
vsnip = true;
ultisnips = true;
luasnip = true;
};
}
local telescope = require('telescope')
@ -36,37 +36,47 @@ telescope.load_extension('manix')
telescope.load_extension('fzf')
require("nvim-tree").setup({
renderer = {
icons = {
show = false,
webdev_colors = false,
show = {
file = false,
folder = false,
folder_arrow = false,
git = true,
},
},
},
renderer = {
icons = {
--show = false,
webdev_colors = false,
show = {
file = false,
folder = false,
folder_arrow = false,
git = true,
},
},
},
})
cmd[[highlight NvimTreeOpenedFolderName guifg=default]]
cmd[[highlight NvimTreeFolderName guifg=default]]
require 'mind'.setup()
cmd [[highlight NvimTreeOpenedFolderName guifg=default]]
cmd [[highlight NvimTreeFolderName guifg=default]]
local lspc = require("lspconfig")
lspc.gopls.setup {};
lspc.nil_ls.setup {};
lspc.sumneko_lua.setup {};
o.hlsearch = true;
map('n', '<C-n>', ':NvimTreeToggle<CR>', {noremap = true})
map('n', '<C-p>', ':Files<CR>', {noremap = true})
map('n', '<C-m>', ':Telescope manix<CR>', {noremap = true})
map('n', '<leader>r', ':NvimTreeRefresh<CR>', {noremap = true})
map('n', '<leader>s', ':%s/\\s\\+$//e', {noremap = true})
map('n', '<C-n>', ':NvimTreeToggle<CR>', { noremap = true })
map('n', '<C-p>', ':Files<CR>', { noremap = true })
map('n', '<leader>r', ':NvimTreeRefresh<CR>', { noremap = true })
map('n', '<leader>s', ':%s/\\s\\+$//e', { noremap = true })
map('n', '<leader>fm', ':Telescope manix<CR>', {})
map('n', '<leader>1', ':GitGutterToggle<CR>', {noremap = true})
map('n', '<leader>2', ':set list!<CR>', {noremap = true})
map('n', '<leader>3', ':set nu!<CR>', {noremap = true})
map('n', '<leader>4', ':set paste!<CR>', {noremap = true})
map('n', '<leader>1', ':GitGutterToggle<CR>', { noremap = true })
map('n', '<leader>2', ':set list!<CR>', { noremap = true })
map('n', '<leader>3', ':set nu!<CR>', { noremap = true })
map('n', '<leader>4', ':set paste!<CR>', { noremap = true })
vim.keymap.set('n', '<space>f', function() vim.lsp.buf.format { async = true } end, bufopts)
local builtin = require('telescope.builtin')
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})

View File

@ -21,6 +21,19 @@ let
sha256 = "sha256-eea0Ntr3gCmF6iZ0adZaVswWH70K9IJZ4SAyVSdFp3E=";
};
};
mind = pkgs.vimUtils.buildVimPluginFrom2Nix rec {
pname = "mind.nvim";
version = "2.2.1";
src = pkgs.fetchFromGitHub {
owner = "phaazon";
repo = pname;
rev = "79e0ca131d5e37dfa65f3f0e725d99742e4ff783";
sha256 = "sha256-y64F9v7Ggzagmz2p2EYTdtKDuGyA19xYXqW92S0tRj0=";
};
nativeBuildBuildInputs = with vimPlugins; [
plenary-nvim
];
};
baseVimPackages = with vimPlugins; [
fugitive
fzf-vim
@ -32,12 +45,14 @@ let
telescope-nvim
vimagit
vim-gitgutter
vim-lua
vim-nix
vim-ocaml
zig-vim
parchment
vacme
mind
];
myVimPackages = if pkgs.system == "aarch64-linux" then
baseVimPackages
@ -45,12 +60,14 @@ let
baseVimPackages ++ [ vimPlugins.vim-go vimPlugins.telescope-manix ];
in {
environment.systemPackages = with pkgs; [
fzf
go
gopls
gotools
ripgrep
fzf
luaformatter
manix
ripgrep
sumneko-lua-language-server
];
programs.neovim = {
enable = true;