diff --git a/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui b/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui
index 4a2db228c6..ced8087ba0 100644
--- a/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui
+++ b/src/Mod/Draft/Resources/ui/preferences-drafttexts.ui
@@ -6,8 +6,8 @@
0
0
- 537
- 605
+ 555
+ 797
@@ -17,7 +17,16 @@
6
-
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
9
-
@@ -45,9 +54,9 @@
This is the default font name for all Draft texts and dimensions.
-It can be a font name such as "Arial", a default style such as "sans", "serif"
-or "mono", or a family such as "Arial,Helvetica,sans" or a name with a style
-such as "Arial:Bold"
+It can be a font name such as "Arial", a default style such as "sans", "serif"
+or "mono", or a family such as "Arial,Helvetica,sans" or a name with a style
+such as "Arial:Bold"
@@ -504,6 +513,43 @@ such as "Arial:Bold"
+ -
+
+
-
+
+
+ Feet separator
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Optional string to appear between the feet and inches values in dimensions
+
+
+ FeetSeparator
+
+
+ Mod/Draft
+
+
+
+
+
diff --git a/src/Mod/Draft/draftviewproviders/view_dimension.py b/src/Mod/Draft/draftviewproviders/view_dimension.py
index 04dad66482..2684b363a7 100644
--- a/src/Mod/Draft/draftviewproviders/view_dimension.py
+++ b/src/Mod/Draft/draftviewproviders/view_dimension.py
@@ -572,9 +572,17 @@ class ViewProviderLinearDimension(ViewProviderDimensionBase):
# Special representation if we use 'Building US' scheme
u_params = App.ParamGet("User parameter:BaseApp/Preferences/Units")
if u_params.GetInt("UserSchema", 0) == 5:
- s = App.Units.Quantity(length, App.Units.Length).UserString
- self.string = s.replace("' ", "'- ") # feet
- self.string = s.replace("+", " ")
+ self.string = App.Units.Quantity(length, App.Units.Length).UserString
+ if self.string.count('"') > 1:
+ # multiple inch tokens
+ self.string = self.string.replace('"',"",self.string.count('"')-1)
+ d_params = App.ParamGet("User parameter:BaseApp/Preferences/Mod/Draft")
+ sep = d_params.GetString("FeetSeparator"," ")
+ # use a custom separator
+ self.string = self.string.replace("' ", "'" + sep)
+ self.string = self.string.replace("+", " ")
+ self.string = self.string.replace(" ", " ")
+ self.string = self.string.replace(" ", " ")
elif hasattr(vobj, "Decimals"):
self.string = units.display_external(length,
vobj.Decimals,