Hi, Here is the IRC log from our meeting on tuesday 11 january. A design document for data structures and other decisions will be up shortly.
Regards, -- Gert-Jan de Boer <[EMAIL PROTECTED]>
**** LOGGEN GESTART OP Tue Jan 11 21:22:54 2005 <DGTL_Magician> perhaps its more usefull then I ever imagined ;) <wagnerf> oh good idea to look at supertux source code <wagnerf> there are endianness questions with opengl textures <DGTL_Magician> ah, k <wagnerf> hum <wagnerf> i'm thinking maybe we should discuss internationalization also <DGTL_Magician> yeah <DGTL_Magician> better if we start now <wagnerf> sure <DGTL_Magician> because if we hardcode everything now <DGTL_Magician> :X <wagnerf> yeah sure <DGTL_Magician> wagnerf, http://www.debian.org/doc/manuals/intro-i18n/ <DGTL_Magician> I'm going to work on that <wagnerf> wait wait <wagnerf> i already did some internationalization <wagnerf> there are several issue here <wagnerf> we need to talk a bit more about that tonight <wagnerf> but i'll be happy if you take care of it <DGTL_Magician> ow <DGTL_Magician> k <DGTL_Magician> :) <DGTL_Magician> wagnerf, when do we talk about it? <wagnerf> 21h05 ? <wagnerf> just in case someone else is coming ? <DGTL_Magician> k <DGTL_Magician> wagnerf, <DGTL_Magician> 21:05 <DGTL_Magician> \o/ <wagnerf> ok <wagnerf> well <wagnerf> start with translations ? <DGTL_Magician> yes <wagnerf> ok <wagnerf> there are several issues <DGTL_Magician> k <wagnerf> let's try to avoid the mistakes the wesnoth team did <wagnerf> the best way to make translation is certainly the standard way <wagnerf> using gettext <DGTL_Magician> uh-huh <wagnerf> it's also rather easy to do <DGTL_Magician> like gnome does <DGTL_Magician> iirc <wagnerf> yeah <wagnerf> almost every project does like that <DGTL_Magician> k <wagnerf> simpy use a macro around all strings to translate <wagnerf> _() <wagnerf> two calls to libc <wagnerf> and it's ok <wagnerf> although i'm not sure about utf8 support <DGTL_Magician> I don't know exactly how it works, but I'll find out <wagnerf> if i remember correctly <wagnerf> there is a section about that <wagnerf> in the "info" page of libc <wagnerf> ok, now for the problems <wagnerf> 1) we can't translate images <wagnerf> well, <wagnerf> maybe not a too great problem <DGTL_Magician> http://www.debian.org/doc/manuals/intro-i18n/ch-library.en.html#s-gettext <wagnerf> the only images containing text for now <DGTL_Magician> yes, I thought of that <wagnerf> are in the main menu <wagnerf> and I intended to change that to text <DGTL_Magician> but we decided we change the main menu didn't we? <wagnerf> as in the real game <DGTL_Magician> yes <wagnerf> yeah <wagnerf> I hope there aren't other images <wagnerf> 2) extra texts from text files <DGTL_Magician> I don't think so <DGTL_Magician> I played the game <DGTL_Magician> last week <wagnerf> there are a lots of .txt in the data directory <wagnerf> the question is how to translate them <wagnerf> wesnoth started by using separate files <DGTL_Magician> don't <wagnerf> (they had the same case) <wagnerf> well <wagnerf> i'd like to see things like : each race is a lua script <DGTL_Magician> yes, agreed <wagnerf> sure we cannot translate the orig files <wagnerf> so we need to see how to use gettext within lua <wagnerf> maybe possible <wagnerf> i'll look at that <wagnerf> also <DGTL_Magician> k <DGTL_Magician> so I don't have to look at that? <wagnerf> well <wagnerf> start the localization using gettext <wagnerf> scripts will come later anyway <wagnerf> I think gettext is the way to go <DGTL_Magician> I think too <wagnerf> wesnoth started with text files <wagnerf> but finally changed their mind <wagnerf> and had to rewrite the translation engine <DGTL_Magician> that's bad <wagnerf> also <wagnerf> it seems they manage to use gettext <wagnerf> to translate data from data files <wagnerf> like yeti.cfg <wagnerf> defining a yeti unit <wagnerf> there is a line : <wagnerf> name= _ "Yeti" <wagnerf> the "_" here <wagnerf> looks really like some gettext macro <DGTL_Magician> uh-huh <wagnerf> so i think we'll be able to do it <DGTL_Magician> I'll learn how to use gettext <wagnerf> not too much hassle <DGTL_Magician> I've got a couple of books on Linux programming <DGTL_Magician> with chapters on gettext <wagnerf> but you'll have to go after all strings in the code <DGTL_Magician> yeah <wagnerf> the only thing <wagnerf> is that specifying the directory where translations are <wagnerf> is a bit tricky <DGTL_Magician> well, about directory's anyway <wagnerf> there are also some apps to help translate things <wagnerf> ok you take care of that then <DGTL_Magician> yes <wagnerf> good <DGTL_Magician> but we need to do some splitting <DGTL_Magician> and decide some things: <DGTL_Magician> 1st: <wagnerf> ha here it is <wagnerf> kbabek <wagnerf> kbabel <DGTL_Magician> kbabek? <DGTL_Magician> ah <DGTL_Magician> :P <wagnerf> yes ? <DGTL_Magician> 1st: <DGTL_Magician> the themes <DGTL_Magician> we want to support the original game, and add new art <DGTL_Magician> do we include audio with it? <wagnerf> yes <DGTL_Magician> k <DGTL_Magician> and races and all? <wagnerf> yes <DGTL_Magician> k <wagnerf> i'll take care of music <wagnerf> and we all will take care of alien sounds :) <DGTL_Magician> lol <DGTL_Magician> k <DGTL_Magician> so we don't do splitting <DGTL_Magician> but recreate complete data <wagnerf> splitting ? <DGTL_Magician> yeah <wagnerf> what do you mean ? <DGTL_Magician> we don't split audio data, images, etc. <wagnerf> yes we do <DGTL_Magician> we keep them in one theme <wagnerf> no no <wagnerf> we need two directories <wagnerf> with a fallback on the default dir when an image is missing (not yet done) <DGTL_Magician> k <wagnerf> oh good I found my musics cd back :) <DGTL_Magician> so we have a theme/default <DGTL_Magician> and theme/ascendancy <DGTL_Magician> and theme/starlane <DGTL_Magician> for example <wagnerf> yes <DGTL_Magician> k <wagnerf> ascendancy being for now the default <DGTL_Magician> can we put that in a document? <wagnerf> we should <wagnerf> oh crap <DGTL_Magician> k <DGTL_Magician> shall I do that? <wagnerf> i forgot to record the irc jan 11 21:22:57 <DGTL_Magician> ok jan 11 21:23:00 <DGTL_Magician> then it's good jan 11 21:23:06 <wagnerf> i already have some musics in fact jan 11 21:23:33 <DGTL_Magician> great! jan 11 21:24:11 <DGTL_Magician> so, I'll work up a design document tonight or tomorrow jan 11 21:24:24 <wagnerf> ok jan 11 21:24:36 <DGTL_Magician> So we make the game like this: jan 11 21:24:38 <wagnerf> maybe a "data" directory jan 11 21:24:41 <DGTL_Magician> [root]/data jan 11 21:24:45 <DGTL_Magician> [root]/data/themes jan 11 21:24:46 <wagnerf> at the same level than source jan 11 21:24:51 <DGTL_Magician> ? jan 11 21:24:52 <wagnerf> yep jan 11 21:24:54 <DGTL_Magician> k jan 11 21:24:59 <wagnerf> data/theme_ascend jan 11 21:25:02 <wagnerf> data/theme_starlane jan 11 21:25:10 <wagnerf> with theme_ascend jan 11 21:25:20 <wagnerf> being a link on the parser generated datas jan 11 21:25:29 <DGTL_Magician> I like a seperate dir better jan 11 21:25:31 <wagnerf> hum no jan 11 21:25:37 <wagnerf> i mean yes jan 11 21:25:41 <wagnerf> no is for me jan 11 21:25:46 <DGTL_Magician> data/themes/ascend jan 11 21:26:07 <wagnerf> and what do you put at the same level than "themes" ? jan 11 21:26:19 <DGTL_Magician> settings.xml jan 11 21:26:22 <DGTL_Magician> for example jan 11 21:26:34 <wagnerf> hum no jan 11 21:26:41 <DGTL_Magician> or do we want that in the homedir? jan 11 21:26:45 <wagnerf> settings.xml should be named ~/.starlane.xml jan 11 21:26:52 <wagnerf> yep jan 11 21:26:55 <DGTL_Magician> x jan 11 21:26:56 <DGTL_Magician> k jan 11 21:27:10 <DGTL_Magician> fonts are in themes? jan 11 21:27:28 <wagnerf> hum yes ? jan 11 21:27:33 <DGTL_Magician> k jan 11 21:27:36 <wagnerf> so you can have different fonts jan 11 21:27:41 <wagnerf> for each theme jan 11 21:27:43 <DGTL_Magician> I just grabbed Vera.ttf from somewhere jan 11 21:27:43 <DGTL_Magician> :P jan 11 21:27:47 <DGTL_Magician> locate .ttf jan 11 21:27:49 <DGTL_Magician> first one jan 11 21:27:50 <DGTL_Magician> :+ jan 11 21:27:51 <wagnerf> seems free jan 11 21:27:52 <wagnerf> :) jan 11 21:27:54 <wagnerf> same for me jan 11 21:28:09 <wagnerf> lots of copies of it on my hard disk jan 11 21:28:13 <wagnerf> so what about jan 11 21:28:31 <wagnerf> [root]/themes/ascend/link to parser jan 11 21:28:45 <wagnerf> and in the "ascend" dir jan 11 21:28:50 <wagnerf> we put the scripts files jan 11 21:28:54 <wagnerf> lua jan 11 21:29:09 <DGTL_Magician> k jan 11 21:29:10 <DGTL_Magician> great jan 11 21:29:17 <oskar_pc> re jan 11 21:29:30 <wagnerf> the only thing is jan 11 21:29:31 <wagnerf> oskar_pc, hi jan 11 21:29:38 <wagnerf> the data link we currently use jan 11 21:29:40 <DGTL_Magician> hey oskar_pc jan 11 21:29:42 <oskar_pc> what's new ? jan 11 21:29:44 <wagnerf> is to low in the dirs tree jan 11 21:30:00 <DGTL_Magician> k jan 11 21:30:03 <DGTL_Magician> so no more data dir jan 11 21:30:09 <wagnerf> wait jan 11 21:30:11 <wagnerf> i mean jan 11 21:30:17 <wagnerf> in the parser dir jan 11 21:30:20 <wagnerf> there is a dir jan 11 21:30:22 <wagnerf> called jan 11 21:30:24 <wagnerf> "ascend" jan 11 21:30:26 <DGTL_Magician> yes jan 11 21:30:28 <wagnerf> and inside is our jan 11 21:30:30 <wagnerf> "data" dir jan 11 21:30:31 <DGTL_Magician> data jan 11 21:30:35 <wagnerf> so jan 11 21:30:40 <wagnerf> in the "source" dir jan 11 21:30:48 <wagnerf> we can only access to "data" and below jan 11 21:30:52 <DGTL_Magician> yes jan 11 21:30:54 <DGTL_Magician> we need: jan 11 21:30:59 <DGTL_Magician> source/themes/ascend jan 11 21:30:59 <wagnerf> this is bad jan 11 21:31:04 <DGTL_Magician> with source/themes/ascend/data jan 11 21:31:05 <DGTL_Magician> etc. jan 11 21:31:07 <wagnerf> because all alien descriptions are above that jan 11 21:31:10 <DGTL_Magician> yes jan 11 21:31:16 <wagnerf> no no jan 11 21:31:21 <wagnerf> we put nothing in source jan 11 21:31:25 <wagnerf> juste source jan 11 21:31:42 <wagnerf> i would suggest jan 11 21:31:43 <DGTL_Magician> I mean root dir jan 11 21:31:44 <DGTL_Magician> :P jan 11 21:31:49 <wagnerf> yes jan 11 21:31:54 <DGTL_Magician> /usr/local/share/starlane/themes/ascend/data jan 11 21:31:56 <wagnerf> that's it jan 11 21:31:59 <DGTL_Magician> BUT! jan 11 21:32:05 <DGTL_Magician> we need to kill our Makefile jan 11 21:32:10 <DGTL_Magician> and build autogen.sh, etc. jan 11 21:32:13 <wagnerf> yes jan 11 21:32:14 <wagnerf> urgently jan 11 21:32:17 <DGTL_Magician> yes jan 11 21:32:19 <DGTL_Magician> I missed it jan 11 21:32:23 <wagnerf> because problems are already there jan 11 21:32:25 <DGTL_Magician> yes jan 11 21:32:31 <wagnerf> for example with lua jan 11 21:32:40 <wagnerf> in debian it's in /usr/include/lua50 jan 11 21:32:54 <wagnerf> whereas in gentoo it's in /usr/include/ jan 11 21:32:57 <wagnerf> and moreover jan 11 21:32:59 <DGTL_Magician> and when we make an rpmspec or an deb we're in even bigger trouble jan 11 21:33:00 <wagnerf> there is no jan 11 21:33:07 <wagnerf> /usr/lib/liblua.so in debian jan 11 21:33:13 <wagnerf> I had to make the link myself jan 11 21:33:23 <DGTL_Magician> I've got Fedora jan 11 21:33:28 <DGTL_Magician> and Debian on server jan 11 21:33:33 <wagnerf> well maybe not too much trouble for the package jan 11 21:33:35 <wagnerf> but jan 11 21:33:36 <DGTL_Magician> but there's only MythTV, so no gnome jan 11 21:33:43 <wagnerf> a configure script is clearly needed jan 11 21:33:53 <DGTL_Magician> yes jan 11 21:33:57 <wagnerf> but it's not easy to do jan 11 21:34:01 <wagnerf> i hate that stuff jan 11 21:34:06 <DGTL_Magician> me too jan 11 21:34:10 <wagnerf> ok jan 11 21:34:12 <DGTL_Magician> but I think one of us needs to do it jan 11 21:34:12 <wagnerf> thanks oskar :) jan 11 21:34:17 <DGTL_Magician> lol jan 11 21:34:18 <DGTL_Magician> :D jan 11 21:34:25 <wagnerf> oskar_pc, dear sir jan 11 21:34:34 <wagnerf> you are a winner jan 11 21:34:56 <wagnerf> fabulous prizes ! jan 11 21:35:13 <DGTL_Magician> free autogen.sh and configure crap! jan 11 21:35:14 <DGTL_Magician> \o/ jan 11 21:35:17 <wagnerf> :) jan 11 21:35:22 <DGTL_Magician> now all new Makefile.in jan 11 21:35:24 <DGTL_Magician> \o/ jan 11 21:35:27 <wagnerf> well maybe we should add that to the roadmap jan 11 21:35:29 <kernel_panic> clap clap clap .... jan 11 21:35:30 <DGTL_Magician> yes jan 11 21:35:36 <DGTL_Magician> kernel_panic vollunteers! jan 11 21:35:36 <wagnerf> and post on the mailing list jan 11 21:35:40 <wagnerf> :) jan 11 21:35:42 <DGTL_Magician> :D jan 11 21:35:52 <kernel_panic> kernel_panic ?? where ?? jan 11 21:36:09 <DGTL_Magician> wagnerf, and something more jan 11 21:36:14 <wagnerf> ok he answered first jan 11 21:36:23 <DGTL_Magician> we need to restructure the source dir jan 11 21:36:29 <wagnerf> really ? jan 11 21:36:35 <wagnerf> i'm not for that jan 11 21:36:41 <DGTL_Magician> oh wait jan 11 21:36:52 <DGTL_Magician> I'm always working from source so I think it's root jan 11 21:36:55 <DGTL_Magician> but it isn't jan 11 21:36:56 <DGTL_Magician> \o/ jan 11 21:36:57 * kernel_panic whistles ... jan 11 21:37:09 <DGTL_Magician> the autogen.sh comes in starlane jan 11 21:37:13 <wagnerf> so to finish with the themes dir jan 11 21:37:17 <DGTL_Magician> yes jan 11 21:37:49 <wagnerf> [root]/themes/ascendancy/link_to_"ascend"_directory_in_parser jan 11 21:37:51 <wagnerf> and jan 11 21:37:55 <DGTL_Magician> no jan 11 21:38:07 <DGTL_Magician> [sharedir]/themes/ascendancy/link_to_"ascend"_directory_in_parser jan 11 21:38:16 <wagnerf> ok jan 11 21:38:17 <wagnerf> sure jan 11 21:38:24 <wagnerf> and jan 11 21:38:32 <DGTL_Magician> but why in parser jan 11 21:38:40 <wagnerf> [sharedir]/themes/starlane/dir jan 11 21:38:54 <wagnerf> well it's just for devel jan 11 21:38:56 <DGTL_Magician> we can parse directly to $DATA/themes/ascendancy/ascend jan 11 21:39:12 <wagnerf> well jan 11 21:39:19 <wagnerf> i'd like to have the same dirs names jan 11 21:39:21 <wagnerf> in all themes jan 11 21:39:26 <DGTL_Magician> k jan 11 21:39:35 <wagnerf> so we just change prefix to be ok jan 11 21:39:40 <wagnerf> like jan 11 21:39:54 <wagnerf> [sharedir]/themes/ascendancy/theme_data jan 11 21:39:55 <wagnerf> and jan 11 21:40:02 <DGTL_Magician> great jan 11 21:40:03 <wagnerf> [sharedir]/themes/starlane/theme_data jan 11 21:40:24 <DGTL_Magician> in settings.xml I made: jan 11 21:40:29 <wagnerf> with theme_data having the same directories trees inside jan 11 21:40:32 <DGTL_Magician> <theme>THEMENAME</name> jan 11 21:40:39 <DGTL_Magician> <path>THEMEPATH</path> jan 11 21:41:01 <wagnerf> sure we could customize that jan 11 21:41:09 <wagnerf> but it should be clearer that way no ? jan 11 21:41:31 <DGTL_Magician> yes it is jan 11 21:41:32 <wagnerf> kernel_panic, are you recording irc ? jan 11 21:41:37 <DGTL_Magician> wagnerf, I am jan 11 21:41:41 <wagnerf> ok good jan 11 21:41:53 <wagnerf> put it on the wiki too jan 11 21:41:59 <DGTL_Magician> k jan 11 21:42:09 <wagnerf> ok jan 11 21:42:11 <DGTL_Magician> I'm getting something to drink jan 11 21:42:17 <wagnerf> i'll create the new directories jan 11 21:42:19 <wagnerf> tomorrow jan 11 21:42:23 <DGTL_Magician> great jan 11 21:43:10 <kernel_panic> wagnerf: yep jan 11 21:44:02 <DGTL_Magician> wagnerf, I'll make a document jan 11 21:46:07 <DGTL_Magician> oh my god jan 11 21:46:11 <DGTL_Magician> beeeeeeeeeer jan 11 21:46:16 <wagnerf> :) jan 11 21:46:18 <DGTL_Magician> ... jan 11 21:46:42 <DGTL_Magician> and I'm in rehab from physical addiction :o jan 11 21:47:54 <DGTL_Magician> wagnerf, what's next jan 11 21:48:11 <wagnerf> well you take gettext jan 11 21:48:23 <DGTL_Magician> you'll do data jan 11 21:48:25 <wagnerf> i take new dirs jan 11 21:48:29 <wagnerf> yes jan 11 21:48:36 <DGTL_Magician> and kernel_panic does autogen/configure? jan 11 21:48:44 <wagnerf> yes :) jan 11 21:48:48 <DGTL_Magician> \o/ jan 11 21:49:18 <wagnerf> kernel_panic, haha jan 11 21:50:54 <DGTL_Magician> I added a task \o/ jan 11 21:51:17 <wagnerf> kernel_panic, you'll thank us later jan 11 21:51:23 <DGTL_Magician> yes jan 11 21:51:36 <DGTL_Magician> when you're drunk in the gutter calling out for help jan 11 21:51:48 <DGTL_Magician> and the only thing everyone hears is: jan 11 21:51:57 <DGTL_Magician> configure.in, makefile.in, skweek jan 11 21:54:51 <kernel_panic> no, pb, I'll read the doc first :D jan 11 21:54:59 <DGTL_Magician> what doc?