Coc.nvimを触ってみようアドベントカレンダー 7日目 – coc-sql

とっても楽しいcoc.nvimを触ってみようというアドベントカレンダーです。7日目はcoc-sql。横に長ったらしいSQLをいい感じで整形するために頻繁に利用しています。
2021.12.07

Coc.nvimを触ってみよう Advent Calendar 2021 7日目です。

今回は coc-sql です。

coc-sql について

SQLをいい感じにLint及び整形してくれる拡張です。整形はsql-formatter、Lintはnode-sql-parserにて行われます。

coc-sql をインストールする

vimを起動した状態で以下のコマンドを実行します。

:CocInstall coc-sql

使ってみる

まずは拡張子sqlのファイルを開きます。 存在しないファイル名を渡しても問題ありません。

vim test.sql
SELECT * FROM master limit 100;

例えば上記のSQLに対して実行すると、

:CocCommand sql.Format
SELECT
  *
FROM
  master
limit
  100;

のように整形してくれます。SQLファイルに対して整形する仕組みであるため、例えばMarkdownファイル内の一部SQLを整形するといった使い方はできません。SQLを別ファイルにした上で

:read test.sql

と打って、整形済みファイルを内部へ読み込む形で使うとよいかもしれません。

あとがき

SQLをwiki等へまとめる前に可読性を上げる目的で使うことが増えました。整形機能があるSaaSを使う手もありますが、vimでcoc-sqlを使う方がお手軽です。