18

私は選択したエディターとして emacs を使用しています。端末で多くの作業を行っているため、常に emacs を次のように実行しています。

emacs -nw

ウィンドウではなくターミナルで実行されるようにします。

私はただ実行emacsして、ターミナルで実行する必要があることを知らせたいと思います。.emacs私の質問は、これがデフォルトの動作になるようにファイルを編集するにはどうすればよいですか?

4

4 に答える 4

28

ファイルでこれを行うことはできません.emacs。そのファイルが解析されるまでに、「選択された」emacs バイナリはすでに実行されています。

あるコメンターが示唆するようにパッケージをインストールするemacs-noxか、シェルにエイリアスを作成して、「emacs」が常に「emacs -nw」として扱われるようにすることができます。

ランディ

于 2011-01-05T20:34:25.483 に答える
18

そのために、.emacs の代わりに bash エイリアスを使用しています。
この行を ~/.bashrc に追加します。

alias emacs='emacs -nw'
于 2011-01-06T02:04:06.030 に答える
3

emacsとはまったく関係がなく、コンソールで実行するかXで実行するかを選択できるすべてのプログラムで機能する、一般的な問題を解決する簡単な方法があります。

unset DISPLAY

もちろん、それを構成ファイルに入れてすべてのシェルセッションにグローバルに適用したくない場合もあるので、emacsのみに適用する場合は、次のようにコマンドラインから呼び出します。

DISPLAY= emacs

スペースに注意してください!!! スペースを省略した場合は、DISPLAYを何も設定せずに、DISPLAYをemacsに設定していることを意味します...このコマンドは次の省略形です。

DISPLAY=; emacs

したがって、コマンドラインから上記を使用するか、次のようなラッパースクリプトに入れます。

#!/bin/bash
unset DISPLAY
exec emacs

ラッパースクリプトがemacsに置き換えられるので、そこでexecをお勧めします。実行できる2つの違いを確認するには、次のようにします。

pstree -p
于 2011-01-13T13:44:50.133 に答える