The localisation folder contains a number of .csv files. These files contain all the in-game texts for events, decisions, buttons etc. in several languages. As of HTTT, there are 13 csv files in the folder, with 4 major ones for each of the expansions. The first row of text.csv looks like this:
It lists the order of the languages in the localisation files. The first column is the identifier of the message, and the other columns are the translation of the message. If you want to make an translation for your language, you have to write it to the corresponding column. For example you want to write some German message, so you have to write it in the fourth column.
Note that the while the header lists 13 languages, only 8 are actually delivered with the standard game. The other 5 languages have blank values everywhere. Furthermore the 8th column, named Swedish, actually contains Hungarian texts. If you want to add Hungarian translation, you have to add it to the Swedish column (8. column).
To set your game to another language, for example, French, change the language line in settings.txt like this:
Changing or adding text
Usually you would not want to change text here. If you do, have the two points above in mind.
The most common use of modding localisation files is to add text. If you are adding some text through a mod, it is adviseable to add this to a new file. That way you don't risk messing with the original files. All .csv files in the localisation folder is read when the game starts.
There are a lot of various modding that requires extra text to be added. In general; if you add things, they need text. This applies when e.g. scripting new events, adding new countries, unit types, religions and so forth.