Geolonia 小林です。
前回、 Maputnik を翻訳可能にする プロセスについての記事を書きましたが、今回は状況についてのアップデートです。
現在、6件の言語を対応しています:
翻訳中に、いくつかの課題に直面しましたが、こちらに関してもちょっとまとめようと思います。
i18next
は React と対応しているので、言語が変わった時にすべてのラベル等が動的に更新されます。ただ、 Maplibre GL JS のコントロール内のもの(例えば、検索の欄や現在のズームを表示するコントロール)は React の世界で管理していないので、コントロールでは i18next のイベントを受け取って自分で更新しないといけなかった。
Maplibre Style Specification から説明文などを引っ張るところがありました。Maputnik で Style Spec を翻訳するのは違うと思い、現在は元の英語のままになっています。そもそも、 Style Specification を翻訳しようと前から思っていたので、次は Style Spec や Maplibre GL JS のドキュメンテーションの翻訳も貢献しようと思っています。