LoginSignup
29
26

More than 5 years have passed since last update.

ubuntuで(できるだけ)全部のlocaleを追加する

Last updated at Posted at 2014-07-04

ubuntuでlocaleを追加する

普通にinstallして使う分には問題ないのですが、vagrantやdockerのofficial imageを使うとC localeしかない場合があります。(C localeしかないと言ってもC/C.utf8/POSIXが見えますが。C localeじゃなくてPOSIX localeって言う方がいいのかな……?)

これで問題ない時もありますが、変なところで引っかかることもあります。私はmultibyte characterが含まれたgemspecファイルで引っかかりました。

なので、utf-8のlocaleを追加してみます。

日本語のlocaleを追加する

aptでlanguage-packを追加する

language-pack-jaをインストールしてもいいです。

root@localhost # apt-get install language-pack-ja

ちなみにインストール可能なlanugage-packはapt-cacheで見れます。

root@localhost # apt-cache search language-pack

locale-genする

でもlocaleだけ追加したいことってありますよね。表示しなくていい、みたいな。そういう時はlocale-genとupdate-localeを使います。

root@localhost # locale-gen ja_JP.UTF-8
root@localhost # update-locale LANG=ja_JP.UTF-8

サポートしているlocaleを全部入れる

さて、ここまではなんてことないことで、検索するとすぐ出てきます。でも、Ubuntuがサポートしているlocaleを全部入れたいことってありますよね?(あるのか?)

まず、サポートしているlocaleのリストが /usr/share/i18n/SUPPORTED にあります。

root@localhost # head /usr/share/i18n/SUPPORTED
# This file names the currently supported and somewhat tested locales.
# If you have any additions please file a glibc bug report.
aa_DJ.UTF-8 UTF-8
aa_DJ ISO-8859-1
aa_ER UTF-8
aa_ER@saaho UTF-8
aa_ET UTF-8
af_ZA.UTF-8 UTF-8
af_ZA ISO-8859-1
am_ET UTF-8

念のためtailもしてみます。

root@localhost $ tail /usr/share/i18n/SUPPORTED 
zh_HK.UTF-8 UTF-8
zh_HK BIG5-HKSCS
zh_SG.UTF-8 UTF-8
zh_SG.GBK GBK
zh_SG GB2312
zh_TW.EUC-TW EUC-TW
zh_TW.UTF-8 UTF-8
zh_TW BIG5
zu_ZA.UTF-8 UTF-8
zu_ZA ISO-8859-1

ふうむ…今回は.UTF-8が付いているやつだけ入れましょう。

root@localhost $ grep '\.UTF-8' /usr/share/i18n/SUPPORTED | awk '{ print $1 }'

とかで一覧が出ますので、

root@localhsot $ locale-gen $(grep '\.UTF-8' /usr/share/i18n/SUPPORTED | awk '{ print $1 }')

します。

(ここでたまにエラー出たりしますが、要望があれば調査してみるので、コメントを下さい。とりあえず私はいらないのでやっていません。)

この後にC以外でupdate-localeするのを忘れないようにしましょう。

終わりに

ものすごい手抜きですが、こんな手順で簡単にlocaleがだいたい全部入ります。もしドキュメントやフォント等が入れたかったら、apt-get install 'language-pack-*'すればいいです。手元では782MB、1184のnew packageで済みました。

まあ、勝負はここからなわけですので、がんばりましょう!

29
26
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
26