3
$\begingroup$

Blender version 2.93

By default, Blender displays numbers in the format of 10,200.50 and does not respect the user defined values.

Blender displaying number format as 1,000.00

My current number format settings are set to 10 200,50 which is used by most software, but not Blender.

Windows settings using number format 1 000,00

I simply want the number format I've chosen to be displayed in Blender.

$\endgroup$
5
  • $\begingroup$ And in case some would argue "this would mess with the internal code if it needs to be able to treat , as a decimal place too". No, this is just the visual part for the user. It will convert to the display format when displaying, and convert from the display format for user input. -- I personally don't mind period as a decimal mark, but comma as a thousand mark is just wrong and breaks the ISO standard. $\endgroup$
    – Liggliluff
    Commented Jan 4, 2022 at 7:13
  • $\begingroup$ Hi :) It's in Properties > Scene tab > Units > Separate values (or something like that). Then you'll only get a period as a decimal mark. $\endgroup$ Commented Jan 4, 2022 at 9:54
  • $\begingroup$ I'm stupid, I was supposed to state which Blender version I'm running. I have to use 2.93 to ensure everything works as it should. So I assume Properties and Scene tab are things of Blender version 3? $\endgroup$
    – Liggliluff
    Commented Jan 4, 2022 at 10:18
  • $\begingroup$ Separate Units is there in 2.93, but it only changes 1.3m -> 1m 3cm, which isn't what you want. $\endgroup$
    – scurest
    Commented Jan 4, 2022 at 11:06
  • $\begingroup$ @scurest Yes, that wouldn't be what I'm after, since it would then possibly say "1,000 m" which to me reads as 1000 mm at a precision of 1 mm. $\endgroup$
    – Liggliluff
    Commented Jan 6, 2022 at 15:52

1 Answer 1

5
$\begingroup$
About thousands mark:

These are not normally used, but are used for eg scene statistics in the statusbar. The commas appear to be inserted by the function BLI_str_format_int_grouped_ex, which hardcodes comma as the separator. So you cannot change this.

About decimal mark:

AFAICT, most numbers in the UI are printed by the standard snprintf function with format specifier %.*f. Theoretically this is a locale sensitive function. Try running this from the Python Console to set the locale.

import locale as l; l.setlocale(l.LC_NUMERIC, "")
# Try this one if that doesn't work
import locale as l; l.setlocale(l.LC_NUMERIC, "Swedish")

(The precise name of the language will vary). I had to move my mouse around the UI a bit to get it to update, but it did change.

$\endgroup$
2
  • $\begingroup$ But it can't use one localised and one hardcoded symbol, that would result in collision. $\endgroup$
    – Liggliluff
    Commented Jan 4, 2022 at 14:44
  • $\begingroup$ Then you can't change it. $\endgroup$
    – scurest
    Commented Jan 4, 2022 at 14:47

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .