Ace: すべてのエラー/警告を取得する方法はありますか?

作成日 2011年06月23日  ·  5コメント  ·  ソース: ajaxorg/ace

テキスト領域の左側のバッファ領域にエラー/警告アイコンを表示する機能が本当に気に入っています。 ただし、すべてのエラー/警告のコレクションを取得して、リストでユーザーに表示できるようにしたいと思います。 また、各号にカーソル位置を設定できるように、このコレクションに行/列番号を含めたいと思います。

私は次のようなものが欲しいです:

varErrors = editor.getSession()。getErrors();
var(var i = 0; i <Errors.length; i ++)
{{
varエラー=エラー[i];
// Error.LineNumber
// Error.ColumnNumber
//Error.Description
}

最も参考になるコメント

私はCloud9でこの目的のためにプラグインを作成しました。それはacebugsと呼ばれ、ここに存在します:

https://github.com/ajaxorg/cloud9/blob/devel/client/ext/acebugs/acebugs.js

cloud9の拡張を検討しているのか、それとも個人的なプロジェクトであるのかはわかりませんでしたが、重複しないように言及したいと思います。 これはどのように見えるかです:

AceBugs in Cloud9

一番、

マット

全てのコメント5件

データはannotationsと呼ばれ、次の呼び出しで取得できます。

editor.getSession()。getAnnotations()

データは次のように構成されています。

/**
 * Error:
 *  {
 *    row: 12,
 *    column: 2, //can be undefined
 *    text: "Missing argument",
 *    type: "error" // or "warning" or "info"
 *  }
 */

迅速な返答に感謝致します! getAnnotationsに対して返されるオブジェクトにアクセスする方法の例を教えてください。 ありがとう!

返されるオブジェクトは、単にハッシュのハッシュです。 次のようになります。

this.$annotations = {};

したがって、$ annotationsハッシュは次のようになります。

{
    {
        row: 12,
        column: 2, //can be undefined
        text: "Missing argument",
        type: "error" // or "warning" or "info"
    },
    {
        row: 32,
        text: "Missing semicolon",
        type: "warning"
    },
    // etc
}

次のように応答を繰り返すことができます。

var annotations = editor.getSession().getAnnotations();

for (var anno in annotations) {
     // anno.row, anno.column, anno.text, anno.type
}

私はCloud9でこの目的のためにプラグインを作成しました。それはacebugsと呼ばれ、ここに存在します:

https://github.com/ajaxorg/cloud9/blob/devel/client/ext/acebugs/acebugs.js

cloud9の拡張を検討しているのか、それとも個人的なプロジェクトであるのかはわかりませんでしたが、重複しないように言及したいと思います。 これはどのように見えるかです:

AceBugs in Cloud9

一番、

マット

マット、

サンプルを提供していただきありがとうございます!

私はCloud9で少し遊んだことがありますが、それでももっと個人的なプロジェクトを探しています。 問題は、他のプログラマーが何ヶ月もコードエディターに取り組んでいたことであり、車輪の再発明を行うよりも、このようなものを使用する方が簡単だと考えました。

-マイク

このページは役に立ちましたか?
0 / 5 - 0 評価