diff --git a/src/resources.rs b/src/resources.rs
index 50366cb990d61c7548b3f5824a1bc18af54e03b5..98fb24d8802eef4963cb593b694519afc3c88c10 100644
--- a/src/resources.rs
+++ b/src/resources.rs
@@ -10,41 +10,67 @@ use std::iter::FromIterator;
 // TODO: keep a list of what is a language layout,
 // and what a convenience layout. "_wide" is not a layout,
 // neither is "number"
+/// List of builtin layouts
 const KEYBOARDS: &[(*const str, *const str)] = &[
     // layouts: us must be left as first, as it is the,
-    // fallback layout. The others should be alphabetical.
+    // fallback layout.
     ("us", include_str!("../data/keyboards/us.yaml")),
-    ("us+colemak", include_str!("../data/keyboards/us+colemak.yaml")),
     ("us_wide", include_str!("../data/keyboards/us_wide.yaml")),
-    ("br", include_str!("../data/keyboards/br.yaml")),
-    ("de", include_str!("../data/keyboards/de.yaml")),
+
+    // Language layouts: keep alphabetical.
     ("be", include_str!("../data/keyboards/be.yaml")),
     ("be_wide", include_str!("../data/keyboards/be_wide.yaml")),
+
+    ("bg", include_str!("../data/keyboards/bg.yaml")),
+
+    ("br", include_str!("../data/keyboards/br.yaml")),
+
+    ("de", include_str!("../data/keyboards/de.yaml")),
     ("de_wide", include_str!("../data/keyboards/de_wide.yaml")),
+
     ("cz", include_str!("../data/keyboards/cz.yaml")),
     ("cz_wide", include_str!("../data/keyboards/cz_wide.yaml")),
+
     ("cz+qwerty", include_str!("../data/keyboards/cz+qwerty.yaml")),
     ("cz+qwerty_wide", include_str!("../data/keyboards/cz+qwerty_wide.yaml")),
+
     ("dk", include_str!("../data/keyboards/dk.yaml")),
+
     ("epo", include_str!("../data/keyboards/epo.yaml")),
+
     ("es", include_str!("../data/keyboards/es.yaml")),
+
     ("fi", include_str!("../data/keyboards/fi.yaml")),
+
     ("fr", include_str!("../data/keyboards/fr.yaml")),
     ("fr_wide", include_str!("../data/keyboards/fr_wide.yaml")),
-    ("it+fur", include_str!("../data/keyboards/it+fur.yaml")),
+
     ("gr", include_str!("../data/keyboards/gr.yaml")),
+
     ("it", include_str!("../data/keyboards/it.yaml")),
+    ("it+fur", include_str!("../data/keyboards/it+fur.yaml")),
+
     ("jp+kana", include_str!("../data/keyboards/jp+kana.yaml")),
     ("jp+kana_wide", include_str!("../data/keyboards/jp+kana_wide.yaml")),
+
     ("no", include_str!("../data/keyboards/no.yaml")),
-    ("number", include_str!("../data/keyboards/number.yaml")),
+
     ("pl", include_str!("../data/keyboards/pl.yaml")),
     ("pl_wide", include_str!("../data/keyboards/pl_wide.yaml")),
+
     ("ru", include_str!("../data/keyboards/ru.yaml")),
+
     ("se", include_str!("../data/keyboards/se.yaml")),
+
     ("th", include_str!("../data/keyboards/th.yaml")),
+
     ("ua", include_str!("../data/keyboards/ua.yaml")),
-    ("bg", include_str!("../data/keyboards/bg.yaml")),
+
+    ("us+colemak", include_str!("../data/keyboards/us+colemak.yaml")),
+
+    // Others
+    ("number", include_str!("../data/keyboards/number.yaml")),
+
     // layout+overlay
     ("terminal", include_str!("../data/keyboards/terminal.yaml")),
     ("terminal_wide", include_str!("../data/keyboards/terminal_wide.yaml")),
diff --git a/tests/meson.build b/tests/meson.build
index b73b637a705fda66f881ea26226b135942462981..017f2143b9f33f7611b26f35e7eeaba3ce2533b3 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -46,12 +46,21 @@ endforeach
 
 # The layout test is in the examples directory
 # due to the way Cargo builds executables
-# and the need to call it manually
+# and the need to call it manually.
+
+# This is the list of tested builtin layouts.
+# Please keep each block alphabetical!
+# Please keep shapes (with _) on the same line,
+# variants (with +) on separate lines.
 foreach layout : [
-    'us', 'us+colemak', 'us_wide',
-    'br',
+    # This is the fallback layout,
+    # so stays first to make sure it never goes missing.
+    'us', 'us_wide',
+
+    # Block: Languages
     'be', 'be_wide',
     'bg',
+    'br',
     'cz', 'cz_wide',
     'cz+qwerty', 'cz+qwerty_wide',
     'de', 'de_wide',
@@ -60,20 +69,22 @@ foreach layout : [
     'es',
     'fi',
     'fr', 'fr_wide',
-    'it+fur',
     'gr',
     'it',
+    'it+fur',
     'jp+kana','jp+kana_wide',
     'no',
-    'number',
     'pl', 'pl_wide',
     'ru',
     'se',
-    'ua',
     'th',
-    'terminal', 'terminal_wide',
+    'ua',
+    'us+colemak',
 
+    # Block: Not languages.
     'emoji',
+    'number',
+    'terminal', 'terminal_wide',
 ]
     extra = []
     if layout == 'emoji'