@Override
  public @Nullable Transferable getSelectionTransferable(@NotNull Editor editor, @NotNull CopyPasteOptions options) {
    if (editor.getContentComponent() instanceof JPasswordField) return null;

    ThreadingAssertions.assertEventDispatchThread();
    List<TextBlockTransferableData> extraData = new ArrayList<>();
    String s = editor.getCaretModel().supportsMultipleCarets() ? getSelectedTextForClipboard(editor, options, extraData)
                                                               : editor.getSelectionModel().getSelectedText();
    if (StringUtil.isEmpty(s)) return null;

    s = TextBlockTransferable.convertLineSeparators(s, "\n", extraData);
    return editor.getCaretModel().supportsMultipleCarets() ? new TextBlockTransferable(s, extraData, null)
                                                           : new StringSelection(s);
  }
@Override
  public @Nullable Transferable getSelectionTransferable(@NotNull Editor editor, @NotNull CopyPasteOptions options)