The GNOME help infrastructure has changed and it is now installing help documents in /usr/share/help/$LANG/$NAME, eg /usr/share/help/ca/gnome-help/... I couldn't quite cut through the layers of escaping in find-lang.sh, thus no patch... If you want a package to test this on, look at gnome-user-docs-3.1.1-1.fc17
Here is what I put into aisleriot.spec: echo "%%dir %%{_datadir}/help/C" >> aisleriot.lang echo "%%{_datadir}/help/C/%%{name}" >> aisleriot.lang for l in ca de el en_GB es eu fr oc ru sl sr sr@latin sv zh_CN; do echo "%%dir %%{_datadir}/help/$l" echo "%%lang($l) %%{_datadir}/help/$l/%%{name}" done >> aisleriot.lang
Heh, you're not the only one finding the sed-jungle in find-lang close to impenetrable... rpm-4.9.1.2-2.fc17 should now find the new location too when --with-gnome is used, let me know if it works for you (or not).
Assuming no news is good news... (the fix is in both F17 and rawhide)
rpm-4.9.1.3-1.fc17 does not find pt_BR, zh_CN, zh_HK, zh_TW under /usr/share/help/ - other parts of find-lang.sh mark zh_CN, zh_HK, zh_TW all as %lang(zh).