0

最近、MacOS10.6システムにjEditをインストールしました。emacsと同じように、ターミナルでjEditを実行できるようにしたいと思います。つまり、「emacsFILE.NAME」です。私の計画は、...を含むスクリプトjedit.shを書くことでした。

touch $1
open -a /Applications/jEdit.app $1

...ここで、引数はファイル名です。不思議なことに、jEditは開かれますが、デフォルトの新しいファイルでのみ開かれ、目的のファイルではありません。「jEdit.app」を他のアプリ、たとえば「TextEdit.app」に置き換えると、目的のファイルが開きます。

足りないものはありますか?'open'コマンドで使用するとjEditが他のアプリのように動作しないのはなぜですか?これを回避するにはどうすればよいですか?

4

3 に答える 3

2

まず第一に、「open」は標準のUNIXコマンドではありません(Mac OS X固有のものだと思いますか?)。

さらに、jEditはJavaで記述されているため、jEdit.appはJava VMを起動してjedit.jarを実行するラッパーにすぎないと思います(実行される/path/to/java -jar /path/to/jedit.jarなど、メモリ使用量などの追加オプションがあります)。

私のUbuntuシステムでは、jeditラッパースクリプトはコマンドラインで言及したファイルをすべて渡し、jEditはそれを効果的に使用するため、問題はjEditアプリケーション自体にありません。

結論:jEdit.appは、Javaコマンドラインに渡すために指定したパラメーターを受け取らないようです...

解決策として、スクリプトから開始してみてjava -jar /path/to/jedit.jar "$@"ください(AFAIKにも行は必要ありませんtouch)。

于 2010-08-25T05:04:04.707 に答える
2

これはjEdit5.1.0で機能します。

touch foo
open -a /Applications/jEdit.app foo
于 2014-01-14T18:38:28.540 に答える
0

[ユーティリティ]>[グローバルオプション]>[一般]に移動します

起動時に以前に開いたファイルを復元するのチェックを外します(その前に、「コマンドラインで指定されたファイル名を含める...」がチェックされていることを確認しました)

私は知っています、それは奇妙です、しかしこれは私のために働きました(mac os x snow leopard、jedit 4.3.2、java 1.6.0_22)

于 2010-10-21T11:43:19.313 に答える