jamulussoftware / jamuluswebsite

This is the GitHub Pages repository for the Jamulus main website. For the jamulus application source code, please visit jamulussoftware/jamulus.
https://jamulus.io
GNU Lesser General Public License v2.1
16 stars 79 forks source link

Add language selection dropdown #993

Closed ignotus666 closed 1 week ago

ignotus666 commented 1 week ago

Short description of changes Adds a language selection dropdown to the website. The website also detects what language the user's browser is in and initially displays itself in that language.

Scripts automating the addition of new languages have been updated to support adding the full language name + language code.

It also includes the changes from #988 and #990 so as to avoid conflicts between PRs and include all the changes here.

Context: Fixes an issue? Related issues Fixes #977, #986 and #992

Status of this Pull Request Should be ready pending a review.

What is missing until this pull request can be merged? Would be good if some more people can test it.

IMPORTANT: Weblate stuff should be merged first.

Does this need translation?

No.

Checklist

ignotus666 commented 1 week ago

@gilgongo It just dawned on me that #988 was meant to be merged into release... We can either wait until 3.11 comes out (when next-release gets merged into release), or right after this PR gets merged, open another PR against release with those changes. I can do that as there is other stuff that needs to go into release to enable the automated language addition to work.

pljones commented 1 week ago

Could you squash the commits down to a single commit, please.

If it needs to wait for other PRs, please put this one into draft.

gilgongo commented 1 week ago

@ignotus666 I'm fine with waiting if that's simpler.. but is it?

pljones commented 1 week ago

@ignotus666 I'm fine with waiting if that's simpler.. but is it?

We've two tagged bugs - gut feel is they should go in before this.

ignotus666 commented 1 week ago

977 and #986 are included in this PR - they can be closed.

@gilgongo after this is merged, the stuff that's for release doesn't necessarily have to wait. In fact it might be better as if by chance someone wants to add a language it won't work otherwise.

@pljones yes, I'll squash all those commits when I get a chance.

ignotus666 commented 1 week ago

I've been doing some tests and there are going to be conflicts between this and the Weblate PR.

It's caused by the changes to the po folder names and the changed language codes in the po files. I think it might be best to leave those changes for after the Weblate PR and this one are merged. Mainly to make sure the pending translations get in. If there are conflicts at a later stage for any reason Weblate can be force-reset to whatever state next-release is in - but the translations will be already there.

@gilgongo I don't know how you replaced those codes within the files, by hand or with a recursive find/replace, but on Weblate, if you change that string (e.g. "pt_PT" -> "pt-PT") in one file in a given language, that change will propagate to all other files in that language.

So anyway, I'm going to revert those lang code changes for now (it only affects the po folders and files), and wait until the Weblate PR and this one have been merged before making that change.

ignotus666 commented 1 week ago

The check fails because some config files have the lang code changed while the po files/folders don't. This is to be expected.

ignotus666 commented 1 week ago

@pljones I'm having a hard time squashing all these commits; I think it's because many of them originate from other repos/branches... I'm going to open a new, clean PR.