添加 snippet
M-x
然后輸入yas-new-snippet
回車RET
,會出現一個新的 buffer# -*- mode: snippet -*-# name: # key: # --
在出現的 buffer 中填寫相應的數據
# -*- mode: snippet -*-# name: vard# key: vard# --echo '<pre>';var_dump($0);die;
c-x c-s
保存可以保存到兩個地方:
- ~/.emacs.d/private/snippets/modename-mode/
- ~/.spacemacs.d/snippets/modename-mode/
- 代碼片段中的
$0
表示代碼片段填充之后光標最后停的地方,$1 $2 $3...
表示按TAB
之后光標停的地方。這些變量我們叫做tab stop
在已存在的代碼片段上創建 snippet
helm-yas-create-snippet-on-region
使用 snippet
- 打開一個 buffer
M-/
spacemacs 的TAB
按鍵被自動補全使用了,所以這里使用了M-/
來觸發。- 如果有多個
tab stop
可以使用TAB
進行跳轉
與 auto-completion 整合
;; 讓 auto-completion 在提示的時候加上 snippets
(setq-default dotspacemacs-configuration-layers'((auto-completion :variablesauto-completion-enable-snippets-in-popup t)))
參考文獻:
[0]:Spacemacs - Adding Custom Snippets to Yasnippet
[1]:Emacs Yasnippet video 視頻實戰,只有不到 7 分鐘的時間,值得一看