私はUbuntu8.10とemacs-snapshotを使用しています。 Emacsと入力し、「LS」のショーにシェルモードを実行すると、コードをエスケープ:Emacsシェルに何か問題があります
screenshot http://lh3.ggpht.com/_os_zrveP8Ns/SdMmohKNjmI/AAAAAAAADB4/VlKpr5H_7ZA/s512/screen.png
どのように私は私が期待した出力を得ることができますか?
私はUbuntu8.10とemacs-snapshotを使用しています。 Emacsと入力し、「LS」のショーにシェルモードを実行すると、コードをエスケープ:Emacsシェルに何か問題があります
screenshot http://lh3.ggpht.com/_os_zrveP8Ns/SdMmohKNjmI/AAAAAAAADB4/VlKpr5H_7ZA/s512/screen.png
どのように私は私が期待した出力を得ることができますか?
問題は、「L」が出力され、Emacsはそれのいずれかを有するされていないcoloriseしようとしているということです。以下試してください:M-x term
またはM-x eshell
:
$ unalias l $ alias l ls --color=never
emacsでのみ変更するには? – linjunhalida
TERM =おそらく、おそらくls。 – jrockway
さらに、あなたは別のシェルを選択することができます。前者は(あなたがそれを起動したら、あなたはC-c C-j
とモードから抜け出すとC-c C-k
で再度取得することができます)shell-mode
よりも、実際の端末エミュレータにずっと近いインタフェースを提供します。後者はElispで書かれたシェルの実装です(あなたは共通のシェルコマンドを使うことができ、Lispコードを評価することもできます)。
私はeshellを知っていますが、私はそれを好きではありません。 – linjunhalida
汎用のプログラミング言語が* shell *よりも強力ではないと言っていますか?私はあなたがそれを使う方法を知らないと思う。 – jrockway
私はそれを意味するものではありません。これはシェルと言語の違いではなく、 'シェルモード'とその選択肢です。 Emacsの中でシェルを使いたい場合、私は自分自身が 'term-mode'という便利な機能を持っているので、バッファを実際の端末のように動作させることができます。あるいは、他の一般的なEmacsバッファとして動作させることもできます。 –
vatineの答えを拡張し、あなたが追加することができ、あなたの.cshrc内部(の.tcshrc/.bashrcのこと)環境変数INSIDE_EMACSのチェックでラップされています。例えば
(私の.tcshrcから):
if ($?INSIDE_EMACS) then
alias l 'ls --color=never'
endif
'sh'とcompatiblesの場合、エイリアスの代わりに関数を使いたいかもしれませんが、' $ INSIDE_EMACS "&& alias l = 'ls --color = never''をテストしてください。 – tripleee
のMx ANSI-カラー用-のcomintモードオン
私は〜/ .bashrcの中で私のalias ls ='ls --color=auto'
を包ん:
case "$TERM" in
xterm*|rxvt*)
if [ -x /usr/bin/dircolors ]; then
alias ls='ls --color=auto'
...
fi
;;
*)
;;
esac
これは、Emacsでcolor=auto
を使用して無効にします。
まあ、これらの面白い文字は、他の人の手掛かりとなるエスケープシーケンス( 'ESC' '[' '0' 'm')ですが、特定の修正を知らないので答えません。 – paxdiablo