code: def ColorfullyWrite(log: str, consoleColor: int = -1, writeToFile: bool = True, printToStdout: bool = True, logFile: str = None) -> None:
          
          text = []
          start = 0
          while True:
              index1 = log.find('<Color=', start)
              if index1 >= 0:
                  if index1 > start:
                      text.append((log[start:index1], consoleColor))
                  index2 = log.find('>', index1)
                  colorName = log[index1+7:index2]
                  index3 = log.find('</Color>', index2 + 1)
                  text.append((log[index2 + 1:index3], Logger.ColorNames[colorName]))
                  start = index3 + 8
              else:
                  if start < len(log):
                      text.append((log[start:], consoleColor))
                  break
          for t, c in text:
              Logger.Write(t, c, writeToFile, printToStdout, logFile)
docs: log: str.
          consoleColor: int, a value in class `ConsoleColor`, such as `ConsoleColor.DarkGreen`.
          writeToFile: bool.
          printToStdout: bool.
          logFile: str, log file path.
          ColorfullyWrite('Hello <Color=Green>Green</Color> !!!'), color name must be in Logger.ColorNames.