0

Java ファイルを保存するたびに、Eclim コマンド :JavaImportOrganize および :syntax を実行するための autocmd をセットアップしようとしています。

au BufWritePost {*.java} silent :JavaImportOrganize :syntax on

これは(予想どおり)エラーを生成します。プラグイン コマンド (この場合はデーモンからロードされますか?) と通常のコマンドの両方を含む autocmd の例を見つけようとしましたが、正しい構文がわかりません。

どんな助けでも大歓迎です!

4

1 に答える 1

2

正確なエラー メッセージが何であるかを知っておくと便利です。私のマシンでは、エラーは次のとおりです。

Error detected while processing BufWritePost Auto commands for "{*.java}":
E488: Trailing characters: silent :JavaImportOrganize :syntax on

あなたも同じだと思いますが、質問に貼り付けると非常に役立つので、人々は問題が何であるかを簡単に推測できます.

この場合、1 回の呼び出しで 2 つのコマンドを組み合わせる単純なケースです。|これは文字で行うことができます(詳細については、を参照:help :|してください)。

:silent JavaImportOrganize | syntax on

さて、私の実験では、呼び出し| syntax onの一部と見なされる可能性があるため、これはうまくいきませんでした。JavaImportOrganizeだから私はexe:help :execute詳細については)使用しなければなりませんでした:

:silent exe 'JavaImportOrganize' | syntax on

完全な呼び出しは次のようになります。

 au BufWritePost *.java silent exe 'JavaImportOrganize' | syntax on

中括弧*.javaは必要ありません (実際、私はそれらが機能することさえ知りませんでした :))。コマンドの前の:記号は必要ありません。コマンド ライン モードで使用されますが、スクリプトでは完全に省略可能です。

于 2015-02-26T09:23:36.323 に答える