gvimを半透明にするついでに透明度を切り替えられるようにする

2013年8月6日火曜日

vim

t f B! P L
windows kaoriya版でのお話。
ウィンドウを透過させるとなにかと便利ですよね。
半透明と不透明をトグルで切り替えるようにすると半透明が邪魔になる場合も対応できて幸せになれます。

"とりあえず起動時のデフォルトを200
set transparency=200
let s:_transparency = &transparency
function! g:toggleTransparency()
if &transparency != 255
let s:_transparency = &transparency
set transparency=255
else
execute 'set transparency=' . s:_transparency
endif
endfunction
noremap <expr><Plug>_toggleTransparency g:toggleTransparency()
map <Space>tt <Plug>_toggleTransparency

簡単な説明
<Space>ttを押すと半透明、不透明が切り替わります。透明度が保存されているので不透明から半透明になるとき復元されます。
透明度の設定なので_gvimrcなどに追加してください。



以下はチラシの裏的なお話。

ウィンドウを半透明にしたいだけならset transparency=200だけでいいです。
値が保存されるのだからtransparencyを調整するキーバインドを用意すると良いかもしれません。
noremap <Space>t+ :set transparency+=10
noremap <Space>t- :set transparency-=10
こんなかんじで。

noremap <Space>t+ :set transparency+=10

noremap <Space>t+ :set transparency+=10<CR>
にしないのは私が_vimrcで
map <M-.> @:
と設定していてAlt+.連打で調整しているから。
こんなことをせずに<CR>をつけて適当な空いているキーにわりふってもいいですね。

同様の事がmac版でできるかどうかは試してません。
transparencyを適切な値に調整することで使えそうな気がしますがどうなんでしょうね。

QooQ