eix-0.27.1 になって、出力がやたらブリンクするようになって、見づらいこと甚だしい。
などと文句を言っているバグがあるか探したけど無かった。
え、みんなこれ平気なの?
とりあえず、パッチを当ててみよう、と ebuild の中を覗くと src_prepare に epatch_user という行があった。
これはどこかにパッチを置くと勝手に当ててくれるやつだ、とまでは思い出したが、勿論詳細は思い出せないのでぐぐる。
/etc/portage/patches/ だった(prefix の場合は当然前に EPREFIX が付いた場所)。
diff -ur src/eixTk.orig/ansicolor.cc src/eixTk/ansicolor.cc
--- src/eixTk.orig/ansicolor.cc 2012-09-19 06:11:02.000000000 +0900
+++ src/eixTk/ansicolor.cc 2012-10-05 00:00:00.000000000 +0900
@@ -147,7 +147,7 @@
static const unsigned int kLen = 10;
char buf[kLen];
if(iscol < 0) {
- snprintf(buf, kLen, ";%d;5;%s", static_cast(col), curr.c_str());
+ snprintf(buf, kLen, ";%d;25;%s", static_cast(col), curr.c_str());
} else {
snprintf(buf, kLen, ";%d", static_cast(col));
}
diff -ur src/eixTk.orig/ansicolor_print.cc src/eixTk/ansicolor_print.cc
--- src/eixTk.orig/ansicolor_print.cc 2012-09-20 02:29:48.000000000 +0900
+++ src/eixTk/ansicolor_print.cc 2012-10-05 00:00:00.000000000 +0900
@@ -54,7 +54,7 @@
void
Display::output(CalcType color, CalcType fg, CalcType bg)
{
- printf("\x1B[%s38;5;%d;48;5;%dm%3d ",
+ printf("\x1B[%s38;25;%d;48;25;%dm%3d ",
(bold ? "1;" : ""),
static_cast(foreground ? color : fg),
static_cast(foreground ? bg : color),
このパッチを /etc/portage/patches/app-portage/eix-0.27.1/ に適当な名前で置いて emerge すればブリンクしなくなる。
(5 が blink, 25 が no-blink らしい)
|