Skip to content
/ FixVim Public

FixVim — это конфигурация NeoVim для Linux, написанная на ЯП Lua, цель которой — предоставить разумную конфигурацию по умолчанию с невероятно быстрым временем запуска!

License

Notifications You must be signed in to change notification settings

Krator3/FixVim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FixVim

FixVim — это конфигурация NeoVim для Linux, написанная на ЯП Lua, цель которой — предоставить разумную конфигурацию по умолчанию с невероятно быстрым временем запуска! Если вам понравится данная сборка, поставьте 🌟 этому репозиторию!

Преимущества FixVim

  1. Используется удобная модульная структура, благодаря которой очень легко поддерживать работоспособность сборки.
  2. Ориентированность на русскоговорящих пользователей.
  3. Огромное количество поясняющих комментариев, за счет которых пользователь сможет быстрее и проще разобраться в функционале.

Установка

Предварительные условия

Для того чтобы FixVim работал корректно, требуется удовлетворить его зависимости. (Учтите, что одним из требований является использование последней стабильной версии NeoVim!)

Установка необходимых пакетов в:

Arch Linux:

sudo pacman -Syu --needed git neovim xclip wl-clipboard nodejs npm

ALT Linux:

su - -c "apt-get install git neovim xclip wl-clipboard nodejs npm gcc"

P.S: Если вы используете что-то другое, вам придется заменить команду на аналогичную для вашего дистрибутива!

Все пакеты, указанные выше, рекомендуются к установке по умолчанию для лучшей совместимости и избежания потенциальных проблем. Однако вы можете пренебречь некоторыми пакетами. Например, если вы не используете Wayland, нет необходимости в установке пакета wl-clipboard.

Краткое объяснение назначения пакетов:

  • neovim — рассматриваемая программа, к которой будет применена конфигурация
  • git — система контроля версий, необходима для установки FixVim
  • xclip — поддержка буфера обмена в сеансе X11
  • wl-clipboard — поддержка буфера обмена в сеансе Wayland
  • nodejs и npm — зависимости Mason (менеджер пакетов для LSP, DAP, линтеров и форматтеров в NeoVim)

Помимо этого, требуется наличие терминала с поддержкой True Color, а также в нем должен использоваться один из шрифтов коллекции Nerd Fonts. При этом необходимо удовлетворить зависимости актуальной версии NeoVim и используемых в FixVim расширений. (Например, для nvim-treesitter необходимо наличие gcc в системе.)

P.S: Если вы до этого не настраивали NeoVim, можете смело приступать к установке FixVim. Если же вы использовали собственные настройки или сторонние конфигурации, выполните действия, указанные ниже:

  1. Сохраните копию своей конфигурации, если вам это нужно. Данную процедуру можно выполнить следующей командой:

    mv ~/.config/nvim ~/.config/oldnvim

    P.S: ~/.config/oldnvim можно заменить на любой свой путь с нужным названием.

  2. После выполнения или пропуска первого пункта, выполните действия из раздела Удаление FixVim.

Теперь вы готовы к следующему этапу!

Установка FixVim

Для установки данной сборки выполните команду ниже:

git clone --depth 1 https://github.com/krator3/fixvim ~/.config/nvim && rm -rf ~/.config/nvim/lazy-lock.json ~/.config/nvim/.git

Также для корректной работы FixVim не требуются файлы LICENSE и README.md, поэтому можете удалить их, если они вам не нужны.

Действия после установки

После выполнения предыдущих шагов остается последний штрих. Запустите следующую команду в своем терминале:

nvim

Данная команда запустит Neovim, далее автоматически активирует Lazy(менеджер плагинов), который установит и подключит расширения, предложенные данной сборкой. После завершения установки нажмите клавишу q, которая закроет окно Lazy. При следующих запусках NeoVim окно Lazy больше не будет запускаться автоматически! Далее убедитесь, что все предусмотренные treesitter были установлены, а также проконтролируйте установку LSP и других инструментов через команду :Mason. Данное окно также закрывается при помощи клавиши q, и оно тоже не будет автоматически отображаться при следующих запусках программы. По окончании финальной настройки FixVim, перезапустите программу и начинайте получать удовольствие от ее использования!

P.S: Дополнительно рекомендуется запустить команду :checkhealth после перезапуска для проверки корректности установки конфигурации.

