Повышение уровня Windows Powershell с помощью Oh My Posh

На днях я сидел на YouTube в поисках быстрой победы в производительности и наткнулся на видео Скотта Хансельмана о создании идеального терминала Windows. В последнее время я стал больше заниматься разработкой веб-сайтов и игр на своей машине Windows, поэтому я решил попробовать и посмотреть, насколько улучшится мой опыт работы с оболочкой.

После 15 минут просмотра его видео я был захвачен и уже настраивал и адаптировал свою тему под свои нужды.

Я решил написать о своем процессе и шагах, которые я предпринял, чтобы добраться до моей окончательной настройки терминала. Процесс был похож на «oh my zsh» на Mac, если вы знакомы с этим.

Начало работы

Прежде всего, нам нужен PowerShell. Это будет работать и с другими оболочками, но для упрощения процесса мы начнем с PowerShell.

Windows 10 поставляется с «Windows Powershell», но это не то же самое, что Powershell. Вам нужно будет загрузить отдельную оболочку, если вы этого еще не сделали:

  1. Скачайте и установите Powershell

⚠️ Для управления разными оболочками рекомендуется использовать Windows Terminal. Это отдельная загрузка, но она автоматически подхватывает все имеющиеся у вас оболочки (от Windows PowerShell до PowerShell и даже WSL (aka Linux). Мне пришлось установить PowerShell по умолчанию в настройках терминала Windows.

Oh My Posh

Как Oh My Zsh для Mac, но для PowerShell. Стилизует ваш Powershell и отображает дополнительную информацию (например, текущую ветку Github).

Windows | Oh My Posh

Как сделать конечную панель терминала на Windows 11 — это видео длинное, многословное и подробное.

Начало работы

  1. Убедитесь, что Powershell установлен (см. верхнюю часть этой страницы).
  2. Установите oh-my-posh. Я использовал ручной метод.
  3. Перезапустите Powershell (или терминал Windows).
  4. Вы должны увидеть его! Но со сломанными шрифтами и отсутствующими глифами…
  5. Установите специальные шрифты от NerdFont (в основном шрифты + глифы, как FontAwesome).
    • Обычно вы можете найти свой любимый шрифт для кодирования (например, Fira Code или Jet Brains Mono).
  6. Зайдите в настройки терминала Windows, выберите настройки Powershell, перейдите в раздел «Внешний вид» и измените шрифт на тот, который вы скачали — он будет заканчиваться на NF (например, JetBrainsMono NF).
    • Вы также захотите сделать это для Visual Studio Code, если планируете использовать интегрированную оболочку/консоль.
  7. Теперь все должно выглядеть правильно! 🎆

🎨 Темы

Просмотрите все темы здесь или запустите Get-PoshThemes. Темы по умолчанию поставляются предустановленными с oh-my-posh в $env:POSH_THEMES_PATH.

Установите тему, открыв ваш $PROFILE (или .bashrc для WSL) и изменив инициализацию oh-my-posh, которую мы добавили ранее, с конфигурацией вашей темы. Здесь вы видите, что мы устанавливаем одну из тем по умолчанию — Night Owl:

oh-my-posh init pwsh --config $env:POSH_THEMES_PATHnight-owl.omp.json | Invoke-Expression
Вход в полноэкранный режим Выход из полноэкранного режима

⚠️ Вы можете использовать echo $PROFILE, чтобы увидеть, где находится профиль, и открыть его любым текстовым редактором, который вы предпочитаете.

Совет: Я использую команду code, чтобы открывать вещи в VSCode. Вы можете активировать ее, перейдя в Командную строку (CMD + Shift + P), набрав «bash» и установив ее оттуда.

Настройка | Oh My Posh

Моя тема

Я создал тему на основе powerlevel10k_modern и взял некоторые модули из night-owl, такие как монитор процессора, версия Node и версия PHP.

Oh My Posh — моя пользовательская тема (основана на powerlevel10k + night-owl)

Сторонние плагины

Это дополнительные дополнения к Windows Terminal, которые помогают улучшить работу (например, добавление значков или автозаполнение команд).

Автозаполнение с использованием истории

Предсказательный интеллисенс, основанный на истории командной оболочки — как умный поиск. Если вы часто заходите в определенные папки, они будут появляться в списке по мере ввода.

  1. Установите предварительную версию модуля (требуется 2.2.0-beta1 или выше по состоянию на 5/17/2022): Install-Module -Name PSReadLine -AllowPrerelease -Scope CurrentUser -Force -SkipPublisherCheck.
  2. Добавьте это в свой $PROFILE:
# Add auto complete (requires PSReadline 2.2.0-beta1+ prerelease)
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineOption -EditMode Windows
Вход в полноэкранный режим Выйти из полноэкранного режима

Иногда это было не так просто, как команды (что уж говорить о prerelease lol) — но эти ресурсы помогли заставить все работать.

GitHub — PowerShell/PSReadLine: Реализация readline на основе bash для PowerShell

Set-PSReadLineOption : Не найден параметр, соответствующий имени параметра ‘PredictionSource’ — проблема № 2189 — PowerShell/PSReadLine

Добавление Predictive IntelliSense в мой Windows Terminal PowerShell Prompt с помощью PSReadline

Иконки терминала

Это красивые иконки для различных папок и файлов, которые есть в проектах разработки. Если вы использовали VSCode и устанавливали какие-либо расширения иконок, вы, вероятно, знакомы с этим.

  1. Выполните эту команду для установки модуля: Install-Module -Name Terminal-Icons -Repository PSGallery.
  2. Добавьте это в ваш $PROFILE: Import-Module -Name Terminal-Icons.
  3. Обновите конфигурацию PS, выполнив: . $PROFILE
  4. Попробуйте запустить ls или dir, чтобы увидеть значки!

Еще раз спасибо Скотту Хансельману за подсказку!

Поднимите терминал Windows и PowerShell на новый уровень с помощью иконок терминала

Моя окончательная конфигурация

Для справки, вот окончательный файл конфигурации для моего терминала Windows (он же $PROFILE). Я также добавил несколько комментариев, в которых говорится об установке плагинов/модулей, о которых я упоминал выше (на всякий случай).

PowerShell Config — включает Oh My Posh, иконки терминала и автозаполнение с историей (требуется модуль, см. ниже)

Как выглядит ваша оболочка?

Теперь, когда я окунул свой палец в воду настройки оболочки, я определенно ищу вдохновение, чтобы улучшить свою настройку и сделать ее еще лучше. Напишите мне в Twitter и расскажите о своих настройках корпуса, я с удовольствием посмотрю на них.

Оцените статью
Procodings.ru
Добавить комментарий