yasnippet-0.6.1b(c?)を使うとanything-c-yasnippet.elが動かない
yasnippet-0.6.1b(c?)では、yas/snippet-table-hashのデータ構造とyas/expand-snippetの引数の順番が以前のバージョンとは違うらしい。
以下パッチ
diff --git a/plugins/anything-c-yasnippet.el b/plugins/anything-c-yasnippet.el index b74c115..79020d9 100644 --- a/plugins/anything-c-yasnippet.el +++ b/plugins/anything-c-yasnippet.el @@ -169,8 +169,11 @@ If SNIPPET-FILE does not contain directory, it is placed in default snippet dire collect (yas/snippet-table-hash table)))) (loop for hash in hashes do (maphash (lambda (k v) - (setq hash-value-alist (append v hash-value-alist)) - ) + (let (a) + (maphash (lambda (n te) + (setq a (append (list (cons k te)) a))) + v) + (setq hash-value-alist (append a hash-value-alist)))) hash)) (loop with transformed with templates @@ -306,7 +309,7 @@ space match anyword greedy" (candidate-transformer . (lambda (candidates) (anything-c-yas-get-transformed-list anything-c-yas-cur-snippets-alist anything-c-yas-initial-input))) (action . (("Insert snippet" . (lambda (template) - (yas/expand-snippet anything-c-yas-point-start anything-c-yas-point-end template) + (yas/expand-snippet template anything-c-yas-point-start anything-c-yas-point-end) (when anything-c-yas-display-msg-after-complete (message "this snippet is bound to [ %s ]" (anything-c-yas-get-key-by-template template anything-c-yas-cur-snippets-alist)))))
ちなみにanything-c-yasnippetのまとめはこちらです。
http://d.hatena.ne.jp/IMAKADO/20080401/1206715770
動かない!!
ちょっと買えた
diff --git a/plugins/anything-c-yasnippet.el b/plugins/anything-c-yasnippet.el index b74c115..948d627 100644 --- a/plugins/anything-c-yasnippet.el +++ b/plugins/anything-c-yasnippet.el @@ -162,15 +162,20 @@ If SNIPPET-FILE does not contain directory, it is placed in default snippet dire (yas/choose-tables-first nil) (yas/buffer-local-condition 'always)) (let* ((result-alist '((candidates) (transformed) (template-key-alist))) - (hash-value-alist nil) - (cur-table (first (yas/get-snippet-tables anything-c-yas-cur-major-mode))) - (hash-table (yas/snippet-table-hash cur-table))) ;`yas/snippet-table-hash' - (let ((hashes (loop for table in (yas/get-snippet-tables) + (cur-tables + (if table + (list table) + (yas/get-snippet-tables anything-c-yas-cur-major-mode))) + (hash-value-alist nil)) + (let ((hashes (loop for table in cur-tables collect (yas/snippet-table-hash table)))) (loop for hash in hashes do (maphash (lambda (k v) - (setq hash-value-alist (append v hash-value-alist)) - ) + (let (a) + (maphash (lambda (n te) + (setq a (append (list (cons k te)) a))) + v) + (setq hash-value-alist (append a hash-value-alist)))) hash)) (loop with transformed with templates @@ -306,7 +311,7 @@ space match anyword greedy" (candidate-transformer . (lambda (candidates) (anything-c-yas-get-transformed-list anything-c-yas-cur-snippets-alist anything-c-yas-initial-input))) (action . (("Insert snippet" . (lambda (template) - (yas/expand-snippet anything-c-yas-point-start anything-c-yas-point-end template) + (yas/expand-snippet template anything-c-yas-point-start anything-c-yas-point-end) (when anything-c-yas-display-msg-after-complete (message "this snippet is bound to [ %s ]" (anything-c-yas-get-key-by-template template anything-c-yas-cur-snippets-alist)))))