I can only guess @bastianallgeier’s reasoning behind this naming. I guess that because it is essentially not the file’s content, he decided to go rather for meta.
It’s indeed a naming thing. When I came up with file meta data, it felt weird to name it content. Of course it might be more consistent, but I always try to balance between human readability and all the other factors.
There are practical reasons why the language is detected & loaded after plugins are. If it was the other way around, plugins would not be able to create their own routes. But the language becomes available to all methods, which are called in controllers, templates or snippets. So you can make use of that maybe.
I really needed to go to hell and back to make it work.
Routes does not know what page it is
That’s mostly because of that plugin routes does not know what page. Calling page() get the home page. Somehow I always run into that problem. It does not know what language it is eather.
That problem alone togehter with multi language added about 10 smaller problems to solve down the line. But I’ve done it and it’s probably the most ugly thing I’ve build this year, but it work.
Docs
I agree with @flokosiol that docs for it would be a great thing.
The File and Media classes should now be up-to-date again in the cheat sheet. But as you can see from the diff, that stuff takes ages.
But at some point, everything will be shiny again.