Index: svtools/source/numbers/zformat.cxx =================================================================== --- svtools/source/numbers/zformat.cxx (revision 271264) +++ svtools/source/numbers/zformat.cxx (working copy) @@ -57,6 +57,7 @@ #include "numhead.hxx" #include #include "nfsymbol.hxx" +#include using namespace svt; namespace { @@ -2434,6 +2435,15 @@ break; } } + + // Add LRM before minus sign if RTL + // The Unicode standard places a "minus/hyphen" to the right of a number, + // but in practice, Hebrew and Arabic users put a minus to the left of a number + + bool bRtl = Application::GetSettings().GetLayoutRTL(); + sal_Unicode LRM = 0x200E; + if (OutString.GetBuffer()[0] == '-' && bRtl) + OutString.Insert(LRM, 0); return bRes; }