diff --git a/README.md b/README.md index dc00ce3..b9183d0 100644 --- a/README.md +++ b/README.md @@ -6,43 +6,56 @@ Nvim как менеджер заметок! Что еще нужно для с - Дети - Меню быстрого перехода - Глобальный поиск по содержимому файлов +- .ignore - игнорирование вложенных файлов в поиске # ⚠️ Требования - fzf - Пакет для fuzzy поиска (необходим) - [chafa](https://github.com/hpjansson/chafa) - Предпросмотр фото прямо в терминале (необязательно) +- [zoxide](https://github.com/ajeetdsouza/zoxide) - Пакет для быстрого перехода между директориями (необязательно) -# ✨Установленные плагины +## ✨ Установленные плагины -### Функционал +## Obsivim -##### 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) - Менеджер буферов +#### Функционал +- [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) - Менеджер буферов +- [mkdx](https://github.com/SidOfc/mkdx) - Утилита для работы с Markdown -##### Дополнения -- [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) - Подсказки для сигнатур функций +#### Визуал +- [render-markdown.nvim](https://github.com/MeanderingProgrammer/render-markdown.nvim) - Визуализация Markdown (рекомендуется) +- [nvim-web-devicons](https://github.com/nvim-tree/nvim-web-devicons) - Иконки (рекомендуется) +- [mini.nvim](https://github.com/echasnovski/mini.nvim) - Набор компактных плагинов (опциональная зависимость) +## Дополнения +Данные плагины я установил для себя, чтобы прокачать свой Neovim, но для создания Obsivim необходимы только те, которые представлены выше. Остальные плагины идут по желанию. -### Визуал -- [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) - Показывает доступные комбинации клавиш +#### Функционал +- [FixCursorHold.nvim](https://github.com/antoinemadec/FixCursorHold.nvim) - Исправление проблемы CursorHold +- [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) - Подсказки для сигнатур функций +- [suda.vim](https://github.com/lambdalisue/suda.vim) - Редактирование файлов с правами sudo +- [zoxide.vim](https://github.com/nanotee/zoxide.vim) - Интеграция zoxide для быстрого перехода между директориями +#### Визуал +- [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) - Показывает доступные комбинации клавиш +- [noice.nvim](https://github.com/folke/noice.nvim) - Улучшение командной строки и сообщений + +--- + +Теперь каждый плагин имеет активную ссылку на его репозиторий GitHub! # 📖Структура @@ -56,11 +69,12 @@ Nvim как менеджер заметок! Что еще нужно для с │   │   ├── cmp-nvim-lsp.lua │   │   ├── common-settings.lua │   │   ├── fzf.lua -│   │   ├── gitsigns.lua │   │   ├── indent-blankline.lua │   │   ├── lazy.lua │   │   ├── lualine.lua │   │   ├── mason.lua +│   │   ├── mkdx.lua +│   │   ├── noice.lua │   │   ├── nvim-cmp.lua │   │   ├── nvim-lspconfig.lua │   │   ├── nvim-tree.lua @@ -71,9 +85,11 @@ Nvim как менеджер заметок! Что еще нужно для с │   │   └── which-key.lua │   └── plugins.lua └── README.md + +3 directories, 22 files + ``` # ⬇️ Установка - ### linux ```bash mv ~/.config/nvim ~/.config/bkp_nvim @@ -85,12 +101,14 @@ nvim . # ⌨️ Сочетания клавиш - Leader - пробел - ### Поиск (fzf.lua) -- Leader + o - поиск файлов по имени -- Leader + f - поиск файлов по содержимому +- Leader + f - поиск файлов в текущей директории (files) +- Leader + o - поиск недавних файлов (old files) +- Leader + g - поиск файлов по содержимому (grep) +- Leader + z - переход между директориями (zoxide) + + ### Markdown-форматирование(mkdx) @@ -127,7 +145,8 @@ Leader - пробел - ctrl+n - обработчик автодополнения ctrl+n - ctrl+p - обработчик автодополнения ctrl+p - +### Остальное +- Leader + tab - скрыть строку состояния ###### Помогите >Бедным детям в Уганде нужна ваша помощь! diff --git a/lazy-lock.json b/lazy-lock.json index 0631e79..6947718 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -10,21 +10,21 @@ "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lualine.nvim": { "branch": "master", "commit": "f4f791f67e70d378a754d02da068231d2352e5bc" }, "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, - "mini.nvim": { "branch": "main", "commit": "3a354c754656538ad76d1add93ca21e75b7f3181" }, + "mini.nvim": { "branch": "main", "commit": "f40da50a3dfbbc53e6173beef8dc28626e1b5ebc" }, "mkdx": { "branch": "master", "commit": "ee667cad506954b706c3fa972fbaaad46b1bf028" }, "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, "nvim-cmp": { "branch": "main", "commit": "c27370703e798666486e3064b64d59eaf4bdc6d5" }, - "nvim-lspconfig": { "branch": "master", "commit": "a3f8422b752e03334dbaf4a46940d8aee0acdebf" }, + "nvim-lspconfig": { "branch": "master", "commit": "8e8fd432f05b126a9dd1635e8022c7e7d1a04e60" }, "nvim-notify": { "branch": "master", "commit": "22f29093eae7785773ee9d543f8750348b1a195c" }, "nvim-tree.lua": { "branch": "master", "commit": "c09ff35de503a41fa62465c6b4ae72d96e7a7ce4" }, - "nvim-treesitter": { "branch": "master", "commit": "f37b1668a63b0d1c3ec165f6ba202367604df1a2" }, + "nvim-treesitter": { "branch": "master", "commit": "186f35e1684c241baf13a3e6092eee00ac48631e" }, "nvim-web-devicons": { "branch": "master", "commit": "1020869742ecb191f260818234517f4a1515cfe8" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, "render-markdown.nvim": { "branch": "main", "commit": "595ac4f7e7c0eaba7bf1d8fd6ec0f6ac91c7e33b" }, "suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" }, "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, - "vim-nightfly-colors": { "branch": "master", "commit": "e4fd65b08c5ae590511d77c2ad26c59c353fc64a" }, + "vim-nightfly-colors": { "branch": "master", "commit": "5de76d0f53fd7084027c9bfe75e2bb8e93757087" }, "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 4335200..d1c4c4c 100644 --- a/lua/config/common-settings.lua +++ b/lua/config/common-settings.lua @@ -25,8 +25,8 @@ vim.api.nvim_set_keymap('n', '', ':w', { noremap = true, silent = true vim.api.nvim_set_keymap('i', '', ':wa', { noremap = true, silent = true }) -- Выход из сессии -vim.api.nvim_set_keymap('n', '', ':q!', { noremap = true, silent = true }) -vim.api.nvim_set_keymap('i', '', ':q!', { noremap = true, silent = true }) +vim.api.nvim_set_keymap('n', '', ':q!', { noremap = true, silent = true }) +vim.api.nvim_set_keymap('i', '', ':q!', { noremap = true, silent = true }) -- Настройка выхода из режима ввода через Atl+i vim.api.nvim_set_keymap('i', '', '', { noremap = true, silent = true }) diff --git a/lua/config/fzf.lua b/lua/config/fzf.lua index 0736ce6..90f52e6 100644 --- a/lua/config/fzf.lua +++ b/lua/config/fzf.lua @@ -1,4 +1,6 @@ +local actions = require("fzf-lua.actions") require("fzf-lua").setup({ + keymap = { fzf = { ["alt-k"] = "down", -- Ctrl + k теперь движется вниз @@ -21,6 +23,17 @@ require("fzf-lua").setup({ }, }, }, + oldfiles = { + cwd_only = true, -- Только файлы из текущей директории + stat_file = true, -- Проверка существования файлов на диске + include_current_session = true, -- Включать только файлы из текущей сессии + }, + files = { + -- other configurations... + hidden = true, -- Disable showing hidden files + no_ignore = false, -- Игнорировать .gitignore + fd_opts = [[--color=never --hidden --type f --type l --ignore-file .ignore --exclude .git]], + } })