@@ -122,20 +122,19 @@ private void CreateUsEnglish()
122
122
CreateCultureInvariants ( ) ;
123
123
124
124
// Cooking units
125
- MapUnitToAbbreviation ( Unit . Tablespoon , "T" , "T." , "tbsp" , "tbsp." , "tbs" , "tbs." ) ;
126
- // For units with multiple abbreviations, the first one denotes the most common one
127
- MapUnitToAbbreviation ( Unit . Teaspoon , "tsp" , "tsp." , "t" , "t." ) ;
128
- MapUnitToAbbreviation ( Unit . Piece , "pcs" , "pcs." , "pc" , "pc." , "pce" , "pce." ) ;
125
+ MapUnitToAbbreviation ( Unit . Tablespoon , "Tbsp" , "Tbs" , "T" , "tb" , "tbs" , "tbsp" , "tblsp" , "tblspn" , "Tbsp." , "Tbs." , "T." , "tb." , "tbs." , "tbsp." , "tblsp." , "tblspn." , "tablespoon" , "Tablespoon" ) ;
126
+ MapUnitToAbbreviation ( Unit . Teaspoon , "tsp" , "t" , "ts" , "tspn" , "t." , "ts." , "tsp." , "tspn." , "teaspoon" ) ;
127
+ MapUnitToAbbreviation ( Unit . Piece , "piece" , "pieces" , "pcs" , "pcs." , "pc" , "pc." , "pce" , "pce." ) ;
129
128
}
130
129
131
130
private void CreateNorwegianBokmaal ( )
132
131
{
133
132
CreateCultureInvariants ( ) ;
134
133
135
134
// Cooking units
136
- MapUnitToAbbreviation ( Unit . Tablespoon , "ss" , "ss." ) ;
135
+ MapUnitToAbbreviation ( Unit . Tablespoon , "ss" , "ss." , "SS" , "SS." ) ;
137
136
MapUnitToAbbreviation ( Unit . Teaspoon , "ts" , "ts." ) ;
138
- MapUnitToAbbreviation ( Unit . Piece , "stk" , "stk." ) ;
137
+ MapUnitToAbbreviation ( Unit . Piece , "stk" , "stk." , "x" ) ;
139
138
}
140
139
141
140
private void CreateRussian ( )
@@ -417,8 +416,8 @@ private void CreateCultureInvariants()
417
416
MapUnitToAbbreviation ( Unit . Year365Days , "year" ) ;
418
417
419
418
// Cooking units
420
- MapUnitToAbbreviation ( Unit . Tablespoon , "tbsp." ) ;
421
- MapUnitToAbbreviation ( Unit . Teaspoon , "tsp." ) ;
419
+ MapUnitToAbbreviation ( Unit . Tablespoon , "Tbsp" , "Tbs" , "T" , "tb" , "tbs" , " tbsp" , "tblsp" , "tblspn" , "Tbsp." , "Tbs." , "T." , "tb." , "tbs." , "tbsp." , "tblsp." , "tblspn .") ;
420
+ MapUnitToAbbreviation ( Unit . Teaspoon , "tsp" , "t" , "ts" , "tspn" , "t." , "ts." , "tsp." , "tspn .") ;
422
421
423
422
// Flow
424
423
MapUnitToAbbreviation ( Unit . CubicMeterPerSecond , "m³/s" ) ;
@@ -428,7 +427,7 @@ private void CreateCultureInvariants()
428
427
MapUnitToAbbreviation ( Unit . RevolutionPerSecond , "r/s" ) ;
429
428
MapUnitToAbbreviation ( Unit . RevolutionPerMinute , "r/min" ) ;
430
429
431
- // Temperature
430
+ // Temperature
432
431
MapUnitToAbbreviation ( Unit . Kelvin , "K" ) ;
433
432
MapUnitToAbbreviation ( Unit . DegreeCelsius , "°C" ) ;
434
433
MapUnitToAbbreviation ( Unit . DegreeDelisle , "°De" ) ;
@@ -450,13 +449,13 @@ private void MapUnitToAbbreviation(Unit unit, params string[] abbreviations)
450
449
existingAbbreviations = _unitToAbbrevs [ unit ] = new List < string > ( ) ;
451
450
}
452
451
452
+ // Update any existing abbreviations so that the latest abbreviations
453
+ // take precedence in GetDefaultAbbreviation().
454
+ _unitToAbbrevs [ unit ] = abbreviations . Concat ( existingAbbreviations ) . Distinct ( ) . ToList ( ) ;
453
455
foreach ( string abbreviation in abbreviations )
454
456
{
455
- if ( existingAbbreviations . Contains ( abbreviation ) )
456
- continue ;
457
-
458
- existingAbbreviations . Add ( abbreviation ) ;
459
- _abbrevsToUnit [ abbreviation ] = unit ;
457
+ if ( ! _abbrevsToUnit . ContainsKey ( abbreviation ) )
458
+ _abbrevsToUnit [ abbreviation ] = unit ;
460
459
}
461
460
}
462
461
0 commit comments