Compare commits
3 Commits
688ff9ed45
...
c3f4bc16de
Author | SHA1 | Date |
---|---|---|
|
c3f4bc16de | |
|
f9146f59fd | |
|
bd31c47355 |
11
python.nix
11
python.nix
|
@ -2,5 +2,16 @@
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
uv
|
uv
|
||||||
|
(python3.withPackages (ps: with ps; [
|
||||||
|
python-lsp-server
|
||||||
|
python-lsp-jsonrpc
|
||||||
|
python-lsp-black
|
||||||
|
python-lsp-ruff
|
||||||
|
pyls-isort
|
||||||
|
pyls-flake8
|
||||||
|
flake8
|
||||||
|
isort
|
||||||
|
black
|
||||||
|
]))
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,51 +36,37 @@ vim.keymap.set('n', '<leader>fb', tbuiltin.buffers, {})
|
||||||
vim.keymap.set('n', '<leader>fh', tbuiltin.help_tags, {})
|
vim.keymap.set('n', '<leader>fh', tbuiltin.help_tags, {})
|
||||||
vim.keymap.set('n', '<leader>fs', tbuiltin.spell_suggest, {})
|
vim.keymap.set('n', '<leader>fs', tbuiltin.spell_suggest, {})
|
||||||
|
|
||||||
-- Mason (tool manager) setup
|
|
||||||
-- we want rust-analyzer and codelldb
|
|
||||||
require("mason").setup({
|
|
||||||
ui = {
|
|
||||||
icons = {
|
|
||||||
package_installed = "✔️",
|
|
||||||
package_pending = "🔄",
|
|
||||||
package_uninstalled = "🌐"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
require("mason-lspconfig").setup()
|
|
||||||
|
|
||||||
-- General LSP settings
|
-- General LSP settings
|
||||||
-- from https://rsdlt.github.io/posts/rust-nvim-ide-guide-walkthrough-development-debug/
|
vim.lsp.enable('pylsp')
|
||||||
local sign = function(opts)
|
|
||||||
vim.fn.sign_define(opts.name, {
|
|
||||||
texthl = opts.name,
|
|
||||||
text = opts.text,
|
|
||||||
numhl = ''
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
sign({name = 'DiagnosticSignError', text = '🛑'})
|
|
||||||
sign({name = 'DiagnosticSignWarn', text = '⚠️'})
|
|
||||||
sign({name = 'DiagnosticSignHint', text = '💭'})
|
|
||||||
sign({name = 'DiagnosticSignInfo', text = '🗒️'})
|
|
||||||
|
|
||||||
|
-- LSP diagnostic signs
|
||||||
vim.diagnostic.config({
|
vim.diagnostic.config({
|
||||||
virtual_text = false,
|
virtual_text = true,
|
||||||
signs = true,
|
signs = true,
|
||||||
update_in_insert = true,
|
update_in_insert = true,
|
||||||
underline = true,
|
underline = true,
|
||||||
severity_sort = false,
|
severity_sort = true,
|
||||||
float = {
|
signs = {
|
||||||
border = 'rounded',
|
text = {
|
||||||
source = 'always',
|
[vim.diagnostic.severity.ERROR] = "E",
|
||||||
header = '',
|
[vim.diagnostic.severity.WARN] = "W",
|
||||||
prefix = '',
|
[vim.diagnostic.severity.INFO] = "I",
|
||||||
|
[vim.diagnostic.severity.HINT] = "?"
|
||||||
},
|
},
|
||||||
|
numhl = {
|
||||||
|
[vim.diagnostic.severity.ERROR] = "ErrorMsg",
|
||||||
|
[vim.diagnostic.severity.WARN] = "WarningMsg",
|
||||||
|
[vim.diagnostic.severity.INFO] = "DiagnosticInfo",
|
||||||
|
[vim.diagnostic.severity.HINT] = "DiagnosticHint"
|
||||||
|
}
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
vim.keymap.set('n', '<leader><leader>d', '<cmd>lua vim.diagnostic.open_float()<CR>', { noremap = true, silent = true })
|
||||||
|
|
||||||
vim.cmd([[
|
vim.cmd([[
|
||||||
set signcolumn=yes
|
set signcolumn=yes
|
||||||
autocmd CursorHold * lua vim.diagnostic.open_float(nil, { focusable = false })
|
autocmd CursorHold * lua vim.diagnostic.open_float(nil, { focusable = false })
|
||||||
]])
|
]])
|
||||||
|
|
||||||
-- Rust tools for Rust-specific LSP
|
-- Rust tools for Rust-specific LSP
|
||||||
|
|
5
vim.nix
5
vim.nix
|
@ -17,9 +17,8 @@
|
||||||
nvim-treesitter-parsers.toml
|
nvim-treesitter-parsers.toml
|
||||||
nvim-treesitter-parsers.python
|
nvim-treesitter-parsers.python
|
||||||
jedi-vim
|
jedi-vim
|
||||||
mason-nvim
|
nvim-lspconfig
|
||||||
mason-tool-installer-nvim
|
nvim-lsputils
|
||||||
mason-lspconfig-nvim
|
|
||||||
fzf-vim
|
fzf-vim
|
||||||
sleuth
|
sleuth
|
||||||
whitespace-nvim # ,t to trim whitespace
|
whitespace-nvim # ,t to trim whitespace
|
||||||
|
|
Loading…
Reference in New Issue