@Override
    public void invoke(@NotNull Project project, @NotNull Editor editor, @NotNull PsiFile file) {
      SelectionModel selectionModel = editor.getSelectionModel();
      if (!selectionModel.hasSelection()) {
        SurroundWithHandler.selectLogicalLineContentsAtCaret(editor);
      }

      ZenCodingTemplate emmetCustomTemplate = CustomLiveTemplate.EP_NAME.findExtension(ZenCodingTemplate.class);
      if (emmetCustomTemplate != null) {
        new WrapWithCustomTemplateAction(emmetCustomTemplate, editor, file, new HashSet<>()).perform();
      }
      else if (!ApplicationManager.getApplication().isUnitTestMode()) {
        HintManager.getInstance().showErrorHint(editor, XmlBundle.message("emmet.action.surround.error.hint"));
      }
    }
@Override
    public void invoke(@NotNull Project project, @NotNull Editor editor, @NotNull PsiFile file)