以前、Microsoftが「Cascadia Code」というフォントを公開したこと、Cascadia CodeはWindows Terminalで使用できること、そして公開されたフォントにはPowerLineに対応したファミリーフォントが含まれており、VimでPowerLineを利用することができること、などを取り上げた。関連記事は以下の通りだ。
- にわか管理者のためのLinux運用入門[211]Powerlineでカッコよく - エディタ編(Vim)
- にわか管理者のためのLinux運用入門[212]Powerlineでカッコよく - エディタ編(Neovim)
- にわか管理者のためのLinux運用入門[209]進むWindowsのLinux化 - Cascadia CodeのPLフォントを使う
- にわか管理者のためのLinux運用入門[208]Cascadia Codeフォントに新バリエーション登場
さらに、前回まででVimで設定ファイルやプラグインを使う方法を紹介した。そこで今回は、以前PowerLineを紹介した際には省略した「VimでPowerLineを設定する方法」について説明しよう。
まず、「Vim Awesome」でPowerLineを実現するVimのプラグインを検索する。今回紹介するプラグインは「vim-airline」だ。このプラグインを利用する際には「vim-airline-themes」も必要とする。どちらもVim Awesomeで検索できる。
これらのプラグインをインストールして使っていこう。
vim-airlineを使うための設定
これまで本連載で解説してきた通りに設定ファイルを作っているのなら、現在の~/.vimrcは次のようになっているはずだ。
"dein Scripts-----------------------------
if &compatible
set nocompatible " Be iMproved
endif
" Required:
set runtimepath+=/home/daichi/.cache/dein/./repos/github.com/Shougo/dein.vim
" Required:
if dein#load_state('/home/daichi/.cache/dein/.')
call dein#begin('/home/daichi/.cache/dein/.')
" Let dein manage dein
" Required:
call dein#add('/home/daichi/.cache/dein/./repos/github.com/Shougo/dein.vim')
" Add or remove your plugins here
call dein#add('junegunn/seoul256.vim')
" Required:
call dein#end()
call dein#save_state()
endif
" Required:
filetype plugin indent on
syntax enable
" If you want to install not installed plugins on startup.
if dein#check_install()
call dein#install()
endif
" seoul256
let g:seoul256_background = 233
colo seoul256
"End dein Scripts-------------------------
set number
syntax on
set whichwrap=b,s,[,],<,>,~,h,l
set cursorline
set incsearch
set hlsearch
set ignorecase
ここにvim-airlineとvim-airline-themesプラグインの設定を追加する。まず、現在次のようになっている行を探してほしい。
" Add or remove your plugins here
call dein#add('junegunn/seoul256.vim')
上記の行に、次のようにvim-airlineとvim-airline-themesを使用する設定を追加する。
" Add or remove your plugins here
call dein#add('junegunn/seoul256.vim')
call dein#add('vim-airline/vim-airline')
call dein#add('vim-airline/vim-airline-themes')
次に、複数あるPowerLineのステータスラインのカラーテーマのうち、どのテーマを使うのかを指定する。例えば、前回追加したseoul256の設定は以下のようになっているはずだ。
" seoul256
let g:seoul256_background = 233
colo seoul256
これを次のように変更し、PowerLineのテーマとして「molokai」というテーマを使う設定にしてみよう。
" seoul256
let g:seoul256_background = 233
colo seoul256
" vim-airline
let g:airline_powerline_fonts = 1
let g:airline_theme = 'molokai'
ほかにも指定できるテーマには、次のようなものがある。molokaiが合わなかったら別のテーマを試してみてほしい。
vim-airline-themes | |
---|---|
テーマ | alduin、angr、atomic、ayu_light、ayu_mirage、ayu_dark、badcat、badwolf、base16、base16_vim、base16_shell、base16_3024、base16_adwaita、base16_apathy、base16_ashes、base16_atelierdune、base16_atelierforest、base16_atelierheath、base16_atelierlakeside、base16_atelierseaside、base16_bespin、base16_brewer、base16_bright、base16_chalk、base16_classic、base16_codeschool、base16_colors、base16_default、base16_eighties、base16_embers、base16_flat、base16_google、base16_grayscale、base16_greenscreen、base16_gruvbox_dark_hard、base16_harmonic16、base16_hopscotch、base16_isotope、base16_londontube、base16_marrakesh、base16_mocha、base16_monokai、base16_nord、base16_ocean、base16_oceanicnext、base16_paraiso、base16_pop、base16_railscasts、base16_seti、base16_shapeshifter、base16_solarized、base16_spacemacs、base16_summerfruit、base16_tomorrow、base16_twilight、base16_vim、base16color、behelit、biogoo、bubblegum、cobalt2、cool、dark、dark_minimal、desertink、deus、distinguished、durant、faryfloss、fruit_punch、hybrid、hybridline、jay、jellybeans、jet、kalisi、kolor、laederon、light、lucius、luna、minimalist、molokai、monochrome、murmur、night_owl、onedark、ouo、papercolor、peaksea、powerlineish、qwq、raven、ravenpower、seagull、serene、sierra、silver、simple、soda、sol、solarized、solarized_flood、term、term_light、tomorrow、ubaryd、understated、violet、wombat、xtermlight、zenburn |
設定ファイルを変更する前のVimの見た目は次のようになっている。
設定ファイルを変更すると、PowerLineが有効になる(最初の起動時にはgitを使ってプラグインのダウンロードが行われるのでしばらく時間がかかる)。
vim-airlineとvim-airline-themesのインストールが完了するとPowerLineが機能するようになる。しかし、よく見るとわかるのだが、肝心のPowerLineフォントの部分が化けてしまっている。
Cascadia Mono PLをインストールして設定を変更する
執筆時点で筆者が使っているWindows Terminalのバージョンは0.11.1333.0だ。このバージョンはバージョン1.0とそれほど違いはないと考えられる。そのデフォルトフォントは、PowerLineフォントが含まれていない「Cascadia Mono」だ。表示が化けるのは当然だろう。
そして、Windows Terminalをインストールすることで同時にインストールされるフォントは次のように「Cascadia Code」と「Cascadia Mono」だ。PowerLineフォントは含まれていない。
PowerLineを機能させるにはPowerLineフォントを含んだCascadiaフォントをインストールする必要がある。「microsoft/cascadia-code」にアクセスし、リリースから最新のCascadiaフォントをダウンロードする。
ダウンロードしてきたアーカイブを展開すると、次のように「Cascadia Mono PLフォント」の存在を確認できる。
フォントのインストールは設定アプリケーションを使ってもよいし、フォントファイルをダブルクリックしてビューアからインストールしてもよい。
「Cascadia Mono PL」と、ついでに「Cascadia Code PL」もインストールすると、次のようになる。
「Cascadia Mono PL」をインストールしたら、次のようにWindows Terminalに「Cascadia Mono PL」を使用する設定を追加する。
これで準備完了だ。
PowerLineが機能しているVim
「Cascadia Mono PL」のインストールと「Windows Terminalのフォント設定」が完了すれば、Vimの表示は次のように期待通りになる。
ステータスバーの表示がPowerLine対応になったからといって作業効率が著しく向上するといったことはない。ただ単に「かっこいい」という側面が強い。しかし、毎日使うのだ。かっこいいに越したことはないだろう。
最後に、今回の設定を反映させた~/.vimrcファイルを掲載しておく。利用する際の参考にしてもらえれば幸いだ。
"dein Scripts-----------------------------
if &compatible
set nocompatible " Be iMproved
endif
" Required:
set runtimepath+=/home/daichi/.cache/dein/./repos/github.com/Shougo/dein.vim
" Required:
if dein#load_state('/home/daichi/.cache/dein/.')
call dein#begin('/home/daichi/.cache/dein/.')
" Let dein manage dein
" Required:
call dein#add('/home/daichi/.cache/dein/./repos/github.com/Shougo/dein.vim')
" Add or remove your plugins here
call dein#add('junegunn/seoul256.vim')
call dein#add('vim-airline/vim-airline')
call dein#add('vim-airline/vim-airline-themes')
" Required:
call dein#end()
call dein#save_state()
endif
" Required:
filetype plugin indent on
syntax enable
" If you want to install not installed plugins on startup.
if dein#check_install()
call dein#install()
endif
" seoul256
let g:seoul256_background = 233
colo seoul256
" vim-airline
let g:airline_powerline_fonts = 1
let g:airline_theme = 'molokai'
"End dein Scripts-------------------------
set number
syntax on
set whichwrap=b,s,[,],<,>,~,h,l
set cursorline
set incsearch
set hlsearch
set ignorecase