JSONパーサを書いていてテスト用のクライアントとして簡単なエディタを作っていたんですが、なかなかよく動作するので機能を強化していって出来上がったのがJSON NotePadです。以下の用な特徴があります。
- JavaScript製エディタではなくクライアント上で動作するエディタなので扱いが容易かつ高速です
- テキストエディタとノードの両方のアプローチで編集が行えます
- テキストエディタとノード構造はある程度連動しており、ノードを編集すればエディタにも反映され、その逆も行われます。
- JSONパーサが逐次エディタ上のノードをパースしており、そこから構文チェックが行えます
- 構文エラーがあれば簡単にエディタ上でその位置へ移動できます
- マルチラインタブエディタで複数JSONを一度に開けます
- パーサを使った簡易コード整形機能を搭載しています
- 同じくパーサを使ったコード圧縮(スペースやら改行を全部取る機能)を搭載しています
- 文字コードは自動で判別して書き出し時も判別したコードで書き出します
- UTF-8およびUTF-16 LEに変換することも可能です
- 構文強調および対応する括弧の強調
- エディタのカラースキーム
- ツールバーのフルカスタマイズ
ただし以下の制限があります
- エディタはUCS2の範囲には対応しますがサロゲートペアやら結合文字やらには対応しません。1文字が2文字として表示されます。利用する場合はエンコードする必要があります。パーサのほうは対応しているので、ノードのほうでは直接書いてもただしくサロゲートペアを編集でき、フォントがあれば表示できます。
- WindowsアプリなのでWindowsでしか動きません。またUnicode系APIを使っている影響で9xでも動きません。
- 改行を含まないJSONを編集すると猛烈に重くなります。どうもUniSynEditは長い行の表示に弱いようです。
こちらのリンクをご覧ください
■JSON NotePad
1.0.0.0 ベータ2 (zip) ファイルは全てUPXかけてあります)