# Aligning table columns on a mathematical operator

This is a little LaTeX hack that I would like to document. For something that I am writing right now I have a big table, where one column contains a certain abelian group. All these groups are direct sums of two other abelian groups. Wouldn't it be nice if the column was aligned on the $\oplus$? At the end of this post there is a comparison to see what I mean in practice.

These abelian groups are the Picard group of certain singular curves, and they are direct sums of $\mathrm{Pic}_0$ and a number of copies of $\mathbb{Z}$ depending on the number of irreducible components. But this is not very important for the remainder of the post.

Using the `dcolumn`

package it is possible to align columns on a decimal point. Luckily, this decimal point can be chosen in a rather broad sense. The column specifier

tells you that we wish to align on the `+`

symbol in the LaTeX code, and that we wish to display `\oplus`

as our decimal point. The `-1`

is not important for us, because we don't have actual decimals.

A few things to keep in mind:

- the
`dcolumn`

package automatically turns everything into math mode, hence you don't need to use`$`

's in this particular column; - so if you need to align actual text using this method, you can always wrap things in
`\text{}`

; - if you have a column header, you do not with to apply the
`dcolumn`

column specifier to it, which is possible by using`\multicol{1}{c}{...}`

.

Notice that I had to move the column header to the right a little. I should figure out a better solution, especially because this creates a little extra margin on the left. But this nitpickery has gone on long enough now.