JustCaptain neovim-and-yazi-settings
deefd48d70992bb116e3c774c379b66d9d4c167d
Перейти к файлу
Код
neovim-and-yazi-settings README.md
anc create files deefd48 2 недели назад
223 строки 10.1 КБ
README.md

🌊 neovim + yazi + kitty#

Моя терминальная среда разработки: Neovim (IDE), Yazi (файловый менеджер), kitty (терминал).
Единая тема Kanagawa Wave и шрифт Lilex во всех трёх.
Устанавливается одной командой на macOS и Arch Linux.

Что это Конфиг
📝 Neovim IDE: LSP, автодополнение, отладка, форматирование config/nvim · основа — kickstart.nvim
📂 Yazi быстрый файловый менеджер с превью config/yazi
🐱 kitty GPU-терминал со вкладками и сплитами config/kitty

⚡ Быстрая установка#

git clone <URL-этого-репозитория> ~/neovim_yazi_settings
cd ~/neovim_yazi_settings
./install.sh

Перезапусти терминал — готово. Подробности ниже.

Важно

Не удаляй и не перемещай папку репозитория после установки: конфиги подключены симлинками на неё.
Нужна независимая копия — запусти ./install.sh --copy.


📋 Что делает install.sh#

# Шаг macOS Arch Linux
1 Пакеты Homebrew (ставит его, если нет) + packages/Brewfile pacman + packages/arch.txt
2 Шрифты font-lilex, font-symbols-only-nerd-font Lilex с GitHub → ~/.local/share/fonts, ttf-nerd-fonts-symbols-mono
3 Конфиги симлинки ~/.config/{nvim,yazi,kitty} → config/* то же
4 Shell строка в ~/.zshrc / ~/.bashrc → shell/shellrc.sh то же
5 Neovim плагины (точные версии из lazy-lock.json), LSP/форматтеры через Mason, парсеры Treesitter то же

Существующие конфиги не удаляются — они переименовываются в ~/.config/nvim.bak-<дата> и т.п.
Скрипт можно запускать повторно: уже подключённое пропускается.

Флаги#

Команда Что делает
./install.sh всё целиком
./install.sh --skip-packages без установки пакетов (только конфиги, shell и плагины)
./install.sh --copy копировать конфиги вместо симлинков
./install.sh --help справка

🍏 Установка на macOS — пошагово#

  1. Command Line Tools (git, компилятор):
    xcode-select --install
    
  2. Клонировать и запустить:
    git clone <URL-этого-репозитория> ~/neovim_yazi_settings
    cd ~/neovim_yazi_settings
    ./install.sh
    
    Homebrew поставится сам, если его нет (попросит пароль).
  3. Открыть kitty (Launchpad → kitty). Сделать его терминалом по умолчанию необязательно.
  4. Проверить: nvim → :checkhealth.

🐧 Установка на Arch Linux — пошагово#

  1. git:
    sudo pacman -S --needed git
    
  2. Клонировать и запустить:
    git clone <URL-этого-репозитория> ~/neovim_yazi_settings
    cd ~/neovim_yazi_settings
    ./install.sh
    
    sudo спросит пароль для pacman.
  3. Запустить kitty из меню приложений.
  4. Проверить: nvim → :checkhealth.

Заметка

Подходит и для производных Arch: EndeavourOS, Manjaro, CachyOS, Garuda.
Пакеты только из официальных репозиториев — AUR-хелпер (yay/paru) не нужен.


🎮 Как пользоваться#

Команда Что делает
nvim / nvim файл редактор
y yazi; при выходе (q) терминал остаётся в папке, где ты был
z часть-пути прыжок в часто используемую папку (zoxide)

Neovim — Leader = Пробел. Полная шпаргалка: config/nvim/COMMANDS.md.

Клавиши Действие
<leader>sf поиск файлов
<leader>sg поиск текста по проекту
<leader>e дерево файлов (neo-tree)
Shift+H / Shift+L предыдущий / следующий буфер
<leader>tt терминал
<leader>rr собрать и запустить C/C++ файл
grd / grn / gra определение / переименовать / действия LSP
F5 · <leader>b отладка · точка останова

kitty

macOS Linux Действие
Cmd+T / Cmd+W Ctrl+Shift+T / Ctrl+Shift+W новая / закрыть вкладку
Cmd+1…4 Ctrl+Shift+→ / ← перейти на вкладку
Cmd+D / Cmd+Shift+D Ctrl+Shift+D / Ctrl+Shift+Alt+D сплит вертикальный / горизонтальный
Cmd+K Ctrl+Shift+K очистить экран
Cmd+Shift+R Ctrl+Shift+R перечитать конфиг

🧩 Что внутри Neovim#

Возможность Плагины / инструменты
Менеджер плагинов lazy.nvim (версии зафиксированы в lazy-lock.json)
Тема kanagawa.nvim (wave)
Поиск telescope.nvim + ripgrep + fd
LSP clangd (C/C++), rust-analyzer, pyright + ruff (Python), vtsls + eslint (JS/TS), html, cssls, tailwindcss, emmet, jsonls, lua_ls — ставятся через Mason
Автодополнение blink.cmp + LuaSnip
Форматирование conform.nvim: clang-format, ruff, prettierd, stylua — при сохранении
Отладка nvim-dap + dap-ui + codelldb (C/C++/Rust)
Подсветка nvim-treesitter (недостающие парсеры ставятся сами при открытии файла)
Интерфейс bufferline, neo-tree, which-key, gitsigns, render-markdown, toggleterm
Python venv-selector (<leader>vs)
Web autotag, подсветка цветов, понятные ошибки TS, версии пакетов в package.json

🎨 Стиль#

Тема Kanagawa Wave одинаково настроена в трёх местах:

Где Файл
kitty config/kitty/kitty.conf — цвета, шрифт Lilex 15pt (12pt на Linux)
yazi config/yazi/theme.toml
neovim config/nvim/init.lua — rebelot/kanagawa.nvim

Основная палитра: фон #1f1f28 · текст #dcd7ba · синий #7e9cd8 · зелёный #98bb6c · жёлтый #e6c384 · красный #e46876.


🔄 Обновление#

cd ~/neovim_yazi_settings
git pull
nvim --headless '+Lazy! restore' +qa    # плагины → версии из lazy-lock.json

Обновить плагины до свежих версий: в nvim :Lazy update, затем закоммитить изменившийся config/nvim/lazy-lock.json.

Поменял конфиг на этой машине? Благодаря симлинкам правки сразу в репозитории — просто git commit и git push.

🗑️ Удаление#

rm ~/.config/nvim ~/.config/yazi ~/.config/kitty                  # удалить симлинки
rm -rf ~/.local/share/nvim ~/.local/state/nvim ~/.cache/nvim      # плагины и кэш nvim

Затем убери строку с # neovim_yazi_settings из ~/.zshrc / ~/.bashrc.
Вернуть старые конфиги: mv ~/.config/nvim.bak-<дата> ~/.config/nvim (и т.д.).


🆘 Если что-то не так#

Вместо иконок квадратики / вопросы

Терминал не видит Nerd Font. Используй kitty из этой сборки. На Linux проверь: fc-list | grep -i -e lilex -e "Symbols Nerd";
если пусто — fc-cache -f и перезапусти kitty.

LSP не работает / нет автодополнения

В nvim: :checkhealth, :Mason (что установлено), :LspInfo. Переустановить: :MasonToolsInstall.

Ошибки Treesitter при открытии файла

Нужны tree-sitter CLI и компилятор C: tree-sitter --version, cc --version. Затем :TSUpdate.

C++: 'iostream' file not found (macOS)

xcode-select --install. Конфиг clangd сам передаёт пути к macOS SDK.

Нет превью картинок / PDF в yazi

yazi --debug покажет, каких программ не хватает. Картинки показываются в kitty (графический протокол).

Функция y не найдена

Перезапусти терминал или source ~/.zshrc. Проверь, что в ~/.zshrc есть строка # neovim_yazi_settings.


Конфиг Neovim основан на kickstart.nvim (MIT, см. config/nvim/LICENSE.md).