2010年09月09日 20:30 [Edit]

Ajax - gjslintをブラウザーで

利用できるようにしてみた。

「Google JavaScript Style Guide」に沿ってチェックしてくれる、グーグル製JavaScript文法チェッカー − Publickey
Closure LinterはPythonで書かれたツールで、コマンドラインから利用します。

Demo:

Source
gjslint says:
fixjsstyle says:
fixed js:

Client:

まあシンプル。

/* depends on jQuery */
gjslint = function() {
    var text = $('#demo0 textarea').val();
    var query = {js: text};
    var url = 'http://api.dan.co.jp/gjslint';
    var proto = 'json';
    if ($.browser.msie || $.browser.opera) {
        url += '?c=?';
        proto += 'p';
    } /* falls back to JSONP */
    $.get(url, query, function(json) {
      $('#demo0 pre')
        .eq(0).hide().text(json['gjslint']).show(200).end()
        .eq(1).hide().text(json['fixjsstyle']).show(200).end()
        .eq(2).hide().text(json['js']).show(200);
    }, proto);
};
clean = function() {
    $('#demo0 pre')
      .eq(0).html('').end()
      .eq(1).html('').end()
      .eq(2).html('');
};

Server:

あまり必然性がないが、plackuppableに書いてみた。

gjslint

感想:

見ての通り、fixjsstyleはインデントや開業までは直してくれない。なんでだろ?

最新のemacsには入っているjavascript-modeの方がその点はいいなあ。

Enjoy!

Dan the Ajaxen


この記事へのトラックバックURL

この記事へのコメント
jsonp のl callback 関数名は validation したほうがよいのでは。
なお、JSONP は Plack::Middleware::JSONP をつかうと簡単に実装できます。
Posted by tokuhirom at 2010年09月10日 12:12