From 1209ff88e2a3529e5465e6eeb9c3140e18efc0ef Mon Sep 17 00:00:00 2001 From: Tixx <83774803+WiserTixx@users.noreply.github.com> Date: Sun, 21 Sep 2025 21:39:57 +0200 Subject: [PATCH] Support unicode in windows terminal --- src/Logger.cpp | 12 ++++++------ src/Startup.cpp | 2 ++ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Logger.cpp b/src/Logger.cpp index 33215fb..36188dd 100644 --- a/src/Logger.cpp +++ b/src/Logger.cpp @@ -57,36 +57,36 @@ void addToLog(const std::wstring& Line) { } void info(const std::string& toPrint) { std::string Print = getDate() + "[INFO] " + toPrint + "\n"; - std::cout << Print; + std::wcout << Utils::ToWString(Print); addToLog(Print); } void debug(const std::string& toPrint) { std::string Print = getDate() + "[DEBUG] " + toPrint + "\n"; if (options.verbose) { - std::cout << Print; + std::wcout << Utils::ToWString(Print); } addToLog(Print); } void warn(const std::string& toPrint) { std::string Print = getDate() + "[WARN] " + toPrint + "\n"; - std::cout << Print; + std::wcout << Utils::ToWString(Print); addToLog(Print); } void error(const std::string& toPrint) { std::string Print = getDate() + "[ERROR] " + toPrint + "\n"; - std::cout << Print; + std::wcout << Utils::ToWString(Print); addToLog(Print); } void fatal(const std::string& toPrint) { std::string Print = getDate() + "[FATAL] " + toPrint + "\n"; - std::cout << Print; + std::wcout << Utils::ToWString(Print); addToLog(Print); std::this_thread::sleep_for(std::chrono::seconds(5)); std::exit(1); } void except(const std::string& toPrint) { std::string Print = getDate() + "[EXCEP] " + toPrint + "\n"; - std::cout << Print; + std::wcout << Utils::ToWString(Print); addToLog(Print); } diff --git a/src/Startup.cpp b/src/Startup.cpp index ec6a592..2ccb89b 100644 --- a/src/Startup.cpp +++ b/src/Startup.cpp @@ -269,6 +269,8 @@ void LinuxPatch() { void InitLauncher() { SetConsoleTitleA(("BeamMP Launcher v" + std::string(GetVer()) + GetPatch()).c_str()); + SetConsoleOutputCP(CP_UTF8); + _setmode(_fileno(stdout), _O_U8TEXT); debug("Launcher Version : " + GetVer() + GetPatch()); CheckName(); LinuxPatch();