Compare commits

...

19 Commits

Author SHA1 Message Date
d68a536a91
Add .luarc.json 2024-03-10 22:35:57 +01:00
30418cdd3d
Symlink hare lsp config 2024-03-10 22:35:42 +01:00
d1887e71da
Update packer lockfile 2024-03-10 22:34:39 +01:00
06db10650f
Fmt 2024-03-10 22:34:22 +01:00
307aa67a9c
Add elixirls lspconfig 2024-03-10 22:34:02 +01:00
43baab0aaf
Setup rnix lspconfig 2024-03-10 22:33:36 +01:00
545f7dcfda
Add RFC browser 2024-03-10 22:32:22 +01:00
ac34827f32
Add bamboo theme 2024-03-10 22:32:03 +01:00
a59555acba
Update tree-sitter-hare 2023-04-16 11:49:57 -03:00
0c4728250e
Update plugins 2023-04-16 11:49:17 -03:00
f3c38e4954
Update coq 2023-04-16 11:49:04 -03:00
23bef4c174
Stash project.nvim 2023-04-16 11:48:41 -03:00
13249071bf
Stash some plugin for go 2023-04-16 11:48:19 -03:00
525b1cc9d7
Add black for python 2023-04-16 11:47:53 -03:00
68bc243b11
Add structural search and replace 2023-04-16 11:47:05 -03:00
87225d7257
Add nvim_cmp 2023-04-16 11:46:29 -03:00
b342c1154a
Update lspconfig 2023-04-16 11:45:06 -03:00
4dd9b137eb
Add liquidsoap plugin 2023-04-16 11:44:38 -03:00
0d646f0d7d
Deactivate deno as typescript LS 2023-04-16 11:43:48 -03:00
13 changed files with 272 additions and 40 deletions

41
.luarc.json Normal file
View File

@ -0,0 +1,41 @@
{
"$schema": "https://raw.githubusercontent.com/sumneko/vscode-lua/master/setting/schema.json",
"Lua.workspace.library": [
"/home/leo/.config/nvim",
"/etc/xdg/nvim",
"/home/leo/.local/share/nvim/site",
"/home/leo/.local/share/nvim/site/pack/packer/start/auto-pairs",
"/home/leo/.local/share/nvim/site/pack/packer/start/black",
"/home/leo/.local/share/nvim/site/pack/packer/start/cder.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/coc.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/coq.artifacts",
"/home/leo/.local/share/nvim/site/pack/packer/start/coq.thirdparty",
"/home/leo/.local/share/nvim/site/pack/packer/start/coq_nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/dressing.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/lsp_lines.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/lualine.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/melange",
"/home/leo/.local/share/nvim/site/pack/packer/start/nginx.vim",
"/home/leo/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
"/home/leo/.local/share/nvim/site/pack/packer/start/nvim-mapper",
"/home/leo/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
"/home/leo/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor",
"/home/leo/.local/share/nvim/site/pack/packer/start/nvim-treesitter-textobjects",
"/home/leo/.local/share/nvim/site/pack/packer/start/nvim-ts-autotag",
"/home/leo/.local/share/nvim/site/pack/packer/start/packer.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/plenary.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/popup.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/telescope.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/undotree",
"/home/leo/.local/share/nvim/site/pack/packer/start/vgit.nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/vim-liquidsoap",
"/home/leo/.local/share/nvim/site/pack/packer/start/vim-matchup",
"/home/leo/.local/share/nvim/site/pack/packer/start/vim-maximizer",
"/home/leo/.local/share/nvim/site/pack/packer/start/zig.vim",
"/usr/share/nvim/runtime",
"/usr/lib/nvim",
"/home/leo/.local/share/nvim/site/pack/packer/start/vim-matchup/after",
"/usr/share/vim/vimfiles",
"${3rd}/luassert/library"
]
}

@ -1 +1 @@
Subproject commit bc26a6a949f2e0d98b7bfc437d459b250900a165 Subproject commit 2495958aaf3f93581c87ec020164255e80655331

