'Return a short description. Simply porting the behavior from
the `printwcs()` method.'

def __repr__(self):

    description = [u'WCS    Keywords\n', u'Number    of    WCS    axes:    {0!r}'.format(self.naxis)]
    sfmt = (u'    :    ' + u''.join([((u'{' + u'{0}'.format(i)) + u'!r}        ') for i in range(self.naxis)]))
    keywords = [u'CTYPE', u'CRVAL', u'CRPIX']
    values = [self.wcs.ctype, self.wcs.crval, self.wcs.crpix]
    for (keyword, value) in zip(keywords, values):
        description.append((keyword + sfmt.format(*value)))
    if hasattr(self.wcs, u'pc'):
        for i in range(self.naxis):
            s = u''
            for j in range(self.naxis):
                s += u''.join([u'PC', str((i + 1)), u'_', str((j + 1)), u'    '])
            s += sfmt
            description.append(s.format(*self.wcs.pc[i]))
        s = (u'CDELT' + sfmt)
        description.append(s.format(*self.wcs.cdelt))
    elif hasattr(self.wcs, u'cd'):
        for i in range(self.naxis):
            s = u''
            for j in range(self.naxis):
                s += u''.join([u'CD', str((i + 1)), u'_', str((j + 1)), u'    '])
            s += sfmt
            description.append(s.format(*self.wcs.cd[i]))
    description.append(u'NAXIS    :    {}'.format(u'        '.join(map(str, self._naxis))))
    return u'\n'.join(description)
