Config
Log for #openttdcoop.devzone on 26th March 2014:
Times are UTC Toggle Colours
00:39:49  *** yorick has quit IRC
05:25:12  *** tycoondemon has quit IRC
05:25:27  *** tycoondemon has joined #openttdcoop.devzone
07:23:56  *** Supercheese has quit IRC
12:18:14  *** gelignite has joined #openttdcoop.devzone
12:43:58  *** yorick has joined #openttdcoop.devzone
13:31:04  *** gelignite has quit IRC
16:04:29  <DevZone> Project HEQS Heavy Equipment Set build #5-push: FAILURE in 12 sec: https://jenkins.openttdcoop.org/job/heqs/5/
16:05:17  *** ODM has joined #openttdcoop.devzone
16:06:53  <DevZone> Project HEQS Heavy Equipment Set build #6-push: STILL FAILING in 10 sec: https://jenkins.openttdcoop.org/job/heqs/6/
16:10:04  <DevZone> Project HEQS Heavy Equipment Set build #7-push: STILL FAILING in 10 sec: https://jenkins.openttdcoop.org/job/heqs/7/
16:24:58  *** ODM has quit IRC
16:25:15  *** ODM has joined #openttdcoop.devzone
16:47:52  <DevZone> Project Fake Subways build #29-push: SUCCESS in 24 sec: https://jenkins.openttdcoop.org/job/fake-subways/29/
16:48:47  <DevZone> Project Dutch Trainset build #117-push: SUCCESS in 1 min 14 sec: https://jenkins.openttdcoop.org/job/dutchtrains/117/
16:49:03  <DevZone> Project FISH is ships build #175-push: SUCCESS in 1 min 11 sec: https://jenkins.openttdcoop.org/job/fish/175/
16:49:12  *** frosch123 has joined #openttdcoop.devzone
16:49:25  <DevZone> Project 2ccts build #64-push: SUCCESS in 37 sec: https://jenkins.openttdcoop.org/job/2ccts/64/
16:56:21  <DevZone> Yippee, build fixed!
16:56:21  <DevZone> Project HEQS Heavy Equipment Set build #8-push: FIXED in 24 sec: https://jenkins.openttdcoop.org/job/heqs/8/
17:06:43  *** ODM has quit IRC
17:07:02  *** ODM has joined #openttdcoop.devzone
17:21:19  *** oskari89 has joined #openttdcoop.devzone
17:22:21  <DevZone> Project Japanese Buildings build #151-nightlies: SUCCESS in 17 sec: https://jenkins.openttdcoop.org/job/jpbuild/151/
17:34:12  <DevZone> Project Finnish Rail Infrastructure - Rails build #265-nightlies: SUCCESS in 8 min 7 sec: https://jenkins.openttdcoop.org/job/frissrails/265/
17:41:35  <DevZone> Project road-hog build #99-nightlies: SUCCESS in 32 sec: https://jenkins.openttdcoop.org/job/road-hog/99/
17:48:30  <DevZone> Project Iron Horse build #740-nightlies: SUCCESS in 1 min 17 sec: https://jenkins.openttdcoop.org/job/iron-horse/740/
21:23:38  *** ODM has quit IRC
21:31:09  <DevZone> Project road-hog build #100-push: SUCCESS in 27 sec: https://jenkins.openttdcoop.org/job/road-hog/100/
21:44:17  <DevZone> Project opengfx-mars build #67-test: SUCCESS in 2 min 48 sec: https://jenkins.openttdcoop.org/job/opengfx-mars/67/
21:44:27  <DevZone> Project Townnames - German build #44-test: SUCCESS in 10 sec: https://jenkins.openttdcoop.org/job/german-townnames/44/
21:44:28  <DevZone> Project NML - NewGRF Meta Language build #292-push: SUCCESS in 3 min 56 sec: https://jenkins.openttdcoop.org/job/nml/292/
21:59:18  *** oskari89 has quit IRC
22:04:57  <DevZone> Project road-hog build #101-push: SUCCESS in 44 sec: https://jenkins.openttdcoop.org/job/road-hog/101/
22:06:22  *** Zuu has joined #openttdcoop.devzone
22:06:46  <Zuu> Hmm, is this the right channel for eints?
22:07:48  <Zuu> It does seems that eints barf on some string constructs in game scripts that I'm usure if they are really forbidden in GS. For example strings with {P "" s} are marked as invalid here: https://translator.openttdcoop.org/translation/gs-awards/en_GB
22:08:12  <frosch123> we "intentionally" left some out
22:08:38  <frosch123> specifically all the graphical symbols which we were unsure whether they should really stay in ottd
22:08:56  <frosch123> the {P "" s} iirc was a bug in the lang file
22:09:01  <frosch123> it did not specify the plural form
22:09:39  <Zuu> Ah, so you've discussed the problem with krinn already?
22:09:45  <frosch123> not me
22:09:53  <frosch123> i read some in the logs
22:10:00  <Zuu> Oh
22:10:02  <frosch123> but not sure whether krinn understood the problem
22:10:20  <frosch123> but lang files need a #plural at the top to make {P} work
22:10:32  <frosch123> i am actually surprised that ottd does not reject the langfile :p
22:12:17  <Zuu> I didn't know about the #plural definition. So in eints, if master language have #plural, then all other languages get that too?
22:12:28  <Zuu> Hopefully :-)
22:12:32  <frosch123> no
22:12:58  <frosch123> if you start a new language via eints, it sets #plural to the built-in value for that language
22:13:08  <frosch123> if you upload an existing language it expects that you did it correct already
22:13:18  <Zuu> ok
22:18:51  <Zuu> I think only a few script developers are aware of the need to add #plural to the top of english.txt. Just look at my Minimal GS and it is missing.
22:19:34  <frosch123> ##plural actually
22:19:42  <frosch123> anyway, do the plurals work?
22:20:02  <frosch123> as said: i would have expected ottd to throw errors on that langfile
22:20:18  <frosch123> but apparantly it does not, so i wonder what it does :p
22:20:35  <frosch123> either it ignores P, or it uses the language default, or it does something random :p
22:21:22  <Zuu> Having OpenTTD be more strict there will probably help in the long run to get those language files more correct. Hopefully the API version of the script is known at the point when the language file is read, or we will break most old scripts.
22:21:43  <frosch123> i guess we need to figure out what ottd does first, before we can know whether that syntax should be considered invalid or added as "supported"
22:21:46  <Zuu> At least those who make use of {P ..}
22:32:59  <Zuu> Reading game_text.cpp and the methods it call from GameStrings::Compile(), it will intreprete the ##plural dirictive. However, I can't see that it at the time of compiling the language file checks for plural strings and compare them to the plural dirictive.
22:40:14  <Zuu> strgen_base.cpp: StringReader::ParseFile(): It resets _lang to all-zero. This will afaik set the plural_form member to decimal 0. This is the plural form used by english language and a few others.
22:40:20  <frosch123> it errors on too many parameters to {P}
22:40:38  <Zuu> Thus if no plural pragma is given, it will default to plural form 0, eg. as in English.
22:41:22  <frosch123> ok, is that a bug or a feature? :p
22:42:19  <frosch123> i guess we should consider it a bug, but maybe maintain compatibility
22:42:22  <Zuu> Also, there doesn't seems to exist a plural_form for INVALID plural form in the code. Instead it will trigger an NOT_REACHED() if you are able to set plural_form to anything that is not a valid plural form.
22:42:49  <Zuu> When it parses ##plural, it will not allow any plural form that is not in the range of valid allowed forms.
22:43:49  <Zuu> Btw, this stuff about plural form 0 being default does as far as I can see not only apply to GS, but also to the other language files.
22:44:34  <Zuu> Not sure about NewGRF if there is any special rule there that verifies that you give a plural form.
22:45:28  <DevZone> Project road-hog build #102-push: SUCCESS in 31 sec: https://jenkins.openttdcoop.org/job/road-hog/102/
22:45:51  <Zuu> I guess it could be a bug, but also a feature.
22:46:32  <Zuu> The lack of any enum or special value for "invalid plural" in the code make me think that it might have been intended to make it the way it is.
22:46:41  <frosch123> newgrf specify the plural form in every string :)
22:46:51  <frosch123> they cannot use a plural without specifying the form
22:47:19  <frosch123> i doubt it has been "intended"
22:47:41  <frosch123> gs just use strgen, which is used to compile ottd lang files, and they all have a ##plural
22:48:08  <frosch123> btw. there is a plural form with 1 plural, that is "no plural forms"
22:48:20  <Zuu> Well, for openttd lang files there is a bit more control over what happens with them than <random GS author making his first GS>
22:49:11  <frosch123> sure, but when gs text were developed i doubt anyone considered what happens when gs use P without specifying the form
22:49:17  <Zuu> Oh right. It would be a one-line patch to make that the default instead.
22:50:12  <Zuu> Or add a new form with zero cases which is only used internally as "invalid form"
22:50:13  <frosch123> so maybe we can check the api version and set plural default form to 0 or 1 depending on it
22:50:36  <frosch123> an "invalid form" would make sense to handle unknown plural forms
22:50:46  <frosch123> in which case ottd could always pick the last item
22:50:54  <frosch123> which is "other" in most cases (all but one)
22:54:21  <frosch123> anyway, night
22:54:24  *** frosch123 has quit IRC
23:07:38  *** Zuu has quit IRC

Powered by YARRSTE version: svn-trunk