合并两个Emacs缓冲区?

合并两个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缓冲区,如何通过连接每个缓冲区的第一行,然后连接第二行,等等来组合它们?例如,我可能需要在缓冲区#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的内容,然后将其矩形拉伸(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