Для установки дополнительных LSP используйте одну из предложенных команд:

  1. :LspInstall <language>
  2. :MasonInstall <language> (Данная команда позволяет устанавливать не только LSP, но и другие полезные инструменты для программирования.)

Для установки дополнительных TreeSitter используется команда :TSInstall <language>. Обычно недостающие TreeSitter устанавливаются автоматически, но вы можете изменить данное поведение в настройках сборки.

P.S: Обратите внимание, что комбинации клавиш FixVim могут конфликтовать с системными сочетаниями клавиш! В таком случае вам придется вручную изменить их либо в настройках FixVim, либо в системе. Помните, что системные сочетания обладают более высоким приоритетом, поэтому в сложившейся ситуации вместо сочетаний FixVim будут выполнены системные!

Удаление FixVim

Для того чтобы полностью удалить FixVim из вашей системы и вернуть стандартный NeoVim, необходимо выполнить следующую команду:

rm -rf ~/.cache/nvim ~/.local/share/nvim ~/.local/state/nvim ~/.config/nvim

Содействие

Любая помощь со стороны категорически приветствуется! Если вы хотите сообщить о найденных ошибках или предложить нововведение без готового решения, просто откройте новую проблему с соответствующей темой. Если же вы хотите внести изменения в сборку (например, исправить ошибку, улучшить документацию и так далее), не стесняйтесь и смело создавайте свои PR! В независимости от того, какую помощь вы решили оказать, важно подробно описать ее.

Лицензия

Этот проект лицензируется по лицензии GNU GPL — подробности см. в файле LICENSE.

ЧаВо (FAQ)

  • Что делать, если Python не видит сторонние файлы и библиотеки?

    По умолчанию Pyright (LSP для Python) запускается в однофайловом режиме работы. Чтобы переключить режим работы на многофайловый, следует ознакомиться со следующей настройкой:

    root_dir = lsputil.root_pattern('.git', 'pyrightconfig.json', 'setup.py', 'setup.cfg', 'requirements.txt', 'Pipfile', 'pyproject.toml'),

    Данный параметр определяет файлы и директории, которые переводят Pyright в многофайловый режим работы. При обнаружении чего-либо указанного в параметре, Pyright будет видеть все содержимое данного каталога. Чтобы Pyright смог обнаружить сторонние библиотеки, нужно использовать виртуальное окружение. Для того чтобы его создать, выполните следующую команду в терминале в нужной вам директории до запуска NeoVim!

    python3 -m venv venv

    После активируйте его командой ниже:

    source venv/bin/activate

    Теперь запустите Neovim командой nvim в этом же каталоге. После всех проведенных манипуляций FixVim будет видеть как сторонние файлы, так и сторонние библиотеки.

    P.S: Если вам понадобится установить еще несколько библиотек внутри NeoVim, не забудьте вновь активировать виртуальную среду в выбранном терминале! Также после установки новых библиотек выполняйте команду :LspRestart в NeoVim для того, чтобы Pyright принял все внесенные изменения! Естественно, вам никто не запрещает сначала установить нужные библиотеки и только после этого зайти в NeoVim. Если вы уверены, что вам больше ничего не придется доустановить, то нет необходимости проделывать действия из этого блока.

  • Как сохранить существующую конфигурацию параллельно с FixVim? Для этого вы можете использовать псевдонимы вашей командной оболочки. Например, вы можете установить FixVim в ~/.config/fixvim и создать псевдоним:

    alias fixvim='NVIM_APPNAME="fixvim" nvim'

    Благодаря этому вы сможете запускать конфигурацию "по умолчанию" при помощи команды nvim, а сборку FixVim — при помощи команды fixvim. Также вы можете изменить псевдоним на любой другой и создать их сколько угодно. Дополнительно стоит отметить, что данный способ должен быть совместим с любой другой конфигурацией NeoVim.

    P.S: Учтите, что данная инструкция не была проверена мной лично! Данная информация была взята из документации к kickstart.nvim и адаптирована под данный проект!

  • Как запустить NeoVim без плагинов и других настроек? Для этого воспользуйтесь командой ниже:

    nvim --clean

About

FixVim — это конфигурация NeoVim для Linux, написанная на ЯП Lua, цель которой — предоставить разумную конфигурацию по умолчанию с невероятно быстрым временем запуска!

Topics

Resources

License

Stars

Watchers

Forks

Languages