code: def split(self, orientation=Qt.Vertical):
          
          self.setOrientation(orientation)
          self.editorstack.set_orientation(orientation)
          editorsplitter = EditorSplitter(self.parent(), self.plugin,
                      self.menu_actions,
                      register_editorstack_cb=self.register_editorstack_cb,
                      unregister_editorstack_cb=self.unregister_editorstack_cb)
          self.addWidget(editorsplitter)
          editorsplitter.destroyed.connect(lambda: self.editorsplitter_closed())
          current_editor = editorsplitter.editorstack.get_current_editor()
          if current_editor is not None:
              current_editor.setFocus()
docs: Create and attach a new EditorSplitter to the current EditorSplitter.
  
          The new EditorSplitter widget will contain an EditorStack that
          is a clone of the current EditorStack.
  
          A single EditorSplitter instance can be split multiple times, but the
          orientation will be the same for all the direct splits.  If one of
          the child splits is split, then that split can have a different
          orientation.