Microsoft недавно представили предварительную версию Windows 10 для разработчиков (т. н. Technical Preview), и многие сайты уже как следует успели осветить важные изменения по сравнению с предыдущей версией. Но мало кто обратил внимание на более мелкие изменения, как, например, в командной строке (и в узле консоли, лежащем в её основе). Их разбор представлен в статье Рафаэля Риверы, перевод которой и приводится ниже.

УвеличитьВот так выглядит новая «экспериментальная» вкладка в окне свойств командной строки Windows 10. Здесь расположены переключатели для включения и выключения экспериментальных функций и возможностей, действующих на все окна консоли — в том числе и на окно PowerShell.
Рассмотрим их подробнее.
Выделение с переносом (Enable line wrapping selection)

УвеличитьВ более ранних версиях командной строки для выделения многострочного текста и его копирования требовалось исхитриться захватить рамкой выделения консоль во всю её ширину и нажать клавишу «Ввод». И этим дело не кончалось. После этого нужно было вставить скопированный кусок текста в редактор, чтобы склеить строки между собой — ужасно длинный и трудоёмкий процесс.
Но теперь все эти мучения остались в прошлом. В Windows 10 текст выделяется и копируется таким же образом, что и в любом текстовом редакторе.
Фильтрация данных из буфера при вставке (Filter clipboard contents on paste)

УвеличитьНе приходилось ли вам вставлять команду и тут же обнаружить (после сообщения об ошибке), что она испорчена символами табуляции или типографскими кавычками? Мне приходилось. И больше такое не повторится благодаря новой функции фильтрации данных из буфера в Windows 10.
Теперь при вставке текста типографские кавычки будут заменены на прямые программистские, а лишние символы табуляции — убраны.
Перенос по словам при изменении размера окна (Wrap text output on resize)

УвеличитьИзменение размера окна командной строки никогда не было комфортной операцией. Если вы уменьшите его размер, тогда появится горизонтальная полоса прокрутки, а весь текст останется на месте и никоим образом не подстроится под новое разрешение. Об изменении ширины в большую сторону и речи быть не могло (разве что в окне свойств, и то коряво).
Но со включённой функцией переноса содержимого по словам окно и текст в нём будут вести себя именно так, как вы ожидаете.
Новые сочетания с клавишей Control (Enable new Ctrl key shortcuts)
В новой командной строке действуют и некоторые удобные новые комбинации клавиш. Я пишу «некоторые», поскольку ещё не совсем ясно, сколько их будет всего. Для этого надо дождаться выхода официальной документации, а пока что есть вот такой список:
- CTRL + A — выделить всё
- CTRL + C — копировать* (а также CTRL + INS)
- CTRL + F — найти
- CTRL + M — выделить
- CTRL + V — вставить (а также SHIFT + INS)
- CTRL + ↑/↓ — прокрутить на строку выше/ниже
- CTRL + PgUp/PgDn — прокрутить на страницу выше/ниже
* Работает как прерывание, если не выделен текст или при повторном нажатии после копирования.
Расширенные клавиши редактирования (Extended edit keys)
Насчёт этой функции известно немногое. Она существовала в Windows довольно долгое время, но до Windows 10 никогда не была в открытую доступна пользователям. Подробнее о ней сможет рассказать разве что официальная документация, когда она появится.
Отсечение нулей в начале при выделении (Trim leading zeros on selection)

УвеличитьЭтот параметр следует включить, если вы работаете со множеством численных данных в командной строке.
При выделении числа с нулями в начале (к примеру, двойным щелчком), рамка выделения начнётся после всех незначащих нулей. Например, 000001234 станет 1234. Правда, это не распространяется на шестнадцатеричные числа и десятичные с указанием системы счисления. Так что 0x1234 и 0n1234 будут выделены целиком.
(Не)прозрачность (Opacity)
Эта функция пока производит смешанные впечатления.
Ползунок двигается от еле видных 30% до стандартных 100%. Но при этом он действует на все без исключения окна командной строки в вашей системе, и помимо этого на всё окно консоли
целиком, а не только его фон (цвет фона, кстати говоря, как и раньше, настраивается в окне свойств).
С увеличением прозрачности всё больше страдает читаемость текста, так что не совсем понятно, кому понадобится эта функция в таком виде. Тем не менее, она является занятной технической демонстрацией и очевидной отсылкой на многолетние пожелания опытных пользователей Windows.
Вместо заключения
Сами разработчики, которые стоят за этими изменениями, говорят, что «это только начало» и «мы готовы выслушать любые ваши пожелания и предложения», а также организовали форум на UserVoice, доступный по этой ссылке:
wpdev.uservoice.com/forums/266908