2017-04-25 128 views
0

我有一個項目,其中我的文件處於「lisp-case」(連字符分隔)並且我想將該文件名用作活模板中的變量,但它必須轉換爲首先是CamelCase。PhpStorm結合了多個預定義的實時模板功能

我發現你可以在「編輯模板變量」下設置表達式fileNameWithoutExtension(),並且還有一個叫做camelCase()的函數,它應該能夠將我的文件名轉換爲CamelCase。但我無法弄清楚如何將這兩者結合起來。我試圖做camelCase(fileNameWithoutExtension()),但不幸的是,這不起作用。

是否有可能通過其他方式實現這一點?

enter image description here

+1

截圖請 - 在這裏工作得很好:其轉換'ABC-DEF-hed.php'文件名變爲'abcDefHed' – LazyOne

+0

感謝。我添加了一個截圖。如果我嘗試在camelCase()內部封裝fileNameWithoutExtension(),並按下回車鍵保存輸入,則窗口關閉,但不會保存更改。 – funkylaundry

+0

另外,在編輯字段時,它會像一個奇怪的選擇框一樣呈現。也許這是這個特定版本的錯誤。我在Mac上使用PhpStorm 10.0.4。有一個更新可用,我會試試... – funkylaundry

回答

2

駝峯(fileNameWithoutExtension())

這是一個正確的語法。

是否有可能實現這一點?

請確保已爲此變量選中Skip if defined複選框。

enter image description here

如果我嘗試換fileNameWithoutExtension()camelCase(),然後按回車保存窗口關閉的條目,但它不保存

這是一個IDE的bug(https://youtrack.jetbrains.com/issue/IDEA-132965 - 應該在當前的2017.1.x版中修復)。

在任何情況下:要麼按離開現場之前,請輸入 ...或單擊按鈕OK直線距離(那麼你可以重新打開這個窗口做進一步的修改)。

另外,在編輯字段時,它會呈現出像一個奇怪的選擇框。也許這是這個特定版本的錯誤。我在Mac上使用PhpStorm 10.0.4。

不是Mac用戶在這裏..但它確實是一個可編輯的下拉框(它列出了所有可能的功能)。

enter image description here

+0

我沒有得到下拉列表中的可能性列表。但我更新到最新版本,它已被修復:) – funkylaundry

+0

此外,我嘗試了各種按壓組合進入場內或場外,或者直接按下OK,並且不保存場地內容。但現在最新的版本可以按預期工作 - 當我打開下拉菜單時,我也可以獲得選項。 – funkylaundry