21

I'm writing a report in a language that uses decimal commas. In some cases that clashes with commas used for punctuation, causing hard to read text, e.g.:

for $x_i \in [-1,5, 1,5]$.

Is there a way to make this more readable?

3
39

If you're using the comma as decimal separator, then you should consider using the semi-colon for the interval separator, it will be more readable:

interval example

$x_i\in[-1{,}5;1{,}5]$

(Instead of typing 1{,}5, you can also use the icomma package as suggested by egreg or \num as suggested by Werner.)

4
  • That was the first version I tried. Looks good on the screen but I didn't like it very much when printed.
    – htorque
    Jul 26 '11 at 18:12
  • 1
    +1, semicolon should absolutely be used. Spacing is nice and all but even with proper spacing this is way too confusing otherwise. Jul 26 '11 at 18:52
  • 5
    @htorque: in French you would also add a thin space \, before the semi-colon. To my eye, it improves even further the readability of the formula, but depending on the language you're using, it might be against the rules. Jul 26 '11 at 19:04
  • +1 also from me. A semicolon should be used indeed.
    – Stephen
    Dec 25 '12 at 15:59
33
\usepackage{icomma}
...
for $x_{i}\in[-1,5, 1,5]$.

Notice the space after the comma where you want it to act as a punctuation symbol.

2
  • Nice, definitely an improvement! Yet I think it still needs additional space between the elements (like suggested by Stephen).
    – htorque
    Jul 26 '11 at 18:11
  • 1
    Trying this in 2020: this package should be installed from "was": tlmgr install was May 22 '20 at 17:34
16

The siunitx package provides a general way of treating numbers and their decimal symbols. However, you have to explicitly encompass the numbers with \num{...}. For example:

\documentclass{article}

\usepackage[output-decimal-marker={,}]{siunitx}

\begin{document}

This is a range $x_i \in [\num{-1.5}, \num{1.5}]$.% ...or [\num{-1,5}, \num{1,5}]

\end{document}​​​​​​​​​​​​​​​​​​

would produce

Comma as decimal symbol

2
  • 2
    This has been replaced by output-decimal-marker in siunitx version 2.
    – krlmlr
    Jul 27 '13 at 20:31
  • And in 2021 (but it has been that way for a while, I just don't know since when) you don't have to use the comma inside the \num{}: you can just use the point and change output-decimal-marker depending on the language you want to compile your document for.
    – Andyc
    Oct 21 at 5:27
2

You could try \; or \, or ~ as space (instead of " "):

$x_i \in [-1,5,\;1\,1~1,5]$

and use a semicolon for the interval separator (as already suggested by Philippe Goutet).

Not the answer you're looking for? Browse other questions tagged or ask your own question.