## 事象 [[conform.nvim]]の設定が以下。 ```lua { "stevearc/conform.nvim", config = function() require("conform").setup({ formatters_by_f = { lua = { "stylua" }, }, format_on_save = { timeout_ms = 500, lsp_format = "fallback", }, }) end, } ``` これでファイルを保存すると自動フォーマットはかかるが、[[none-ls.nvim]]と[[StyLua]]を使ったときのフォーマットと結果が異なる。(機能がしょぼい) `:ConformInfo`の結果は以下。 ``` Log file: /home/tadashi-aikawa/.local/state/nvim/conform.log Formatters for this buffer: LSP: lua_ls Other formatters: ``` [[StyLua]]ではなく[[lua-language-server]]が使われていそう? > `"fallback"` LSP formatting is used when no other formatters are available とあるので[[StyLua]]がないと認識され[[lua-language-server]]が使われてそう。 ## 原因 設定の[[Typo]]だった。。。`formatters_by_ft`ではなく`formatters_by_f`になっていた。 ## 解決方法 設定を以下のように修正する。 ```diff - formatters_by_f = { + formatters_by_ft = { ``` `:ConformInfo`の結果もちゃんと[[StyLua]]が認識するようになった。 ``` Log file: /home/tadashi-aikawa/.local/state/nvim/conform.log Formatters for this buffer: LSP: lua_ls stylua ready (lua) /home/tadashi-aikawa/.local/share/mise/installs/stylua/latest/bin/stylua Other formatters: ```