4

私が今まで持っているのは

alias em="open -a /Applications/Emacs.app "$@" && osascript -e 'tell application "Emacs.app" to activate'"

しかし、私は困惑しています。

そのコードを使用すると、em file.txtがアクティブになりますが、ファイルは開きません。そして、'22:23:構文エラーが発生します:行末が予期されていましたが、不明なトークンが見つかりました。(-2741) '


やってる

alias em=open -a /Applications/Emacs.app "$@"

正常に動作し、ファイルを開きますが、明らかにemacsを前面に表示しません。


そして、いくつかの奇妙な理由で

osascript -e 'tell application "Emacs.app" to activate'

emacsをアクティブにしません....何が起こっているのかわかりません。


エイリアスコードまたは.emacsコードでこれを修正できてうれしいです


編集:試した別のことについてのコメントを参照してください。

4

4 に答える 4

11

これを試して:

(setq ns-pop-up-frames nil)

私にとってはうまくいきます。

ここで見つけました

于 2012-02-05T16:51:56.193 に答える
2

問題は、このように引用符をエスケープする必要があるということでしょうか?

alias em="open -a /Applications/Emacs.app \"$@\" && osascript -e 'tell application \"Emacs.app\" to activate'"
于 2011-05-20T09:48:55.290 に答える
2

私は私の.bashrcソースに次のものを持っています.profile

alias emacs='open -a /Applications/Emacs.app "$@"'

そして私の.emacsカスタムエリアでは:

(custom-set-variables
 ;; yadda yadda
 ;;...
 '(ns-pop-up-frames nil))

M-x customize-variableまたは、ジェフが言ったように、あなたがそれに入るのが好きでないなら:

(setq ns-pop-up-frames nil)

これを行うのにAppleScriptは必要ありませんでした。私はあなたが行方不明になっていることに気づきましたがend tell?とにかく、私にとっては魅力のように機能し、Emacsを開くか、既存のウィンドウがある場合はそれを使用し、それが一番上にあり、ターミナルはさらに入力する準備ができています。

于 2014-03-18T17:31:35.447 に答える
0

次を使用できます。

emacsclient -nt somefile

ターミナルで、新しいクライアントフレームではなく、既存のフレームを使用して、指定されたファイルを新しいバッファで開きます。

http://www.gnu.org/software/emacs/manual/html_node/emacs/emacsclient-Options.html

于 2014-03-06T02:33:47.263 に答える