Unicode errors with monitor and printf

Hi, I have a teensy project underway and since moving to VSCode I’m having trouble using printf() with anything other than int’s lower than 128. Here’s an example of trying to print floats.

 Exception in thread rx:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/home/mongrol/.local/lib/python2.7/site-packages/serial/tools/miniterm.py", line 453, in reader
    self.console.write(text)
  File "/home/mongrol/.local/lib/python2.7/site-packages/serial/tools/miniterm.py", line 68, in write
    self.output.write(text)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5: ordinal not in range(128)

and my platformio.ini

[env:teensy31]
platform = teensy
framework = arduino
board = teensy31

; lib_ldf_mode = 1
; lib_compat_mode = 1

Solved by generating en_US.UTF-8 UTF-8 locale.
Someone asked in similar post, why is this hardcoded?