合并两个Emacs缓冲区?
给定两个独立的emacs缓冲区,如何通过连接每个缓冲区的第一行,然后连接第二行,等等来组合它们?例如,我可能需要在缓冲区#1中的每一行后面添加一个空格,这样就不会以“b12”结尾 缓冲区#1 a b a c 碳x 缓冲区#2 1 2 5 4 3 2 结果 a b 1 2 a c 5 4 c x 3 2 a b 1 2 a c 5 4 cx32合并两个Emacs缓冲区?,emacs,elisp,Emacs,Elisp,给定两个独立的emacs缓冲区,如何通过连接每个缓冲区的第一行,然后连接第二行,等等来组合它们?例如,我可能需要在缓冲区#1中的每一行后面添加一个空格,这样就不会以“b12”结尾 缓冲区#1 a b a c 碳x 缓冲区#2 1 2 5 4 3 2 结果 a b 1 2 a c 5 4 c x 3 2 a b 1 2 a c 5 4 cx32 如果您不介意在emacs之外进行合并,您可以保存这两个文件,并使用awk合并它们 看看这个例子:您应该能够使用。只需复制缓冲区2的内容,然后将其矩形拉伸(
如果您不介意在emacs之外进行合并,您可以保存这两个文件,并使用awk合并它们
看看这个例子:您应该能够使用。只需复制缓冲区2的内容,然后将其矩形拉伸(C-x r y)到缓冲区1中,点在第一行“b”右侧的一个空格处。使用
M-x 2C关联
和M-x 2C合并
。您可能希望使用C-h v 2C窗口宽度
或M-x 2C收缩窗口水平。
对于此类应用程序,我通常使用“”工具(但没有Emacs…)。如果您使用的是Linux,默认情况下它应该是可用的
简单到:
$ paste file1 file2 > file3
这将按照您要求的方式将两个文件“file1”和“file2”合并到输出“file3”中。默认情况下,制表符用作列分隔符,但这可以通过“-d”选项进行更改。总会有新的发现:)虽然问题中的小例子更容易使用矩形处理,
2C merge
具有不需要手动处理长行的显著优势,这可能使它成为更可靠的答案。它的工作原理与您希望的缓冲区缩小完全相同,这非常好。
a b 1 2
a c 5 4
c x 3 2
$ paste file1 file2 > file3