code: def _compute_cols(hooks, verbose):
      
      if hooks:
          name_len = max(len(_hook_msg_start(hook, verbose)) for hook in hooks)
      else:
          name_len = 0
  
      cols = name_len + 3 + len(NO_FILES) + 1 + len(SKIPPED)
      return max(cols, 80)
docs: Compute the number of columns to display hook messages.  The widest
      that will be displayed is in the no files skipped case:
  
          Hook name...(no files to check) Skipped
  
      or in the verbose case
  
          Hook name [hookid]...(no files to check) Skipped