docs: def move_window(win_key, bbox):
          """
          CommandLine:
              # List windows
              wmctrl -l
              # List desktops
              wmctrl -d
  
              # Window info
              xwininfo -id 60817412
  
              python -m utool.util_ubuntu XCtrl.move_window joncrall 0+1920,680,400,600,400
              python -m utool.util_ubuntu XCtrl.move_window joncrall [0,0,1000,1000]
              python -m utool.util_ubuntu XCtrl.move_window GVIM special2
              python -m utool.util_ubuntu XCtrl.move_window joncrall special2
              python -m utool.util_ubuntu XCtrl.move_window x-terminal-emulator.X-terminal-emulator [0,0,1000,1000]
  
          # >>> import utool as ut
          # >>> from utool import util_ubuntu
          # >>> orig_window = []
          # >>> X = util_ubuntu.XCtrl
          win_key =  'x-terminal-emulator.X-terminal-emulator'
          win_id = X.findall_window_ids(key)[0]
  
          python -m utool.util_ubuntu XCtrl.findall_window_ids gvim --src
  
          """
          import utool as ut
          import plottool as pt  # NOQA
          import plottool.screeninfo as screeninfo
          monitor_infos = {
              i + 1: screeninfo.get_resolution_info(i)
              for i in range(2)
          }
          # TODO: cut out borders
          # TODO: fix screeninfo monitor offsets
          # TODO: dynamic num screens
          def rel_to_abs_bbox(m, x, y, w, h):
              """ monitor_num, relative x, y, w, h """
              minfo = monitor_infos[m]
              # print('minfo(%d) = %s' % (m, ut.repr3(minfo),))
              mx, my = minfo['off_x'], minfo['off_y']
              mw, mh = minfo['pixels_w'], minfo['pixels_h']
              # Transform to the absolution position
              abs_x = (x * mw) + mx
              abs_y = (y * mh) + my
              abs_w = (w * mw)
              abs_h = (h * mh)
              abs_bbox = [abs_x, abs_y, abs_w, abs_h]
              abs_bbox = ','.join(map(str, map(int, abs_bbox)))
              return abs_bbox
  
          if win_key.startswith('joncrall') and bbox == 'special2':
              # Specify the relative position
              abs_bbox = rel_to_abs_bbox(m=2,
                                         x=0.0, y=0.7,
                                         w=1.0, h=0.3)
          elif win_key.startswith('GVIM') and bbox == 'special2':
              # Specify the relative position
              abs_bbox = rel_to_abs_bbox(m=2,
                                         x=0.0, y=0.0,
                                         w=1.0, h=0.7)
          else:
              abs_bbox = ','.join(map(str, eval(bbox)))
  
          print('MOVING: win_key = %r' % (win_key,))
          print('TO: abs_bbox = %r' % (abs_bbox,))
          # abs_bbox.replace('[', '').replace(']', '')
          # get = lambda cmd: ut.cmd2(' '.join(["/bin/bash", "-c", cmd]))['out']  # NOQA
          win_id = XCtrl.find_window_id(win_key, error='raise')
          print('MOVING: win_id = %r' % (win_id,))
          fmtdict = locals()
          cmd_list = [
              ("wmctrl -ir {win_id} -b remove,maximized_horz".format(**fmtdict)),
              ("wmctrl -ir {win_id} -b remove,maximized_vert".format(**fmtdict)),
              ("wmctrl -ir {win_id} -e 0,{abs_bbox}".format(**fmtdict)),
          ]
          print('\n'.join(cmd_list))
          for cmd in cmd_list:
              ut.cmd2(cmd)