code: public String print(
          long amount,
          CalendarUnit unit,
          TextWidth width
      ) {
  
          UnitPatterns p = UnitPatterns.of(this.locale);
          CalendarUnit u;
  
          switch (unit) {
              case MILLENNIA:
                  amount = MathUtils.safeMultiply(amount, 1000);
                  u = CalendarUnit.YEARS;
                  break;
              case CENTURIES:
                  amount = MathUtils.safeMultiply(amount, 100);
                  u = CalendarUnit.YEARS;
                  break;
              case DECADES:
                  amount = MathUtils.safeMultiply(amount, 10);
                  u = CalendarUnit.YEARS;
                  break;
              case YEARS:
                  u = CalendarUnit.YEARS;
                  break;
              case QUARTERS:
                  amount = MathUtils.safeMultiply(amount, 3);
                  u = CalendarUnit.MONTHS;
                  break;
              case MONTHS:
                  u = CalendarUnit.MONTHS;
                  break;
              case WEEKS:
                  if (this.weekToDays) {
                      amount = MathUtils.safeMultiply(amount, 7);
                      u = CalendarUnit.DAYS;
                  } else {
                      u = CalendarUnit.WEEKS;
                  }
                  break;
              case DAYS:
                  u = CalendarUnit.DAYS;
                  break;
              default:
                  throw new UnsupportedOperationException(unit.name());
          }
  
          String pattern = p.getPattern(width, this.getCategory(amount), u);
          return this.format(pattern, amount);
  
      }
docs: /*[deutsch]
  <p>Formatiert die angegebene Dauer in kalendarischen Zeiteinheiten. </p>
  
  <p>Hinweis: Jahrtausende, Jahrhunderte und Dekaden werden automatisch
  zu Jahren normalisiert, w&auml;hrend Quartale zu Monaten normalisiert
  werden. </p>
  
  @param   amount  Anzahl der Einheiten
  @param   unit    kalendarische Zeiteinheit
  @param   width   text width (ABBREVIATED as synonym for SHORT)
  @return  formatierte Ausgabe
  @since   1.2
  @see     #print(Duration, TextWidth)