是否可以只复制 Sublime Text 中的可见行?

Is it possible to copy only visible lines in Sublime Text?

有没有办法在代码折叠后只复制可见行?例如,如果我有一大块像这样折叠的代码:

.selector 1 { ...
}

.selector 2 { ...
}

我只想复制可见的线条。

我将向您展示我是如何完成这项任务的。我只列出了必需的步骤,因为我的视频有一些多余的步骤。

给定以下代码:

.selector 1 { ...
}

.selector 2 { ...
}

  1. ⌘+A,⌘+K,⌘+1折叠所有代码
  2. 使用光标select.selector
  3. ⌘+⌃+G 到 select 所有 .selector
  4. 移动到行首
  5. ⌘+⇧+→ 到 select 整行
  6. ⇧+← 取消 select 折叠的代码部分
  7. ⌘+C复制
  8. ⌘+V粘贴
  9. 使用光标 select 新粘贴的行
  10. ⌘+⇧+L 将光标放在所有行上
  11. ⌘+→ 移动到行尾
  12. } 为所有行添加右括号

它不像突出显示、复制和粘贴那么简单,但如果您记住了所有键盘快捷键,它可以很快完成工作。您可以使用相同策略的多种变体。比如你可以高亮所有的黄色省略号(折叠的代码),删除它们,然后剩下的就是你想要的文字。

为 windows 用户转换了这个,并提供了更多解释。这里的核心问题是,当您 select 您想要避免的内容时 selecting ... 位,因为它代表折叠代码。

需要做的是:

  1. CTRL-左键单击您要复制的每一行的开头。 (这将在每个位置留下一个光标。)
  2. 按 CTRL-L select 所有这些内容行。
  3. 然后按 SHIFT-左箭头取消选择末尾的 ... 位。
  4. 现在按 CTRL-C,您只有未隐藏(展开)内容的副本。

希望对您有所帮助。