From 4700af86a06722196ab7f2001f4a094a23e1667c Mon Sep 17 00:00:00 2001 From: pro100ton Date: Fri, 31 Jan 2025 20:47:04 +0300 Subject: [PATCH] Update README --- README.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/README.md b/README.md index 6c1a72c..9e9d0dd 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,34 @@ - [Переписывание конфига с автором telescope](https://www.youtube.com/watch?v=kJVqxFnhIuw&t=510s) - [Документация по Lua в Nvim](https://neovim.io/doc/user/lua-guide.html) - [Конфиг TJ](https://github.com/tjdevries/config.nvim/tree/master) +## Основные прицнипы формирования конфига +### Plugins +Разберем на примере `oil.nvim`: Сначала базовые настройки, такие как инструкция откуда качать и всякие зависимости и атрибуты по типу приоритета кладутся в директорию `custom/plugins` в виде названия плагина: +*lua/custom/plugins/oil.lua* +```lua +return { + "stevearc/oil.nvim", + dependencies = { { "echasnovski/mini.icons", opts = {} } }, + config = function() + require "custom/oil" + end, +} +``` +Затем, как можно видеть, сама функция настроек расположена отдельно в файле с идентичным названием, но в директории "повыше": +*lua/custom/oil.lua* +```lua +require("oil").setup{ + opts = { + keymaps = { + ["g?"] = "actions.show_help", + ... +} +``` +#### FAQ +> Зачем так мучаться? Не проще все кидать в один файл? + +Проще, но такое распараллеливание позволяет легче дебажить файлы настроек. Т.е. исправляя настройки мы можем просто `source`'ить файл настроек, не трогая конфигурации скачивания файлов, чтобы лишний раз не триггерить Lazy. + ## Разница между ftplugin и after/ftplugin Суть одна и та-же: загрузка конфигураций для конкретных типов файлов, однако: ### ftplugin