90636


提示コードですが以下のサイトからダウンロードしてきた`nvim`のテーマなのですが`---`
コメント部内部を青色の色コードに変更すると青くなるのですがクラス等もみんな青色にになってしまうのですが組み込み型は青でそうじゃない型は緑色にするにはどうしたらいいのでしょうか？

##### 試したこと

他の似たよなテーマを設定して色を変更したが同じく型すべてが同じ色になってしまいます。

##### 知りたいこと

シンタックスハイライトで組み込み型は`青色`でクラス等は`緑色`にする方法が知りたい。  
int float void 等は青色  
クラス、構造体 等は緑色にしたいです。

Github: <https://github.com/Mofiqul/vscode.nvim>

#### color.lua

[code]

           vscGitAdded = '#81b88b',
            vscGitModified = '#e2c08d',
            vscGitDeleted = '#c74e39',
            vscGitRenamed = '#73c991',
            vscGitUntracked = '#73c991',
            vscGitIgnored = '#8c8c8c',
            vscGitStageModified = '#e2c08d',
            vscGitStageDeleted = '#c74e39',
            vscGitConflicting = '#e4676b',
            vscGitSubmodule = '#8db9e2',
    
            vscContext = '#404040',
            vscContextCurrent = '#707070',
    
            vscFoldBackground = '#202d39',
    
            -- Syntax colors
            vscGray = '#808080',
            vscViolet = '#646695',
            vscBlue = '#569CD6',
            vscDarkBlue = '#223E55',
            vscMediumBlue = '#18a2fe',
            vscLightBlue = '#9CDCFE',
            vscGreen = '#6A9955',
    -----------------------------------------------------------
            --vscBlueGreen = '#4EC9B0',
            vscBlueGreen = '#569CD6',
    -----------------------------------------------------------
            
            vscLightGreen = '#B5CEA8',
            vscRed = '#F44747',
            vscOrange = '#CE9178',
            vscLightRed = '#D16969',
            vscYellowOrange = '#D7BA7D',
            vscYellow = '#DCDCAA',
            vscPink = '#C586C0',
    
[/code]

[![画像の説明をここに入力](https://i.stack.imgur.com/L3vJV.png)](https://i.stack.imgur.com/L3vJV.png)


CC BY-SA 4.0
2022-08-19T09:59:04.937
90635
2022-08-19T15:15:54.587
2022-08-19T14:15:34.223
3054
question
vim lua neovim
nvim　配色テーマファイルの変更方法が知りたい。


ハイライトグループに配色などを設定するのは、[`hi (highlight)`コマンド](https://vim-jp.org/vimdoc-
ja/syntax.html#:highlight)です。当該のテーマでは[`theme.lua`](https://github.com/Mofiqul/vscode.nvim/blob/main/lua/vscode/theme.lua)で設定されています。ここの設定を変更すればよいはずです。

例えばカーソル位置の要素にどのようなハイライトグループが設定されているか調べるには、下のようなプラグインを用いる方法があります。

  * 標準の構文ハイライトなら: [SyntaxAttr.vim](https://github.com/vim-scripts/SyntaxAttr.vim) で `:call SyntaxAttr()`
  * TreeSitter なら: [Neovim Treesitter Playground](https://github.com/nvim-treesitter/playground) で `:TSHighlightCapturesUnderCursor`

* * *

### 配色を設定したい要素に、他と区別されたハイライトグループが設定されていない場合

こういった場合は、テーマではなく構文ファイルのカスタマイズが必要になります。必ずしも構文ファイルの解析部分を書き換える必要は無く、設定の追加で可能なことも多くあります。

Tree-sitter
を利用している場合、目的の要素が他と区別されたノードの種類として認識されていれば、解析部分に手を入れる必要はありません。ノードに割り当てるハイライトグループを変更すればよいです。カーソル位置のノードは下で得られます。

[code]

    :lua print(require'nvim-treesitter.ts_utils'.get_node_at_cursor())
    
[/code]

例えば、C++ の `primitive_type` という種類のノードに `TSMyCppPrimitiveType`
というハイライトグループを設定する場合、クエリファイルに下を記述します。（`:TSEditQueryUserAfter highlights cpp`
で開けます）

[code]

    ; ~/.config/nvim/after/queries/cpp/highlights.scm
    (primitive_type) @TSMyCppPrimitiveType
    
[/code]

一般的かは解りませんが、こういった設定の変更をテーマファイルと一緒に一つのプラグインとして配布することも可能なはずです。

参考: [日常に彩りを加える nvim-treesitter
の設定術](https://zenn.dev/monaqa/articles/2021-12-22-vim-nvim-treesitter-
highlight)


CC BY-SA 4.0
2022-08-19T13:45:16.727
90636
2022-08-19T15:15:54.587
2022-08-19T15:15:54.587
3054
3054
90635
answer