View File

@ -1,3 +1,4 @@
vim.filetype.add({ vim.filetype.add({
extension = { ha = "hare" }, extension = { ha = "hare" },
extension = { liq = "liquidsoap" }
}) })

View File

@ -93,6 +93,10 @@ require('config.treesitter')
require('config.lspconfig') require('config.lspconfig')
-- project.nvim
require('config.project_nvim')
-- Custom -- Custom
Custom = require('config.custom') Custom = require('config.custom')
@ -205,3 +209,9 @@ require('config.vgit')
-- coc -- coc
require('config.coc') require('config.coc')
-- black
require('config.black')
-- structural search and replace
vim.keymap.set({ "n", "x" }, "<leader>sr", function() require("ssr").open() end)

6
lua/config/black.lua Normal file
View File

@ -0,0 +1,6 @@
vim.cmd([[
let g:black#settings = {
\ 'fast': 1,
\ 'line_length': 100
\}
]])

View File

@ -6,18 +6,33 @@ local configs = require('lspconfig.configs')
if not configs.harepls then if not configs.harepls then
configs.harepls = { configs.harepls = {
default_config = { default_config = {
cmd = { '/home/leo/code/hare/harepls/harepls' }; cmd = { '/home/leo/code/hare/harepls/harepls' },
filetypes = { 'hare' }; filetypes = { 'hare' },
root_dir = function(fname) root_dir = function(fname)
return nvim_lsp.util.find_git_ancestor(fname) return nvim_lsp.util.find_git_ancestor(fname)
end; end,
settings = {}; settings = {},
}; },
} }
end end
-- nvim_lsp.harepls.setup {} -- nvim_lsp.harepls.setup {}
require 'lspconfig'.rnix.setup {}
-- elixirls
if not configs.elixirls then
configs.elixirls = {
default_config = {
cmd = { '/usr/bin/elixir-ls' },
filetypes = { 'elixir' },
root_dir = function(fname)
return nvim_lsp.util.root_pattern("mix.exs", ".git")(fname) or vim.loop.os_homedir()
end,
}
}
end
-- keybindings -- keybindings
local on_attach = function(client, bufrn) local on_attach = function(client, bufrn)
@ -57,9 +72,11 @@ local on_attach = function(client, bufrn)
buf_set_keymap('n', ']d', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>', opts, "LSP", "goto_next", "Go to next") buf_set_keymap('n', ']d', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>', opts, "LSP", "goto_next", "Go to next")
buf_set_keymap('n', '<space>q', '<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>', opts, "LSP", "set_loclist", buf_set_keymap('n', '<space>q', '<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>', opts, "LSP", "set_loclist",
"Set loclist") "Set loclist")
buf_set_keymap('n', '<space>f', '<cmd>lua vim.lsp.buf.formatting()<CR>', opts, "LSP", "formatting", "Format") buf_set_keymap('n', '<space>f', '<cmd>lua vim.lsp.buf.format()<CR>', opts, "LSP", "formatting", "Format")
end end
-- Launch language servers -- Launch language servers
local servers = { local servers = {
'harepls', 'harepls',
@ -70,7 +87,7 @@ local servers = {
'tsserver', 'tsserver',
'elixirls', 'elixirls',
'dartls', 'dartls',
'denols', -- 'denols',
'clangd', 'clangd',
'zls', 'zls',
} }
@ -102,7 +119,7 @@ local runtime_path = vim.split(package.path, ';')
table.insert(runtime_path, "lua/?.lua") table.insert(runtime_path, "lua/?.lua")
table.insert(runtime_path, "lua/?/init.lua") table.insert(runtime_path, "lua/?/init.lua")
require 'lspconfig'.sumneko_lua.setup { require 'lspconfig'.lua_ls.setup {
settings = { settings = {
Lua = { Lua = {
runtime = { runtime = {
@ -143,4 +160,6 @@ vim.keymap.set(
-- Format on save -- Format on save
vim.cmd [[autocmd BufWritePre <buffer> lua vim.lsp.buf.formatting_sync()]] vim.cmd [[autocmd BufWritePre <buffer> lua vim.lsp.buf.format()]]
return servers

32
lua/config/nvim_cmp.lua Normal file
View File

@ -0,0 +1,32 @@
local cmp = require('cmp')
cmp.setup({
snippet = function(args)
vim.fn["vsnip#anonymous"](args.body)
end,
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
mapping = cmp.mapping.preset.insert({
['<C-Down>'] = cmp.mapping.scroll_docs(-4),
['<C-Up>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm({ select = true }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'vsnip' },
}, {
{ name = 'buffer' },
})
})
local servers = require('lspconfig')
local capabilities = require('cmp_nvim_lsp').default_capabilities()
for _, server in ipairs(servers) do
require('lspconfig')[server].setup {
capabilities = capabilities
}
end

View File

@ -0,0 +1 @@
require("project_nvim").setup {}

View File

@ -39,5 +39,4 @@ parser_config.hare = {
filetype = "ha", -- if filetype does not match the parser name filetype = "ha", -- if filetype does not match the parser name
} }
local ft_to_parser = require "nvim-treesitter.parsers".filetype_to_parsername vim.treesitter.language.register('hare', 'hare')
ft_to_parser.hare = "hare"

View File

@ -48,6 +48,7 @@ local function init()
-- use 'vim-airline/vim-airline-themes' -- use 'vim-airline/vim-airline-themes'
-- use 'projekt0n/github-nvim-theme' -- use 'projekt0n/github-nvim-theme'
-- use 'folke/tokyonight.nvim' -- use 'folke/tokyonight.nvim'
-- use 'ribru17/bamboo.nvim'
use 'savq/melange' use 'savq/melange'
use { use {
'nvim-lualine/lualine.nvim', 'nvim-lualine/lualine.nvim',
@ -75,6 +76,30 @@ local function init()
use { 'ms-jpq/coq_nvim', branch = 'coq' } use { 'ms-jpq/coq_nvim', branch = 'coq' }
use { 'ms-jpq/coq.artifacts', branch = 'artifacts' } use { 'ms-jpq/coq.artifacts', branch = 'artifacts' }
use { 'ms-jpq/coq.thirdparty', branch = '3p' } use { 'ms-jpq/coq.thirdparty', branch = '3p' }
-- -- nvim-cmp
use 'hrsh7th/cmp-nvim-lsp'
use 'hrsh7th/nvim-cmp'
use 'hrsh7th/cmp-vsnip'
use 'hrsh7th/vim-vsnip'
-- structural search and replace
use {
"cshuaimin/ssr.nvim",
module = "ssr",
-- Calling setup is optional.
config = function()
require("ssr").setup {
min_width = 50,
min_height = 5,
keymaps = {
close = "q",
next_match = "n",
prev_match = "N",
replace_all = "<leader><cr>",
},
}
end
}
-- Split maximizer -- Split maximizer
use 'szw/vim-maximizer' use 'szw/vim-maximizer'
@ -90,6 +115,7 @@ local function init()
-- Black, python formatter -- Black, python formatter
use 'psf/black' use 'psf/black'
-- use 'averms/black-nvim'
-- Autotag completer -- Autotag completer
use 'windwp/nvim-ts-autotag' use 'windwp/nvim-ts-autotag'
@ -107,6 +133,21 @@ local function init()
'nvim-lua/plenary.nvim' 'nvim-lua/plenary.nvim'
} }
} }
-- liquidsoap syntax Highlight
use 'mcfiredrill/vim-liquidsoap'
-- go.nvim
-- use 'ray-x/go.nvim'
-- use 'ray-x/guihua.lua'
use {
"ahmedkhalf/project.nvim",
config = function()
end
}
-- RFC browser
use 'mhinz/vim-rfc'
end end
local plugins = setmetatable({}, { local plugins = setmetatable({}, {

View File

@ -89,6 +89,16 @@ _G.packer_plugins = {
path = "/home/leo/.local/share/nvim/site/pack/packer/start/cder.nvim", path = "/home/leo/.local/share/nvim/site/pack/packer/start/cder.nvim",
url = "https://github.com/zane-/cder.nvim" url = "https://github.com/zane-/cder.nvim"
}, },
["cmp-nvim-lsp"] = {
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
},
["cmp-vsnip"] = {
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/cmp-vsnip",
url = "https://github.com/hrsh7th/cmp-vsnip"
},
["coc.nvim"] = { ["coc.nvim"] = {
loaded = true, loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/coc.nvim", path = "/home/leo/.local/share/nvim/site/pack/packer/start/coc.nvim",
@ -99,6 +109,11 @@ _G.packer_plugins = {
path = "/home/leo/.local/share/nvim/site/pack/packer/start/coq.artifacts", path = "/home/leo/.local/share/nvim/site/pack/packer/start/coq.artifacts",
url = "https://github.com/ms-jpq/coq.artifacts" url = "https://github.com/ms-jpq/coq.artifacts"
}, },
["coq.thirdparty"] = {
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/coq.thirdparty",
url = "https://github.com/ms-jpq/coq.thirdparty"
},
coq_nvim = { coq_nvim = {
loaded = true, loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/coq_nvim", path = "/home/leo/.local/share/nvim/site/pack/packer/start/coq_nvim",
@ -129,6 +144,11 @@ _G.packer_plugins = {
path = "/home/leo/.local/share/nvim/site/pack/packer/start/nginx.vim", path = "/home/leo/.local/share/nvim/site/pack/packer/start/nginx.vim",
url = "https://github.com/chr4/nginx.vim" url = "https://github.com/chr4/nginx.vim"
}, },
["nvim-cmp"] = {
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/nvim-cmp",
url = "https://github.com/hrsh7th/nvim-cmp"
},
["nvim-lspconfig"] = { ["nvim-lspconfig"] = {
loaded = true, loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/nvim-lspconfig", path = "/home/leo/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
@ -181,6 +201,20 @@ _G.packer_plugins = {
path = "/home/leo/.local/share/nvim/site/pack/packer/start/popup.nvim", path = "/home/leo/.local/share/nvim/site/pack/packer/start/popup.nvim",
url = "https://github.com/nvim-lua/popup.nvim" url = "https://github.com/nvim-lua/popup.nvim"
}, },
["project.nvim"] = {
config = { "\27LJ\2\n\v\0\0\1\0\0\0\1K\0\1\0\0" },
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/project.nvim",
url = "https://github.com/ahmedkhalf/project.nvim"
},
["ssr.nvim"] = {
config = { "\27LJ\2\nŸ\1\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0005\3\4\0=\3\5\2B\0\2\1K\0\1\0\fkeymaps\1\0\4\16replace_all\17<leader><cr>\15prev_match\6N\15next_match\6n\nclose\6q\1\0\2\14min_width\0032\15min_height\3\5\nsetup\bssr\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/leo/.local/share/nvim/site/pack/packer/opt/ssr.nvim",
url = "https://github.com/cshuaimin/ssr.nvim"
},
["telescope.nvim"] = { ["telescope.nvim"] = {
config = { "\27LJ\2\nh\0\0\3\0\5\0\r6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\0016\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\4\0B\0\2\1K\0\1\0\tcder\vmapper\19load_extension\14telescope\frequire\0" }, config = { "\27LJ\2\nh\0\0\3\0\5\0\r6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\0016\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\4\0B\0\2\1K\0\1\0\tcder\vmapper\19load_extension\14telescope\frequire\0" },
loaded = true, loaded = true,
@ -197,6 +231,11 @@ _G.packer_plugins = {
path = "/home/leo/.local/share/nvim/site/pack/packer/start/vgit.nvim", path = "/home/leo/.local/share/nvim/site/pack/packer/start/vgit.nvim",
url = "https://github.com/tanvirtin/vgit.nvim" url = "https://github.com/tanvirtin/vgit.nvim"
}, },
["vim-liquidsoap"] = {
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/vim-liquidsoap",
url = "https://github.com/mcfiredrill/vim-liquidsoap"
},
["vim-matchup"] = { ["vim-matchup"] = {
loaded = true, loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/vim-matchup", path = "/home/leo/.local/share/nvim/site/pack/packer/start/vim-matchup",
@ -207,6 +246,16 @@ _G.packer_plugins = {
path = "/home/leo/.local/share/nvim/site/pack/packer/start/vim-maximizer", path = "/home/leo/.local/share/nvim/site/pack/packer/start/vim-maximizer",
url = "https://github.com/szw/vim-maximizer" url = "https://github.com/szw/vim-maximizer"
}, },
["vim-rfc"] = {
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/vim-rfc",
url = "https://github.com/mhinz/vim-rfc"
},
["vim-vsnip"] = {
loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/vim-vsnip",
url = "https://github.com/hrsh7th/vim-vsnip"
},
["zig.vim"] = { ["zig.vim"] = {
loaded = true, loaded = true,
path = "/home/leo/.local/share/nvim/site/pack/packer/start/zig.vim", path = "/home/leo/.local/share/nvim/site/pack/packer/start/zig.vim",
@ -215,14 +264,46 @@ _G.packer_plugins = {
} }
time([[Defining packer_plugins]], false) time([[Defining packer_plugins]], false)
-- Config for: telescope.nvim local module_lazy_loads = {
time([[Config for telescope.nvim]], true) ["^ssr"] = "ssr.nvim"
try_loadstring("\27LJ\2\nh\0\0\3\0\5\0\r6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\0016\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\4\0B\0\2\1K\0\1\0\tcder\vmapper\19load_extension\14telescope\frequire\0", "config", "telescope.nvim") }
time([[Config for telescope.nvim]], false) local lazy_load_called = {['packer.load'] = true}
local function lazy_load_module(module_name)
local to_load = {}
if lazy_load_called[module_name] then return nil end
lazy_load_called[module_name] = true
for module_pat, plugin_name in pairs(module_lazy_loads) do
if not _G.packer_plugins[plugin_name].loaded and string.match(module_name, module_pat) then
to_load[#to_load + 1] = plugin_name
end
end
if #to_load > 0 then
require('packer.load')(to_load, {module = module_name}, _G.packer_plugins)
local loaded_mod = package.loaded[module_name]
if loaded_mod then
return function(modname) return loaded_mod end
end
end
end
if not vim.g.packer_custom_loader_enabled then
table.insert(package.loaders, 1, lazy_load_module)
vim.g.packer_custom_loader_enabled = true
end
-- Config for: project.nvim
time([[Config for project.nvim]], true)
try_loadstring("\27LJ\2\n\v\0\0\1\0\0\0\1K\0\1\0\0", "config", "project.nvim")
time([[Config for project.nvim]], false)
-- Config for: nvim-mapper -- Config for: nvim-mapper
time([[Config for nvim-mapper]], true) time([[Config for nvim-mapper]], true)
try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\16nvim-mapper\frequire\0", "config", "nvim-mapper") try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\16nvim-mapper\frequire\0", "config", "nvim-mapper")
time([[Config for nvim-mapper]], false) time([[Config for nvim-mapper]], false)
-- Config for: telescope.nvim
time([[Config for telescope.nvim]], true)
try_loadstring("\27LJ\2\nh\0\0\3\0\5\0\r6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\0016\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\4\0B\0\2\1K\0\1\0\tcder\vmapper\19load_extension\14telescope\frequire\0", "config", "telescope.nvim")
time([[Config for telescope.nvim]], false)
_G._packer.inside_compile = false _G._packer.inside_compile = false
if _G._packer.needs_bufread == true then if _G._packer.needs_bufread == true then

1
queries/hare Symbolic link
View File

@ -0,0 +1 @@
../deps/tree-sitter-hare/queries