将区域转换为列表

时间:2011-12-25 21:55:07

标签: emacs org-mode

在组织模式中,我想将一个区域放入列表中。

说我有以下文字

One
Two
Three

如何将其转换为以下列表(手动编辑除外)?

- One
- Two
- Three

在标记区域后,是否有一些命令可以实现?

1 个答案:

答案 0 :(得分:6)

有很多方法。以下是一些:

  1. query-replace-regexp:标记区域,或者只是将点移动到第1行的开头,然后使用 CM - % ^ RET < / kbd> - RET 。如果您标记了该区域,则可以使用替换该区域中的所有匹配项。

  2. string-rectangle:在第1行的开头设置标记,将点移动到第3行的开头,键入 Cx r t - RET

  3. cua-selection-mode:如果启用cua-selection-mode(我在.emacs中打开它),您可以使用 C-RET <激活第1行开头的矩形/ kbd>,将点向下移动到第3行的开头,键入-,然后再次键入 C-RET 以停用矩形。

  4. 键盘宏:在第1行,键入 F3 Cx 开始录制,然后 - SPC 作为宏的内容, F4 Cx 停止录制。现在,您可以标记区域并键入 Cx Ck r ,将该宏应用于区域中的每一行。

  5. (编辑)我不知道这是关于org-mode的,这使得它与emacs: Orgmode, how to make a list from a block of lines重复(见gregor's answer)。