編集私の問題はずっとスニペット構文に関連していました...以下の構成は完全に機能します。
org-modeとyasnippetを一緒に使用しようとしていますが、org-modeFAQのいくつかの回避策を使用しても機能しません。スニペットTABの略語を押すと、その単語は削除されます。TABスニペットワードを超えていない場合は正常に動作するため、何かが起こっています...
Org-mode version 7.7
、、、を使用しyasnippet (version 0.7.0)
てGNU Emacs 23.4.1
います。
これが私の設定です:
(setq load-path
(append (list nil
"~/.emacs.d/site-lisp/yasnippet"
"~/.emacs.d/site-lisp/org-7.7/lisp")
load-path))
;; set up yasnippet
(require 'yasnippet)
(yas/initialize)
(setq yas/snippet-dirs '("~/.emacs.d/mysnippets"
"~/.emacs.d/site-lisp/yasnippet/snippets"))
(mapc 'yas/load-directory yas/snippet-dirs)
;; set up org mode
(require 'org-install)
;; fix some org-mode + yasnippet conflicts:
(defun yas/org-very-safe-expand ()
(let ((yas/fallback-behavior 'return-nil)) (yas/expand)))
(add-hook 'org-mode-hook
(lambda ()
(make-variable-buffer-local 'yas/trigger-key)
(setq yas/trigger-key [tab])
(add-to-list 'org-tab-first-hook 'yas/org-very-safe-expand)
(define-key yas/keymap [tab] 'yas/next-field)))
C-h v org-tab-first-hookそして、組織バッファ内の次の出力のために、フックが期待どおりに実行されていると確信しています。
org-tab-first-hook is a variable defined in `org.el'.
Its value is
(yas/org-very-safe-expand org-hide-block-toggle-maybe org-src-native-tab-command-maybe org-babel-hide-result-toggle-maybe)
そしてC-h k TAB、これが組織バッファにあります:
<tab> runs the command org-cycle, which is an interactive Lisp
function in `org.el'.
編集
関数を実行した後、次のメッセージが表示さedebug-defun
れますyas/org-very-safe-expand
Result: "[yas] elisp error! Symbol's value as variable is void: err"
だから、yasはどこかでエラーが発生しています...私のedebug
fooは完全に標準に達していませんが、時間があれば、シングルステップでエラーがどこにあるかを確認します。私の完全なemacs構成はここのgithubにあります。