Thalassicus / cep-bnw

Civ V Communitas Expansion Pack
32 stars 22 forks source link

Making the variables easier to translate. #186

Closed GrantSP closed 10 years ago

GrantSP commented 10 years ago

I would like a bit of input if I might, please.

The different languages are handling the variables in different manners, not all the variables get nerfed in the same way and combinations of them produce errors where single variables do not.

What I would like to know is, do you think changing the curly braces to brackets in the spreadsheet and then running a series of regular expressions over the text files is an acceptable way to handle this.

If you look here you can see some tests of different ways of setting out the text and the results given.

The variables in [ ] seem to provide a consistent and accurate result. Also the percentage sign needs to be enclosed to ensure the correct placement.

Ideas would be appreciated. I don't want to make the task harder than it needs to be. I am quite comfortable using regex but others may not be and if they forget to run it the files won't work.

stackpoint commented 10 years ago

Shouldn't google spreadsheets have some sort of replace function? You can do cell operation SUBSTITUTE to replace { with [[ and } with ]] and once it's translated use it to replace [[ back to { and ]] back to }.

GrantSP commented 10 years ago

hmm...

It is a very rudimentary UI. I can't say I have used it all that much. Good idea though, keeps all the grunt work in one place.

On second thought maybe Thal has already got something like this set up.

The only concern I have is I don't think these sort of functions work on the cell containing the result of the previous function. The stuff we need to change is just the end result of the translate tool. More thinking is needed. Substitute would be a good option though.

stackpoint commented 10 years ago

Looks like google spreadsheets will also accept regex too: https://support.google.com/drive/answer/3098245

So some pseudo code would go something like =REGEX(TRANSLATE(REGEX(text, expression, replacetext), language),expression replacetext)

stackpoint commented 10 years ago

You should be able to chain several functions together as far as I know.

GrantSP commented 10 years ago

Need brain food.

And coffee.