質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Scheme

Schemeは、Lispから派生したプログラミング言語の一つであり、仕様または実装を指す場合もあります。言語自体の仕様はシンプルで、関数型言語として理解しやすいことから記号処理などで主に用いられている言語です。

Vim

VimとはUnix / Linux 系のOSに標準搭載されているターミナル上で動くテキストエディタです。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

プラグイン

プラグイン(plug-in)は、ソフトウェアアプリケーションの機能拡張の為に開発された、一組のソフトウェアコンポーネントのことを指します。

Q&A

解決済

2回答

1653閲覧

Vim colorschemeの設定で、ローカル変数と仮引数の変数の色を別の色に設定したい。

Kchan_01

総合スコア110

Scheme

Schemeは、Lispから派生したプログラミング言語の一つであり、仕様または実装を指す場合もあります。言語自体の仕様はシンプルで、関数型言語として理解しやすいことから記号処理などで主に用いられている言語です。

Vim

VimとはUnix / Linux 系のOSに標準搭載されているターミナル上で動くテキストエディタです。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

プラグイン

プラグイン(plug-in)は、ソフトウェアアプリケーションの機能拡張の為に開発された、一組のソフトウェアコンポーネントのことを指します。

0グッド

0クリップ

投稿2020/09/29 01:34

編集2020/09/29 05:37

vscodeからvimに移行しています。vim初心者です。

color themeをmaterialを設定しています。
kaicataldo/material.vim: ???? A port of the Material color scheme for Vim/Neovim

default-communityを設定していますが、仮引数の色が変わりません。
仮引数とローカル変数の色を変える設定方法をご存知の方、教えていただけないでしょうか。

vimの表示

*仮引数の変数に色がついていません。

イメージ説明

vscodeの表示

*仮引数の変数の色が赤色に設定されています。
イメージ説明

現状のvimrcは以下です。
let g:material_terminal_italics = 1 let g:material_theme_style = 'default-community' colorscheme material
環境は以下です。
ProductName: Mac OS X ProductVersion: 10.15.7 BuildVersion: 19H2 端末 iTerm2 VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Sep 16 2020 23:47:44) macOS 版 適用済パッチ: 1-1700

宜しくお願いします。

追記 2020/09/29 14:34

色味についての話があったので、参考に画像を上げておきます。

イメージ説明

vimrcのビジュアルを設定している部分です。

"***************************************************************************** "" Visual Settings "***************************************************************************** syntax on set ruler set number let no_buffers_menu=1 set mousemodel=popup set t_Co=256 set guioptions=egmrti set gfn=Monospace\ 10 if has("gui_running") if has("gui_mac") || has("gui_macvim") set guifont=Menlo:h12 set transparency=7 endif else let g:CSApprox_loaded = 1 " IndentLine let g:indentLine_enabled = 1 let g:indentLine_concealcursor = 0 let g:indentLine_char = '┆' let g:indentLine_faster = 1 if $COLORTERM == 'gnome-terminal' set term=gnome-256color else if $TERM == 'xterm' set term=xterm-256color endif endif endif if &term =~ '256color' set t_ut= endif "" Disable the blinking cursor. set gcr=a:blinkon0 set scrolloff=3 "" Status bar set laststatus=2 "" Use modeline overrides set modeline set modelines=10 set title set titleold="Terminal" set titlestring=%F set statusline=%F%m%r%h%w%=(%{&ff}/%Y)\ (line\ %l/%L,\ col\ %c)\ " Search mappings: These will make it so that going to the next one in a " search will center on the line it's found in. nnoremap n nzzzv nnoremap N Nzzzv if exists("*fugitive#statusline") set statusline+=%{fugitive#statusline()} endif " vim-airline let g:airline_theme = 'powerlineish' let g:airline#extensions#branch#enabled = 1 let g:airline#extensions#ale#enabled = 1 let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#tagbar#enabled = 1 let g:airline_skip_empty_sections = 1 " Based on Vim patch 7.4.1770 (`guicolors` option) - https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd if (has('termguicolors')) set termguicolors endif let g:rainbow_active = 1 "set to 0 if you want to enable it later via :RainbowToggle let g:lightline = { 'colorscheme': 'material_vim' } let g:material_terminal_italics = 1 let g:airline_theme = 'material' " 'default' | 'palenight' | 'ocean' | 'lighter' | 'darker' let g:material_theme_style = 'default-community' colorscheme material set list set listchars=tab:»-,trail:-,eol:↲,extends:»,precedes:«,nbsp:%

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

VSCodeがSemantic HighlightというMetatextで書かれた言語のスコープを判断して色付けを行う仕組みを使っているため、vimで変数ごとの色設定はできない。

スコープによって判断させて、色を設定するには、以下のような拡張機能をインストールする必要がある。

jackguo380/vim-lsp-cxx-highlight: Vim plugin for C/C++/ObjC semantic highlighting using cquery, ccls, or clangd

参考

Semantic Highlight Guide | Visual Studio Code Extension API

tmsyntax.md

投稿2020/09/29 07:31

Kchan_01

総合スコア110

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

テーマスタイル 'default' だと仮引数などには付かないようです。

VScodeの画面の配色からすると、darker っぽいですが、 palenight,ocean,darker あたりを試してみてください。
colorscheme materialを実施する前に入れればいいと思います。

vim

1" 'default' | 'palenight' | 'ocean' | 'lighter' | 'darker' 2let g:material_theme_style = 'ocean' 3 4colorscheme material

投稿2020/09/29 02:01

tsuyoshi_cho

総合スコア189

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Kchan_01

2020/09/29 02:17

回答ありがとうございます。vimrcの記載を追記しました。themeを変えましたが、仮引数に色は付きませんでした。
tsuyoshi_cho

2020/09/29 04:53

ええっと https://github.com/kaicataldo/material.vim を入れて設定しているんですよね? let g:material_theme_style = 'default-community' であるとすると default と実質同じ色になって + hoge-community の機能的フォローがはいるのはたしかなようですが... https://github.com/kaicataldo/material.vim/blob/main/colors/material.vim ちなみに、default 系以外のどれを試したのでしょうか? 全部ですか? であれば手元では表示できていたので、なにか別の原因があるのかもしれませんね... ちなみに同じ色ではなかったです、occean-communityやpalenight-communityで濃い目のグレー、darker-communityで白に近いブルー系でした。
Kchan_01

2020/09/29 05:50 編集

let g:material_theme_style = 'default' | 'palenight' | 'ocean' | 'lighter' | 'darker' | 'default-community' | 'palenight-community' | 'ocean-community' | 'lighter-community' | 'darker-community' の全ては試してみましたが、仮引数だけ他の変数と色を変えることはできませんでした。 念の為、画像を追記しました。 現状、やりたいのは、カラーテーマを変えることではなく、仮引数に使われている変数のみ赤色で表示するということですが、themeの変更のみではできませんでした。 @tsuyoshi_choさんの端末では、できているとのことですので、他の拡張機能とかち合っている可能性も踏まえて考えてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問