Как вы меняете цветовую схему в bash на Ubuntu для Windows?

Ответы:

28

Это также хорошее и простое решение : https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c :

Добавьте это к .bashrc:

LS_COLORS='rs=0:di=1;35:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';
export LS_COLORS

PS1='\e[37;1m\u@\e[35m\W\e[0m\$ ' # this will change your prompt format

И я нашел это полезным для удобства чтения vim:

echo "set background=dark" >> .vimrc
Гильермо Гонсалес де Гарибай
источник
4
Но это не объясняет, что является каким-либо из этих параметров. Поскольку я хочу указать разные цвета, это не очень полезно для этого, кроме как методом проб и ошибок.
Аарон Брамсон,
1
каков синтаксис определения этих цветов? Например, как вы меняете цветовую палитру для каталогов? И для других вещей, определенных здесь?
xor
14

Проблема не относится к bash в Ubuntu для Windows, так как терминал все еще предоставляется conhost.exe.

Чтобы изменить цвета, вы можете перейти в настройки по умолчанию :

введите описание изображения здесь

И тогда вы можете щелкнуть каждый отдельный цвет и изменить его на другой цвет.

введите описание изображения здесь

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

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

Der Hochstapler
источник
1
Настройка Screen Textчерного цвета (0,0,0) и Screen Backgroundкакого-то светло-желтого (255,255,150) мне очень понравилась. Смотрите пример скриншота .
Ибо Ян
4
Терминал не предоставляется и никогда не был предоставлен cmd.exe. Консоль была предоставлена ​​непосредственно csrss из NT через XP, а затем conhost.exe начиная с Vista. Bash работает напрямую через conhost и никогда не касается cmd.
Боб
@YiboYang близко к вашему предложению, есть (255, 255, 221), которая является темой «черный на светло-желтом» из терминала Gnome.
Яманеко
3

Я не думаю, что пользовательский интерфейс позволяет вам изменять все цвета ANSI, вам придется редактировать их через реестр.

Уже есть тема с солнечными лучами, которая работает очень хорошо на https://github.com/neilpa/cmd-colors-solarized.

(закройте / откройте окно консоли для активации)

laktak
источник
3

То же решение, что и у других, с дополнительным объяснением для таких людей, как я ( https://medium.com/@iraklis/fixing-dark-blue-colors-on-windows-10-ubuntu-bash-c6b009f8b97c )

cd /home/<user>
ls -a

Вы должны найти .bashrc и сделать BU

cp .bashrc .bashrcBU

добавить 2 строки

echo "LS_COLORS='rs=0:di=1;35:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:';" >> .bashrc
echo "export LS_COLORS" >> .bashrc

перед изменением vim также фон, чтобы видеть правильно

echo "set background=dark" >> .vimrc

выйти и перезапустить

Тогда у вас все еще есть путь в имени с этим странным синим цветом. Вы можете изменить это через PS1. Здесь источник ( https://apple.stackexchange.com/questions/219125/is-there-a-way-to-change-the-font-color-of-the-current-path-in-termial )

echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$

По мне, balise [\ 033 [01; 34m] * [\ 033 [00m] является синим цветом, поэтому я меняю цвет на розовый [\ 033 [01; 34m] * [\ 033 [00m]] . Перезаписать PS1

@РЕДАКТИРОВАТЬ:

Вы можете сделать это таким образом, но он не будет постоянным, и эта переменная будет удалена в конце сеанса.

PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[00m\]\w\[\033[00m\]\$'

Чтобы сделать его постоянным, вы должны записать его в файл, который будет загружен в начале сеанса, например прецедент .bashrc.

echo "PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;35m\]\w\[\033[00m\]\$'" >> .bashrc
Дориан Грв
источник
3

Решение 2019:

Официальный ColorTool от Microsoft может использоваться для изменения общей цветовой схемы без необходимости устанавливать каждый цвет самостоятельно.

Просто скачайте zip-файл (найдите в Color Tool <Month> <Year>разделе « Релизы» ) и извлеките инструмент в любую папку. Затем запустите его из вашего bash:

# run in wsl bash (or any other windows terminal)
# note that -x is required for wsl
./ColorTool.exe -x <scheme name>

# for the change to have permanent effect go to properties and click ok

Затем вы можете легко импортировать другие цветовые схемы в формате iTerm, поместив .itermcolorsфайл в schemesпапку ColorTool.

А. Франк
источник
1

Вы можете использовать цветовую настройку Windows cmd для настройки boW. Просто нажмите на маленькую иконку Ubuntu в правом верхнем углу и нажмите Свойства.

Кроме того, чтобы настроить приглашение, вы можете использовать

export PS1="\e[0;31m[\u@\h \W]\$ \e[m "

который изменит только подсказку на красный и так далее.

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

пульсирующий воздушно-реактивный двигатель
источник
2
Диалог Свойства позволяет мне установить цвет переднего плана и фона, но не цветовую схему. Если я не пропустил что-то здесь.
Der Hochstapler
2
Хорошо, вы можете настроить цветовую схему таким образом. Вы должны выбрать цвет из палитры, настроить RGB, затем перейти к следующему и, наконец, выбрать, какой цвет фона вы хотите снова. Ваш ответ мог бы быть немного яснее
Der Hochstapler
0

Также ищет решение, нашел этот пост суперпользователя, а затем этот пост из MS Понимание настроек хоста консоли Windows

В основном это означает, что все настройки сохраняются в самом файле ярлыка при создании в меню «Пуск» / закреплено на панели задач. Который затем можно изменить, изменив свойства.

Все, включая цвета, можно настроить в записи реестра [HKEY_CURRENT_USER \ Console \ Git Bash], используя свойства, описанные в сообщении MS, но чтобы понять, что изменение bash.exe необходимо выполнить напрямую, запустив «C: \ Windows \ System32 \ bash.exe». "через Windows + R, чтобы заставить Windows прекратить чтение конфигурации после записей в реестре.

После того, как вы будете удовлетворены настройкой, создайте новые ярлыки ссылок на панели запуска и прикрепления к задачам (если это ваше дело).

Аргумент за то, что это так, легче ли управлять общими изменениями (например, попробовать новую цветовую схему?) Через файл .reg, чем через утомительное создание и сохранение изменений в файле ярлыков.

Боб Смит
источник