- 追加された行はこの色です。
- 削除された行はこの色です。
* Cygwin MSYSの256色対応 [#v47222b2]
*** Bashなど [#sb9d66dc]
** 概要 [#m80ae523]
- ConEmuはデフォルトでは256色対応していない。(ただし、minntty.exeをConEmuにアタッチすれば256色表示するけれど。)
- 256色対応するには、以下のcygwin/msys terminal connectorを使う。ただし、この機能はまだ実験的な機能とのこと。
- http://conemu.github.io/en/CygwinMsysConnector.html
** インストール [#x0419077]
- ConEmuを最新版にする。
- https://github.com/Maximus5/cygwin-connector/releases から最新版のコネクターのアーカイブをダウンロードする。
- アーカイブを展開して、自分の環境にあったコネクターを選ぶ。
-- Cygwin: conemu-cyg-32.exe and conemu-cyg-64.exe;
-- MSYS 1.0: conemu-msys-32.exe;
-- MSYS 2.0: conemu-msys2-32.exe and conemu-msys2-64.exe.
- 今回は64ビットのMSYS2とする。
- conemu-msys2-64.exeをMSYS2がインストールしてあるディレクトリ下のログインシェル(bash.exeなど)と同じ場所にコピーする。
- 今回は、C:\msys64\usr\bin だった。
** Bashの起動 [#qf66320d]
C:\msys64\usr\bin\conemu-msys2-64.exe --verbose
** タスク設定 [#o1f65b7a]
- ConEmuのメニューから、[Settings]を選ぶ。
- Settingsダイアログが開くので、左ペインより[Startup]->[Tasks]を選ぶ。
- [Predefined Tasks]より[+]を押下し、タスクを追加する。
- グループ名はBash::Msys2-ANSIなど適当につける。
- コマンドは以下のようにする。(パスは環境に合わせて変更すること)
- ポイントは-cur_console:h0でスクロールバッファをオフにすること。
set CHERE_INVOKING=1 & set MSYSTEM=MINGW64 &
"C:\msys64\usr\bin\conemu-msys2-64.exe" -cur_console:h0
-new_console:C:"%ConEmuDrive%\msys64\msys2.ico"
** Bash上での256色対応を確認する [#b96ed473]
#!/usr/bin/env perl
use strict;
use warnings;
my $fg = "\x1b[38;5;";
my $bg = "\x1b[48;5;";
my $rs = "\x1b[0m";
my $color = 0;
for (my $row = 0; $row < 32; ++$row) {
for (my $col = 0; $col < 8; ++$col) {
print get_color($color);
$color++;
}
print "\n";
}
sub get_color {
my ($color) = @_;
my $number = sprintf '%3d', $color;
return qq/${bg}${color}m ${number} ${rs} ${fg}${color}m${number}${rs} /;
}
- 上のPerlスクリプトを256.plなどとしてファイルに保存する。
- perl 256.plで実行する。
*** もう少し簡単に [#x97acfed]
echo -e "\e[1;33;40m Yellow on black \e[m"
** 参考 [#u02df1f0]
- http://conemu.github.io/en/CygwinMsysConnector.html
- http://superuser.com/questions/1030047/conemu-ls-256-colors-not-working