Please make an example.
Normally when you a translation
you have an speaking identifier like SHelloWorld that defaults to 'Hello World !'
So doing the translation you set it to
Language := 'German'
[...]
SHelloWorld := GetTranslatedText('SHelloWorld',Language) // Should get you 'Hallo Welt !'
Think also of that texts in different languages have most likely different length. (So leave enough space, have a dynamic layout ...)
For easier maintenance it maybe better to have a file for every language.
So TXMLConfig might be a good solution
http://wiki.freepascal.org/xmlconfAbout Internationalization/Localization also read the WiKi:
http://wiki.freepascal.org/Translations_/_i18n_/_localizations_for_programsPS: when this is related to your 3rdSpace-problem keep in mind that not only the words but also the syntax changes in other languages.
So the first three words of a sentence in one language are not necessary (highly unlikely) the same words in the sentence of another language. Even more when you have idioms.