snippet.el いれた

emacs + snippet.el の定型文補完(スニペット)で楽々HTML編集:Goodpic

を見て便利そうなので導入。

elisp よくわかんねーので、psgml-modecperl-mode で動かしたかっただけなのにものすごい時間かかった。。

; snippet.el
(require 'snippet)
(require 'psgml)
(snippet-with-abbrev-table 'xml-mode-abbrev-table
  ("ahref" .  "<a href=\"$${url}\" title=\"$${title}\">$${title}</a>"))

(defvar cperl-mode-abbrev-table nil
  "Abbrev table in use in CPerl mode.")
(define-abbrev-table 'cperl-mode-abbrev-table ())
(snippet-with-abbrev-table 'cperl-mode-abbrev-table
  ("formy" .  "for my $${item} ($${items}) {\n}")
  ("cataction"  .  "sub $${fn} :$${attribute} {\n$>my ($self, $c) = @_;\n}"))

こんなんでいけた。

psgmlのxml-modeは普通にやったら xml-mode-abbrev-table なんてねーよっておこられるので、先に (require 'psgml) しておいたらいけた。

cperl-mode も同じ方法でやろうとしたらなんかエラーになったのでソース見たら、cperl-mode-abbrev-table がすでに定義されてあったら cperl-mode 側では上書きしないっぽい感じになっていたのでてけとうに定義してやったらいけた。うむ、よくわからん。

まぁつかえたからいいや的な。

あとはabbrev-tableふやすだけ~。

by typester / at 2007-02-12T15:24:00 / emacs / Comments(0)