Pull to refresh

Comments 48

Она, родимая. И по сравнению с раскраской ubuntu этот стандарт выглядит очень печально. Особенно dark blue, который даже на IPS невозможно разглядеть на черном :)
Я о том, что выбор цветов обусловлен не художественным вкусом дизайнеров Microsoft, а незыблемой пиксель-в-пиксельной совместимостью с дремучим DOS-ом.
Там, двадцать лет назад, тёмно-синий тоже был почти неразличим на чёрном :)
В досе, кстати, был драйвер ANSI.SYS, который позволял использовать ANSI-последовательности для раскрашивания текста.
В винде давно его уже сделали, называется «ansicon». Но там пока не очень удобная поддержка 64-битной powershell, долго настраивать.
Окуеть подход. Поменять цвет фона и шрифта в консоли средствами питона и правки реестра…
Накуя? хочешь поменять, поменяй через обычные настройки окна.
Речь не о дефолтных цвете фона и шрифта, а о значениях всех 16 возможных цветов фона и шрифта.
Там так то в RGB выставить можно значениями.
Или я не понимаю о чем вы?
Попытаюсь проиллюстрировать вопрос:

Например так:
(Get-Host).PrivateData.ErrorForegroundColor = "Green"
Да, я это уже признал ниже. Не расценил горизонтальную полоску с квадратиками как селектор номера цвета. Так что в силе только применение цветовых схем в один клик. Надеюсь, этого не мало? :)
В топике говорится про цвета, которые используют утилиты для вывода цветных сообщений.
Например Mercurial или GIT при выводе информации о истории, где номер ревизии выделяется особым цветом.
Накуя? хочешь поменять, поменяй через обычные настройки окна.


Потому что я программист.

Во-первых, чтобы читатели хабра могли в один клик применить скачанную из интернета цветовую схему.
Во-вторых, я меняю не только цвет фона и шрифта, но и остальные 14 цветов. Что-то я не вижу, где это сделать «через обычные настройки окна». Покажите, чтоли — уважте старика.
Ну и в-третьих, цветовые настройки консоли, которая прикреплена к таскбару windows 7 / windows 8 вообще только прораммно можно поменять. Если я ошибаюсь — покажите, где это сделать через «настройки окна», буду очен благодарен.

Ну и вас тоже с наступающим :)
но и остальные 14 цветов

А зачем, если вы видите в основном 2 цвета?

цветовые настройки консоли, которая прикреплена к таскбару windows 7

Ну могу сказать только за себя, не когда не запускаю с панели. Мне гораздо удобнее нажать 4 клавиши и быстро, чем изломать руку и тыкнуть 2.

Да и вообще, зачем менять цвета в сторону линуха?

И вас с наступающим :)
А зачем, если вы видите в основном 2 цвета?
Вовсе не факт. Смотря что в этой консоли запускать.

Да и вообще, зачем менять цвета в сторону линуха?
Очевидно, для тех, кто привык к консоли линуха (но не привык к DOS-у).
А зачем, если вы видите в основном 2 цвета?


Не-е-е-е, батенька. Это вы видите в основном два цвета. Мы обычно видим больше:



Ну могу сказать только за себя, не когда не запускаю с панели. Мне гораздо удобнее нажать 4 клавиши и быстро, чем изломать руку и тыкнуть 2.


Ну это же очевидно, Ватсон :). Значит эта статья не для вас — смело ставьте минус и чатайте дальше, на хабре много всего действительно интересного.

Да и вообще, зачем менять цвета в сторону линуха?


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

Я не из тех кто сразу бежит ставить минус.
Имхо: Не большой спор не причина ставить минус за статью.
2 цвета — это от бедности соот. утилит. Консоль может красивой и удобной, если её хорошо приготовить, что и пытается сделать автор. Правда, я так и не смог приготовить виндоcmd, чтобы в нем было действительно удобно работать. :(
Зато в линуксе — красота:
image
Только что сменил настройки цвета прикреплённого powershell через клик по цвету-выставление RGB. Получилось так. Я что-то не так делаю?
А, так вот где это меняется :). Значит все нормально, можно и вручную.
Через обычные настройки меняется цвет текста и фона в окне, но никак не те атрибуты, что можно установить с помощью SetConsoleTextAttribute().
А хохлому надо искать и скачивать O_O. На devianart пара цветовых схем точно была :)
есть подобное колдунство, но без сторонних программ, только за счет встроенной findstr.exe

@echo off
:ColorText Color String
::
:: Prints String in color specified by Color.
::
::   Color should be 2 hex digits
::     The 1st digit specifies the background
::     The 2nd digit specifies the foreground
::     See COLOR /? for more help
::
::   String is the text to print. All quotes will be stripped.
::     The string cannot contain any of the following: * ? < > | : \ /
::     Also, any trailing . or <space> will be stripped.
::
::   The string is printed to the screen without issuing a <newline>,
::   so multiple colors can appear on one line. To terminate the line
::   without printing anything, use the ECHO( command.
::
setlocal
pushd %temp%
for /F "tokens=1 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do (
  <nul set/p"=%%a" >"%~2"
)
findstr /v /a:%1 /R "^$" "%~2" nul
del "%~2" > nul 2>&1
popd
exit /b


