vimでgnuplotをコンパイルしてepsを表示

最近、mac userになってテキストエディタをmacvimに変えた。

vimでpltファイルをいじっているときに、コンパイルしてepsを表示できたら便利!ってことで設定を作ってみた。

以下がインストールされているとする。
quickrun(vim-script), gnuplot, gv

1. ファイルタイプを設定

拡張子.pltを持ったファイルをgnuplotファイルとして認識する。

[sourcecode language=”bash”]
mkdir ~/.vim/ftdetect
vim ~/.vim/ftdetect/myfiletype.vim
au BufRead, BufNewFile *.plt set filetype=gnuplot
[/sourcecode]

2. 以下を.vimrcに追記

[sourcecode language=”plain”]
let g:quickrun_config[‘gnuplot’] = {
‘type’ : ‘gnuplot’,
‘command’ : ‘gnuplot’,
‘outputter/buffer/split’ : ‘vertical rightbelow 40’,
‘exec’ : [‘cd %s:h; %c %s; echo /usr/local/bin/gv %s:h/`grep output %s | cut -d "”" -f 2 | head -n 1` > __tmp-open-gv.sh; chmod +x __tmp-open-gv.sh; open -a x11.app __tmp-open-gv.sh; sleep 1;rm __tmp-open-gv.sh’]
}

[/sourcecode]

3. ついでにテンプレートを作っとく

[sourcecode language=”bash”]
mkdir ~/.vim/template
vim ~/.vim/template/gnuplot.plt
set term pos eps enh color solid lw 2 ‘Roman’ 40
set tmargin 0
set bmargin 0
set rmargin 0
set lmargin 0
set xtic font "Roman"
set ytic font "Roman"
set mxtic 2
set mytic 2
set output ‘output.eps’
set multiplot
set origin 0.2,0.2
set size 0.75,0.75
set key spacing 1.2
set key samplen 3
set style data lp
set yrange [-0.2: 1]
set ylabel ‘ylabel’ offset 2, 0
plot pi*x*x
unset multiplot
[/sourcecode]

以下を.vimrcに追記
[sourcecode language=”plain”]
autocmd BufNewFile *.plt 0r    ~/.vim/template/gnuplot.plt
[/sourcecode]

参考
http://d.hatena.ne.jp/setoryohei/20070712/1184274341

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です