Sorry for the long explanation in advance, but it needs a little more detail to be understood :-)
Current behavior of creating multilingual pages:
Setup:
Creating a page in default language:
If you create a new page in default language [en], Kirby creates an initial file test.en.txt. After filling the page with content (text fields, builder, etc.) and saving it, the file test.en.txt is updated. Everything works as expected.
Now switch to the [de] version of this page: The complete content is taken from the [en] version, all fields are already filled with [en] content to facilitate translating (which is nice) and page preview works already, although the page has not yet been saved. It looks like a regular page (just with wrong content) for an editor. But: a file called test.de.txt is not yet created and there is also no button to save (and create one). After changing anything, the save button appears and the file test.de.txt is finally written after saving. Once saved, you will have two separate versions, and each language will be treated individually.
Creating a page in non-default language:
If you create a new page in non-default language [de], Kirby creates an initial file test.en.txt. After filling the page with content (text fields, builder, etc.) and saving it, the file test.de.txt is written with all my content. The [en] version stays empty.
I have a lot of experience with multilingual projects (up to 8 languages / project), but it took me a while to figure out what Kirby exactly does, especially if you don’t look at the file system.
The problem of the current behavior in my opinion is:
My suggestion:
Do not fill the non-default version with default content, but add a function to copy content from any language to another. It would optimize the current work flow and would be a big benefit for editors and translators:
I really like the idea of having a button to copy content manually without any automatism. Introducing an options to copy from any language not just the default would be an extra bonus of such change 👍
I’m having an issue with a similar situation here.
En - Default language
Fr - Second language
I know I can deal with this by copy and pasting the file, but my client is not tech savy and I’d rather have a solution in the panel. 🤔