SqlFormatter

SQL整形で、オラクルの外部結合演算子"(+)"に対応しました。以下のように整形されます。
ラクル固有のコードを書くのは気が引けたのですが、「"(+)"の組み合わせだけに限れば、他のDBでもこれが害となることはないだろう」という判断です。

select
        a.emp_id
        ,a.dept_id
        ,b.dept_id
        ,b.dept_name
    from
        emp a
        ,dept b
    where
        a.dept_id = b.dept_id (+)

また、関数名はDatabaseMetaDataから取得するのではなく、ユーザが指定するようにしました。
そのためダイアログを別途用意しました。「ユーザが入力しなければ反映されない」というのは面倒ですが、逆に言えばDatabaseMetaDataが使えない状態でも(つまり、DBに接続しなくても)SQL整形できることになるので、そこはメリットになるでしょう。
それと、BlancoSqlEditorPluginはDB接続せずに使えるSQLエディタですから、同じことが実現できるハズです。
いがぴょんにもメールで送ってみました。