wstring getStyleString wstring str string styles wstring x1b va_list a

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
wstring getStyleString(wstring str, string styles...) {
wstring s = L"\x1b[";
va_list arguments;
va_start(arguments, styles);
for(int i = 1; i < styles; i++)
s += to_wstring(getStyleCode(va_arg(arguments, string))) + (i != styles - 1 ? L";" : L"");
va_end(arguments);
s += L"m" + str + L"\x1b[0m";
return s;
}