Nano插入换行中的换行符

Tom*_*ger 13 regex search replace nano

基本上,我需要将文本的一部分加倍.我知道我可以这样做:

sed G
Run Code Online (Sandbox Code Playgroud)

但如果我能直接在Nano中做到这一点会很棒.

我试图寻找线(结束$),然后用喜欢的东西取代它\n[:newline:],但它似乎正则表达式是只承认搜索,而不是为了取代-它总是插入文字表达.

但是,这个问题表明它是可能的.虽然我无法弄清楚如何.是的,我有:

set regexp
Run Code Online (Sandbox Code Playgroud)

在我的.nanorc

CSᵠ*_*CSᵠ 14

set regexp 在您的配置文件中将:

默认情况下,扩展正则表达式搜索.

您也可以使用Meta+ R*以 交互方式激活它

但就是这样!搜索使用正则表达式,但作为替代纳米只接受字符串,引用除外捕获组\1\9.

Nano的RegEx风格是一个POSIX实现,对于你不会计算[:newline:]但接受的兴趣\s,[:cntrl:](控制字符)和[:space:](所有空格字符,包括换行符)也否定了POSIX类:[^[:graph:]]

回答

它无法完成,没有任何效果,尝试过:

  • 空白显示切换Meta+ P- 没有可见的变化
  • 逐字输入Meta+ Shift+ V然后按下Enter将转换为可见^M编码(但适用于Tab输入)
  • " 特殊功能 " Esc+ Esc然后是一个3位数的序列 - 控制字符不被接受(但接受可见的字符013实际上会像用户按下的那样解释它Enter)
  • Unicode输入 Ctrl + Shift+ U- 不接受控制字符(但接受可见字符)

某些控制字符的ASCII代码:

      DEC   HEX   
(\t)    9  0x09   Horizontal Tab
(\n)   10  0x0a   New Line
(\r)   13  0x0d   Carriage Return
 ( )   32  0x20   Space
Run Code Online (Sandbox Code Playgroud)

Nano命令:

  • 搜索Ctrl+W
  • 寻找下一个Meta+ W*
  • 搜索Ctrl+时切换替换R
  • 搜索和替换Ctrl+\

*Meta通常是Alt关键


PS:"有时候失败就是答案,或者有人应该证明我错了"
PPS:拜托


Ant*_*ala 5

不仅目前无法在nano中执行此操作,而且我的功能请求也在错误跟踪器中也标记为"wontfix,too hard".


Mar*_*ton 5

  1. 选择文本块。
  2. 按插入命令。
  3. 按翻转执行命令。
  4. 按翻转命令。
  5. 按flipnewbuffer 命令。
  6. 执行您想要的任何外部命令。该命令会将选择内容通过管道传输到标准输入,并且选择内容将被命令的标准输出替换。

此外,您可以通过录制和运行宏来自动执行此操作。您还可以将键绑定到宏序列。