Tabyasnippetのキーバインドは、他の有用なキーを上書きすることがよくあります。
TabYasnippet のバインディングを無効にして他のTab使用法を有効にする方法はありますか?
Tabyasnippetのキーバインドは、他の有用なキーを上書きすることがよくあります。
TabYasnippet のバインディングを無効にして他のTab使用法を有効にする方法はありますか?
これらは yasnippet のキーバインディングを削除します:
(define-key yas-minor-mode-map [(tab)] nil)
(define-key yas-minor-mode-map (kbd "TAB") nil)
動作するはずです。tab
または、別のコマンドにバインドできます。
私はパーティーに遅れましたが、この質問で受け入れられた答えに出くわしました...うまくいきませんでした。
少し実験して、最終的に解決策を見つけました。機能する回答を提供する必要があると思いました:
;; It is crucial you first activate yasnippet's global mode.
(yas/global-mode 1)
;; The following is optional.
(define-key yas-minor-mode-map [backtab] 'yas-expand)
;; Strangely, just redefining one of the variations below won't work.
;; All rebinds seem to be needed.
(define-key yas-minor-mode-map [(tab)] nil)
(define-key yas-minor-mode-map (kbd "TAB") nil)
(define-key yas-minor-mode-map (kbd "<tab>") nil)
(setq yas-minor-mode-map ;This MUST before (require 'yasnippet)
(let ((map (make-sparse-keymap)))
(define-key map (kbd "M-i") 'yas-expand)
(define-key map "\C-c&\C-n" 'yas-new-snippet)
(define-key map "\C-c&\C-v" 'yas-visit-snippet-file)
map))
(require 'yasnippet)