[PTRun][UnitConverter]Accept kilometers per hour abbreviations (#33594)

## Summary of the Pull Request
This PR introduces abbreviations for the units - `kph` that gets
converted to `km/h` and `cph` that gets converted to `cm/h`.
This commit is contained in:
Vaibhav Sharma 2024-07-17 20:30:05 +05:30 committed by GitHub
parent f1ca65ca78
commit fb36e6ced9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 20 additions and 0 deletions

View File

@ -200,6 +200,7 @@ CMINVOKECOMMANDINFO
CMINVOKECOMMANDINFOEX
CMock
CMONITORS
cmph
cmpgt
cne
CNF
@ -244,6 +245,7 @@ copiedcolorrepresentation
cotaskmem
COULDNOT
countof
cph
CPower
cppblog
cppruntime
@ -760,6 +762,7 @@ keyremaps
keyvault
KILLFOCUS
killrunner
kmph
Knownfolders
ksh
KSPROPERTY

View File

@ -179,6 +179,22 @@ namespace Community.PowerToys.Run.Plugin.UnitConverter
}
}
/// <summary>
/// Converts spelling "kph" to "km/h"
/// </summary>
public static void KPHHandler(ref string[] split)
{
split[1] = split[1].Replace("cph", "cm/h", System.StringComparison.CurrentCultureIgnoreCase);
split[1] = split[1].Replace("kph", "km/h", System.StringComparison.CurrentCultureIgnoreCase);
split[1] = split[1].Replace("kmph", "km/h", System.StringComparison.CurrentCultureIgnoreCase);
split[1] = split[1].Replace("cmph", "cm/h", System.StringComparison.CurrentCultureIgnoreCase);
split[3] = split[3].Replace("cph", "cm/h", System.StringComparison.CurrentCultureIgnoreCase);
split[3] = split[3].Replace("kph", "km/h", System.StringComparison.CurrentCultureIgnoreCase);
split[3] = split[3].Replace("kmph", "km/h", System.StringComparison.CurrentCultureIgnoreCase);
split[3] = split[3].Replace("cmph", "cm/h", System.StringComparison.CurrentCultureIgnoreCase);
}
/// <summary>
/// Converts spelling "metre" to "meter", also for centimetre and other variants
/// </summary>
@ -239,6 +255,7 @@ namespace Community.PowerToys.Run.Plugin.UnitConverter
InputInterpreter.DegreePrefixer(ref split);
InputInterpreter.MetreToMeter(ref split);
InputInterpreter.FeetToFt(ref split);
InputInterpreter.KPHHandler(ref split);
InputInterpreter.GallonHandler(ref split, CultureInfo.CurrentCulture);
if (!double.TryParse(split[0], out double value))
{