本を読む

読書やコンピュータなどに関するメモ

yaml-mode.elでcomment-regionを使う設定

 PlaggerやRuby on Railsの設定で使われている「YAML」をEmacsで編集するのに、yaml-mode.elが便利だ。

 ただ、comment-regionをすると、正規表現がそのまま挿入されてしまったりする。そこで、設定値を変更。とりあえずソースはいじらず、.emacsからyaml-mode-hookで動的に変更してみる。

(add-hook 'yaml-mode-hook
          '(lambda ()
             (setq comment-start "#")
             (setq comment-start-skip "\\(^\\s-*\\|\\=\\s-*\\)#+ *")
             (setq comment-end-skip "$")
             (set (make-local-variable 'comment-style) 'indent) ))

 これで、インデント位置にあわせて「#」が挿入されるようになるはず。

2007-01-27追記:
yaml-mode.elバージョン0.0.3では、syntax-tableで「#」をコメント開始、行末をコメント終了とすることで対応した模様。改めて調べてみると、YAMLでは行の途中からのコメントを認めてるようですね。PerlのYAML.pmではコメント扱いしてくれないけど(YAML::Syckはコメント扱いしてくれるけど)。

use YAML;
use Data::Dumper;

my $yaml = <<'__YAML__';
- hoge  # hogehoge
__YAML__

my $dat = Load($yaml);
print Dumper($dat), "\n";

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://emasaka.blog65.fc2.com/tb.php/188-d321cbcc

 | HOME | 

Categories

Recent Entries

Recent Comments

Recent Trackbacks

Appendix

emasaka

emasaka

フリーター。
連絡先はこのへん

Monthly


FC2Ad