  The color code is remarkable for its ability to perform fault-tolerant logic
gates. This motivates the design of practical decoders that minimise the
resource cost of color-code quantum computation. Here we propose a decoder for
the planar color code with a triangular boundary where we match syndrome
defects on a nontrivial manifold that has the topology of a M\"{o}bius strip. A
basic implementation of our decoder used on the color code with hexagonal
lattice geometry demonstrates a logical failure rate that is competitive with
the optimal performance of the surface code, $\sim p^{\alpha \sqrt{n}}$, with
$\alpha \approx 6 / 7 \sqrt{3} \approx 0.5$, error rate $p$, and $n$ the code
length. Furthermore, by exhaustively testing over five billion error
configurations, we find that a modification of our decoder that manually
compares inequivalent recovery operators can correct all errors of weight $\le
(d-1) /2$ for codes with distance $d \le 13$. Our decoder is derived using
relations among the stabilizers that preserve global conservation laws at the
lattice boundary. We present generalisations of our method to depolarising
noise and fault-tolerant error correction, as well as to Majorana surface
codes, higher-dimensional color codes and single-shot error correction.
