2013-01-14 27 views
0

我試圖結合自動插入和速度模板來自動填充正確內容的新文件。如何向速度模板提供數據?

我的目標是讓自動插入調用速度模板,爲它提供一些數據(例如一個類的名稱)。

事情是這樣的:

​​

我想提供的C++類模板緩衝區的文件名,所以它可以很好地擴展。理想情況下,創建一個名爲'foo.h'的文件將使用'foo'作爲數據擴展模板,創建'foo'類。

我試圖用in the Tempo Manual解釋的「保存列表」玩弄,但目前還沒有運氣。

感謝您的幫助。

順便,難道還有比

(file-name-sans-extension (file-name-nondirectory buffer-file-name)) 

一個更好的方式來獲得文件的類名?

回答

0

C-h f tempo-define-template RET給模板元素及其含義的列表:

A string: It is sent to the hooks in `tempo-insert-string-functions', 
and the result is inserted. 
... 
Anything else: It is evaluated and the result is treated as an 
element to be inserted. One additional tag is useful for these 
cases. If an expression returns a list '(l foo bar), the elements 
after `l' will be inserted according to the usual rules. This makes 
it possible to return several elements from one expression. 

所以只是把(file-name-sans-extension (file-name-nondirectory buffer-file-name))在你想要的類名模板(是的,我認爲這確實是得到一個最好的方式班級名稱不在文件名中)。

+0

確實有效。 我想保留參數以防萬一我想生成一個沒有像緩衝區那樣命名的類,但我想這種情況不會經常發生,不值得麻煩。 謝謝。 – Mankalas