Yes, but the solution with the numbers would reduce the typing of often repeated srings in the code.
And more prone to complications due to coordination - it's easy when there's only a handful of lines in the file. But when there's 100s it's much easier to just type the English anyway, even if you've duplicated, than to try and figure out what number code you should use.
Also yes, but INIs are easier to use for translators which have never seen a code-styled file, and they are easy to check.
I'm not too sure if an INI is "easier" to understand than an s-expr file. It would be possible to format an s-expression so it's even more readable to humans than an INI file. E.g. here's the s-expression of your sample INI:
(("EN" (1 "Good day") (2 "Good bye") (3 "...")) ("FR" (1 "Bonjour") (2 "Au revoir") (3 "...")) ("DE" (1 "Guten Tag") (2 "Servus") (3 "...")))
And then using a simple indenting formatter (same as any XML editor) you get the following:
(
("EN"
(1 "Good day")
(2 "Good bye")
(3 "...")
)
("FR"
(1 "Bonjour")
(2 "Au revoir")
(3 "...")
)
("DE"
(1 "Guten Tag")
(2 "Servus")
(3 "...")
)
)
Anyway, I'd avoid having someone who doesn't understand "coding" files to directly edit any such file (including INI). That's just a recipe for bugs. If you have such "translators", then you'd be better off giving them a program which hides the underlaying file structure so they cannot screw it up - i.e. you need something like POedit.