code: public String getFormattedOption(int offset, int descriptionStart, int width) {
          StringBuilder sb = new StringBuilder();
          if(required && ansiMode)
              sb.append(ANSI.BOLD);
          if(offset > 0)
              sb.append(String.format("%" + offset+ "s", ""));
          if(shortName != null)
              sb.append("-").append(shortName);
          if(name != null && name.length() > 0) {
              if(shortName != null)
                  sb.append(", ");
              sb.append("--").append(name);
          }
          if(argument != null && argument.length() > 0) {
              sb.append("=<").append(argument).append(">");
          }
          if(required && ansiMode)
              sb.append(ANSI.BOLD_OFF);
          if(description != null && description.length() > 0) {
              //int descOffset = descriptionStart - sb.length();
              int descOffset = descriptionStart - getFormattedLength() - offset;
              if(descOffset > 0)
                  sb.append(String.format("%"+descOffset+"s", ""));
              else
                  sb.append(" ");
  
              sb.append(description);
          }
  
          return sb.toString();
      }
docs: TODO: add offset, offset for descriptionstart and break on width