Compare commits

...

5 commits

Author SHA1 Message Date
67b50ac321 remove sql lsp 2025-06-26 01:42:11 +03:00
14511ca5b1 add neoclip for neovim clipboard history 2025-06-26 01:16:46 +03:00
d5d97effcd change neovim symbol usage ui 2025-06-26 01:10:07 +03:00
7dfeaeead3 delete jetbrains 2025-06-26 00:35:26 +03:00
d7ac4a8091 add symbol usage neovim plugin 2025-06-26 00:29:25 +03:00
7 changed files with 100 additions and 25 deletions

View file

@ -17,7 +17,6 @@
# будет пытаться установить расширения в каталог nix store, куда нельзя что либо ставить без рута. # будет пытаться установить расширения в каталог nix store, куда нельзя что либо ставить без рута.
packages = with pkgs; [ packages = with pkgs; [
vscode # Надо в home.packages писать, чтоб расширения ставились без рута vscode # Надо в home.packages писать, чтоб расширения ставились без рута
jetbrains-toolbox # https://nixos.wiki/wiki/Jetbrains_Tools
]; ];
sessionVariables = { sessionVariables = {

View file

@ -461,11 +461,6 @@
neovim neovim
# Закинул в home.nix
# vscode
# jetbrains-toolbox
# zed-editor
########### ###########
## Icons ## ## Icons ##
########### ###########

View file

@ -94,6 +94,12 @@ require('lazy').setup({
-- Plugins for color highlight -- Plugins for color highlight
require 'custom.plugins.colorizer', require 'custom.plugins.colorizer',
-- Symbol usage plugin
require 'custom.plugins.symbol_usage',
-- Adding history for nvim clipboard
require 'custom.plugins.clip_history',
-- Autoformat markdown tables -- Autoformat markdown tables
{ {
'Kicamon/markdown-table-mode.nvim', 'Kicamon/markdown-table-mode.nvim',

View file

@ -37,6 +37,7 @@
"nvim-dap-ui": { "branch": "master", "commit": "bc81f8d3440aede116f821114547a476b082b319" }, "nvim-dap-ui": { "branch": "master", "commit": "bc81f8d3440aede116f821114547a476b082b319" },
"nvim-lint": { "branch": "master", "commit": "6e9dd545a1af204c4022a8fcd99727ea41ffdcc8" }, "nvim-lint": { "branch": "master", "commit": "6e9dd545a1af204c4022a8fcd99727ea41ffdcc8" },
"nvim-lspconfig": { "branch": "master", "commit": "8a1529e46eef5efc86c34c8d9bdd313abc2ecba0" }, "nvim-lspconfig": { "branch": "master", "commit": "8a1529e46eef5efc86c34c8d9bdd313abc2ecba0" },
"nvim-neoclip.lua": { "branch": "main", "commit": "831a97c7697736411a05ff8b91e8798ea4c2d6fb" },
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-treesitter": { "branch": "master", "commit": "2586ea65faf45dcf1caf8d34510d50bb545c215a" }, "nvim-treesitter": { "branch": "master", "commit": "2586ea65faf45dcf1caf8d34510d50bb545c215a" },
"nvim-treesitter-context": { "branch": "master", "commit": "129fcc94fa986692926366e940a46f00d2a4abbe" }, "nvim-treesitter-context": { "branch": "master", "commit": "129fcc94fa986692926366e940a46f00d2a4abbe" },
@ -45,6 +46,7 @@
"rose-pine": { "branch": "main", "commit": "7d1b5c7dcd274921f0f58e90a8bf935f6a95fbf3" }, "rose-pine": { "branch": "main", "commit": "7d1b5c7dcd274921f0f58e90a8bf935f6a95fbf3" },
"rustaceanvim": { "branch": "master", "commit": "2b0f0b7e03751cf8ed123322f9b02d8f73fa9df7" }, "rustaceanvim": { "branch": "master", "commit": "2b0f0b7e03751cf8ed123322f9b02d8f73fa9df7" },
"sonokai": { "branch": "master", "commit": "9679341d4141ed81376f2bdf5e69b78dc348d212" }, "sonokai": { "branch": "master", "commit": "9679341d4141ed81376f2bdf5e69b78dc348d212" },
"symbol-usage.nvim": { "branch": "main", "commit": "e07c07dfe7504295a369281e95a24e1afa14b243" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" },
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },

View file

@ -0,0 +1,14 @@
-- Adding history for nvim clipboard
return {
{
'AckslD/nvim-neoclip.lua',
dependencies = {
{ 'nvim-telescope/telescope.nvim' },
},
config = function()
require('neoclip').setup()
vim.keymap.set('n', '<leader>sc', ':Telescope neoclip<CR>', { desc = '[S]earch [C]lip history' })
end,
},
}

View file

@ -0,0 +1,78 @@
-- Symbol usage plugin
local SymbolKind = vim.lsp.protocol.SymbolKind
local function h(name)
return vim.api.nvim_get_hl(0, { name = name })
end
-- hl-groups can have any name
vim.api.nvim_set_hl(0, 'SymbolUsageRounding', { fg = h('CursorLine').bg, italic = true })
vim.api.nvim_set_hl(0, 'SymbolUsageContent', { bg = h('CursorLine').bg, fg = h('Comment').fg, italic = true })
vim.api.nvim_set_hl(0, 'SymbolUsageRef', { fg = h('Function').fg, bg = h('CursorLine').bg, italic = true })
vim.api.nvim_set_hl(0, 'SymbolUsageDef', { fg = h('Type').fg, bg = h('CursorLine').bg, italic = true })
vim.api.nvim_set_hl(0, 'SymbolUsageImpl', { fg = h('@keyword').fg, bg = h('CursorLine').bg, italic = true })
local function text_format(symbol)
local res = {}
local round_start = { '', 'SymbolUsageRounding' }
local round_end = { '', 'SymbolUsageRounding' }
-- Indicator that shows if there are any other symbols in the same line
local stacked_functions_content = symbol.stacked_count > 0 and ('+%s'):format(symbol.stacked_count) or ''
if symbol.references then
local usage = symbol.references <= 1 and 'usage' or 'usages'
local num = symbol.references == 0 and 'no' or symbol.references
table.insert(res, round_start)
table.insert(res, { '󰌹 ', 'SymbolUsageRef' })
table.insert(res, { ('%s %s'):format(num, usage), 'SymbolUsageContent' })
table.insert(res, round_end)
end
if symbol.definition then
if #res > 0 then
table.insert(res, { ' ', 'NonText' })
end
table.insert(res, round_start)
table.insert(res, { '󰳽 ', 'SymbolUsageDef' })
table.insert(res, { symbol.definition .. ' defs', 'SymbolUsageContent' })
table.insert(res, round_end)
end
if symbol.implementation then
if #res > 0 then
table.insert(res, { ' ', 'NonText' })
end
table.insert(res, round_start)
table.insert(res, { '󰡱 ', 'SymbolUsageImpl' })
table.insert(res, { symbol.implementation .. ' impls', 'SymbolUsageContent' })
table.insert(res, round_end)
end
if stacked_functions_content ~= '' then
if #res > 0 then
table.insert(res, { ' ', 'NonText' })
end
table.insert(res, round_start)
table.insert(res, { '', 'SymbolUsageImpl' })
table.insert(res, { stacked_functions_content, 'SymbolUsageContent' })
table.insert(res, round_end)
end
return res
end
return {
{
'Wansmer/symbol-usage.nvim',
event = 'LspAttach', -- need run before LspAttach if you use nvim 0.9. On 0.10 use 'LspAttach'
config = function()
require('symbol-usage').setup {
text_format = text_format,
kinds = { SymbolKind.Function, SymbolKind.Method, SymbolKind.Class, SymbolKind.Struct, SymbolKind.Variable, SymbolKind.Constant },
}
end,
},
}

View file

@ -208,25 +208,6 @@ return {
-- local util = require 'lspconfig.util' -- local util = require 'lspconfig.util'
local lspconfig = require 'lspconfig' local lspconfig = require 'lspconfig'
-- require('lspconfig.configs').postgres_lsp = {
-- default_config = {
-- name = 'postgres_lsp',
-- cmd = { 'postgres_lsp' },
-- filetypes = { 'sql' },
-- single_file_support = true,
-- root_dir = util.root_pattern 'root-file.txt',
-- },
-- }
-- SQL
-- lspconfig.postgres_lsp.setup { force_setup = true }
lspconfig.sqls.setup {
on_attach = function(client)
-- Выключить форматирование
client.server_capabilities.documentFormattingProvider = false
end,
}
-- Nix -- Nix
lspconfig.nixd.setup {} lspconfig.nixd.setup {}