🌲

nvim-treesitterを入れた際に文字列などがイタリックで表示されるのを無効にする

2024/01/17に公開

現象とやりたいこと

nvim-treesitterを導入したら、以下のように一部が斜体(イタリック)で表示されるようになり、かなり見づらい。これを普通の立体に直したい。

調査

:put =execute('verbose hi') を実行して、italicで検索してみたところ、以下の部分が見つかった。

@text.literal  xxx cterm=italic gui=italic guifg=#63cdcf
	Last set from ~/.local/share/nvim/site/pack/jetpack/opt/nightfox.nvim/colors/nightfox.vim line 9

@text.uri xxx cterm=underline,italic gui=underline,italic guifg=#f6b079
	Last set from ~/.local/share/nvim/site/pack/jetpack/opt/nightfox.nvim/colors/nightfox.vim line 9

@text.emphasis xxx cterm=italic gui=italic guifg=#ab435d
	Last set from ~/.local/share/nvim/site/pack/jetpack/opt/nightfox.nvim/colors/nightfox.vim line 9

@tag.attribute xxx cterm=italic gui=italic guifg=#86abdc
	Last set from ~/.local/share/nvim/site/pack/jetpack/opt/nightfox.nvim/colors/nightfox.vim line 9

nightfox.nvimがこのようなスタイルにしていることが分かる。

対処法

nightfoxの設定の該当箇所を上書きしてあげればよい。

config = function()
    local groups = {
        all = {
            ["@text.literal"] = { style = "NONE" },
            ["@text.uri"] = { style = "underline" },
            -- ["@text.emphasis"] = { style = "NONE" },
	    -- emphasisのときもitalicではなくしたい場合は上のコメントアウトを外す
            ["@tag.attribute"] = { style = "NONE" }
        }
    }
require('nightfox').setup({ groups = groups })

参考記事・コード

Discussion