使用文本编辑器连接行(Geany)

使用文本编辑器连接行(Geany)

我有一个文本文件,里面有多行文本,我想在文本编辑器中将它们连接在一起。也就是说,不需要借助命令行工具(尤其是在 Windows 上,命令行工具可能根本就不可用)。

我正在使用 Geany 及其搜索和替换功能,但没有成功:尝试使用(多行)正则表达式将 $ 替换为空,并使用转义序列将 \n 替换为空。

甚至多行匹配似乎也只替换内容,而保留(空)行不变!

有什么简单的方法可以做到这一点吗?

答案1

感谢 @Prasanna 确认它应该与“基于转义序列”的替换一起使用。我发现这可能是行终止的问题,并且确实用空格替换 \n 会在每行开头添加一个空格!

所以我猜想这将依赖于平台,但它应该按照以使用结尾的行来工作:

在 Windows 上,搜索

\r\n

根据您的需要,用无内容(空字符串)或空格字符替换。

正则表达式似乎根本不起作用。

答案2

我发现在 Geany 中通过正则表达式搜索和替换连接行的秘诀是确保Use multi-line matching已启用。我喜欢 Geany,所以这里是删除行尾的步骤顺序(此处显示的是 Windows,根据需要更改行尾转义字符以适应 *nix):

  • 验证您的行尾:从菜单中选择View >> Show line Endings (例如在 Windows 上,这将显示 CRLF (\r\n))。
  • 突出显示/选择要加入的线路
  • CTRL-H(替换)
  • Search for:字段中输入\r\n
  • Replace with:字段中,不输入任何内容
  • 确保Use regular expressions已检查
  • 确保Use multi-line matching已检查
  • 单击In Selection即可合并选择中的所有行(显然,这也可以在整个文档上完成,或者根据需要逐行完成)。

如果不检查的话就不会起作用Use multi-line matching,所以这就是秘密秘诀。

答案3

实际上,Geany 中有一个 Join Lines 命令,但它有点隐藏:你必须转到 Edit/Preferences/Keybindings Action: Format/Join Lines,然后你可以在那里分配键盘快捷键;正如他们在连接线失败 #510

是的,“连接线”不在菜单中,这很糟糕,因为它很难发现,并且分配键绑定不应该使它出现在菜单中。

但是如果为它分配了一个键绑定,它就可以与 ccec1fe 一起使用。

相关内容