問題タブ [errorformat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vim - タイプがメッセージの途中にある errorformat
warnings-as-errors がオンになっていると、次のような C# コンパイラ メッセージが表示されます。
type errorではなくtype warningerrorformatとしてマークしたいと思います。
私はすでに次のような値を持っていますerrorformat:
( . ^M_ _\r\n\n
これが私が最初に試したことです:
Vim は、1 つの文字列内で複数回出現する を処理できないという事実を嘆いていました%m。
それで、アサーションを組み込んだ珍しい正規表現に夢中になり始めました。これが私が試したものです:
これはうまくいきませんでした。タイプ「C」(おそらく「CS1572」から)とメッセージ「W」(%t消費する必要がある値)を取得します。(他のいくつかの実験では、 を省略して%t、アサーション内の残りの文字列を消費する必要があることが判明しました。さもなければ、%mその時点で の一致を停止しました。非常に奇妙です。)
それらを正規表現グループとして扱っているのではなく、むしろ独特の直線的な方法で扱っていることに気づき、アサーションを逆にしてみましたが、次のようになりました。
残念ながら、これらも失敗し、「警告」ではなくタイプ「C」を取得し、(最終的にはメッセージをそのまま取得しますが)^M文字列の末尾に を残します。
errorformatコマンド内で考えられる可能性を使い果たしました。この問題を解決する可能性のあるものは他にありますか、それとも別のスクリプトを実行してラップし、フォーマットを Vim が処理できるものに変換する必要がありますか?
(クイックフィックスリストに「エラー」ではなく「警告」という単語を取得するためのすべてです。悲しいですね。)
vim - vim errorformat の設定に関する問題
私のコンパイラと lint ツールは、2 つの異なる形式でエラーを出力します。最初に lint 用に、次にコンパイラ用のパターンを追加するために、エラーフォーマットを段階的にセットアップすることにしました。
これは、一致させようとしているリント出力行です
私の最初の試みは
そしてそれはうまくいきました。
次に、次のように設定しようとしました
そして、それは機能しなくなりました。
何が問題なのか誰か知っていますか?ドキュメントを読みましたが、役に立ちませんでした。
どんな助けでも大歓迎です。
vim - Vim での errorformat 出力の正当化/整列
javascript (ノード) でのプログラミングには Vim/gVim を使用します。ファイルタイププラグインで jslint を makeprg として接続しました。エラーフォーマットは次のとおりです。
そして、これがjslintの出力です:
そして、クイックフィックスウィンドウへの出力は次のとおりです。
列番号の後に、次のようになるように、2 桁の数字をパディングして残したいと思います (ファイルのエラーが 99 個以下であることを願っています!)。
これは、行番号 0 ~ 9 にも影響すると思います。条件付きで出力をパディングすることは可能ですか?
vim - vimの複数行エラーフォーマット
次のような C エラー メッセージを照合しようとしています。
これまでのところ、私はこれを思いつきました:
ファイルが開き、最初のエラーが表示:cnされますが、2 番目のエラーに到達するには 4 回入力する必要があります。複数行エラーを設定しようとしましたが、これまでのところエラー文字列が機能しません:
もっと良いアイデアはありますか?
vim - vim エラー形式の非常に長いファイル名
Vim 用の LaTeXBox プラグインを使用して LaTeX のエラーフォーマットに取り組んでいますが、解決できない問題を認識しています。
LaTeX は比較的構造化されたログ ファイルを生成します。ここでは、解析されたファイルに Lisp のような括弧構文が使用されます。たとえば、次のようになります。
最初は、これは単純な問題のように見えます。%P/%O/%Qディレクティブを%rおよびとともに使用し%fて、ファイル名を解析できます。単純な.texファイルとプロジェクトの場合、これはうまく機能します。ただし、場合によっては、ファイル名が完成する前に改行することがあります。たとえば、次のような結果が得られる場合があります。
上記の出力のほとんどは正しく解析できますが、上記のように、パスの 1 つが破損しており、解析されません。このようなエラーが 1 つあるだけでファイルのスタックが壊れ、ログ ファイルの誤った解析につながります。
問題は、より一般的な方法で述べることができます: 行をまたがるファイル名を解析するために errorformat を使用したい:
この問題の解決策を探しています。vim マジックを追加するか (おそらく、適切な errorformat オプションを見逃したのでしょうか?)、 または のオプションをいくつか使用しlatexますpdflatex。どんな解決策でも大歓迎です。
vim - Vim errorformat: メッセージ文字列に式の一部を含める
vim の errorformat 構文で、メッセージの一部を使用して結果をフィルタリングする方法はありますか?
例として、一部のリンカ エラーには、エラー自体以外に、エラーとして区別するための明示的な行がありません。
また
次のエラー形式を使用します。
これらの両方を正しくキャッチして表示しますが、他の多くのケース ("[string]:[number]: " で始まる任意の行) と誤って一致します。
または、両方を明示的に指定します。
誤検知は削除されますが、「メッセージ」はあまり役に立たなくなります。実際のエラーは含まれなくなります (その後にあるものは何でも)。
この状況に対処するために不足している構文はありますか?
理想的には、次のようなことを言えるようになりたいです。
... StartMessage と EndMessage の間で一致したすべてがエラーのメッセージとして使用されます。
vim - jshintのVimエラーフォーマット(例付き)
私はこれのためにefmを書こうとしています:
しかし、別の行にファイルの概念が欠けていると思います。誰かがこれで私を助けることができますか?
これは私がこれまでに持っているものであり、機能しません:
ありがとう!
解決: