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