問題
Emacsのorg-modeで 自作snippetのkeyで指定したものをタイプし、TABを押せば変換されるはずなのだが何も起きない。
TABの代わりに M-x yas-expand すると変換される。
また、拡張子無しのファイルでTABしたら変換された。
どうやらorg-modeのTABに割り当てられているマクロと競合しているようだ。
解決策
調べたらorg公式に解決策が載っていた。 以下を設定ファイルに追記後、Emacsを再起動したら無事にorg-modeでTABで変換することができた。
(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)))
参考サイト
https://orgmode.org/manual/Conflicts.html#Conflicts
日本語で検索しても出てこなかったので、この記事が検索に引っかかれば誰かの役に立てるかもしれない。