Поиск по сайту:

Настройка нового терминала Windows


Обычно я начинаю новый год с очистки рабочего стола, избавляясь от всего хлама, который я накапливал за последние 12 месяцев. Но в этом году я начал с настройки своего Windows Terminal.

Я раньше писал о новом терминале Windows и делился советами по его стилизации. Но в этой статье мы сделаем шаг вперед.

Я заметил модуль PowerShell под названием oh-my-posh, который является движком тем для PowerShell. Его основное назначение - это использование с ConEmu, но он также работает и с PowerShell в целом, поэтому его можно использовать и с Windows Terminal.

Установите Windows Terminal

Если у вас еще не установлен Windows Terminal, то, конечно, вам следует начать с его установки. Это довольно просто: просто перейдите в магазин Windows и скачайте и установите его.

Обновления для Windows Terminal будут автоматически установлены с помощью магазина Windows.

Если вы использовали Windows Terminal с самого начала, вы можете лучше очистить файл profiles.json. Структура для profiles.json изменилась, начиная с версии 0.5. Поэтому убедитесь, что вы сделали резервную копию своего текущего профиля и удалите всё, что там есть.

Установка oh-my-posh, Nerd Fonts и POSH-Git

Следующим шагом является установка модуля PowerShell oh-my-posh. Это движок оформления для PowerShell.

Если вы используете GIT, вы также можете установить POSH-Git.

Install-Module posh-git -Scope CurrentUser #OPTIONAL
Install-Module oh-my-posh -Scope CurrentUser

Запустите приведенные выше команды в PowerShell. Это скачает и установит модули. Вы можете получить предупреждение, но вы можете смело его закрыть.

Шрифты для гурманов

Следующим шагом является установка шрифтов Nerd Fonts. Эти шрифты используются для всех значков и символов в PowerShell. На данный момент они говорят о том, чтобы добавить эти шрифты по умолчанию в Windows Terminal, но пока нам придется установить их вручную.

Вы можете скачать шрифты Nerd Fonts здесь, из этого репозитория Github. Убедитесь, что вы скачали Delugia.Nerd.Font.Complete, потому что он также включает эти красивые символы Powerline, которые мы будем использовать позже.

Настройка профиля Windows Terminal

Итак, теперь у нас всё установлено, теперь пришло время редактировать профили Windows Terminal и PowerShell. Мы начнем с профиля PowerShell, чтобы открыть ваш профиль, просто введите следующую команду в терминале:

notepad $PROFILE

В ваш профиль добавьте следующие 3 строки в конце

Import-Module posh-git #Optional - only if you are using Git
Import-Module oh-my-posh
Set-Theme paradox

Таким образом, модуль oh-my-posh загружается при запуске PowerShell, и тема устанавливается на парадокс. Вы можете найти тему по умолчанию, которая поставляется с oh-my-posh, здесь.

Профиль терминала Windows

Теперь фоновый цвет Windows Terminal по умолчанию темно-синий. Это действительно не выглядит красиво. Но с помощью Windows Terminal мы можем изменить это на что угодно. Откройте профиль, нажав следующую комбинацию клавиш ctrl+,.

Чтобы изменить внешний вид PowerShell, отредактируйте первый профиль с именем Windows PowerShell следующим образом:

    "profiles":
    [
        {
            "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
            "name": "Windows PowerShell",
            "commandline": "powershell.exe",
            "hidden": false,
            "fontFace":  "Delugia Nerd Font",
            "cursorColor": "#FFFFFF",
            "cursorShape": "bar",
            "fontSize" : 10,
            "background" : "#232524"
        },
       // Other profile are below here

Убедитесь, что вы установили шрифт на Delugia Nerd Font, а цвет фона на черный или темно-серый #232524. Если вы хотите узнать больше о создании индивидуальных профилей, вам стоит ознакомиться с этой статьей.

Ваша вкладка PowerShell в терминале Windows теперь должна выглядеть примерно так:

Желтая часть из Git, так что если вы не используете Git, вы её не увидите 😉

Изменение символа разделителя сегментов

Как вы, вероятно, заметили в первом абзаце, у меня другой разделитель между путем и Git. Это иконки PowerLine, но чтобы их получить, нам нужно будет создать пользовательскую тему для oh-my-posh.

Теперь это довольно просто, вы можете просто скопировать существующий и изменить его. Сначала нам нужно найти файлы Темы. Введите следующую команду в PowerShell:

$ThemeSettings

Здесь вы увидите CurrentThemeLocation и MyThemesLocation. Откройте CurrentThemeLocation и скопируйте файл paradox.psm1 в MyThemesLocation.

Переименуйте файл и откройте его в вашем любимом редакторе. В конце файла вы увидите все переменные для цветов и символов:

$sl = $global:ThemeSettings #local settings
$sl.PromptSymbols.StartSymbol = ''
$sl.PromptSymbols.PromptIndicator = [char]::ConvertFromUtf32(0x276F)
$sl.PromptSymbols.SegmentForwardSymbol = [char]::ConvertFromUtf32(0xE0C6)
$sl.Colors.PromptForegroundColor = [ConsoleColor]::White
$sl.Colors.PromptSymbolColor = [ConsoleColor]::White
$sl.Colors.PromptHighlightColor = [ConsoleColor]::DarkBlue
$sl.Colors.GitForegroundColor = [ConsoleColor]::Black
$sl.Colors.WithForegroundColor = [ConsoleColor]::DarkRed
$sl.Colors.WithBackgroundColor = [ConsoleColor]::Magenta
$sl.Colors.VirtualEnvBackgroundColor = [System.ConsoleColor]::Red
$sl.Colors.VirtualEnvForegroundColor = [System.ConsoleColor]::White

Здесь вы можете изменить SegmentForwardSymbol на один из символов PowerLines. Код UTF для символов вы найдете здесь на странице репозитория Github. Я использовал E0C6.

Теперь, чтобы загрузить свою тему, просто введите следующую команду: Set-Theme <ваше-имя-файла>. Чтобы загружать вашу тему при открытии PowerShell, вы можете изменить профиль PowerShell: notepad $profile и изменить строку Set-Theme.

Если у вас есть какие-либо предложения по настройке Windows Terminal/PowerShell, просто оставьте комментарий ниже!