2016-03-25 16 views
1

私たちは、私たちが選択したエディタとして、Type ScriptとEmacsを使い始めました。Emacs Typescriptエラー行形式の出力 - ユーザー定義のオプション?

TypeScriptのエラー行形式は、Emacsのコンパイルモードのエラー処理と互換性がないようです。

我々は我々が得る活字体コンパイラのために同じことを行う場合(メッセージを無視し、そのフォーマットは重要なthatsの)私たちは意図的なエラーをCプログラムをコンパイルし、紹介している場合、我々は

t1.c:6:5: error: use of undeclared identifier 'a'          

取得

utilities.ts(13,18): error TS2384: Overload signatures must all be ambient or non-ambient. 

EmacsはキーコマンドESC-g nを使用して最初のタイプのエラーメッセージを処理し、メインエディタウィンドウをエラーに移動します。

Emacsは2番目のエラー行形式を処理できません。

TypeScriptコンパイラをPerlスクリプトでラップし、Perlスクリプトで行を適切に再フォーマットすることで回避策をまとめました。これは動作しますが、kludgeが少しあり、TypeScriptの柔軟性がもう少しあればいいでしょう。

Typescriptエラー出力をEmacsと互換性のあるフォーマットに変更するフラグがあるかどうかは疑問でした。

答えて

0

実際にはGNUコーディング標準で書かれている公式フォーマットですので、Typescriptコンパイラの著者に連絡して、エラーメッセージのフォーマットを変更するように依頼してください。

一方で、compilation-error-regexp-alistを調整して、Typescriptのエラーメッセージを認識する方法をcompile.elに説明することをお勧めします。

はおそらく

(eval-after-load 'compile 
    (add-to-list 'compilation-error-regexp-alist 
       '("^\\([^(\n]+\\)(\\([0-9]+\\),\\([0-9]+\\)):" 1 2 3))) 

のようなものは、あなたが始めるかもしれません。メッセージの一部が実際のエラーではなく、警告やサイド情報などのようなものである場合は、上記を洗練することができます。形式の詳細については、C-h v compilation-error-regexp-alist RETを参照してください。

関連する問題