3

M-x shell素敵なカラー出力を生成しようとするプログラムを実行します。しかし、私は得ます:

?-本当。
^[[1m本当。^ [[0m

これは、環境変数TERMをダムに設定するため、明らかにEMACSの障害ではありません。この情報を無視したのは、私が呼び出したプログラムだけです。

ansi-color-for-comint-mode-onアドホックな方法でこの問題を修正する方法を知っています。環境変数TERMはまだダムです。つまり、この変数をそれに応じて解釈するプログラムは、エスケープをまったく使用しません。

TERMなどを設定する、これに対するアドホックなアプローチはありませんか?

4

3 に答える 3

5

Mx ansi-color-for-comint-mode-on がそれを行う場合は、ansi-color-for-comint-mode をカスタマイズするだけで十分です。

于 2013-01-13T16:09:29.893 に答える
2

M-x ansi-term他のシェル ( M-x shellM-x termおよび) の代わりに使用できますM-x eshell。ansi-term は、ansi カラーを使用してすぐに使用できるように設計されています。さらに良いことに、基本的に ansi-term のすべての機能に加えて、端末間を簡単に切り替え、どのキーボード ショートカットを端末に送信するかを定義する機能をサポートするmulti-termを使用することをお勧めします(詳細については、こちらこちらを参照してください)。ターミナルと、Emacs によってキャプチャおよび解釈されるもの。

于 2013-01-23T18:08:41.483 に答える
1

たぶん、以下の例に沿って:

(setenv "DISPLAY" ":0")

(setenv "PATH" (concat "/home/an_user/bin:"
                (getenv "PATH")))

あなたは試すことができます:

(setenv "TERM" ....)

それとも、これはあなたが考えていたものではありませんか?

于 2013-01-13T14:09:31.507 に答える