diff --git a/ChangeLog b/ChangeLog
index a877a4948ada2d4803e63a76df533236320393bd..4ca6e02b72eef9e1169580405f6443c4cc6ee97c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@
 	* src/color.c (color_update): Match the file regex of a syntax against
 	the absolute, canonical path instead of against the path the user gave.
 	This fixes Savannah bug #44288, reported by Mike Frysinger.
+	* doc/syntax/po.nanorc: Improve the colouring of message tags.
 
 2015-04-25  Benno Schulenberg  <bensberg@justemail.net>
 	* src/search.c (do_replace_loop): Remove the unintended special
diff --git a/doc/syntax/po.nanorc b/doc/syntax/po.nanorc
index 567ef7adc51590ac1f01719dffd554e28245b3bf..c4e11ebd7b7381d64b1b62aba60fc5c22f8b370c 100644
--- a/doc/syntax/po.nanorc
+++ b/doc/syntax/po.nanorc
@@ -6,16 +6,16 @@ syntax "po" "\.pot?$"
 color green "^#.*$"
 color yellow "Copyright|\(C\)"
 # Header fields.
-color brightmagenta "\<(Project\-Id\-Version|Report\-Msgid\-Bugs\-To|Last\-Translator|Language\-Team|Language|X\-Generator|Plural\-Forms)\>"
+color brightmagenta "\<(Project\-Id\-Version|Report\-Msgid\-Bugs\-To|Last\-Translator|Language(\-Team)?|X\-Generator|Plural\-Forms)\>"
 color cyan "\<(POT\-Creation\-Date|PO\-Revision\-Date|MIME\-Version|Content\-Type|Content\-Transfer\-Encoding)\>"
 # Encodings and numbers.
 color yellow "\<(UTF|ISO|Windows|Mac|IBM)\>\-[0-9]"
 color yellow "[0-9]|pre[0-9]|[0-9]bit"
 # Msgids.
-color brightblue "\<(msgid|msgid_plural|msgstr)\>"
+color brightblue "^(msgid|msgid_plural|msgstr)\>"
 # Tags.
-color red "\<fuzzy\>"
-color yellow "\<c-format\>"
+color red " fuzzy(,|$)"
+color yellow " (no-)?[-[:alpha:]]+-format(,|$)"
 # Format specifiers.
 color brightmagenta "%([1-9]\$)?[a-z]*"
 # Quotes and newlines.