Новые возможности консоли CMD в Windows 10 Technical Preview

Dragokas

Angry & Scary Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
7,813
Реакции
6,592
Windows 10: новые возможности и функции в командной строке

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

scr1.png

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

Рассмотрим их подробнее.


Выделение с переносом (Enable line wrapping selection)
scr1_1.png

В более ранних версиях командной строки для выделения многострочного текста и его копирования требовалось исхитриться захватить рамкой выделения консоль во всю её ширину и нажать клавишу «Ввод». И этим дело не кончалось. После этого нужно было вставить скопированный кусок текста в редактор, чтобы склеить строки между собой — ужасно длинный и трудоёмкий процесс.

Но теперь все эти мучения остались в прошлом. В Windows 10 текст выделяется и копируется таким же образом, что и в любом текстовом редакторе.

Фильтрация данных из буфера при вставке (Filter clipboard contents on paste)

scr2.png


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

Теперь при вставке текста типографские кавычки будут заменены на прямые программистские, а лишние символы табуляции — убраны.

Перенос по словам при изменении размера окна (Wrap text output on resize)
scr_3.png

Изменение размера окна командной строки никогда не было комфортной операцией. Если вы уменьшите его размер, тогда появится горизонтальная полоса прокрутки, а весь текст останется на месте и никоим образом не подстроится под новое разрешение. Об изменении ширины в большую сторону и речи быть не могло (разве что в окне свойств, и то коряво).

Но со включённой функцией переноса содержимого по словам окно и текст в нём будут вести себя именно так, как вы ожидаете.

Новые сочетания с клавишей 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)

scr4.png


Этот параметр следует включить, если вы работаете со множеством численных данных в командной строке.

При выделении числа с нулями в начале (к примеру, двойным щелчком), рамка выделения начнётся после всех незначащих нулей. Например, 000001234 станет 1234. Правда, это не распространяется на шестнадцатеричные числа и десятичные с указанием системы счисления. Так что 0x1234 и 0n1234 будут выделены целиком.

(Не)прозрачность (Opacity)

Эта функция пока производит смешанные впечатления.

Ползунок двигается от еле видных 30% до стандартных 100%. Но при этом он действует на все без исключения окна командной строки в вашей системе, и помимо этого на всё окно консоли целиком, а не только его фон (цвет фона, кстати говоря, как и раньше, настраивается в окне свойств).

С увеличением прозрачности всё больше страдает читаемость текста, так что не совсем понятно, кому понадобится эта функция в таком виде. Тем не менее, она является занятной технической демонстрацией и очевидной отсылкой на многолетние пожелания опытных пользователей Windows.

Вместо заключения

Сами разработчики, которые стоят за этими изменениями, говорят, что «это только начало» и «мы готовы выслушать любые ваши пожелания и предложения», а также организовали форум на UserVoice, доступный по этой ссылке: wpdev.uservoice.com/forums/266908

Оригинал статьи: Rafael Rivera — New experimental console features in Windows «Threshold».
Источник перевода: habrahabr
 
Хочу сделать несколько комментариев от себя:

- недавно мой товарищ sov44 сообщил, что консоль в Win10 претерпела изменений,
а значит грех было не пощупать ее собственными руками.

Честно, очень удивлен и впечатлен, что M$ вдруг вспомнила о наличие в ее составе такой программки как CMD,
и решила за 20 лет что-то наконец внести новое.

Давайте же запустим Win + R и введем заветные CMD.

start.jpg


Стоит заметить, шрифт стал весьма тонким и компактным по размеру (Consolas 14pt).
Весьма приятно. Экономия места. Больше текста можно увидеть без прокрутки.
Вот для сравнения в Windows 8 шрифт "Точечный" (Raster) 8x12:

big_font.jpg


Кстати, на счет прокрутки - тоже удобно. Pg UP, Pg Down, стрелки вверх, вниз - все это работает.

Теперь нажимаем системную кнопку "Окошко" -> ух-ты реальный полноэкранный режим.

Пора открыть опции: контекстный клик по заголовку окна -> "Properties".

insert mode.jpg


И сразу видим еще одну радость: опция "выделения мышью" включена сразу по-умолчанию.
Помните, я рекомендовал ее включить в своей статье ?

Идем дальше:
Вкладка "Расположение".

Position.jpg


И ... о, чудо: ширина консоли = 120. И именно столько я советовал Вам поставить. Видимо ребята из M$ тоже читают мои статьи :)
Высота 30 символов. А буфер для памяти текста по высоте = 9001 символ. Прекрасно.

Вкладка "Цвета" - ничего не изменилось. А как бы хотелось выбор через палитру !
Но ведь и так вполне красиво?

opoc_4.png


rose_3.png



Появилась волшебная :) вкладка "Experimental" (о ней уже рассказал Rafael Rivera).
Я же продемонстрирую эффект прозрачности.

opacity.jpg


Как по мне - приемлемо. Текст виден. Прозрачность не мешает.

Замечу, что в настройках нигде нельзя увидеть % прозрачности
(цифр нет, а индикатор сбрасывается на 100%, если войти в свойства еще раз),
тем не менее способ есть - зайдем в редактор реестра:

Win + R -> Regedit -> HKCU\Console\%SystemRoot%_system32_cmd.exe
@WindowAlpha - здесь мы найдем настройку прозрачности (от 80 до 255).

А вот так выглядит максимальный уровень прозрачности (80):

WindowAlpha.jpg


Поговорим о комбинациях клавиш (не буду повторять слова Rafael Rivera).

Для меня приятным сюрпризом стали еще и такие:

Shift + End - выделение текста до конца вправо.
Shift + Home - выделение текста до конца влево.
Ctrl + A (все же уточню), - если нажать ее в строке, где Вы написали команду, то выделится вся строка.
Если в строке пусто, то выделиться весь экран консоли.
__________________________________________________________________

И конечно же, как самый злой человек этого мира,
я просто не мог не попробовать свой излюбленный баг "Application Crash" в деле :Biggrin:

cons_crash.jpg


Работает :) Ну то есть баг, а не консоль.

Надеюсь в будущем M$ исправит все замеченные баги и прислушается
к предложениям пользователей по новым улучшениям.

Вы также можете поучаствовать в развитии экспериментального проекта и проголосовать
на специальной странице, посвященной командной строке,
где уже первым пунктом идет предложение "сделать несколько вкладок" в стиле bash.

Спасибо читателям за внимание.
 
Последнее редактирование:
Прозрачность - это классно и масштабирование консоли тоже. Первый раз с прозрачностью столкнулся на Lubuntu и очень понравилось. И тут такой сюрприз от MS !
 
Назад
Сверху Снизу