- ベストアンサー
Emacsのカラー設定について
- Emacsのカラーテーマを設定しようとした結果、8色しか表示されません。
- 再度色名が表示されるようになったものの、肝心の色が表示されない状況です。
- TeraTermで256色が表示されるかテストしたところ問題ありませんでした。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
CentOS環境を用意し、Emacs version 23.4で試してみたところ同様の 現象が発生することを確認しました。 また Emacs 24を使うことで問題が解消されることを確認しました。 (Emacs 24.2で確認) CentOS 6に上げる必要は特になく、Emacsのバージョンを上げることで 解決できるものと思います。 以下はEmacs24の構築に関するメモです。 - ncurses-develをインストールする(yum install ncurses-devel) - configure時に "--without-selinux"を付けないとエラーが出る 環境によっては何もエラーとならないかもしれないですが、 参考までに。
その他の回答 (3)
- syohex9
- ベストアンサー率100% (1/1)
TERMは "xterm-256color"で良さそうですね。 Tera Termの問題かもしれないので、他のクライアントで試していただけない でしょうか ? 他のソフトウェアなり、別の Linux環境の gnome-terminal等を 使ってもダメなら Linux側の問題になりそうです。
お礼
ありがとうございました。
補足
Poderosaで試みましたがダメでした。 やはりこの際、CentOS 6にサーバーを構成し直すのが懸命ですかね。問題を解決できないのは残念ですが。
- syohex9
- ベストアンサー率100% (1/1)
ncurses-termが提供されるのは CentOS 6からでした。 以下に掲載される、"/usr/share/terminfo/x/xterm+256color"の ようなファイルが不足していることが問題のはずです。 http://rpmfind.net//linux/RPM/sourceforge/m/ma/magiclinux-plus/update/RPMS.soft/ncurses-term-5.7-11.20101211mgc25.i686.html xterm+256colorの terminfoは下記のように生成できます。 # xterm+256colorが使える環境 CentOS6(ncurses-termインストール済)等で下記を実行 $ infocmp xterm+256color > /tmp/xterm+256color.terminfo # 上記のコマンドで出来上がったファイルを CentOS5にコピーし、下記を実行 $ tic xterm+256color.terminfo # ~/.terminfo以下に terminfoができるので、 # それを /usr/share/terminfo/x/以下にコピー xterm+256colorが使える環境がない場合は下記を参考にしてください http://superuser.com/questions/335471/using-colour-schemes-with-vim-and-putty
補足
ご指摘の/usr/share/terminfo/はあります。 /usr/share/terminfo/x/xterm+256color や 現在$TERM変数で指定している /usr/share/terminfo/x/xterm-256color もあります。 そして前者を以下のように指定して、 export TERM=xterm+256color emacsを立ち上げようとしても以下のようなエラーが出ます。 emacs: Terminal type "xterm+256color" is not powerful enough to run Emacs. It lacks the ability to position the cursor. If that is not the actual type of terminal you have, use the Bourne shell command `TERM=... export TERM' (C-shell: `setenv TERM ...') to specify the correct type. It may be necessary to do `unset TERMCAP' (C-shell: `unsetenv TERMCAP') as well. とのことで、Emacsを制御するのにあまり十分な機能が備わってないよということでしょうか。 それとticのマニュアルをみてみると、 「terminfoのエントリを読み込むライブラリはterminfoが設定されていない場合、$HOME/.terminfoを見る」的な内容があったので、 ~/.terminfo/に/usr/share/terminfo/x/xterm-256colorの シンボリックリンクを作成してみたのですが、これもダメでした。 yum reinstall ncurses で再インストールもしてみましたが、これもダメでした。 手探りで申し訳ありませんが、よろしくお願いします。
- syohex9
- ベストアンサー率100% (1/1)
terminfoがない恐れがあるので "ncurses-term"がインストールしているか 確認していただけないでしょうか ? もしインストールされていなければ、 yum install ncurses-term 等でインストールしてください。
補足
ご回答ありがとうございます。 ncurses-termというパッケージは見あたりません。 ncursesでしたら5.5をインストール済みです。
お礼
お返事が遅くなってすみません。 もうダメなものと物憂げにふけておりました。 それで、当該の問題ですが… 解決しました! ありがとうございます! ご丁寧にOS環境まで用意していただき恐縮です。 教えていただいたとおり、configure時に --without-selinux の指定がないとエラーがでるようです。 私はターミナル環境なので --without-x も指定しました。 これで心置きなく次のステップへいけます。 本当にありがとうございました。