基本上,我需要将文本的一部分加倍。我知道我可以用:
sed G
但如果我能直接在Nano中完成它会很棒。
我尝试搜索行尾($
),然后将其替换为\n
或[:newline:]
之类的内容,但似乎RegExp只能用于搜索,而不是replace - 它总是插入文字表达式。
然而,this question表明它是可能的。虽然我无法弄清楚如何。是的,我有:
set regexp
在我的.nanorc
答案 0 :(得分:14)
set regexp
将:
默认情况下,扩展正则表达式搜索。
您也可以使用 Meta + R *
以交互方式激活它但那就是它!使用RegEx进行搜索,但作为替换Nano只接受字符串,除了引用捕获的组\1
到\9
。
Nano的RegEx风格是POSIX实现,对于您感兴趣的内容,它不会计算[:newline:]
但接受\s
,[:cntrl:]
(控制字符)和{{ 1}}(所有空白字符,包括换行符)也否定POSIX classes:[:space:]
它无法完成,没有任何效果,尝试过:
[^[:graph:]]
编码(但适用于 Tab 输入)某些控制字符的ASCII代码:
^M
Nano命令:
* Meta通常是 Alt 键
<小时/> <子> PS:&#34;有时候失败就是答案,或者有人应该证明我错了&#34;
答案 1 :(得分:5)
目前目前无法在nano 中执行此操作,但my feature request也标记为&#34; wontfix,太难&#34;在bug跟踪器中也是如此。
答案 2 :(得分:2)
此外,您可以通过记录和运行宏来使其自动化。 您还可以将键绑定到宏序列。