在IntelliJ IDEA中保存时是否可以自动删除尾随空格?我知道有一些解决方法,例如,使用git修剪提交时的空白.也许这个问题是一个重复的这一个,但我希望这可以在不设置键盘快捷键和宏命令来完成.
我想在IntelliJ Idea中设置一个只有活动的调试断点,如果激活了另一个先前的断点.例如,我在第10行有一个断点B1,在第20行有另一个断点B2.即使B2s条件为真,调试器只应在B2s之前B1s条件为真时停止.
在Idea中这样的事情可能吗?
更新:
目前我正在使用此解决方法:
我希望有一个更清洁的方法来做到这一点:)
我正在使用FreeMarker模板引擎从Web服务的抽象描述中生成一些php类.我的问题是,当我在FreeMarker模板中调用一个宏时,宏在宏调用之前插入没有左手空格的文本.
exampleTemplate.ftl:
<?php
class ${class.name} {
<@docAsComment class.doc/>
<#list class.fields as field>
$${field.name};
</#list>
<#-- ... -->
}
?>
<#macro docAsComment doc>
/*
<#if doc.title != "">
* ${doc.title}
</#if>
<#list doc.content as content>
<#if content != ""> * ${content}</#if>
</#list>
*/
</#macro>
Run Code Online (Sandbox Code Playgroud)
这将生成如下内容:
<?php
class foo {
/*
* foo
* bar foo, bla
*/
$a;
$b;
}
?>
Run Code Online (Sandbox Code Playgroud)
一种解决方案是,将前导空格作为参数提交给宏,但这使得模板更难以理解.有更好的解决方案吗?
public class MyCache {
AbstractMap<String, AbstractMap<String, Element>> cache = new TreeMap<String, AbstractMap<String,
Element>>();
public Boolean putElement(String targetNamespace, Element element) {
...
}
public void clear() {
cache.clear();
}
// is it better this way?
public void deepClear() {
for(AbstractMap<String, Element> innerMap : cache.values()) {
innerMap.clear();
}
cache.clear();
}
}
Run Code Online (Sandbox Code Playgroud)
是否有必要迭代根映射的值并首先清除嵌套在根中的所有映射,或者清除最外面的映射就足够了?我的主要问题是,这两种方法对 JVM 的内存消耗有什么区别吗?
java ×2
breakpoints ×1
debugging ×1
freemarker ×1
git ×1
jvm ×1
maps ×1
memory-leaks ×1
reformat ×1