Vim - 新規ファイルを作成するときにテンプレートを読み込む
html とか新規に作成するときに、
<html> <head></head> 〜 </html>
みたいなの書くのがめんどくさい。
$vi unko.html
とかやったらそのへんのテンプレがすでに書かれていると楽。そんなTips。
この記事を参考にしました。
テンプレートファイルを置いておく。名前はskel.htmlとかにしておく。
$cd ~/.vim/ $mkdir -m 755 templates $cd templates $vi skel.html
ここで、上のサイトのようなテンプレートでもよいけど、なんだったら HTML5 のテンプレートとかもってくる。そのへんにゴロゴロ転がっているので、好きなものを持ってくるとよいと思う。
自分はこのサイトのテンプレートをskel.htmlにして配置した。
そして、設定ファイルに下記を追記。
autocmd BufNewFile *.html 0r ~/.vim/templates/skel.html
vi hoge.html して、テンプレートがロードされたらOK。
ここで、htmlだけじゃなくて他のファイルもできたらいいなぁと思ったので、perl とか ActionScript とか mxml に適用してみた。
- skel.pl
use strict; use warnings;
- skel.as
package { public class Hoge { public function Hoge() { } } }
- skel.mxml
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> </s:Application>
こいつらをテンプレートフォルダにぶっこんで、以下を .vimrc に追記
" perl autocmd BufNewFile *.pl 0r ~/.vim/templates/skel.pl " as autocmd BufNewFile *.as 0r ~/.vim/templates/skel.as " mxml autocmd BufNewFile *.mxml 0r ~/.vim/templates/skel.mxml
動的に as のパッケージとかクラス名とか、mxml のクラス名とか、flexのバージョンによっては mx パッケージにしなきゃとか、いろいろやりたいけど、なかなか技術が追いつかない(^^;