Моя персональная конфигурация Neovim с удобными настройками и полезными плагинами.
╔═════════════════════════════════════════════╗
║ ◍ ▃▃ ◍ ║░
║ 🭅██▊ ║░
║ 🭅██▛ because ║░
║ 🭅██▛ I ║░
║ 🭅███▃▃▃▃▃▃ can ║░
║ 🭅█▛▟█████████▙▖ ║░
║ ▗▟██▐████████████▙ ║░
║ ▗▟████▐█████████████▙ ║░
║ ▗▟█████▛▐█▛▘▜██████▙▀▜█▖ ║░
║ ███████▌▐███▖███████▛▟█▙ ║░
║ ▟███████▌████████████▌███▖ ║░
║ ████████▙▀██████████▛▟███▙ ║░
║ ▜████████▙▚▃▜████▛▀▃▟██▙▜█▙ ║░
║ ▕█████████▙▜████▚█▙▜████▙▞▀▍ ▃▃ ║░
║ ░░░░░▜█████████▆▆▆▆▆████▄▞▀▀▜███▙▃▂▀▜███▙ ║░
║ ░░░░░░░░▝███████████▙▜█████████▄▀▜████▙██▀▀ ║░
║ ░░░░░░░░▝▀▜████████▙▜▀▀▀▔▔▀██▛▀▚▀▜██▛ ║░
║ ░░░░░░░░░░░░░░░▔▀▜████▄▄▄░░░░░░░░░░░ ▄██ ║░
║ ░░░░░░░░░░░░░░░ ▀▀██████▄▄▂▂▂▂▄▄████▀ ║░
║ ░░░░░░░░░░░░░░░░░ ▀▀▀███████▀▀▀ ║░
║ ◍ ░░░░░░░░░░░░░░░░░ ▔▔▔▔ ◍ ║░
╚═════════════════════════════════════════════╝░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- Основные настройки Neovim хранятся в файле
config/common.lua. - Для удобства задания настроек используется функция
Set_Config. - Настройки привязки хоткеев находятся в файле
lua/config/mappings.lua.
Конфигурация использует следующие плагины:
boole.nvim Comment.nvim dashboard-nvim everforest-nvim
fine-cmdline.nvim floating-help.nvi friendly-snippets gitsigns.nvim
hydra.nvim lazy.nvim lazydev.nvim lualine.nvim
LuaSnip mason.nvim mini.move nvim-cmp
neo-tree.nvim none-ls.nvim nui.nvim nvim-web-devicons
nvim-lspconfig nvim-surround nvim-treesitter undotree
nvim-window-picke plenary.nvim telescope.nvim which-key.nvim
venn.nvim vim-fugitive vim-vsnip
luvit-meta nvim-autopairs rainbow_csv.nvim
Используется Lazy.nvim.
Плагины устанавливаются путем создания файла <pluginname>.lua в папке lua/plugins.
Структуру файла можно посмотреть на примере файлов уже установленных плагинов.
Чтобы удалить(отключить) плагин, достаточно удалить соответствующий файл
(убрать расширение lua у файла) в папке lua/plugins.
- Поместить конфигурацию в папку
~/.config/nvimили использовать переменные окружения для кастомного пути (XDG_CONFIG_HOMEиNVIM_APPNAME).
Для корректного отображения всех элементов интерфейса необходимо установить Nerd Fonts.
Шрифт, которым пользуюсь я, находится в папке fonts.
Для корректной работы конфигурации (точнее для установки модулей при помощи Mason) потребуются:
- python3-venv
- cargo — для установки shellharden
- luarocks — для Lua модулей
- unzip — для распаковки архивов
- npm — для prettierd
- компилятор C (gcc или clang) — для treesitter
Краткую справку по используемым сочетаниям клавиш можно посмотреть с помощью команды:
:h hotkeys