docstr: Return a progressbar.  See e.g. `tqdmProgressBar` about the interface
  
  Additional parameter is backend to choose among available
docstr_tok: ["Return","a","progressbar",".","See","e.g",".","`","tqdmProgressBar","`","about","the","interface","Additional","parameter","is","backend","to","choose","among","available"]
code: def get_progressbar(self, *args, **kwargs):
      """Return a progressbar.  See e.g. `tqdmProgressBar` about the interface
  
      Additional parameter is backend to choose among available
      """
      backend = kwargs.pop("backend", None)
      # Delay imports of progressbars until actually needed
      if ConsoleLog.progressbars is None:
          from .progressbars import progressbars
  
          ConsoleLog.progressbars = progressbars
      else:
          progressbars = ConsoleLog.progressbars
  
      if backend is None:
          # Resort to the configuration
          from .. import cfg
  
          backend = cfg.get("datalad.ui.progressbar", None)
  
      if backend is None:
          try:
              pbar = progressbars["tqdm"]
          except KeyError:
              pbar = progressbars.values()[0]  # any
      else:
          pbar = progressbars[backend]
      return pbar(*args, out=self.out, **kwargs)
  
imports: from logging import getLogger
  import os
  import sys
  import time
  import getpass
  from collections import deque
  from copy import copy
  from ..utils import auto_repr
  from ..utils import on_windows
  from .base import InteractiveUI
  from datalad.support.exceptions import CapturedException
label_desc: Use image node_id 4 for calling the ConsoleLog obj's underlying member method code with example usage: obj.get_progressbar() and returns: pbar