Neovim, но это в Windows

Буквально несколько дней назад я сказал себе, что, наверное, больше никогда не напишу статью о Неовиме… Ну вот и я.

Однако, в отличие от моего предыдущего поста, я обязательно буду читать этот менее 10 минут. И в этот раз мы поговорим о настройке Neovim для Windows.

Удивительно легко

Раньше я считал, что настройка Neovim для моей родной среды Windows будет довольно сложной и непоследовательной по сравнению с Linux. Но после клонирования моей установки Neovim, настроенной в Ubuntu всего за несколько минут, я с радостью обнаружил, что весь процесс был довольно простым.

Так что да, большая часть сэкономленного здесь времени связана с уже готовым набором файлов конфигурации, но это также показывает, что настройка Neovim с нуля в Windows — это более или менее тот же процесс, что и в Linux, который я перешли в этой статье:



Я настоятельно рекомендую поискать некоторые ресурсы (включая статью, указанную выше), если вы никогда раньше не работали с редакторами на основе Vim. В конце концов, помимо уборки дома, все, что мы здесь делаем, — это клонируем уже существующую конфигурацию Neovim. Но если вам нравятся полноценные редакторы кода (как и большинству людей), то у вас будет больше возможностей.

Установка Шоколадки

В отличие от Linux и похожей на macOS, в Windows нет встроенного менеджера пакетов (не говорите мне о winget). В то время как пользователи Ubuntu имеют apt по умолчанию, пользователи Arch предпочитают pacman, а пользователи macOS часто выбирают brew, choco (или Chocolatey) — это менеджер пакетов для Windows.

Мы будем использовать Chocolatey для установки Neovim, так что давайте начнем с этого:

  1. Откройте экземпляр командной строки или PowerShell с повышенными привилегиями (щелкните правой кнопкой мыши -> «Запуск от имени администратора»).
  2. Запустить Get-ExecutionPolicy — если он возвращает Restricted, то запустить либо Set-ExecutionPolicy AllSigned, либо Set-ExecutionPolicy Bypass -Scope Process
  3. Запустите следующее:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

И теперь Chocolatey должен быть установлен! Запустите choco, и вы должны увидеть вывод, который выглядит следующим образом:

Установка Neovim и добавление его в PATH

Теперь, когда у нас есть Chocolatey, мы можем использовать его для установки Neovim с choco install neovim. Как только Chocolatey завершит установку Neovim, он может сразу не работать (например, Runningnvim выдает ошибку, показывающую, что это не распознанная команда). В этом случае нам нужно будет добавить Neovim в нашу переменную окружения PATH.

Вы можете сделать это, нажав клавишу Windows и найдя опцию «Редактировать системные переменные среды».

Оказавшись на этом экране, выберите «Переменные среды…», после чего откроется другое окно.

Выберите переменную среды PATH, а затем нажмите кнопку «Изменить…» под ней.

Здесь выберите «Новый» и добавьте путь, по которому был установлен Neovim. Для меня это был C:\tools\neovim\nvim-win64\bin, но я видел немного другие пути, так что обязательно подтвердите свой.

Излишне говорить, что nvim по-прежнему не будет работать в уже открытых терминалах. Вместо того, чтобы открывать другой терминал, вы можете просто запустить эту команду из Chocolatey, которая обновит переменные среды: RefreshEnv.cmd. И теперь команда nvim должна привести к открытию Neovim!

Клонирование

Теперь пришло время клонировать конфигурацию Neovim, и правильный путь для этого можно найти, выполнив Win + R (Windows Run), введя %appdata% и нажав ENTER. Перейдите на один каталог назад из Roaming, а затем войдите в Local.

В Local Neovim будет искать папку с именем nvim, поэтому все, что нам нужно сделать сейчас, это открыть терминал в текущем каталоге, клонировать выбранный вами репозиторий, а затем переименовать эту клонированную папку в nvim, если она еще не была названа. как таковой.

Если вам нужна моя конфигурация, запустите это:

git clone https://github.com/kevinfengcs88/neovim-config

Это создаст папку с именем neovim-config. Просто измените эту папку на nvim, и в следующий раз, когда вы откроете Neovim, все должно загрузиться правильно.

