是否存在IntelliJ IDEA操作,如果没有选择则选择一个单词但是如果存在则保持不变?

时间:2015-11-30 14:11:02

标签: intellij-idea macros

我想写一个宏,如果没有选择它会自动对当前单词进行操作,否则它会对选择进行操作。但是我找不到合适的动作,EditorSelectWord一直在不断扩大选择范围。

P.S。该宏旨在将“xyz”更改为“{@code xyz}”,但它还需要将“x / y / z”更改为“{@code x / y / z}”。

1 个答案:

答案 0 :(得分:1)

IntelliJ IDEA似乎不是这项特定工作的最佳工具。看起来宏只支持始终执行的固定步骤列表,而不能使用if语句:https://www.jetbrains.com/idea/help/using-macros-in-the-editor.html

当没有选择时你可以手动使用Ctrl-W,但如果宏可以处理它当然会更好。另一种可能性是使用流编辑器sed之类的工具。 sed的替换命令可能在您的情况下可用,除非文本出现在您不想替换它的地方:

sed 's/xyz/{@code xyz}/g' inputFileName > outputFileName

编写自己的小程序可能也是一个很好的理由,例如只修改源文件中Javadocs中的特定字符串。