2

当我有这样的代码时(|代表一个光标):

<tag>|</tag>

然后按回车,我明白了:

<tag>
  |
</tag>

我的问题是,我怎样才能快速从中得到:

<tag>text</tag>

对此:

<tag>
  text
</tag>
4

1 回答 1

2

没有内置的方法可以做到这一点。但是,如果您的标记是:

<tag>
    text</tag>

运行代码重新格式化 ( Ctrl++ Alt)后L,您将拥有:

<tag>
    text
</tag>

您可以在宏中利用这一点。在我的脑海中,我想不出一个宏可以处理单个单词值(元素标签和值之间没有任何空格)和多单词值。下面是对多字值执行此操作的宏。对于单个单词值,您将放弃第 2 步。将光标放在元素的值/文本区域。开始录制宏(编辑 > 宏 > 开始录制)并录制以下宏:

  1. Ctrl+ W - 选择单词
  2. Ctrl+ W - 选择整个元素值
  3. ←</kbd> (Left Arrow) - move the cursor to the start of the selection, and thus at the end of the opening tag before the element value.
  4. Enter - 添加换行符
  5. Ctrl+ Alt+ L - 重新格式化代码(打开对话框)
  6. Ctrl+ Enter - 相当于点击确定

停止宏录制,并为其命名。然后为其分配一个键盘快捷键(设置> IDE设置>键盘映射>宏)

请注意,以上将在整个文件上运行重新格式化。如果您只想在相关标签上运行它,请在第 4 步和第 5 步之间添加三个Ctrl+W命令以仅选择该元素及其值。然后在第 6 步之前添加一个Alt+ S(以确保对话框中的“选定文本”选项始终处于选中状态)。

于 2013-07-04T23:37:24.193 回答