基本上,我需要将文本的一部分加倍。我知道我可以这样做:
sed G
但如果我可以直接在Nano中做到这一点会很棒。
我试图寻找行尾($
)然后用类似的东西替换它 \n
要么 [:newline:]
但似乎RegExp仅被识别为搜索而不是替换 - 它总是插入文字表达式。
然而, 这个问题 表明它有可能。虽然我无法弄清楚如何。是的,我有:
set regexp
在我的.nanorc
基本上,我需要将文本的一部分加倍。我知道我可以这样做:
sed G
但如果我可以直接在Nano中做到这一点会很棒。
我试图寻找行尾($
)然后用类似的东西替换它 \n
要么 [:newline:]
但似乎RegExp仅被识别为搜索而不是替换 - 它总是插入文字表达式。
然而, 这个问题 表明它有可能。虽然我无法弄清楚如何。是的,我有:
set regexp
在我的.nanorc
set regexp
在您的配置文件中将:
默认情况下,扩展正则表达式搜索。
您也可以使用以交互方式激活它 元 + [R*
但就是这样!使用RegEx进行搜索,但作为替换Nano仅接受字符串,但引用的捕获组除外 \1
至 \9
。
Nano的RegEx风格是一个POSIX实现,对于你不感兴趣的它不会计算 [:newline:]
但接受 \s
, [:cntrl:]
(控制字符)和 [:space:]
(所有空白字符,包括换行符)也被否定了 POSIX类: [^[:graph:]]
它无法完成,没有任何效果,尝试过:
^M
编码(但适用于 标签 输入)013
实际上会像用户按下那样解释它 输入)某些控制字符的ASCII代码:
DEC HEX (\t) 9 0x09 Horizontal Tab (\n) 10 0x0a New Line (\r) 13 0x0d Carriage Return ( ) 32 0x20 Space
Nano命令:
*Meta通常是 Alt键 键
set regexp
在您的配置文件中将:
默认情况下,扩展正则表达式搜索。
您也可以使用以交互方式激活它 元 + [R*
但就是这样!使用RegEx进行搜索,但作为替换Nano仅接受字符串,但引用的捕获组除外 \1
至 \9
。
Nano的RegEx风格是一个POSIX实现,对于你不感兴趣的它不会计算 [:newline:]
但接受 \s
, [:cntrl:]
(控制字符)和 [:space:]
(所有空白字符,包括换行符)也被否定了 POSIX类: [^[:graph:]]
它无法完成,没有任何效果,尝试过:
^M
编码(但适用于 标签 输入)013
实际上会像用户按下那样解释它 输入)某些控制字符的ASCII代码:
DEC HEX (\t) 9 0x09 Horizontal Tab (\n) 10 0x0a New Line (\r) 13 0x0d Carriage Return ( ) 32 0x20 Space
Nano命令:
*Meta通常是 Alt键 键
不仅是目前 纳米不可能做到这一点但是 我的功能要求 在bug追踪器中也被标记为“wontfix,too hard”。
此外,您可以通过记录和运行宏来自动执行此操作。 您还可以将键绑定到宏序列。