Configured language server for Lua, C, Typescript, Python, Zig, Haskell,

Bash
This commit is contained in:
Jellyfishsh 2025-01-22 03:31:13 -08:00
parent aa9891dc92
commit 30737fb137
4 changed files with 104 additions and 2 deletions

View File

@ -1,10 +1,21 @@
{ {
"LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" },
"auto-pairs": { "branch": "master", "commit": "39f06b873a8449af8ff6a3eee716d3da14d63a76" }, "auto-pairs": { "branch": "master", "commit": "39f06b873a8449af8ff6a3eee716d3da14d63a76" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" },
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
"gitsigns.nvim": { "branch": "main", "commit": "2ff0c29f2a6b1247d96cc59535d53e5589fb50b6" }, "gitsigns.nvim": { "branch": "main", "commit": "2ff0c29f2a6b1247d96cc59535d53e5589fb50b6" },
"kanagawa.nvim": { "branch": "master", "commit": "988082eb00b845e4afbcaa4fd8e903da8a3ab3b9" }, "kanagawa.nvim": { "branch": "master", "commit": "988082eb00b845e4afbcaa4fd8e903da8a3ab3b9" },
"lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" }, "lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "e942edf5c85b6a2ab74059ea566cac5b3e1514a4" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
"neo-tree.nvim": { "branch": "v3.x", "commit": "e6645ecfcba3e064446a6def1c10d788c9873f51" }, "neo-tree.nvim": { "branch": "v3.x", "commit": "e6645ecfcba3e064446a6def1c10d788c9873f51" },
"nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" },
"nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" },
"nvim-lspconfig": { "branch": "master", "commit": "d1871c84b218931cc758dbbde1fec8e90c6d465c" },
"nvim-treesitter": { "branch": "master", "commit": "0c94de7e9792cf89c14a865ab819ad5c6e6a7f77" }, "nvim-treesitter": { "branch": "master", "commit": "0c94de7e9792cf89c14a865ab819ad5c6e6a7f77" },
"nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" }, "nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" },
"plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" }, "plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" },

View File

@ -0,0 +1,87 @@
return {
{
"williamboman/mason.nvim",
opts = {}
},
{
"williamboman/mason-lspconfig.nvim",
opts = {
ensure_installed = {"lua-ls", "clangd", "ts_ls", "pyright", "zls", "hls", "bashls"}
}
},
{
"neovim/nvim-lspconfig",
config = function()
require("lspconfig").lua_ls.setup({})
require("lspconfig").clangd.setup({})
require("lspconfig").ts_ls.setup({})
require("lspconfig").eslint.setup({})
require("lspconfig").pyright.setup({})
require("lspconfig").zls.setup({})
require("lspconfig").hls.setup({})
end
},
{
'hrsh7th/cmp-nvim-lsp',
'hrsh7th/cmp-buffer',
'hrsh7th/cmp-path',
'hrsh7th/cmp-cmdline',
'saadparwaiz1/cmp_luasnip',
},
{
'L3MON4D3/LuaSnip',
dependencies = {'rafamadriz/friendly-snippets'},
},
{
'hrsh7th/nvim-cmp',
config = function()
local cmp = require('cmp')
local cmp_select = {behavior = cmp.SelectBehavior.Select}
cmp.setup({
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body)
require('luasnip.loaders.from_vscode').lazy_load()
end,
},
window = {
},
mapping = cmp.mapping.preset.insert({
['<C-Space>'] = cmp.mapping.complete(),
['<C-n>'] = cmp.mapping.select_next_item(cmp_select),
['<C-p>'] = cmp.mapping.select_prev_item(cmp_select),
['<Tab>'] = cmp.mapping.confirm({ select = true }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'luasnip' },
}),
})
local capabilities = require('cmp_nvim_lsp').default_capabilities()
require("lspconfig").lua_ls.setup({
capabilities = capabilities
})
require("lspconfig").clangd.setup({
capabilities = capabilities
})
require("lspconfig").ts_ls.setup({
capabilities = capabilities
})
require("lspconfig").eslint.setup({
capabilities = capabilities
})
require("lspconfig").pyright.setup({
capabilities = capabilities
})
require("lspconfig").zls.setup({
capabilities = capabilities
})
require("lspconfig").hls.setup({
capabilities = capabilities
})
end
}
}

2
.zshrc
View File

@ -3,3 +3,5 @@
export XDG_RUNTIME_DIR=/run/user/$(id -u) export XDG_RUNTIME_DIR=/run/user/$(id -u)
export PATH="$PATH:$HOME/.local/bin" export PATH="$PATH:$HOME/.local/bin"
eval "$(starship init zsh)" eval "$(starship init zsh)"
[ -f "/home/cfigueroa/.ghcup/env" ] && . "/home/cfigueroa/.ghcup/env" # ghcup-env

View File

@ -18,8 +18,10 @@ mkdir --parents ~/projects/javascript
chsh -s $(which zsh) chsh -s $(which zsh)
sudo xbps-install -y font-firacode river wezterm firefox dbus elogind pipewire wireplumber ffmpeg eww rofi sudo xbps-install -y font-firacode river wezterm firefox dbus elogind pipewire wireplumber ffmpeg eww rofi
sudo xbps-install -y stc syncthing sudo xbps-install -y rustup openjdk21 apache-maven gradle nodejs unzip
sudo xbps-install -y rustup ghc openjdk21 apache-maven gradle nodejs sudo xbps-install -y binutils curl gcc gmp-devel glibc-devel libffi-devel make ncurses-devel ncurses-libtinfo-libs perl pkg-config tar xz
sudo xbps-install -y lua-language-server
sudo npm i -g typescript typescript-language-server
# Setup river # Setup river
sudo ln -s /etc/sv/dbus /var/service sudo ln -s /etc/sv/dbus /var/service