看板 Editor 關於我們 聯絡資訊
前言: emacs 有很多自動插入template的方法,比如 file-template.el 或是header2.el 這篇文章是敘述如何使用yasnippet在建立新檔案時自動插入樣板 Step1: 首先必須裝好yasnippet http://code.google.com/p/yasnippet/ Step2: 在自己的emacs config 添加以下的code (require 'yasnippet) (yas/initialize) (yas/load-directory "~/.emacs.d/plugins/yasnippet-x.y.z/snippets") 注意:上面的load-directory依個人的snippets資料夾位置修改 Step3: 在自己的 emacs config 添加以下code ;; Auto add HEADER in new file (add-hook 'find-file-hook '(lambda () (when (and (buffer-file-name) (not (file-exists-p (buffer-file-name))) (= (point-max) 1)) (let ((header-snippet "HEADER") (yas/fallback-behavior 'return-nil)) (insert header-snippet) ;; if can't expand snippet, delete insert string (if (not (yas/expand)) (delete-region (point-min) (point-max))))))) 這段code會在使用者建立新的檔案時,嘗試插入擁有 HEADER 這個縮寫的 snippet 如果找不到,則刪除插入的字串 Step4: 建立屬於自己的 HEADER 樣板 寫樣板的教學請見: http://yasnippet.googlecode.com/svn/trunk/doc/snippet-development.html 依照yasnippet的教學,建立名為HEADER.yas的檔案,內容為 # -*- mode: snippet -*- # name : Header file # key: HEADER # -- 這邊放上想插入的樣板 這樣就可以了 完整範例請見我的 emacs config https://github.com/coldnew/coldnew-emacs/ 我的snippet 位於 etc/ 資料夾內 yasnippet 設定在 rc.d/025-yasnippet.el -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.126.41.45
ethan5422:emacs一定要推一下的! 02/14 10:14
nonnn:I am searching for this, push!!! 02/18 01:26
mgdesigner:喔這個真有用,推一個 06/21 11:58
※ 編輯: coldnew 來自: 120.126.41.45 (04/18 18:48) ※ 編輯: coldnew 來自: 120.126.41.45 (04/25 17:58)