我正在尝试使用和/或在 Emacs;中用新行替换一个字符 - 比如说 - 。replace-stringreplace-regexp
我尝试了以下命令:
M-x
replace-stringRET;RET\n这将替换
;为两个字符:\n.M-x
replace-regexRET;RET\n这会导致以下错误(显示在 minibuffer 中):
在替换文本中使用无效的 `'。
replace-string用于此任务有什么问题?还有另一种方法吗?
M-x replace-string RET ; RET C-q C-j.
C-q对于quoted-insert,
C-j是换行符。
我发现有四种方法可以将换行符放入迷你缓冲区。
C-o
C-q C-j
C-q 12(12 是换行符的八进制值)
C-x o到主窗口,用 杀死一个换行符C-k,然后C-x o回到迷你缓冲区,用 猛拉它C-y
不要忘记您可以随时剪切并粘贴到 minibuffer 中。
因此,您可以从缓冲区中复制一个换行符(或任何字符串),然后在提示输入替换文本时将其拉出。
更明确地说:
要将分号字符 (;) 替换为换行符,请按照以下确切步骤操作。
将光标定位在缓冲区左上角要更改的包含文本
输入m-x替换字符串并点击Return
迷你缓冲区将显示如下内容:替换字符串(默认 ^ -> ):
输入要替换的字符。在这种情况下,;
并击中Return
迷你缓冲区将显示如下内容:
细绳 ; 和:
现在执行C-q C-j
分号的所有实例将被替换一个换行符(从光标位置到缓冲区末尾现在将出现)
它比原来的解释说的还要多。
切换到文本模式:
M-x text-mode
突出显示要缩进的块。
缩进:Ctrl+ M</kbd>
切换回任何模式...
仅内联:
C-M-S-%(如果绑定键仍然是默认值)然后
replace-string ^J.