YAML.pm を利用した YAML syntax checker

[id:cooldaemon:20060714] で書いた内容の YAML 版。

#!/usr/bin/perl
use strict;
use warnings;

use YAML;

my $file_name = $ARGV[0];
if (!$file_name) {
  print "Usage : yaml_checker.pl [YAML file name]?n";
  exit;
}

eval {
  YAML::LoadFile( $file_name );
};

$@ ? print $@ : print 'Syntax OK!!';
print "?n";

これを、適当な名前で保存して実行権限を与え・・・.vimrc に下記を追加する。

autocmd Syntax yaml map ,t :w<CR>:!~/bin/yaml_checker.pl %<CR> | set makeprg=~/bin/yaml_checker.pl? %

「~/bin/yaml_checker.pl」の箇所はお好きな名前で。

そのうち、kwalify と vim 連携ネタも考えてみよ。