vim tablineを見やすくしてくれるプラグインsmart_tabline.vim

vimに標準で備わっているタブラインの表示がとても見づらい... と思われた方は多いのではないでしょうか?
vimを使えば使うほど,vimのタブラインの見づらさに文句を言いたくなります.笑

そこで今回は思い切ってtablineを見やすくするためのvimのプラグインを書いて見ました.
みなさんも良かったら使ってみてください.

github myrobo/smart_tabline.vim

 

 

参考:私が使用している便利なプラグイン一覧
vim とても強力なプラグインたち

 

myrobo/smart_tabline.vim

今回わたしが新たに作成下プラグインはmyrobo/smart_tabline.vimになります.
githubに上がっておりますので,どうぞご自由にお使いください.
プラグインマネージャにNeoBundleをお使いの方,deinをお使いの方は以下のコマンドで使用可能です.
(その他のプラグインマネージャをお使いの方は,適当にググってください.笑)

NeoBundle 'myrobo/smart_tabline.vim' 
[[plugins]]
repo = 'myrobo/smart_tabline.vim'
call dein#add('myrobo/smart_tabline.vim')

 

参考画像・機能など

仕様
・タブは横幅いっぱいに使用するようになっています.
・タブの文字数は ウィンドウの横幅 / タブ数 で決められるため,ファイル名が短く文字数が満たない場合にはそのタブの右端は空白で埋められます.
・また,全タブの右端に空白が表示されることがあります. これは,ウィンドウの横幅 / タブ数 で割り切れなかった分が空白(TabLineFill)で埋められているものですので,バグではありません.仕様です.
・各タブはナンバリングされており,どのタブが何番目にあるのかがひと目でわかるようになっています.
・タブ数が多く1タブあたりの文字数が少なくなってしまったり,ファイル名が長すぎたりすると,タブの中に文字が入りきらなくなると,ファイル名の一部が ~ で省略されます.
・省略する際はファイル名の拡張子を除く部分を末尾から省略されます.
(例 : sample_file.cpp -> sample_f~.cpp)
・ファイル名を省略しても,タブ幅に収まらない場合は,拡張子を含むファイル名の末尾から省略されます.
(例 : sample.longextension -> s~.longextension (これでも入りきらないと) -> sample.lon~)

このプラグインがどのように機能するかの参考として,gifをのせておきます.
ちなみに以下のgifでは,tablineの色を変更しています.
colorschemeのハイライト設定とtablineの色をリンクさせることで全体の色味に統一感が出るため,デザインにもこだわりたいという方は是非変更してみてください.

 

tablineの色を変更する

tablineの色はhighlightコマンドで変更することができます.

highlightコマンドによる色の設定

:highlight <group_name> <settings>

例えば, :highlight TabLine ctermbg=none とするとTabLineの背景がなくなります.
TabLineSelはTabLine中の現在表示しているTabの色を指定できます.
TabLineはTabLine中の現在表示していないTabの色を指定できます.
TabLineFillはTabLineの余白を埋めている部分の色を指定できます.

背景をなしにする設定

augroup AutoColor
	autocmd!
	autocmd Colorscheme * highlight TabLine ctermbg=none
	autocmd Colorscheme * highlight TabLineSel ctermbg=none
	autocmd Colorscheme * highlight TabLineFill cterm=none ctermbg=none
augroup END

ちなみに,上記コマンドはautocommandにて,colorschemeが変更される度にTabLineの設定を呼び出すようにしています.

現在使用されているcolorschemeにリンクする設定

augroup AutoColor
	autocmd!
	autocmd Colorscheme * highlight! link TabLine Comment
augroup END

上記コマンドではTabLineのカラースキームをCommentのカラースキームとリンクさせています.
colorschemeに関する設定の詳しいことは,各自ググッてください.笑

 

 

参考:私が使用している便利なプラグイン一覧
vim とても強力なプラグインたち