2014-10-17 116 views
3

在intellij產品中,我非常喜歡live-templates。我想知道是否有可能對文件模板使用相同的語法,例如將變量格式化爲蛇形或駱駝形,定義起始光標位置等。是否可以使用實時模板作爲文件模板?

+1

完全一樣 - 沒有。文件模板使用Apache Velocity模板語言。它允許一些Java(?)簡單的方法在變量上運行(例如'#set($ class_start = $ class.substring(0,1).toUpperCase())') - 也許更復雜也可以。 – LazyOne 2014-10-17 12:52:28

+0

@LazOne:非常有幫助!尤其是他們使用Apache速度模板語言的暗示。如果您以此作爲答案,我會接受。 – 2014-10-17 12:56:59

+0

關於如何定義起始光標位置的任何想法?每次我創建一個新的Java類,光標位置都在類名的末尾。我必須按鍵才能進入課堂。 – Rounak 2015-04-02 13:47:14

回答

2

不幸的是,您不能使用文件模板中實時模板中可用的相同函數/宏。使用Apache Velocity template language。它允許一些Java(?)簡單方法在變量上運行(例如#set($class_start = $class.substring(0,1).toUpperCase()))。很可能更復雜的方法也會起作用。


更新(2017年1月13日):

由於2016.1(或者2016.2)版本,它現在可以用在文件模板一些動態模板以及(通過檢查Enable Live Templates該文件模板的複選框)。我不是100%確定它是否會按照要求做的事情(未經過測試)。

語法例如:#[[ $MY_VARIABLE$ $END$ ]]#

https://www.jetbrains.com/help/phpstorm/2016.3/file-and-code-templates-2.html

相關問題