static @NotNull StartMarkAction startMarkAction(
    @NotNull Project project,
    @NotNull Editor editor,
    @NlsContexts.Command String commandName
  ) throws StartMarkAction.AlreadyStartedException {
    StartMarkAction[] markAction = new StartMarkAction[1];
    StartMarkAction.AlreadyStartedException[] ex = new StartMarkAction.AlreadyStartedException[1];
    CommandProcessor.getInstance().executeCommand(project, () -> {
      try {
        markAction[0] = StartMarkAction.start(editor, project, commandName);
      }
      catch (StartMarkAction.AlreadyStartedException e) {
        ex[0] = e;
      }
    }, commandName, null);
    if (ex[0] != null) throw ex[0];
    return markAction[0];
  }
static @NotNull StartMarkAction startMarkAction(
    @NotNull Project project,
    @NotNull Editor editor,
    @NlsContexts.Command String commandName
  )