The following code example is taken from the book
 
  C++20 - The Complete Guide
 by Nicolai M. Josuttis,
 Leanpub, 2021 
 
 The code is licensed under a
 
     Creative Commons Attribution 4.0 International License.
      
 
 
// raw code
 
#include <iostream> 
#include <locale> 
#include <format> 
 
// define facet for German bool names:  
class GermanBoolNames : public std::numpunct_byname<char> { 
 public: 
  GermanBoolNames (const std::string& name) 
   : std::numpunct_byname<char>(name) { 
  } 
 protected: 
  virtual std::string do_truename() const { 
    return "wahr"; 
  } 
  virtual std::string do_falsename() const { 
    return "falsch"; 
  } 
}; 
 
int main() 
{ 
  // create locale with German bool names:  
  std::locale locBool{std::cin.getloc(), 
                      new GermanBoolNames{""}}; 
   
  // use locale to print Boolean values:  
  std::cout << std::format(locBool, "{0} {0:L}\n", false);  // false falsch  
}