From 0f55d7e47d04ace0743c4ce856af0fad607f0430 Mon Sep 17 00:00:00 2001 From: Alexander Neonxp Kiryukhin Date: Fri, 25 Apr 2025 02:42:30 +0300 Subject: =?UTF-8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20zshr?= =?UTF-8?q?c=20=D0=B8=20neovim?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nvim/lua/autocommands.lua | 34 ++++++++++++++++------------------ nvim/lua/colors.lua | 39 +++++++++++++++++++++++++++++++++++++++ nvim/lua/keymaps.lua | 25 ++++++++++++++++++------- nvim/lua/plugins/init.lua | 32 +++----------------------------- 4 files changed, 76 insertions(+), 54 deletions(-) create mode 100644 nvim/lua/colors.lua (limited to 'nvim/lua') diff --git a/nvim/lua/autocommands.lua b/nvim/lua/autocommands.lua index ef7353f..d9edd27 100644 --- a/nvim/lua/autocommands.lua +++ b/nvim/lua/autocommands.lua @@ -76,24 +76,6 @@ vim.api.nvim_create_autocmd({ "BufReadPost", "FileReadPost" }, { end, }) -vim.api.nvim_create_autocmd("BufEnter", { - pattern = "*", - callback = function() - vim.defer_fn(function() - vim.cmd("normal! zR") - end, 100) - end, -}) - -vim.api.nvim_create_autocmd("BufWinEnter", { - pattern = "*", - callback = function() - vim.schedule(function() - vim.cmd("normal! zR") - end) - end, -}) - vim.api.nvim_create_autocmd("BufEnter", { callback = function() if vim.bo.filetype == "NvimTree" or vim.fn.expand("%") == "" then @@ -117,6 +99,22 @@ vim.api.nvim_create_autocmd({ "BufWritePost" }, { end, }) +-- Автоматический вход в insert mode при открытии терминала +vim.api.nvim_create_autocmd({ "BufWinEnter", "WinEnter" }, { + pattern = "term://*", + callback = function() + vim.cmd("startinsert") + end, +}) + +-- Автоматический выход из insert mode при уходе с терминала +vim.api.nvim_create_autocmd("BufLeave", { + pattern = "term://*", + callback = function() + vim.cmd("stopinsert") + end, +}) + -- vim.api.nvim_create_autocmd("InsertEnter", { -- pattern = "*", -- command = "set norelativenumber", diff --git a/nvim/lua/colors.lua b/nvim/lua/colors.lua new file mode 100644 index 0000000..e5d90ef --- /dev/null +++ b/nvim/lua/colors.lua @@ -0,0 +1,39 @@ +require("onedark").setup({ + style = "darker", + transparent = false, -- Show/hide background + term_colors = true, -- Change terminal color as per the selected theme style + ending_tildes = true, -- Show the end-of-buffer tildes. By default they are hidden + cmp_itemkind_reverse = false, -- reverse item kind highlights in cmp menu + + -- toggle theme style --- + toggle_style_key = nil, -- keybind to toggle theme style. Leave it nil to disable it, or set it to a string, for example "ts" + toggle_style_list = { "dark", "darker", "cool", "deep", "warm", "warmer", "light" }, -- List of styles to toggle between + + -- Change code style --- + -- Options are italic, bold, underline, none + -- You can configure multiple style with comma separated, For e.g., keywords = 'italic,bold' + code_style = { + comments = "italic", + keywords = "none", + functions = "none", + strings = "none", + variables = "none", + }, + + -- Lualine options -- + lualine = { + transparent = false, -- lualine center bar transparency + }, + + -- Custom Highlights -- + colors = {}, -- Override default colors + highlights = {}, -- Override highlight groups + + -- Plugins Config -- + diagnostics = { + darker = true, -- darker colors for diagnostic + undercurl = true, -- use undercurl instead of underline for diagnostics + background = true, -- use background color for virtual text + }, +}) +require("onedark").load() diff --git a/nvim/lua/keymaps.lua b/nvim/lua/keymaps.lua index 6a1640d..455e5fd 100644 --- a/nvim/lua/keymaps.lua +++ b/nvim/lua/keymaps.lua @@ -15,13 +15,19 @@ map("i", "", "$", { noremap = true, silent = true }) -- Фикс для визуального режима map("v", "i", "", { noremap = true, silent = true }) map("v", "a", "", { noremap = true, silent = true }) +map("v", "J", ":m '>+1gv=gv", { noremap = true, silent = true }) +map("v", "K", ":m '<-2gv=gv", { noremap = true, silent = true }) +map("v", "<", "", ">gv", { noremap = true, silent = true }) -- Управление буферами -- kmap("n", "bn", "bnext", { noremap = true, silent = true, desc = "Next buffer" }) kmap("n", "bp", "bprevious", { noremap = true, silent = true, desc = "Previous buffer" }) kmap("n", "bd", "bdelete", { noremap = true, silent = true, desc = "Delete buffer" }) kmap("n", "w", "wa", { noremap = true, silent = true, desc = "Save all files" }) -kmap("n", "qq", "q") +kmap("n", "qq", "q", { noremap = true, silent = true, desc = "Exit" }) +kmap("n", "vs", "vsplit", { noremap = true, silent = true, desc = "Vertical split" }) + -- Управление вкладками -- kmap("n", "", ":tabnext", { noremap = true, silent = true, desc = "Next tab" }) kmap("n", "", ":tabprevious", { noremap = true, silent = true, desc = "Previous tab" }) @@ -35,19 +41,20 @@ end -- Файловый менеджер -- kmap("n", "", ":NvimTreeToggle", { noremap = true, silent = true, desc = "Toggle file tree" }) -kmap("n", "tt", ":NvimTreeToggle", { noremap = true, silent = true, desc = "Toggle file tree" }) +-- kmap("n", "tt", ":NvimTreeToggle", { noremap = true, silent = true, desc = "Toggle file tree" }) +kmap("n", "tt", ":split:terminal:startinsert", { noremap = true, silent = true }) -- Поиск с Telescope -- kmap("n", "ff", "Telescope find_files", { noremap = true, silent = true, desc = "Find files" }) kmap("n", "fg", "Telescope live_grep", { noremap = true, silent = true, desc = "Live grep" }) kmap("n", "fb", "Telescope buffers", { noremap = true, silent = true, desc = "Find buffers" }) +kmap("n", "fe", "Telescope file_browser", { noremap = true, silent = true, desc = "File browser" }) -- LSP функции -- kmap("n", "e", vim.diagnostic.open_float, { noremap = true, silent = true, desc = "Show diagnostics" }) -kmap("n", "[d", vim.diagnostic.goto_prev, { noremap = true, silent = true, desc = "Previous diagnostic" }) -kmap("n", "]d", vim.diagnostic.goto_next, { noremap = true, silent = true, desc = "Next diagnostic" }) -kmap("n", "q", vim.diagnostic.setloclist, { noremap = true, silent = true, desc = "Add to location list" }) +kmap("n", "d[", vim.diagnostic.goto_prev, { noremap = true, silent = true, desc = "Previous diagnostic" }) +kmap("n", "d]", vim.diagnostic.goto_next, { noremap = true, silent = true, desc = "Next diagnostic" }) kmap("n", "gD", vim.lsp.buf.declaration, { noremap = true, silent = true, desc = "Go to declaration" }) kmap("n", "gd", vim.lsp.buf.definition, { noremap = true, silent = true, desc = "Go to definition" }) @@ -88,7 +95,12 @@ end) kmap("n", "", function() require("dap").step_out() end) -kmap("n", "dt", "lua require'dapui'.toggle()", { noremap = true, silent = true, desc = "Toggle debug UI" }) +kmap( + "n", + "dt", + "lua require'dapui'.toggle()", + { noremap = true, silent = true, desc = "Toggle debug UI" } +) kmap("n", "dc", function() require("dap").continue() end) @@ -102,7 +114,6 @@ kmap("n", "st", function() require("dap").step_out() end) - kmap("n", "b", function() require("dap").toggle_breakpoint() end) diff --git a/nvim/lua/plugins/init.lua b/nvim/lua/plugins/init.lua index b27e33f..0c3e6a5 100644 --- a/nvim/lua/plugins/init.lua +++ b/nvim/lua/plugins/init.lua @@ -3,15 +3,7 @@ return require("packer").startup({ use("wbthomason/packer.nvim") use("nvim-lua/plenary.nvim") use("neovim/nvim-lspconfig") - use({ - "srt0/codescope.nvim", - config = function() - require("codescope").setup({ - transparent = false, -- Set to true for transparency - }) - vim.cmd.colorscheme("codescope") - end, - }) + use("navarasu/onedark.nvim") use("Snyssfx/goerr-nvim") use({ "lukas-reineke/indent-blankline.nvim", @@ -22,26 +14,6 @@ return require("packer").startup({ use({ "rcarriga/nvim-dap-ui", requires = { "mfussenegger/nvim-dap", "nvim-neotest/nvim-nio" }, - config = function() - local dap, dapui = require("dap"), require("dapui") - dapui.setup() - dap.listeners.before.attach.dapui_config = function() - dapui.open() - vim.cmd(":NvimTreeClose") - end - dap.listeners.before.launch.dapui_config = function() - dapui.open() - vim.cmd(":NvimTreeClose") - end - dap.listeners.before.event_terminated.dapui_config = function() - dapui.close() - vim.cmd(":NvimTreeOpen") - end - dap.listeners.before.event_exited.dapui_config = function() - dapui.close() - vim.cmd(":NvimTreeOpen") - end - end, }) use({ "leoluz/nvim-dap-go", @@ -76,11 +48,13 @@ return require("packer").startup({ require("plugins.treesitter") end, }) + use({ "nvim-telescope/telescope-file-browser.nvim" }) use({ "nvim-telescope/telescope.nvim", config = function() require("plugins.telescope") end, + requires = "nvim-lua/plenary.nvim", }) use({ "nvim-tree/nvim-tree.lua", -- cgit v1.2.3