Требования

This commit is contained in:
СЕМА 2025-02-28 15:54:04 +03:00
parent ab33b7bbc0
commit ed905bb75f
7 changed files with 155 additions and 18 deletions

View File

@ -1,4 +1,4 @@
# ObsiVim # 🔥ObsiVim
Nvim как менеджер заметок! Что еще нужно для счастья ? Nvim как менеджер заметок! Что еще нужно для счастья ?
@ -7,10 +7,86 @@ Nvim как менеджер заметок! Что еще нужно для с
- Меню быстрого перехода - Меню быстрого перехода
- Глобальный поиск по содержимому файлов - Глобальный поиск по содержимому файлов
# ⚠️ Требования
- fzf - Пакет для fuzzy поиска (необходим)
- [chafa](https://github.com/hpjansson/chafa) - Предпросмотр фото прямо в терминале (необязательно)
# ✨Установленные плагины
### Функционал
##### Obsivim
- [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter) - Обработка синтаксиса
- [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) - Система автодополнения
- [fzf-lua](https://github.com/ibhagwan/fzf-lua) - Fuzzy finder
- [cmp-nvim-lsp](https://github.com/hrsh7th/cmp-nvim-lsp) - Источник данных для nvim-cmp
- [nvim-tree.lua](https://github.com/kyazdani42/nvim-tree.lua) - Проводник файлов
- [plenary.nvim](https://github.com/nvim-lua/plenary.nvim) - Библиотека Lua функций
- [bufferline.nvim](https://github.com/akinsho/bufferline.nvim) - Менеджер буферов
##### Дополнения
- [FixCursorHold.nvim](https://github.com/antoinemadec/FixCursorHold.nvim) - Исправление проблемы CursorHold
- [gitsigns.nvim](https://github.com/lewis6991/gitsigns.nvim) - Интеграция с Git
- [lualine.nvim](https://github.com/nvim-lualine/lualine.nvim) - Статусная строка
- [mason.nvim](https://github.com/williamboman/mason.nvim) - Менеджер пакетов LSP
- [nvim-lspconfig](https://github.com/neovim/nvim-lspconfig) - Конфигурация LSP серверов
- [cmp-nvim-lsp-signature-help](https://github.com/hrsh7th/cmp-nvim-lsp-signature-help) - Подсказки для сигнатур функций
### Визуал
- [nvim-web-devicons](https://github.com/nvim-tree/nvim-web-devicons) - Иконки (рекомендуется)
- [render-markdown.nvim](https://github.com/MeanderingProgrammer/render-markdown.nvim) - Визуализация Markdown (рекомендуется)
- [indent-blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim) - Визуализация отступов
- [tokyonight.nvim](https://github.com/folke/tokyonight.nvim) - Цветовая схема Tokyo Night
- [gruvbox](https://github.com/morhetz/gruvbox) - Цветовая схема Gruvbox
- [vim-nightfly-colors](https://github.com/bluz71/vim-nightfly-colors) - Цветовая схема Nightfly
- [kanagawa.nvim](https://github.com/rebelot/kanagawa.nvim) - Цветовая схема Kanagawa
- [which-key.nvim](https://github.com/folke/which-key.nvim) - Показывает доступные комбинации клавиш
# 📖Структура
```bash
.
├── init.lua
├── lazy-lock.json
├── lua
│   ├── config
│   │   ├── bufferline.lua
│   │   ├── cmp-nvim-lsp.lua
│   │   ├── common-settings.lua
│   │   ├── fzf.lua
│   │   ├── gitsigns.lua
│   │   ├── indent-blankline.lua
│   │   ├── lazy.lua
│   │   ├── lualine.lua
│   │   ├── mason.lua
│   │   ├── nvim-cmp.lua
│   │   ├── nvim-lspconfig.lua
│   │   ├── nvim-tree.lua
│   │   ├── nvim-treesitter.lua
│   │   ├── render-markdown.lua
│   │   ├── telescope.lua
│   │   ├── vimtex.lua
│   │   └── which-key.lua
│   └── plugins.lua
└── README.md
```
# ⬇️ Установка
### linux
```bash
mv ~/.config/nvim ~/.config/bkp_nvim
git clone ssh://git@root-kit.ru:17458/sam/Obsivim.git nvim
nvim .
```
*также не забудьте установить пакеты fzf и chafa*
>Бедным детям в Уганде нужна ваша помощь!
>
>Наберите :help iccf<Enter> для дополнительной информации
---
# Требования
- fzf (пакет для fuzzy поиска)
- [chafa](https://github.com/hpjansson/chafa) (предпросмотр фото прямо в терминале)

View File

@ -14,3 +14,5 @@ require("config.gitsigns")
require("config.which-key") require("config.which-key")
require("config.indent-blankline") require("config.indent-blankline")
require("config.fzf") require("config.fzf")
require("config.noice")
require("config.mkdx")

View File

@ -3,7 +3,7 @@
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
"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" },
"fzf-lua": { "branch": "main", "commit": "9b84b53f3297d4912d7eb95b979e9b27e2e61281" }, "fzf-lua": { "branch": "main", "commit": "ae9378a48fcf07475d93b3dc7775c2aab0b9fa7b" },
"gitsigns.nvim": { "branch": "main", "commit": "4c40357994f386e72be92a46f41fc1664c84c87d" }, "gitsigns.nvim": { "branch": "main", "commit": "4c40357994f386e72be92a46f41fc1664c84c87d" },
"gruvbox": { "branch": "master", "commit": "f1ecde848f0cdba877acb0c740320568252cc482" }, "gruvbox": { "branch": "master", "commit": "f1ecde848f0cdba877acb0c740320568252cc482" },
"indent-blankline.nvim": { "branch": "master", "commit": "e10626f7fcd51ccd56d7ffc00883ba7e0aa28f78" }, "indent-blankline.nvim": { "branch": "master", "commit": "e10626f7fcd51ccd56d7ffc00883ba7e0aa28f78" },
@ -11,15 +11,19 @@
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"lualine.nvim": { "branch": "master", "commit": "f4f791f67e70d378a754d02da068231d2352e5bc" }, "lualine.nvim": { "branch": "master", "commit": "f4f791f67e70d378a754d02da068231d2352e5bc" },
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" },
"mini.nvim": { "branch": "main", "commit": "e554890210cd29d017d6a0c1b1a46f995dcf9e64" }, "mini.nvim": { "branch": "main", "commit": "3a354c754656538ad76d1add93ca21e75b7f3181" },
"mkdx": { "branch": "master", "commit": "ee667cad506954b706c3fa972fbaaad46b1bf028" },
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
"nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" },
"nvim-cmp": { "branch": "main", "commit": "5a11682453ac6b13dbf32cd403da4ee9c07ef1c3" }, "nvim-cmp": { "branch": "main", "commit": "5a11682453ac6b13dbf32cd403da4ee9c07ef1c3" },
"nvim-lspconfig": { "branch": "master", "commit": "d793c5cb0206d976a38e70e62479a60ba87722ca" }, "nvim-lspconfig": { "branch": "master", "commit": "62c5fac4c59be9e41b92ef62f3bb0fbdae3e2d9e" },
"nvim-notify": { "branch": "master", "commit": "22f29093eae7785773ee9d543f8750348b1a195c" },
"nvim-tree.lua": { "branch": "master", "commit": "6709463b2d18e77f7a946027917aa00d4aaed6f4" }, "nvim-tree.lua": { "branch": "master", "commit": "6709463b2d18e77f7a946027917aa00d4aaed6f4" },
"nvim-treesitter": { "branch": "master", "commit": "8bc635a25f581d42b0a0e5ba8870bd73244dcdea" }, "nvim-treesitter": { "branch": "master", "commit": "99487eb34a397befce8182ff63347a21c5f4b881" },
"nvim-web-devicons": { "branch": "master", "commit": "1020869742ecb191f260818234517f4a1515cfe8" }, "nvim-web-devicons": { "branch": "master", "commit": "1020869742ecb191f260818234517f4a1515cfe8" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"render-markdown.nvim": { "branch": "main", "commit": "1cd546e96cb8520a148610ca86596ed238eeb936" }, "render-markdown.nvim": { "branch": "main", "commit": "b57d51d760f5e4f520414dbeb6dee3ec1ae07a83" },
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
"vim-nightfly-colors": { "branch": "master", "commit": "c27e76b1adc562b60415ec3688f610206020d64e" }, "vim-nightfly-colors": { "branch": "master", "commit": "e4fd65b08c5ae590511d77c2ad26c59c353fc64a" },
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
} }

View File

@ -101,10 +101,10 @@ vim.api.nvim_set_keymap('n', '<Leader>6', "0i###### <Esc>$", { noremap = true, s
-- Бинд для VISUAL MODE: Добавление * в начало и конец выделенного текста -- Бинд для VISUAL MODE: Добавление * в начало и конец выделенного текста
vim.api.nvim_set_keymap('v', '<Leader>i', "<Esc>`<i*<Esc>`>a*<Esc>", { noremap = true, silent = true }) --vim.api.nvim_set_keymap('v', '<Leader>i', "<Esc>`<i*<Esc>`>a*<Esc>", { noremap = true, silent = true })
vim.api.nvim_set_keymap('v', '<Leader>b', "<Esc>`<i**<Esc>`>a**<Esc>", { noremap = true, silent = true }) --vim.api.nvim_set_keymap('v', '<Leader>b', "<Esc>`<i**<Esc>`>a**<Esc>", { noremap = true, silent = true })
vim.api.nvim_set_keymap('v', '<Leader>`', "<Esc>`<i<CR><Up>```bash<Esc>`>a<CR>```<Esc>", { noremap = true, silent = true }) --vim.api.nvim_set_keymap('v', '<Leader>`', "<Esc>`<i<CR><Up>```bash<Esc>`>a<CR>```<Esc>", { noremap = true, silent = true })
function Table(mode, n) function Table(mode, n)
@ -162,7 +162,8 @@ end
--vim.cmd("colorscheme kanagawa-wave") -- Более светлая версия --vim.cmd("colorscheme kanagawa-wave") -- Более светлая версия
--vim.cmd("colorscheme kanagawa-dragon")-- Более тёмная версия --vim.cmd("colorscheme kanagawa-dragon")-- Более тёмная версия
--vim.cmd("colorscheme kanagawa-lotus") -- Альтернативная палитра --vim.cmd("colorscheme kanagawa-lotus") -- Альтернативная палитра
vim.cmd("colorscheme nightfly") --vim.cmd("colorscheme nightfly")
vim.cmd("colorscheme randomhue")
-- Включение относительной нумерации строк -- Включение относительной нумерации строк

25
lua/config/mkdx.lua Normal file
View File

@ -0,0 +1,25 @@
-- Файл: init.lua (или lua/mkdx_config.lua, если вы используете модульную структуру)
-- Создаем группу автокоманд для mkdx
local function setup_mkdx_mappings()
-- Отключаем стандартные маппинги плагина
vim.api.nvim_set_keymap('n', '<Plug>(mkdx-gen-or-upd-toc)', '<Nop>', { noremap = true })
vim.api.nvim_set_keymap('n', '<Plug>(mkdx-text-italic-n)', '<Nop>', { noremap = true })
vim.api.nvim_set_keymap('n', '<Plug>(mkdx-toggle-checkbox-n)', '<Nop>', { noremap = true })
-- Переназначаем leader/ на leaderi (Italicize text)
vim.api.nvim_set_keymap('n', '<leader>i', '<Plug>(mkdx-text-italic-n)', { noremap = true, silent = true })
vim.api.nvim_set_keymap('v', '<leader>i', '<Plug>(mkdx-text-italic-v)', { noremap = true, silent = true })
-- Переназначаем leadert на leaderw (Toggle checklist item)
vim.api.nvim_set_keymap('n', '<leader>w', '<Plug>(mkdx-toggle-checklist-n)', { noremap = true, silent = true })
vim.api.nvim_set_keymap('v', '<leader>w', '<Plug>(mkdx-toggle-checklist-v)', { noremap = true, silent = true })
end
-- Создаем автокоманду для применения настроек после загрузки всех файлов
vim.cmd [[
augroup MkdxMappings
autocmd!
autocmd VimEnter * if &filetype == 'markdown' || &filetype == 'mkdx' | lua setup_mkdx_mappings() | endif
augroup END
]]

18
lua/config/noice.lua Normal file
View File

@ -0,0 +1,18 @@
require("noice").setup({
lsp = {
-- override markdown rendering so that **cmp** and other plugins use **Treesitter**
override = {
["vim.lsp.util.convert_input_to_markdown_lines"] = true,
["vim.lsp.util.stylize_markdown"] = true,
["cmp.entry.get_documentation"] = true, -- requires hrsh7th/nvim-cmp
},
},
-- you can enable a preset for easier configuration
presets = {
bottom_search = true, -- use a classic bottom cmdline for search
command_palette = true, -- position the cmdline and popupmenu together
long_message_to_split = true, -- long messages will be sent to a split
inc_rename = false, -- enables an input dialog for inc-rename.nvim
lsp_doc_border = false, -- add a border to hover docs and signature help
},
})

View File

@ -67,6 +67,16 @@ return {
end, end,
}, },
{
"folke/noice.nvim", -- Плагин для улучшения командной строки и сообщений
event = "VeryLazy", -- Загружается при старте NeoVim
dependencies = {
-- Требуется для UI-компонентов
"MunifTanjim/nui.nvim",
-- Опционально: для замены стандартных уведомлений NeoVim
"rcarriga/nvim-notify",
},
},
{ {
@ -89,8 +99,9 @@ return {
opts = {} opts = {}
}, },
{
'SidOfc/mkdx'
},
{"nvim-lualine/lualine.nvim", dependencies = { "kyazdani42/nvim-web-devicons", optional = true } }, {"nvim-lualine/lualine.nvim", dependencies = { "kyazdani42/nvim-web-devicons", optional = true } },
{ "morhetz/gruvbox" }, { "morhetz/gruvbox" },