Но есть только одна маленькая проблема… Где все наши замечательные значки? Без Nerd Font мы не сможем отобразить все удивительные глифы и символы, которые делают Neovim таким чистым. Проводник файлового дерева выглядит особенно одиозно…

Установка терминала Windows

Прежде чем мы даже установим шрифт Nerd, нам понадобится терминал, совместимый с шрифтами Nerd, и, к сожалению, командная строка и PowerShell не только уродливы (извините), но и не принимают шрифты Nerd.

Windows Terminal — это эмулятор терминала с несколькими вкладками, внутри которого можно запускать PowerShell, командную строку или даже Azure Cloud Shell. Что еще более важно, он поддерживает Nerd Fonts. Если у вас есть доступ к Microsoft Store, вы можете просто установить его оттуда с помощью графического интерфейса. К сожалению, у моего рабочего стола есть некоторые проблемы с Microsoft Store, поэтому мне пришлось провести небольшое исследование.

Перейдите к Выпускам Windows Terminal на GitHub и найдите Последний выпуск.

Прокрутите вниз до раздела «Активы» и загрузите файл, оканчивающийся на .msixbundle. Теперь, когда этот файл загружен, есть несколько различных способов фактической установки Windows Terminal.

Один из способов — просто запустить файл .msixbundle, который позволит вам установить Window Terminal через графический интерфейс:

Другой способ — использовать команду PowerShell (конечно, в вашем каталоге Downloads):

Add-AppxPackage [name]

Замените [name] на полное имя загруженного файла .msixbundle.

После того, как вы установили Windows Terminal, вы должны найти его в разделе «Недавно добавленные» при открытии меню «Пуск» Windows. Я бы порекомендовал закрепить его в меню «Пуск», чтобы его было легче найти.

Установка шрифта Nerd

Теперь, когда у нас есть терминал Windows, давайте установим Nerd Font. Опять же, есть несколько способов сделать это, один из которых включает посещение nerdfonts.com, а другой — его соответствующий репозиторий GitHub. Я рассмотрел последний в этом разделе одной из моих предыдущих статей, поэтому на этот раз я буду устанавливать его с веб-сайта Nerd Fonts.

Перейдите на страницу «Загрузки» веб-сайта Nerd Fonts, и вы увидите кучу шрифтов:

Найдите свой любимый шрифт, а затем загрузите его. Перейдите к ZIP-файлу шрифта, который вы только что загрузили, а затем найдите «обычный» вариант шрифта:

Откройте этот файл, а затем установите шрифт в Windows.

Чтобы убедиться, что шрифт установлен, вы можете перейти в «Настройки шрифта» в Windows и найти его.

Завершение

Наконец, с терминалом, поддерживающим шрифты Nerd и установленным шрифтом Nerd, мы можем увидеть Neovim во всей его истинной красе, выполнив всего несколько шагов.

Откройте терминал Windows и щелкните правой кнопкой мыши в любом месте в заголовке окна:

Нажмите «Настройки», а затем перейдите на вкладку «По умолчанию» на боковой панели:

Прокрутите вниз до «Внешний вид»:

И, наконец, измените параметр «Начертание шрифта»:

И мы наконец закончили!

Заключение

Настройка Neovim для Windows — это довольно простой процесс, исходящий от человека, который работает с Neovim только в среде Linux. Практически все то же самое — просто немного другой путь для хранения файлов конфигурации.

Neovim в Windows также примерно в три раза медленнее при запуске по сравнению с моей средой Linux, а при «холодном» запуске (когда для Neovim не выделяются ресурсы, так как он не открывался в течение нескольких часов) чем в 10 раз медленнее.

Мой холодный запуск в Linux составляет около 200 или 250 мс, в то время как обычный запуск составляет 100 мс или чуть меньше. В Windows, однако, нормальный запуск колеблется около 280 мс, а холодный запуск занимает чрезвычайно вялые 2000+ мс (да, целых 2 секунды). Это определенно то, что мне нужно изучить и оптимизировать, поскольку теперь я буду использовать Neovim всякий раз, когда у меня будет работа в Windows.

Спасибо за прочтение! До новых встреч, друзья :)

Кевин Фенг || Сайт || Гитхаб || ЛинкедИн || Средний(вы уже здесь!)

Источники

https://windowsreport.com/windows-terminal-windows-10/

https://chocolatey.org/install#individual