Open 1ec5 opened 2 years ago
Should we use Sentence case
Honestly, I don't have a super strong opinion on whether we should use sentence or title case (or a combination of both).
There is a little bit of merit in our current mixed solution: proper "names" can be in title case (e.g. Diplomatic Mission
, Paving Stones
, Ice Hockey
, Bubble Tea
), while descriptive labels could be written more naturally in sentence case (e.g. Easy: No problems or difficulties.
, , etc.).Parallel to the street
But I also see that having a simple rule that everything should be sentence cased would make contributing easier. I can't really find any examples which would look strange in sentence case (Diplomatic mission
, Paving stones
, Ice hockey
, Bubble tea
all appear fine to me).
The only real downside would be the need to re-translate quite some strings: We would need to update about 150 out of 615 field value strings.
Whatever we decide, we should start a CONTRIBUTING.md document
:+1: would you like to start drafting such a document?
Note that Apple’s HIG was rewritten a few weeks ago, combining the iOS and macOS HIGs that had previously been separate. There’s been no change to the casing standard used very consistently throughout the platforms – much more consistent than on non-Apple platforms – but every revision to the HIG adds and removes topics based on current needs.
The question here is only about using sentence case for field values and possibly field names, not preset names, which are much shorter and appear in many places like buttons rather than labels.
In the English localization, field names have always been in Title Case, and so have translatable value labels since openstreetmap/iD#8238. However, contributors frequently overlook this point, partly because of unfamiliarity with UI design, but also because there are no contributing guidelines for this project that could set this expectation. Should we use Sentence case instead?
Background
In English, user interface elements are generally in title case, especially buttons and menu items, but it’s common to use sentence case for kinds of UI elements that are likely to be more verbose, such as checkbox labels and combo box items. For reference, here are style guides for some prominent desktop platforms and Web frameworks, but there are plenty of others along these lines:
Apple is more conservative than anyone else in their liberal usage of title case, but even they would use sentence case for checkbox and radio button labels where we currently use title case. We’re the odd ones out when it comes to these elements. We’re also in a distinct minority when it comes to title-casing items in combo boxes.
It gets murkier beyond these field types, because of differing client expectations. Some id-tagging-schema clients are on mobile platforms that differ markedly in their approach. Go Map!! is on iOS, where Apple applies the same rules as in the macOS Human Interface Guidelines, with title case in many situations. On the other hand, StreetComplete and Every Door are on Android, where Google’s Material Design strongly prefers sentence case for everything but button text.
Precedent
Despite the predominant usage of title case, we’ve long made exceptions for values whose labels are more too verbose to fit in the sidebar, for which Title Case Would Seem Too Loud, Formal, and Awkward for No Good Reason:
https://github.com/openstreetmap/id-tagging-schema/blob/1cbef5186feb17f599bd5df04aa99d581b0cb5b1/data/fields/mtb/scale.json#L8-L14
Implementation notes
If we decide to use sentence case more widely, we’ll need to change very many strings for consistency. This will result in a lot of churn for translators. I assume most languages are already following the capitalization norms in their respective languages, but it could be an opportunity for some languages to switch over to sentence case too.
Whatever we decide, we should start a CONTRIBUTING.md document that includes a style guide for English. Translators for other languages could also document their expectations for what goes into Transifex.