- random colorscheme (common-settings)
- заменить Enter на Tab в cmp-path - Теперь nvim tree стал более userfriendly: Enter открывает директорию как корневую, чтобы посмотреть просто ее содержимое Tab, так же Enter заменяет s(открытие файлов типа docx,pdf и тд. во внешнем приложении) так же удалены некоторые лишние на мой взгляд плагины: wichkey vimtex(возможно в будущем верну)
This commit is contained in:
parent
3ffda93c33
commit
6f9fcff8fa
4
init.lua
4
init.lua
@ -9,13 +9,11 @@ require("config.nvim-treesitter")
|
|||||||
require("config.lualine")
|
require("config.lualine")
|
||||||
require("config.nvim-cmp")
|
require("config.nvim-cmp")
|
||||||
require("config.nvim-lspconfig")
|
require("config.nvim-lspconfig")
|
||||||
require("config.vimtex")
|
|
||||||
require("config.render-markdown")
|
require("config.render-markdown")
|
||||||
require("config.which-key")
|
|
||||||
|
|
||||||
require("config.indent-blankline")
|
require("config.indent-blankline")
|
||||||
require("config.fzf")
|
require("config.fzf")
|
||||||
require("config.noice")
|
--require("config.noice")
|
||||||
require("config.mkdx")
|
require("config.mkdx")
|
||||||
|
|
||||||
require("config.mutton")
|
require("config.mutton")
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" },
|
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" },
|
||||||
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" },
|
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" },
|
||||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||||
"fzf-lua": { "branch": "main", "commit": "da9a0898541b34b95361e4223df17a7f680be070" },
|
"fzf-lua": { "branch": "main", "commit": "33e704a07d1f79e55e26becf60992971266719fa" },
|
||||||
"gruvbox": { "branch": "master", "commit": "f1ecde848f0cdba877acb0c740320568252cc482" },
|
"gruvbox": { "branch": "master", "commit": "f1ecde848f0cdba877acb0c740320568252cc482" },
|
||||||
"indent-blankline.nvim": { "branch": "master", "commit": "e10626f7fcd51ccd56d7ffc00883ba7e0aa28f78" },
|
"indent-blankline.nvim": { "branch": "master", "commit": "e10626f7fcd51ccd56d7ffc00883ba7e0aa28f78" },
|
||||||
"kanagawa.nvim": { "branch": "master", "commit": "cfd67b0e1eeaa04302b8c7eb072253d24bf22d84" },
|
"kanagawa.nvim": { "branch": "master", "commit": "cfd67b0e1eeaa04302b8c7eb072253d24bf22d84" },
|
||||||
@ -18,14 +18,12 @@
|
|||||||
"nvim-lspconfig": { "branch": "master", "commit": "fd26f8626c03b424f7140d454031d1dcb8d23513" },
|
"nvim-lspconfig": { "branch": "master", "commit": "fd26f8626c03b424f7140d454031d1dcb8d23513" },
|
||||||
"nvim-notify": { "branch": "master", "commit": "22f29093eae7785773ee9d543f8750348b1a195c" },
|
"nvim-notify": { "branch": "master", "commit": "22f29093eae7785773ee9d543f8750348b1a195c" },
|
||||||
"nvim-tree.lua": { "branch": "master", "commit": "c09ff35de503a41fa62465c6b4ae72d96e7a7ce4" },
|
"nvim-tree.lua": { "branch": "master", "commit": "c09ff35de503a41fa62465c6b4ae72d96e7a7ce4" },
|
||||||
"nvim-treesitter": { "branch": "master", "commit": "71ac531a6301b6d5f4dc4d7157ffd8bd8d6d769e" },
|
"nvim-treesitter": { "branch": "master", "commit": "ffd284c4706d91c0d94916995f584b22ce89afcb" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "ab4cfee554e501f497bce0856788d43cf2eb93d7" },
|
"nvim-web-devicons": { "branch": "master", "commit": "ab4cfee554e501f497bce0856788d43cf2eb93d7" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
||||||
"render-markdown.nvim": { "branch": "main", "commit": "b56fa1bc7b513f16a1c361b81438f4944b420a32" },
|
"render-markdown.nvim": { "branch": "main", "commit": "81374ffd26f9a9d5f44274a9e7e60547b5fd106f" },
|
||||||
"suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" },
|
|
||||||
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
|
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
|
||||||
"vim-mutton": { "branch": "master", "commit": "1601de411cfebcb358ab4ed469190d861901ce70" },
|
"vim-mutton": { "branch": "master", "commit": "1601de411cfebcb358ab4ed469190d861901ce70" },
|
||||||
"vim-nightfly-colors": { "branch": "master", "commit": "caf619ea508afae2137c71807939ded866591d1f" },
|
"vim-nightfly-colors": { "branch": "master", "commit": "43cd633951ea75cad622a881953b02094fdd4b46" },
|
||||||
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" },
|
|
||||||
"zoxide.vim": { "branch": "master", "commit": "b1e70b6fc1682a83929aee63680d2b43456fe9a5" }
|
"zoxide.vim": { "branch": "master", "commit": "b1e70b6fc1682a83929aee63680d2b43456fe9a5" }
|
||||||
}
|
}
|
||||||
|
@ -88,7 +88,7 @@ vim.opt.showmatch = true
|
|||||||
--------------------------------------------------------------------------[[VISUAL]]--------------------------------------------------------------------------
|
--------------------------------------------------------------------------[[VISUAL]]--------------------------------------------------------------------------
|
||||||
vim.o.laststatus = 0 -- Отключает строку состояния
|
vim.o.laststatus = 0 -- Отключает строку состояния
|
||||||
|
|
||||||
vim.cmd("colorscheme tokyonight-night")
|
--vim.cmd("colorscheme tokyonight-night")
|
||||||
--vim.cmd("colorscheme gruvbox")
|
--vim.cmd("colorscheme gruvbox")
|
||||||
--vim.cmd("colorscheme astra") -- Применение темы
|
--vim.cmd("colorscheme astra") -- Применение темы
|
||||||
--vim.cmd("colorscheme kanagawa") -- Основная схема
|
--vim.cmd("colorscheme kanagawa") -- Основная схема
|
||||||
@ -97,6 +97,58 @@ vim.cmd("colorscheme tokyonight-night")
|
|||||||
--vim.cmd("colorscheme kanagawa-lotus") -- Альтернативная палитра
|
--vim.cmd("colorscheme kanagawa-lotus") -- Альтернативная палитра
|
||||||
--vim.cmd("colorscheme nightfly")
|
--vim.cmd("colorscheme nightfly")
|
||||||
--vim.cmd("colorscheme randomhue")
|
--vim.cmd("colorscheme randomhue")
|
||||||
|
--vim.cmd("colorscheme kanagawa")
|
||||||
|
|
||||||
|
-- init.lua
|
||||||
|
|
||||||
|
-- Функция для случайного выбора цветовой темы
|
||||||
|
local function set_random_colorscheme()
|
||||||
|
-- Список доступных цветовых тем
|
||||||
|
local colorschemes = {
|
||||||
|
"tokyonight-night",
|
||||||
|
"gruvbox",
|
||||||
|
"kanagawa",
|
||||||
|
"kanagawa-wave",
|
||||||
|
"kanagawa-dragon",
|
||||||
|
"kanagawa-lotus",
|
||||||
|
"nightfly",
|
||||||
|
"randomhue",
|
||||||
|
"darkblue",
|
||||||
|
"habamax",
|
||||||
|
"minischeme",
|
||||||
|
"retrobox",
|
||||||
|
"slate",
|
||||||
|
"zaibatsu",
|
||||||
|
}
|
||||||
|
-- Инициализация генератора случайных чисел
|
||||||
|
math.randomseed(os.time())
|
||||||
|
|
||||||
|
-- Генерация случайного индекса для списка colorschemes
|
||||||
|
local random_index = math.random(1, #colorschemes)
|
||||||
|
|
||||||
|
-- Применение случайной цветовой схемы
|
||||||
|
vim.cmd("colorscheme " .. colorschemes[random_index])
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Запускаем функцию при старте Neovim
|
||||||
|
set_random_colorscheme()
|
||||||
|
|
||||||
|
-- (Опционально) Добавляем команду для ручного вызова функции
|
||||||
|
vim.api.nvim_create_user_command("RandomColorscheme", set_random_colorscheme, {})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
--status line disabling
|
--status line disabling
|
||||||
vim.defer_fn(function() vim.opt.laststatus = 0 end, 35)
|
vim.defer_fn(function() vim.opt.laststatus = 0 end, 35)
|
||||||
|
@ -10,7 +10,7 @@ cmp.setup({
|
|||||||
['<A-l>'] = cmp.mapping.select_prev_item(),
|
['<A-l>'] = cmp.mapping.select_prev_item(),
|
||||||
['<A-k>'] = cmp.mapping.select_next_item(),
|
['<A-k>'] = cmp.mapping.select_next_item(),
|
||||||
['<C-;>'] = cmp.mapping.confirm({ select = true }),
|
['<C-;>'] = cmp.mapping.confirm({ select = true }),
|
||||||
['<CR>'] = cmp.mapping.confirm({ select = true }),
|
['<Tab>'] = cmp.mapping.confirm({ select = true }),
|
||||||
['<C-Space>'] = cmp.mapping.complete(),
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
['<C-j>'] = cmp.mapping.close(),
|
['<C-j>'] = cmp.mapping.close(),
|
||||||
['<C-e>'] = cmp.mapping.close(),
|
['<C-e>'] = cmp.mapping.close(),
|
||||||
|
@ -4,7 +4,7 @@ require("nvim-tree").setup({
|
|||||||
sorter = "case_sensitive",
|
sorter = "case_sensitive",
|
||||||
},
|
},
|
||||||
view = {
|
view = {
|
||||||
width = 30,
|
width = 50,
|
||||||
},
|
},
|
||||||
renderer = {
|
renderer = {
|
||||||
group_empty = true,
|
group_empty = true,
|
||||||
@ -17,6 +17,43 @@ require("nvim-tree").setup({
|
|||||||
quit_on_open = true, -- закрывать дерево при открытии файла
|
quit_on_open = true, -- закрывать дерево при открытии файла
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
on_attach = function(bufnr)
|
||||||
|
local api = require("nvim-tree.api")
|
||||||
|
|
||||||
|
-- Apply default mappings
|
||||||
|
api.config.mappings.default_on_attach(bufnr)
|
||||||
|
|
||||||
|
-- Remove default C-] mapping
|
||||||
|
vim.keymap.del("n", "<C-]>", { buffer = bufnr })
|
||||||
|
|
||||||
|
-- Define file extensions to handle with system open
|
||||||
|
local special_extensions = {
|
||||||
|
".pdf", ".png", ".jpeg", ".jpg", ".doc", ".docx"
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Helper function to check file extension
|
||||||
|
local function has_special_extension(node)
|
||||||
|
for _, ext in ipairs(special_extensions) do
|
||||||
|
if node.name:match("%.?[^.]+$") == ext then
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Create combined CR mapping
|
||||||
|
vim.keymap.set("n", "<CR>", function()
|
||||||
|
local node = api.tree.get_node_under_cursor()
|
||||||
|
if node and has_special_extension(node) then
|
||||||
|
api.node.run.system() -- Open file in system
|
||||||
|
else
|
||||||
|
api.node.open.edit() -- Default open file behavior
|
||||||
|
api.tree.change_root_to_node() -- Change root to node
|
||||||
|
end
|
||||||
|
end, { buffer = bufnr })
|
||||||
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Глобальные бинды для nvim-tree
|
||||||
vim.keymap.set("n", "<Leader>e", ":NvimTreeToggle<CR>", { noremap = true, silent = true })
|
vim.keymap.set("n", "<Leader>e", ":NvimTreeToggle<CR>", { noremap = true, silent = true })
|
||||||
vim.keymap.set("n", "<Leader>q", ":NvimTreeFindFile<CR>", { noremap = true, silent = true })
|
vim.keymap.set("n", "<Leader>q", ":NvimTreeFindFile<CR>", { noremap = true, silent = true })
|
||||||
|
@ -1 +0,0 @@
|
|||||||
vim.g.vimtex_view_method = "zathura" -- Настройте просмотрщик PDF (например, Zathura)
|
|
@ -1 +0,0 @@
|
|||||||
require("which-key").setup()
|
|
204
lua/plugins.lua
204
lua/plugins.lua
@ -1,5 +1,112 @@
|
|||||||
return {
|
return {
|
||||||
-- Список плагинов
|
-- ==============================
|
||||||
|
-- Визуальные плагины
|
||||||
|
-- ==============================
|
||||||
|
|
||||||
|
-- Темы оформления
|
||||||
|
{
|
||||||
|
"bluz71/vim-nightfly-colors", -- Nightfly тема
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"folke/tokyonight.nvim", -- TokyoNight тема
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"morhetz/gruvbox", -- Gruvbox тема
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"rebelot/kanagawa.nvim", -- Kanagawa тема
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Иконки
|
||||||
|
{
|
||||||
|
"nvim-tree/nvim-web-devicons", -- Провайдер иконок для других плагинов
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Интерфейс и UI
|
||||||
|
{
|
||||||
|
"MeanderingProgrammer/render-markdown.nvim", -- Рендеринг Markdown
|
||||||
|
dependencies = { "echasnovski/mini.nvim", opt = true },
|
||||||
|
config = function()
|
||||||
|
require("config.render-markdown")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"nvim-lualine/lualine.nvim", -- Статусная строка
|
||||||
|
dependencies = { "kyazdani42/nvim-web-devicons", optional = true },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"lukas-reineke/indent-blankline.nvim", -- Визуализация отступов
|
||||||
|
config = function()
|
||||||
|
require("config.indent-blankline")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"folke/noice.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = {
|
||||||
|
-- add any options here
|
||||||
|
},
|
||||||
|
dependencies = {
|
||||||
|
-- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
|
||||||
|
"MunifTanjim/nui.nvim",
|
||||||
|
-- OPTIONAL:
|
||||||
|
-- `nvim-notify` is only needed, if you want to use the notification view.
|
||||||
|
-- If not available, we use `mini` as the fallback
|
||||||
|
"rcarriga/nvim-notify",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
-- ==============================
|
||||||
|
-- Функциональные плагины
|
||||||
|
-- ==============================
|
||||||
|
|
||||||
|
-- LSP и автодополнение
|
||||||
|
{
|
||||||
|
"hrsh7th/cmp-nvim-lsp", -- Интеграция nvim-cmp с LSP
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"hrsh7th/cmp-nvim-lsp-signature-help", -- Поддержка сигнатур LSP в автодополнении
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"hrsh7th/cmp-path", -- Автодополнение путей
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"hrsh7th/nvim-cmp", -- Основной плагин автодополнения
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig", -- Конфигурация LSP
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"williamboman/mason.nvim", -- Управление LSP серверами
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Поиск и навигация
|
||||||
|
{
|
||||||
|
"ibhagwan/fzf-lua", -- FZF для быстрого поиска
|
||||||
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||||
|
opts = {},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"nvim-lua/plenary.nvim", -- Библиотека для других плагинов
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Другие функциональные плагины
|
||||||
|
{
|
||||||
|
"antoinemadec/FixCursorHold.nvim", -- Исправление CursorHold событий
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"gabenespoli/vim-mutton", -- Дополнительные возможности для работы с текстом
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"kyazdani42/nvim-tree.lua", -- Файловый менеджер
|
||||||
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"nanotee/zoxide.vim", -- Интеграция с zoxide для быстрой навигации
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"SidOfc/mkdx", -- Улучшения для работы с Markdown
|
||||||
|
},
|
||||||
|
|
||||||
-- Treesitter для синтаксического анализа
|
-- Treesitter для синтаксического анализа
|
||||||
{
|
{
|
||||||
@ -9,99 +116,4 @@ return {
|
|||||||
require("config.nvim-treesitter")
|
require("config.nvim-treesitter")
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
||||||
-- Icon provider plugins
|
|
||||||
{ "antoinemadec/FixCursorHold.nvim" },
|
|
||||||
{ "nvim-tree/nvim-web-devicons" },
|
|
||||||
|
|
||||||
-- Render Markdown
|
|
||||||
{
|
|
||||||
"MeanderingProgrammer/render-markdown.nvim",
|
|
||||||
dependencies = { "echasnovski/mini.nvim", opt = true },
|
|
||||||
config = function()
|
|
||||||
require("config.render-markdown")
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
-- Показывает доступные комбинации клавиш
|
|
||||||
{
|
|
||||||
"folke/which-key.nvim",
|
|
||||||
config = function()
|
|
||||||
require("config.which-key")
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Визуализация отступов
|
|
||||||
{
|
|
||||||
"lukas-reineke/indent-blankline.nvim",
|
|
||||||
config = function()
|
|
||||||
require("config.indent-blankline")
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Канагава theme
|
|
||||||
{
|
|
||||||
"rebelot/kanagawa.nvim",
|
|
||||||
lazy = false, -- Убедитесь, что плагин загружается при запуске
|
|
||||||
priority = 1000, -- Высокий приоритет для применения цветовой схемы
|
|
||||||
config = function()
|
|
||||||
vim.cmd("colorscheme kanagawa")
|
|
||||||
end
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
--nigthfly theme
|
|
||||||
{
|
|
||||||
"bluz71/vim-nightfly-colors",
|
|
||||||
lazy = false,
|
|
||||||
priority = 1000,
|
|
||||||
config = function()
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
"folke/noice.nvim", -- Плагин для улучшения командной строки и сообщений
|
|
||||||
event = "VeryLazy", -- Загружается при старте NeoVim
|
|
||||||
dependencies = {
|
|
||||||
-- Требуется для UI-компонентов
|
|
||||||
"MunifTanjim/nui.nvim",
|
|
||||||
-- Опционально: для замены стандартных уведомлений NeoVim
|
|
||||||
"rcarriga/nvim-notify",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
{"hrsh7th/nvim-cmp"},
|
|
||||||
{"hrsh7th/cmp-nvim-lsp" },
|
|
||||||
{"hrsh7th/cmp-nvim-lsp-signature-help" },
|
|
||||||
{'hrsh7th/cmp-path'},
|
|
||||||
{
|
|
||||||
"ibhagwan/fzf-lua",
|
|
||||||
-- optional for icon support
|
|
||||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
|
||||||
-- or if using mini.icons/mini.nvim
|
|
||||||
-- dependencies = { "echasnovski/mini.icons" },
|
|
||||||
opts = {}
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
'SidOfc/mkdx'
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
'lambdalisue/suda.vim'
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
'nanotee/zoxide.vim'
|
|
||||||
},
|
|
||||||
{"nvim-lualine/lualine.nvim", dependencies = { "kyazdani42/nvim-web-devicons", optional = true } },
|
|
||||||
{ "morhetz/gruvbox" },
|
|
||||||
{ "folke/tokyonight.nvim" },
|
|
||||||
{ "neovim/nvim-lspconfig" },
|
|
||||||
{ "kyazdani42/nvim-tree.lua", dependencies = { "nvim-tree/nvim-web-devicons" } },
|
|
||||||
--{ "akinsho/bufferline.nvim", version = "*", dependencies = "nvim-tree/nvim-web-devicons" },
|
|
||||||
{ "williamboman/mason.nvim" },
|
|
||||||
{ "nvim-lua/plenary.nvim", lazy = true },
|
|
||||||
{'gabenespoli/vim-mutton'},
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user