🗺️

Base Internationalizationをあえて使わない

2023/04/12に公開

Base InternationalizationはStoryboardで編集作業をする人向けの機能なので、Storyboardで編集作業をしないのであればBase Internationalizationはいらないのではないか

という仮説のもと、Base Internationalizationを使わない設定をしてみます。また、「Base Internationalizationを使わない」ようにしたいとき、ほとんどがStoryboardのローカライズ自体必要ないと(勝手ですが)思うので、最終的に「Storyboardは存在しプロジェクトの中で必要なものとして機能しているが、ローカライズはされてない状態」を目指します。

2段階でややこしいので前後半に分かれます。

  • Base Internationalizationを使わないようにする(前半、この記事)
  • Storyboardのローカライズを外す(後半、次の記事)

このやり方は公式が推奨しているわけではない。

操作するのは主に、Main.storyboardとLaunchScreen.storyboardの2つ。この先これを「対象ファイル」という。

環境

Ventura 13.3.1
Xcode 14.3

プロジェクト作成

テンプレートはiOSのAppを選び、次のページのSwiftUI or Storyboardの選択肢でStoryboardを選択。

プロジェクト作成後の状態

この時点の、対象ファイルの状態は
ローカライズ状態にあり、形式はBase
になっている。

Use Base InternationalizationをOffにする

Use Base Internationalizationのチェックを外します。

↑これをOffにする。

すると、Base.lprojフォルダにあるものをどうするか聞かれるのでen.lprojに移動と答えます。

Englishに移動した

この時点の対象ファイルの状態は
ローカライズ状態にあり、形式はEnglish
になっている。

この時点でBase Internationalizationを使わないという目的は達成したのでこの記事はここで終わり。

さらにローカライズ状態を外す作業を次の記事でやっている。
https://zenn.dev/samekard_dev/articles/7d47e8b3c4c020

Discussion