А вообще, не хватает старой, доброй ANSI.SYS :(
Ну почему же не хватает, она есть, называется «ansicon». Но там пока не очень удобная поддержка 64-битной powershell, долго настраивать.
1. не хватает, потому что ее нет в системе. сторонних программ, утилит разных и пр. достаточно, но это не совсем то. Еще в NT/98 ее можно было прикрутить, но сейчас это уже изврат.
2. вы уж извините, но каноническая консоль это command.com и cmd.exe, а не новомодный powershell или какой-нибудь cscript.
Вся палитра элементарно настраивается мышкой в настройках консоли. Выбираете профиль Default, щёлкаете по цвету из набора, меняете параметры. Из набора выбираем фон и текст, и готово.
или командой COLOR. color 1c и получаем красный текст на синем фоне, но для всей консоли целиком, а не для одной строки
То есть, вместо того чтобы нормально разобраться с настройками повершелл один раз и банально скопировать полученный конфиг на другие системы, я должен найти, установить питон для винды, и потом заниматься вот таким рукоприкладством для каждого ярлычка.
А если у меня несколько десятков ярлычков.
А если у меня несколько десятков серверов с несколькими десятками ярлычков?
Как раз для тех, кто не хочет питон, я предварительно рассказал где именно cmd и powershell хранят свои настройки.

банально скопировать полученный конфиг на другие системы. А если у меня несколько десятков серверов с несколькими десятками ярлычков?


Расскажите старику, как вы собираетесь «банально» копировать конфиг для десятка серверов с несколькими десятками ярлычков?
Копирование конфига и ярлычков элементарно выполняется gpo, мигрирующим профилем, который живет на общем хранилище, в конце концов обычным копированием если машины вне домена.
Вы никогда не видели обычный десктоп любого банковского операциониста? у них на рабочих столах лежат десятки ярлыков для запуска десятков не очень мало связанных между собой систем ДБО — кредиты, работа со счетами и переводами, проверка Ваших паспортных данных, работа с юрлицами и так далее. Иногда на 15" экране места не хватает, весь рабочий стол забит разными нужными ярлычками.
У меня есть подозрение, что статья совсем не об этом — а о том как себе консоль раскрасить. Операционистам-то зачем консоль красть, да еще и массово? O_O
Это был ответ на прямой вопрос про копирование конфига и ярлычков с конкретным примером use case.
как не разукрашивай, все равно Windows консоли до Unix-вой как до Луны. я не представляю как можно удаленно работать с Windows через консоль… а с Unix-ом — без проблем.
есть пожелание… прежде чем минусовать, мотивируйте свою позицию… ибо если Вы хоть раз попытались работать с Windows не через Remote Desktop, а через консоль, думаю Вы бы меня поняли
Не надо грязи, все можно прекрасно и удаленно админить с помощью PowerShell
Вообще в статье написано что работает. Не работает больше чем один.
UFO just landed and posted this here
Ну «малофункциональность» оболочки тоже под вопросом. Есть ещё wmic, есть powershell. Просто кто-то никак не отлипнет от устаревшего баша.

Пару лет назад то-ли где-то на рандомном форуме, то-ли в жж видел забавное соревнование: человек писал аналоги башевских скриптов в винде, язык batch-файлов. И в общем успешно, и было чему поучиться.
Это подковывание блох. В принципе на любом инструменте можно решить любую задачу. И при изрядном количестве маны можно и на batch сделать примерно то же самое и даже примерно в то же количество строк кода что и на bash. Но усилий и знаний это потребует больше :(. Что экономически нецелесообразно по длинному ряду причин :).
Это вопрос знания инструмента. При наличии знаний — не придется городить огород.
Если нет желания париться с питоном, есть способ проще:

Закинуть содержимое в файлик с расширением .reg и запустить его
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console]
«ColorTable00»=dword:00240a30
«ColorTable01»=dword:000000cc
«ColorTable02»=dword:00069a4e
«ColorTable03»=dword:0000a0c4
«ColorTable04»=dword:00a46534
«ColorTable05»=dword:007b5075
«ColorTable06»=dword:009a9806
«ColorTable07»=dword:00cfd7d3
«ColorTable08»=dword:00535755
«ColorTable09»=dword:00ef2929
«ColorTable10»=dword:0034e28a
«ColorTable11»=dword:004fe9fc
«ColorTable12»=dword:00cf9f72
«ColorTable13»=dword:00a87fad
«ColorTable14»=dword:00e2e234
«ColorTable15»=dword:00eceeee
Sign up to leave a comment.

Articles