この記事は、Zennにも投稿しています。
追記
SchemaStore.nvim というプラグインが出てきました。
基本的にこの記事で説明されていることをやってくれてさらに定期的に更新されるのでこのプラグインを使うのがおすすめです。
基本的にこの記事で説明されていることをやってくれてさらに定期的に更新されるのでこのプラグインを使うのがおすすめです。
neovim の built-in lsp の話です。lspconfig が入ってるのが前提です。
基本的には
jsonls
の設定でみたいな感じでつらつらと schema を探して書いていけばできます。
しかしこれを一々書くのはとても面倒臭いです。そこで上のコードの URL にもあるschemastoreというサイトを使います。
このサイトの
しかしこれを一々書くのはとても面倒臭いです。そこで上のコードの URL にもあるschemastoreというサイトを使います。
このサイトの
https://www.schemastore.org/api/json/catalog.json
www.schemastore.org
にはまさに上の設定通りの schema のカタログが用意されており、これを使えたら便利だと思いませんか?
ただ、json をパースしてとかやるのも面倒臭いので
ただ、json をパースしてとかやるのも面倒臭いので
TypescriptToLua
というツールを使います。TypeScriptToLua
typescripttolua.github.io
ここの playground に先程のカタログの json を Typescript のオブジェクトとして貼り付けると、なんと lua のコードで出力してくれます。あとはそのコードをコピペしてくるだけです。
変換したものを一応 gist に用意しておきました。
このファイルを適当なところに置いて
みたいな感じにすればこれでほぼ全てのナントカ config みたいな JSON ファイルが補完できるようになります。ドキュメントもあります。