将区域转换为列表

N.N*_*.N. 0 emacs org-mode

在组织模式中,我希望将区域放入列表中.

说我有以下文字

One
Two
Three
Run Code Online (Sandbox Code Playgroud)

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

- One
- Two
- Three
Run Code Online (Sandbox Code Playgroud)

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

phi*_*ils 6

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

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

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

  3. cua-selection-mode:如果启用cua-selection-mode(我在.emacs中打开它),你可以在第1行的开头激活一个矩形,C-RET向下移动到第3行的开头,键入-,然后C-RET再次键入停用矩形.

  4. 键盘宏:在第1行,键入F3C-x(开始录制,然后-SPC作为宏的内容,和/ F4C-x)停止录制.现在,您可以标记区域和类型C-xC-kr以将该宏应用于区域中的每一行.

  5. (编辑)我不知道错过了这是关于org-mode,这使得它成为emacs的重复:Orgmode,如何从一个行块中创建一个列表(参见gregor的答案).