summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2023-03-03 21:37:23 +0100
committerAndreas Kling <kling@serenityos.org>2023-03-04 00:29:38 +0100
commit66c04b98f1bec97153cc1cd849e0c4535f5d89a9 (patch)
tree00cf7e337241bb1b423c255510742e727745ce45 /Documentation
parent508fb7e1e937ab5ae2135d93d3d6df93d2b76d16 (diff)
downloadserenity-66c04b98f1bec97153cc1cd849e0c4535f5d89a9.zip
Documentation: Add HIG document about writing UI text
This first cut only deals with capitalization.
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/HumanInterfaceGuidelines/Text.md54
1 files changed, 54 insertions, 0 deletions
diff --git a/Documentation/HumanInterfaceGuidelines/Text.md b/Documentation/HumanInterfaceGuidelines/Text.md
new file mode 100644
index 0000000000..cd45aca7e5
--- /dev/null
+++ b/Documentation/HumanInterfaceGuidelines/Text.md
@@ -0,0 +1,54 @@
+# Guidelines for user interface text in SerenityOS
+
+## Capitalization
+
+SerenityOS employs two capitalization styles:
+
+- Book title capitalization
+- Sentence-style capitalization
+
+### Book title capitalization
+
+In this style, we capitalize the first letter of the first and last word,
+as well as all words in between, *except* articles (a, an, the);
+the seven coordinating conjunctions (for, and, nor, but, or, yet, so);
+and prepositions with up to four letters (at, by, for, with, into, ...)
+
+#### Examples:
+- Create New Layer
+- Copy URL
+- Move to Front
+- Save and Exit
+- Sort by Name
+
+#### Used for:
+
+- Button text
+- Icon labels
+- Menu names
+- Menu items
+- Tab titles
+- Window titles
+- Tooltips
+
+### Sentence-style capitalization
+
+This style follows basic English sentence capitalization.
+We capitalize the first letter of the first word, along with the first letter
+of proper names, weekdays, etc.
+
+#### Examples:
+- An error occurred
+- Use system defaults
+- Copy the selected text
+- Enable Linux compatibility hacks
+
+#### Used for:
+
+- Check box labels
+- Group box labels
+- List items
+- Messages (as in message boxes)
+- Radio button labels
+- Status bar text
+- Text box labels