是否有一种简单的方法来删除换行符,但不压缩空格?
<@compress>
directive同时做到了,这不是我想要的。
我在这样的循环中有一个部分:
<#list items as item>
* <#if something>${something?right_pad(10)}<#else>${something_else?right_pad(10)}</#if><#if another_thing>${more_data?right_pad(20)}<#else>${even_more_data?right_pad(20)}</#if>
</#list>
这使得一些非常长的行,我更喜欢做类似的事情:
<#list items as item>
* <#if something>
${something?right_pad(10)}
<#else>
${something_else?right_pad(10)}
</#if>
<#if another_thing>
${more_data?right_pad(20)}
<#else>
${even_more_data?right_pad(20)}
</#if>
</#list>
但是为了清晰起见,似乎没有一种简单的方法可以消除这里的间距歧义,我希望使用right_pad
输出间距。
答案 0 :(得分:2)
您至少有两个选择:
1)使用注释掉的空格:
<#list items as item>
* <#if something><#--
-->${something?right_pad(10)}<#--
--><#else><#--
${something_else?right_pad(10)}<#--
--></#if><#--
--><#if another_thing><#--
-->${more_data?right_pad(20)}<#--
--><#else><#--
-->${even_more_data?right_pad(20)}<#--
--></#if>
</#list>
2)使用&lt;#lt&gt; (左侧修剪当前行没有新行符号)或/和&lt; #rt&gt; (右线修剪当前线与新线符号)
<#list items as item>
* <#if something><#rt>
${something?right_pad(10)}<#lt><#rt>
<#else><#lt><#rt>
${something_else?right_pad(10)}<#lt><#rt>
</#if><#lt><#rt>
<#if another_thing><#lt><#rt>
${more_data?right_pad(20)}<#lt><#rt>
<#else><#lt><#rt>
${even_more_data?right_pad(20)}<#lt><#rt>
</#if><#lt>
</#list>