diff --git a/README.md b/README.md index 61fc024..3310dd3 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,12 @@ -# πŸ”₯ObsiVim + +# πŸ”₯SexNvim Nvim ΠΊΠ°ΠΊ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ! Π§Ρ‚ΠΎ Π΅Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ для ΡΡ‡Π°ΡΡ‚ΡŒΡ ? - Π Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³ markdown - Π”Π΅Ρ‚ΠΈ -- МСню быстрого ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° -- Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ поиск ΠΏΠΎ содСрТимому Ρ„Π°ΠΉΠ»ΠΎΠ² +- Π Π°Π·ΠΌΡ‹Ρ‚Ρ‹ΠΉ поиск Ρ„Π°ΠΉΠ»ΠΎΠ² +- Поиск ΠΏΠΎ содСрТимому Ρ„Π°ΠΉΠ»ΠΎΠ² - .ignore - ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π² поискС # ⚠️ ВрСбования @@ -14,7 +15,7 @@ Nvim ΠΊΠ°ΠΊ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ! Π§Ρ‚ΠΎ Π΅Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ для с - [zoxide](https://github.com/ajeetdsouza/zoxide) - ΠŸΠ°ΠΊΠ΅Ρ‚ для быстрого ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΌΠ΅ΠΆΠ΄Ρƒ дирСкториями (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ) -## ✨ УстановлСнныС ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ +# ✨ УстановлСнныС ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ ## Obsivim @@ -30,8 +31,10 @@ Nvim ΠΊΠ°ΠΊ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ! Π§Ρ‚ΠΎ Π΅Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ для с #### Π’ΠΈΠ·ΡƒΠ°Π» - [render-markdown.nvim](https://github.com/MeanderingProgrammer/render-markdown.nvim) - Визуализация Markdown (рСкомСндуСтся) +- [mutton.vim](https://github.com/gabenespoli/vim-mutton) - ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ‹ строки: отступы слСва ΠΈ справа (рСкомСндуСтся) - [nvim-web-devicons](https://github.com/nvim-tree/nvim-web-devicons) - Иконки (рСкомСндуСтся) - [mini.nvim](https://github.com/echasnovski/mini.nvim) - Набор ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹Ρ… ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ) + ## ДополнСния Π”Π°Π½Π½Ρ‹Π΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ я установил для сСбя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠΊΠ°Ρ‡Π°Ρ‚ΡŒ свой Neovim, Π½ΠΎ для создания Obsivim Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдставлСны Π²Ρ‹ΡˆΠ΅. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ ΠΈΠ΄ΡƒΡ‚ ΠΏΠΎ ТСланию. @@ -53,9 +56,8 @@ Nvim ΠΊΠ°ΠΊ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ! Π§Ρ‚ΠΎ Π΅Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ для с - [which-key.nvim](https://github.com/folke/which-key.nvim) - ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ доступныС ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ клавиш - [noice.nvim](https://github.com/folke/noice.nvim) - Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки ΠΈ сообщСний ---- -Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ссылку Π½Π° Π΅Π³ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ GitHub! + # πŸ“–Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° @@ -107,6 +109,7 @@ Leader - ΠΏΡ€ΠΎΠ±Π΅Π» - Leader + o - поиск Π½Π΅Π΄Π°Π²Π½ΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² (old files) - Leader + g - поиск Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠΎ содСрТимому (grep) - Leader + z - ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρƒ дирСкториями (zoxide) +- Leader + r - ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρƒ Π±ΡƒΡ„Π΅Ρ€Π°ΠΌΠΈ @@ -126,7 +129,6 @@ Leader - ΠΏΡ€ΠΎΠ±Π΅Π» - Leader + / - ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ/ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ TOC - Leader + s - ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚Ρ‹ΠΉ тСкст - Leader + ln - ΠΎΠ±Π΅Ρ€Π½ΡƒΡ‚ΡŒ ссылкой -- Leader + t - ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ элСмСнт чСкбокса - Leader + , - ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ CSV Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ (Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ выдСлСния) - Leader + j - ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΡƒ - Leader + I - быстрый TOC @@ -148,6 +150,23 @@ Leader - ΠΏΡ€ΠΎΠ±Π΅Π» ### ΠžΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ - Leader + tab - ΡΠΊΡ€Ρ‹Ρ‚ΡŒ строку состояния +- Leader + n - ΡΠΊΡ€Ρ‹Ρ‚ΡŒ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΡŽ строк + +***Π’Π°ΠΊ ΠΆΠ΅ для своСго Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» .ignore*** +НапримСр для всСх Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΡ€ΠΎΠΌΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° .md: + +```git {.ignore} +# Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ +* + +# ΠšΡ€ΠΎΠΌΠ΅ .md +!*.md + +# Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ всС ΠΏΠ°ΠΏΠΊΠΈ +!*/ +``` + + ###### ΠŸΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅ >Π‘Π΅Π΄Π½Ρ‹ΠΌ дСтям Π² Π£Π³Π°Π½Π΄Π΅ Π½ΡƒΠΆΠ½Π° ваша ΠΏΠΎΠΌΠΎΡ‰ΡŒ! diff --git a/init.lua b/init.lua index 486153f..3ea176e 100644 --- a/init.lua +++ b/init.lua @@ -1,6 +1,8 @@ require("config.lazy") + require("config.common-settings") + require("config.mason") require("config.nvim-tree") require("config.nvim-treesitter") @@ -11,9 +13,9 @@ require("config.vimtex") require("config.render-markdown") require("config.which-key") - require("config.indent-blankline") require("config.fzf") require("config.noice") require("config.mkdx") +require("config.mutton") diff --git a/lazy-lock.json b/lazy-lock.json index 12656f7..5537180 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -10,22 +10,22 @@ "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lualine.nvim": { "branch": "master", "commit": "f4f791f67e70d378a754d02da068231d2352e5bc" }, "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, - "mini.nvim": { "branch": "main", "commit": "581724ebb39f4aa70bdbffb891d57d6141d29035" }, + "mini.nvim": { "branch": "main", "commit": "6dcb014319a177ad51774c05323cb833349bdf25" }, "mkdx": { "branch": "master", "commit": "ee667cad506954b706c3fa972fbaaad46b1bf028" }, "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, "nui.nvim": { "branch": "main", "commit": "8d3bce9764e627b62b07424e0df77f680d47ffdb" }, "nvim-cmp": { "branch": "main", "commit": "c27370703e798666486e3064b64d59eaf4bdc6d5" }, - "nvim-lspconfig": { "branch": "master", "commit": "84e0cd5a3c58e88ef706fdf4a1eed59ded1d3ce2" }, + "nvim-lspconfig": { "branch": "master", "commit": "fd26f8626c03b424f7140d454031d1dcb8d23513" }, "nvim-notify": { "branch": "master", "commit": "22f29093eae7785773ee9d543f8750348b1a195c" }, "nvim-tree.lua": { "branch": "master", "commit": "c09ff35de503a41fa62465c6b4ae72d96e7a7ce4" }, - "nvim-treesitter": { "branch": "master", "commit": "794cf2f6309691d4e9d3945ae33943a3d90ddd84" }, + "nvim-treesitter": { "branch": "master", "commit": "71ac531a6301b6d5f4dc4d7157ffd8bd8d6d769e" }, "nvim-web-devicons": { "branch": "master", "commit": "ab4cfee554e501f497bce0856788d43cf2eb93d7" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, "render-markdown.nvim": { "branch": "main", "commit": "b56fa1bc7b513f16a1c361b81438f4944b420a32" }, "suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" }, "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, "vim-mutton": { "branch": "master", "commit": "1601de411cfebcb358ab4ed469190d861901ce70" }, - "vim-nightfly-colors": { "branch": "master", "commit": "5de76d0f53fd7084027c9bfe75e2bb8e93757087" }, + "vim-nightfly-colors": { "branch": "master", "commit": "caf619ea508afae2137c71807939ded866591d1f" }, "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }, "zoxide.vim": { "branch": "master", "commit": "b1e70b6fc1682a83929aee63680d2b43456fe9a5" } } diff --git a/lua/config/common-settings.lua b/lua/config/common-settings.lua index c765a12..9d46bd6 100644 --- a/lua/config/common-settings.lua +++ b/lua/config/common-settings.lua @@ -24,7 +24,6 @@ vim.keymap.set('v', ';', 'l', { noremap = true, silent = true }) -- Настройка Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° Π²Π²ΠΎΠ΄Π° Ρ‡Π΅Ρ€Π΅Π· Atl+i vim.api.nvim_set_keymap('i', '', '', { noremap = true, silent = true }) -- Настройка Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° -vim.api.nvim_set_keymap('n', 't', ':terminal', { noremap = true, silent = true }) vim.api.nvim_set_keymap('t', '', '', { noremap = true, silent = true }) @@ -109,32 +108,6 @@ vim.keymap.set('n', '', function() vim.opt.laststatus = laststatus_values[current_index] end, { noremap = true, silent = true }) --- Для Mutton -local normal_bg = vim.fn.synIDattr(vim.fn.hlID("Normal"), "bg") -vim.api.nvim_set_hl(0, "EndOfBuffer", { fg = normal_bg} ) -- overrides `~` character at the end of buffer -vim.api.nvim_set_hl(0, "VertSplit", { fg = normal_bg} ) -- overrides `~` character at the end of buffer -vim.api.nvim_set_hl(0, "WinSeparator", { fg = normal_bg }) - - - - - -local function run_once_on_md() - local executed = false -- Π€Π»Π°Π³ для отслСТивания выполнСния - vim.api.nvim_create_autocmd("BufEnter", { - pattern = "*.md", - callback = function() - if not executed then - vim.defer_fn(function() - vim.cmd("MuttonToggle") -- Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Π΅Ρ€Π΅Π· 200 мс - end, 1) - executed = true -- Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π»Π°Π³ послС выполнСния - end - end, - }) -end - -run_once_on_md() diff --git a/lua/config/mutton.lua b/lua/config/mutton.lua new file mode 100644 index 0000000..2ac3e4e --- /dev/null +++ b/lua/config/mutton.lua @@ -0,0 +1,28 @@ + +-- Для Mutton +local normal_bg = vim.fn.synIDattr(vim.fn.hlID("Normal"), "bg") +vim.api.nvim_set_hl(0, "EndOfBuffer", { fg = normal_bg} ) -- overrides `~` character at the end of buffer +vim.api.nvim_set_hl(0, "VertSplit", { fg = normal_bg} ) -- overrides `~` character at the end of buffer +vim.api.nvim_set_hl(0, "WinSeparator", { fg = normal_bg }) + +local mutton = false +local function on_buf_read() + vim.defer_fn(function() + local buf_name = vim.api.nvim_buf_get_name(0) -- ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ имя Ρ„Π°ΠΉΠ»Π° + + if buf_name:match("%.md$") and mutton == false then -- ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, заканчиваСтся Π»ΠΈ имя Π½Π° ".md" + mutton = true + vim.cmd("MuttonToggle") + elseif buf_name:match("NvimTree_1$") then + + elseif buf_name:match("%[%[Mutton%]%]$") then + + elseif mutton == true and not buf_name:match("%.md$") then + mutton = false + vim.cmd("MuttonToggle") + end + end, 100) +end + +vim.api.nvim_create_autocmd("BufEnter", { callback = on_buf_read }) + diff --git a/lua/config/noice.lua b/lua/config/noice.lua index 0e6fbeb..bfd4dd8 100644 --- a/lua/config/noice.lua +++ b/lua/config/noice.lua @@ -1,4 +1,17 @@ require("noice").setup({ + views = { + cmdline_popup = { + position = { + row = "50%", -- Π¦Π΅Π½Ρ‚Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ + col = "50%", -- Π¦Π΅Π½Ρ‚Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ + }, + }, + }, + presets = { + bottom_search = true, -- ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ поиска Π²Π½ΠΈΠ· + command_palette = true, -- ΠŸΠ°Π»ΠΈΡ‚Ρ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ + long_message_to_split = true, -- Π”Π»ΠΈΠ½Π½Ρ‹Π΅ сообщСния Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ + }, lsp = { -- override markdown rendering so that **cmp** and other plugins use **Treesitter** override = { diff --git a/lua/config/render-markdown.lua b/lua/config/render-markdown.lua index 75f475e..18f2a71 100644 --- a/lua/config/render-markdown.lua +++ b/lua/config/render-markdown.lua @@ -2,10 +2,12 @@ require('render-markdown').setup({ --для vim wiki heading = { width = 'block', - left_pad = 2, - right_pad = 4, - border = true, - border_virtual = false, + left_pad = 2, + right_pad = 2, + border = {true,true,true,true,false,false}, + border_virtual = true, + position = 'inline', + min_width = {50,40,30,20,10,5}, }, sign = { enabled = false }, })