YASnippet - emacs 的代碼片段管理工具
阿新 • • 發佈:2019-04-03
工具 pup ide ots 存在 填充 ret out popup
添加 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 :variables auto-completion-enable-snippets-in-popup t)))
參考文獻:
[0]:Spacemacs - Adding Custom Snippets to Yasnippet
[1]:Emacs Yasnippet video 視頻實戰,只有不到 7 分鐘的時間,值得一看
YASnippet - emacs 的代碼片段管理工具