В этой статье мы рассмотрим Терминал Windows, идеальное дополнение к WSL2. Он быстрый, настраиваемый, отлично выглядит и предлагает все преимущества разработки как для Windows, так и для Linux.
Windows полностью приняла Linux, и WSL2 делает это безупречным.
К терминалу вашего дистрибутива можно получить доступ:
- щелкнув значок меню Пуск
- ввод wsl или bash в Powershell или командной строке
- с помощью стороннего терминала, такого как Cmder, ConEmuи Hyper с профилем, который запускает%windir%\system32\bash.exe ~
- установка Linux в качестве оболочки по умолчанию в VS Code, нажав Ctrl+ Shift+ Pи набрав / выбрав Терминал: выберите оболочку по умолчанию и выберите WSL Bash.
Терминал Windows (загружаемый из Microsoft Store) предлагает дополнительный выбор, но вы не пожалеете об его установке. Новые возможности приложения:
- поддержка WSL2, SSH, Powershell, cmd и других командных строк
- несколько вкладок и разделенных панелей
- настраиваемые темы, фоновые изображения и эффекты прозрачности
- окно поиска
- пользовательские привязки клавиш
- Рендеринг текста с ускорением на GPU
- красивый новый шрифт Cascadia Code
- низкое использование ресурсов (обычно 10 МБ на вкладку)
- автоматическое обновление (при использовании Microsoft Store)
Как установить терминал Windows
Самый простой способ установить Терминал Windows — через Microsoft Store:
ms-windows-store://pdp/?ProductId=9n0dx20hk701
Если эта ссылка не работает, попробуйте открыть Microsoft Store в своем браузере или запустить приложение Microsoft Store из меню «Пуск» Windows и выполнить поиск по запросу «Терминал».
Примечание: будьте осторожны, чтобы не выбрать более раннее приложение «Windows Terminal Preview».
Нажмите » Получить» и подождите несколько секунд для завершения установки.
Если у вас нет доступа к Магазину, вы можете загрузить последнюю версию с GitHub.
Windows Terminal значок приложения теперь доступны в меню Пуск в Windows. Для облегчения доступа щелкните значок правой кнопкой мыши и выберите » Закрепить на начальном экране» или » Еще», а затем — » Закрепить на панели задач«.
Начало работы с терминалом Windows
При первом запуске Windows Terminal запускается с Powershell в качестве профиля по умолчанию. Выпадающее меню доступно для запуска других вкладок и доступа к настройкам :
Терминал автоматически генерирует профили для всех установленных вами дистрибутивов WSL и оболочек Windows, хотя можно отключить генерацию в глобальных настройках.
Управление вкладками и панелями
Откройте новую вкладку для профиля по умолчанию, нажав на + или значок Ctrl+ Shift+ T. Чтобы открыть вкладку для другого профиля, выберите ее из раскрывающегося меню или нажмите Ctrl+ Shift+ N, где N — номер профиля.
Нажмите Alt+ Shift+, D чтобы продублировать и разделить панель. Активная панель делится на две части по самой длинной оси при каждом использовании:
Чтобы принудительно создать:
- вертикальная панель, нажмите Alt+ Shift+ +или
- горизонтальная панель, нажмите Alt+ Shift±
Чтобы открыть другой профиль на новой панели, удерживайте Altклавишу при выборе его в раскрывающемся меню.
Удерживайте Altи используйте клавиши курсора для переключения между активными панелями с клавиатуры. Размер панели можно настроить, удерживая Alt+ Shiftи используя клавиши курсора для соответствующего изменения размера.
Вкладки можно переименовать, дважды щелкнув текст. Вы также можете изменить имя или цвет, щелкнув вкладку правой кнопкой мыши и выбрав пункт меню:
Это влияет только на текущую вкладку, он не меняет профиль навсегда.
Чтобы закрыть активную панель или вкладку, нажмите Alt+ Shift+ Wили введите стандартную команду выхода терминала (обычно exit).
Размер текста
Размер текста активного терминала можно изменить с помощью Ctrl+ +и Ctrl+ -. Также можно удерживать Ctrlи прокручивать колесико мыши.
Прокрутка
Используйте полосу прокрутки для навигации по выводам терминала. Либо удерживайте Ctrlи нажимайте курсор вверх, курсор вниз Page Upили Page Downдля навигации с помощью клавиатуры.
Поиск
Нажмите Ctrl+ Shift+, F чтобы открыть окно поиска:
Введите любой термин, затем используйте значки вверх и вниз для поиска вывода терминала. Щелкните Aaзначок, чтобы активировать или деактивировать соответствие с точным регистром.
Скопировать и вставить
По умолчанию копирование и вставка привязаны к Ctrl+ Shift+ Cи Ctrl+ Shift+ Vсоответственно, хотя Ctrl+ Cи Ctrl+ Vтакже будут работать.
Примечание: будьте осторожны, так как Ctrl+ Cможет завершить работу приложения Linux, поэтому Shiftрекомендуется использовать.
Параметр автоматического копирования при выборе доступен в глобальных настройках, и вы также можете вставить текущий элемент буфера обмена, щелкнув правой кнопкой мыши.
Настройки
Доступ к настройкам осуществляется из раскрывающегося меню или Ctrl+,(запятая). Конфигурация определяется в одном settings.jsonфайле, поэтому вам может быть предложено выбрать текстовый редактор. VS Code — отличный выбор, хотя Блокнот подойдет, если вы хотите редактировать без цветового кодирования и проверки синтаксиса.
settings.json элементы управления:
- глобальные настройки, которые применяются ко всем профилям
- настройки профиля, которые определяют профили
- пользовательские настройки цветовой схемыи
- настройки привязки клавиш
Файл имеет следующий формат:
// This file was initially generated by Windows Terminal { // general settings, e.g. "initialRows": 40, // profile settings "profiles": { "defaults": { // settings that apply to all profiles } "list": [ // list of individual profiles, e.g. { "guid": "{81d1dceb-c123-5678-90a1-123abc456def}", "name": "Windows PowerShell", "commandline": "powershell.exe" }, { "guid": "{91d1dceb-c123-5678-90a1-123abc456def}", "name": "Ubuntu", "source": "Windows.Terminal.Wsl" } ] } // custom color schemes, e.g. "schemes": [ { "name": "My new theme", "cursorColor": "#FFFFFF", "selectionBackground": "#FFFFFF", "background" : "#0C0C0C", "foreground" : "#CCCCCC" } ], // custom key bindings, e.g. "keybindings: [ { "command": "find", "keys": "ctrl+shift+f" } ] }
Значения по умолчанию определены в defaults.json. Откройте его, удерживая нажатой Altкнопку » Настройки» в раскрывающемся меню.
Предупреждение: не меняйте файл по умолчанию! Используйте его для просмотра настроек по умолчанию и, при необходимости, для добавления или изменения настройки в settings.json.
Глобальные настройки
Следующие глобальные настройки являются наиболее полезными, хотя другие задокументированы в документации Терминала.
«defaultProfile» определяет GUID профиля, который используется по умолчанию при запуске Windows Terminal.
Установите «copyOnSelect»для trueавтоматического копирования выделенного текста в буфер обмена без необходимости нажимать Ctrl+ Shift+ C.
Установите, «copyFormatting»чтобы falseпросто копировать простой текст без какого-либо стиля. (Хотелось бы, чтобы это было по умолчанию для всех приложений!)
Задайте «initialColumns»и «initialRows«равным количеству знаков для горизонтального и вертикального размеров.
«tabWidthMode» может быть установлен на:
- «equal»: каждая вкладка одинаковой ширины (по умолчанию)
- «titleLength»: каждая вкладка устанавливается равной ширине ее заголовка, или
- «compact»: неактивные вкладки уменьшаются до ширины их значка.
«disabledProfileSources«устанавливает массив, который предотвращает автоматическое создание профилей. Например:
"disabledProfileSources": [ "Windows.Terminal.Wsl", "Windows.Terminal.Azure", "Windows.Terminal.PowershellCore" ],
Это отключит все сгенерированные профили; удалите те, которые хотите сохранить.
Настройки профиля
Новые профили определяются создания группы объектов в «profiles», «list«массиве. Пример WSL2 Ubuntu:
{ "guid": "{91d1dceb-c123-5678-90a1-123abc456def}", "name": "Ubuntu", "source": "Windows.Terminal.Wsl", "startingDirectory": "//wsl$/Ubuntu/home/username/", "colorScheme": "Tango Dark", "useAcrylic": true, "acrylicOpacity": 0.75, "hidden": false },
Каждый профиль определяется со следующими настройками:
параметр | описание |
«guid» | уникальный идентификатор (обязательно). Для новых профилей вы можете сгенерировать GUID онлайн на сайте guidgen.com. |
«source» | генератор профилей. Это используется только в том случае, если профиль был добавлен автоматически, и его нельзя редактировать. |
«commandline» | исполняемый файл для запуска, если установлено no «source». Например, это может быть команда SSH, такая как»ssh yourname@domain.com» |
«startingDirectory» | каталог, в котором запускается оболочка. Для дистрибутивов WSL лучше всего указать, «//wsl$/Ubuntu/home/username/»где usernameпользователь создается во время установки. |
«name» | имя профиля, отображаемое в раскрывающемся меню |
«tabTitle» | имя, показанное в заголовке вкладки |
«suppressApplicationTitle» | установить trueдля принудительного использования «tabTitle»или «name»в bash |
«icon» | полный путь к значку, показанному в раскрывающемся списке и на вкладке, например «C:/images/tux.png». 24-битные PNG — лучший вариант; к сожалению, SVG не поддерживаются |
«hidden» | если установлено true, профиль не отображается в раскрывающемся меню |
«fontFace» | использовать определенный шрифт |
«fontSize» | использовать конкретное целое число размера шрифта |
«fontWeight» | используйте шрифт определенного веса. Это может быть OpenType целое число или ключевое слово: «normal», «thin», «extra-light», «light», «semi-light», «medium», «semi-bold», «bold», «extra-bold», «black»,»extra-black» |
«padding» | отступ вокруг текста на краю окна. Можно установить одно, два или четыре значения с разделителями-запятыми, например, «1, 2, 3, 4″установить левое, верхнее, правое и нижнее соответственно. |
«antialiasingMode» | метод сглаживания. Установите «grayscale»(по умолчанию) «cleartype», или»aliased» |
«cursorShape» | тип курсора. Установите «bar»(по умолчанию), «vintage», «underscore», «filledBox», или»emptyBox» |
«cursorHeight» | высота «vintage»курсора, определяемая как целое число от 25до100 |
«cursorColor» | цвет курсора, определенный как «#rgb»или»#rrggbb» |
Наконец, добавьте «experimental.retroTerminalEffect»: trueв профиль ретро-эффект ЭЛТ!
Настройки цветовой схемы
Каждому профилю «colorScheme«можно присвоить имя любой цветовой схемы, включенной в defaults.json. Например:
«Campbell»:
«Campbell Powershell»:
«One Half Dark»:
«One Half Light»:
«Tango Dark»:
«Tango Light»:
«Vintage»:
Создайте свою собственную цветовую схему
Ваши собственные объекты схемы могут быть определены в «schemes«массиве в формате settings.json. Каждый цвет определяется шестнадцатеричным значением. Например:
"schemes": [ { "name": "My New Theme", "foreground": "#EEEEEE", "background": "#111111", "cursorColor": "#FFFFFF", "black": "#000000", "red": "#CC0000", "green": "#4E9A06", "yellow": "#C4A000", "blue": "#3465A4", "purple": "#75507B", "cyan": "#06989A", "white": "#EEEEEE", "brightBlack": "#555753", "brightRed": "#EF2929", "brightGreen": "#8AE234", "brightYellow": "#FCE94F", "brightBlue": "#729FCF", "brightPurple": "#AD7FA8", "brightCyan": "#34E2E2", "brightWhite": "#FFFFFF" } ],
Затем схему можно использовать, добавив ее «name» в «colorScheme«настройки профиля. Например:
"colorScheme": "My New Theme"
Настройки привязки клавиш
«keybindings»Массив в settings.jsonпереопределениях или дополнениях клавиша по умолчанию, установленный в defaults.json. Каждая привязка клавиш определяется как объект с «command«комбинацией клавиш и «keys». Например:
// Ctrl + Shift + F to open the search box { "command": "find", "keys": "ctrl+shift+f" },
В некоторых случаях это «command»может быть приложение «action«с одним или несколькими аргументами. Например:
// Ctrl + Shift + 1 to open the first profile in a new tab { "command": { "action": "newTab", "index": 0 }, "keys": "ctrl+shift+1" },
«keys»Значение принимает модификаторы ctrl+, shift+и alt+затем:
тип | ключи |
функциональные клавиши | f1-f24 |
буквенно-цифровые клавиши | a-z, 0-9 |
символьные клавиши | -, =, [, ], \, ;, ‘,,,.,/ |
клавиши курсора | down, left, right, up, pagedown, pageup, pgdn, pgup, end, home,plus |
клавиши действий | tab, enter, esc, escape, space, backspace, delete,insert |
клавиши цифровой клавиатуры | numpad_0-numpad_9, numpad0-numpad9, numpad_add, numpad_plus, numpad_decimal, numpad_period, numpad_divide, numpad_minus, numpad_subtract,numpad_multiply |
Например, если вы хотите открыть поле поиска с помощью Ctrl+ F, вы можете добавить строку в «keybindings«массив в settings.json:
"keybindings": [ { "command": "find", "keys": "ctrl+f" } ]
Поле поиска также откроется с Ctrl+ Shift+, Fпотому что этот параметр определен в defaults.json-, если вы не назначите комбинацию клавиш другой команде.
Параметры командной строки
Терминал Windows можно запустить с ярлыка или с любого терминала Windows или Linux, запустив его wt.exe. Поддерживаются следующие варианты:
вариант | описание |
—help, -h, -?,/? | отображает справку |
—maximized, -M | запуск максимизирован |
—fullscreen, -F | запускать в полноэкранном режиме |
Вы также можете передать список команд, разделенных точкой с запятой. Команды используются для определения новых вкладок и панелей с дополнительными параметрами управления:
команда | параметры | описание |
new-tab | —profileили -p, —startingDirectoryили -d, commandline,—title | открыть новую вкладку |
split-pane | —horizontalили -H, —verticalили -V, —profileили -p, —startingDirectoryили -d, commandline,—title | открыть новую панель |
focus-tab | —target или же -t | сфокусировать вкладку |
Примеры
Следующие примеры необходимо запускать из стандартной cmdкомандной строки или ярлыка.
Открыть терминал для Windows с Ubuntuи Windows Powershellзакладками:
wt -p "Ubuntu" ; new-tab -p "Windows PowerShell"
Откройте Windows Terminal с Ubuntu, Windows Powershell, и Command Promptпрофили в отдельных областях:
wt -p "Ubuntu" ; split-pane -V -p "Windows PowerShell" ; split-pane -H -p "Command Prompt"
Дополнительные примеры запуска Windows Terminal из оболочки Linux или Powershell доступны в документации Windows Terminal.
Заключение
Надеюсь, вам понравилось это введение в Windows Terminal. Как уже было сказано, это идеальное дополнение к WSL2. Он быстрый, настраиваемый, отлично выглядит и предлагает все преимущества разработки как для Windows, так и для Linux.