- }
-
- private void onT(WikiTokenizer wikiTokenizer) {
- final List<String> args = wikiTokenizer.functionPositionArgs();
- final String langCode = ListUtil.get(args, 0);
- for (int p = 0; p < 2; ++p) {
- if (langCodePatterns[p].matcher(langCode).matches()) {
- appendAndIndexWikiCallback.builder = builders[p];
- appendAndIndexWikiCallback.indexBuilder = indexBuilders[p];
- appendAndIndexWikiCallback.onFunction(wikiTokenizer,
- wikiTokenizer.functionName(), wikiTokenizer.functionPositionArgs(),
- wikiTokenizer.functionNamedArgs());
- }
+
+ private void onT(WikiTokenizer wikiTokenizer) {
+ if (builders == null) {
+ LOG.warning("{{t...}} section outside of {{trans-top}}: " + title);
+ startEntry(title, "QUICKDIC_OUTSIDE");
+ }
+
+ final List<String> args = wikiTokenizer.functionPositionArgs();
+ final String langCode = ListUtil.get(args, 0);
+ if (langCode == null) {
+ LOG.warning("Missing langCode: " + wikiTokenizer.token());
+ return;
+ }
+ for (int p = 0; p < 2; ++p) {
+ if (langCodePatterns[p].matcher(langCode).matches()) {
+ appendAndIndexWikiCallback.builder = builders[p];
+ if (appendAndIndexWikiCallback.builder.length() > 0) {
+ appendAndIndexWikiCallback.builder.append(", ");
+ }
+ appendAndIndexWikiCallback.indexBuilder = indexBuilders.get(p);
+ appendAndIndexWikiCallback.onFunction(wikiTokenizer,
+ wikiTokenizer.functionName(), wikiTokenizer.functionPositionArgs(),
+ wikiTokenizer.functionNamedArgs());
+ }
+ }