是否与emacs中的列对齐?

是否与emacs中的列对齐?,emacs,alignment,Emacs,Alignment,我有一个.dat文件,如下所示: NGC0448 A3D:2010B g:o,r:o,i:o NGC0474 A3D:2011A,2013A g:o,r:o,i:o,u:o 现在,我想将它们对齐为以下形式: NGC0448 A3D:2010B g:o,r:o,i:o NGC0474 A3D:2011A,2013A g:o,r:o,i:o,u:o 我试过使用C-u M-X align和M-X align regexp使用=但都不起作用。有人能想出解决办法吗

我有一个.dat文件,如下所示:

NGC0448 A3D:2010B g:o,r:o,i:o
NGC0474 A3D:2011A,2013A g:o,r:o,i:o,u:o
现在,我想将它们对齐为以下形式:

NGC0448    A3D:2010B          g:o,r:o,i:o
NGC0474    A3D:2011A,2013A    g:o,r:o,i:o,u:o

我试过使用
C-u M-X align
M-X align regexp
使用
=
但都不起作用。有人能想出解决办法吗

您为什么尝试在
=
上对齐??该示例文本中没有一个
=

假设您的示例具有代表性,则可以在空间上对齐。我将使用
\s-
(空白语法)而不是实际的空格,因为后者更难看到

C-uM-x
align regexp
RET

  • 使用regexp进行复杂对齐:
    \(\s-*\)\s-
  • 要修改的括号组(如果为负数,则进行对齐):
    1
  • 间距量(如果为负数,则为列):
    3
  • 在整条线路上重复?(y或n)
    y

如果您只想在显示器中对齐,而不想修改文件,可以尝试
csv模式
(在GNU ELPA中提供)。您必须将SPC指定为分隔符(默认情况下为逗号或制表符),但随后可以使用菜单指示模式对齐列