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"); cmd("hi! Search cterm=NONE ctermbg=yellow");
require("compe").setup { require("compe").setup {
enabled = true; enabled = true;
autocomplete = true; autocomplete = true;
source = { source = {
path = true; path = true;
buffer = true; buffer = true;
calc = true; calc = true;
nvim_lsp = true; nvim_lsp = true;
nvim_lua = true; nvim_lua = true;
vsnip = true; vsnip = true;
ultisnips = true; ultisnips = true;
luasnip = true; luasnip = true;
}; };
} }
local telescope = require('telescope') local telescope = require('telescope')
@ -36,37 +36,47 @@ telescope.load_extension('manix')
telescope.load_extension('fzf') telescope.load_extension('fzf')
require("nvim-tree").setup({ require("nvim-tree").setup({
renderer = { renderer = {
icons = { icons = {
show = false, --show = false,
webdev_colors = false, webdev_colors = false,
show = { show = {
file = false, file = false,
folder = false, folder = false,
folder_arrow = false, folder_arrow = false,
git = true, git = true,
}, },
}, },
}, },
}) })
cmd[[highlight NvimTreeOpenedFolderName guifg=default]] require 'mind'.setup()
cmd[[highlight NvimTreeFolderName guifg=default]]
cmd [[highlight NvimTreeOpenedFolderName guifg=default]]
cmd [[highlight NvimTreeFolderName guifg=default]]
local lspc = require("lspconfig") local lspc = require("lspconfig")
lspc.gopls.setup {}; lspc.gopls.setup {};
lspc.nil_ls.setup {}; lspc.nil_ls.setup {};
lspc.sumneko_lua.setup {};
o.hlsearch = true; o.hlsearch = true;
map('n', '<C-n>', ':NvimTreeToggle<CR>', {noremap = true}) map('n', '<C-n>', ':NvimTreeToggle<CR>', { noremap = true })
map('n', '<C-p>', ':Files<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>r', ':NvimTreeRefresh<CR>', {noremap = true}) map('n', '<leader>s', ':%s/\\s\\+$//e', { 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>1', ':GitGutterToggle<CR>', { noremap = true })
map('n', '<leader>2', ':set list!<CR>', {noremap = true}) map('n', '<leader>2', ':set list!<CR>', { noremap = true })
map('n', '<leader>3', ':set nu!<CR>', {noremap = true}) map('n', '<leader>3', ':set nu!<CR>', { noremap = true })
map('n', '<leader>4', ':set paste!<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="; 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; [ baseVimPackages = with vimPlugins; [
fugitive fugitive
fzf-vim fzf-vim
@ -32,12 +45,14 @@ let
telescope-nvim telescope-nvim
vimagit vimagit
vim-gitgutter vim-gitgutter
vim-lua
vim-nix vim-nix
vim-ocaml vim-ocaml
zig-vim zig-vim
parchment parchment
vacme vacme
mind
]; ];
myVimPackages = if pkgs.system == "aarch64-linux" then myVimPackages = if pkgs.system == "aarch64-linux" then
baseVimPackages baseVimPackages
@ -45,12 +60,14 @@ let
baseVimPackages ++ [ vimPlugins.vim-go vimPlugins.telescope-manix ]; baseVimPackages ++ [ vimPlugins.vim-go vimPlugins.telescope-manix ];
in { in {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
fzf
go go
gopls gopls
gotools gotools
ripgrep luaformatter
fzf
manix manix
ripgrep
sumneko-lua-language-server
]; ];
programs.neovim = { programs.neovim = {
enable = true; enable = true;