Personal tools
You are here: Home ブログ matsuyama rxvt-unicode + screen + zshで 16 色以上使う
Document Actions

rxvt-unicode + screen + zshで 16 色以上使う

僕のような古くさい人間は 16 色のみのターミナルでコーディングしてればいいんですが、それでもやっぱり 256 色とはいわずとも 16 色以上使いたくなるわけです。それで、今日たまたま全然関係ない事を調べてたら偶然にもその話題を発見したので、 16 色以上使う方法を調べてみました。

ちなみに、以下のような環境で設定しています。

% uname -a
Linux matsuyama 2.6.20-gentoo-r6 #4 SMP Wed Apr 18 17:31:34 JST 2007 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ AuthenticAMD GNU/Linux
% emerge -p rxvt-unicode screen zsh

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] x11-terms/rxvt-unicode-8.1  
[ebuild   R   ] app-misc/screen-4.0.3  
[ebuild   R   ] app-shells/zsh-4.3.2-r2  

screen は --enable-colors256 でビルドされている必要があります( app-misc/screen-4.0.3 はデフォルトで有効)。また rxvt-unicode は 88 色モードが有効なバージョンが必要です。以前は 256 色モードを有効にするオプションがあったらしいのですが、どういうわけか今では削除されてしまっています。そういうわけで 88 色モードで使うか 256 色リニアスケールモードを使うかになります。 88 色モードでも 16 色モードの 5 倍ですから驚愕すべき文明の進歩です。

で、実際ターミナルで色数がどのように扱われているのか知らないし説明する気もないので、以下 88/256 色モードを有効にする方法だけ。

まず有効なターミナルモードを検索します。

% find /usr/share/terminfo | grep '[68]color'
/usr/share/terminfo/r/rxvt-16color
/usr/share/terminfo/r/rxvt-256color
/usr/share/terminfo/s/screen-256color-bce-s
/usr/share/terminfo/s/screen-16color
/usr/share/terminfo/s/screen-256color-bce
/usr/share/terminfo/s/screen-256color
/usr/share/terminfo/s/screen-256color-s
/usr/share/terminfo/s/screen-16color-bce-s
/usr/share/terminfo/s/screen-16color-s
/usr/share/terminfo/s/screen-16color-bce
/usr/share/terminfo/x/xterm-256color
/usr/share/terminfo/x/xterm+88color
/usr/share/terminfo/x/xterm-16color
/usr/share/terminfo/x/xterm-88color
/usr/share/terminfo/x/xterm+256color

いくらか省略していますが、だいたいこんな感じのが出力されるはずです。次に上のどれかを適当に選んで、 TERM 環境変数につっこみます。

% eval `tset -sQ rxvt-256color`

そして emacs -nw -f list-colors-display すると、

http://dev.ariel-networks.com/Members/matsuyama/images/list-colors-display-in-256color/image

多彩な配色を拝めます。

変更前

http://dev.ariel-networks.com/Members/matsuyama/images/16color-emacs/image

変更後

http://dev.ariel-networks.com/Members/matsuyama/images/256color-emacs/image

これでようやく color-theme も役に立ちます。

あとは Super key の送出と画像をインラインに表示できたら最高なんですが、それはまたいつか。

Category(s)
linux
emacs
The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/matsuyama/use-more-than-16-colors-with-urxvt-screen-zsh/tbping

Re:rxvt-unicode + screen + zshで 16 色以上使う

Posted by Anonymous User at 2007-04-26 18:35
16色とか256色とか、MSXの話のようだ。

Re:rxvt-unicode + screen + zshで 16 色以上使う

Posted by nagai at 2007-04-27 00:17
MSX1しかもってない僕はどう足掻いても16色しか出せません。

Re:rxvt-unicode + screen + zshで 16 色以上使う

Posted by kitokitoki at 2009-06-20 20:23
以下の環境で、emacs -nw のときだけ88色表示(他は256色)になってしまい、ネット検索でこの記事にたどりつきました。理屈は(説明も省かれていますし)わからないままですが、rxvt-256color というterminfo(?)の存在を確認後、.zshrc に eval `tset -sQ rxvt-256color`と追記することで、emacs -nw で256色表示できました。有益な情報をありがとうございました。

-Ubuntu 9.04
-rxvt-unicode v9.06
-zsh 4.3.9
-screen 4.00
-GNU Emacs 23.0.91.1
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.