22332
mac で、 XQuartz 2.7.8 (xorg-server 1.16.4) を利用して、 vagrant の中の ubuntu 14.04 の、
firefox を x forwarding してみようとしています。

Vagrantfile で、 `config.ssh.forward_x11 = true`を設定した状態で、`vagrant ssh`をして、入った
ubuntu 上でまず firefox をインストール(`sudo apt-get install
firefox`)して、`firefox`を起動しました。

問題なくホスト(mac)側で、画面を表示することができたのですが、添付ファイルの通り、日本語をうまく取り扱えず文字化けが起こってしまっています。

[![garbling
firefox](https://i.stack.imgur.com/YMYFF.png)](https://i.stack.imgur.com/YMYFF.png)

firefox を起動した端末上では、

```

    (firefox:20994): Gtk-WARNING **: Locale not supported by C library.
        Using the fallback 'C' locale.
    
```

と表示されているので、これが原因なのではないかと考えているのですが、これをどう解消したらよいのかがわかりません。

質問:

  * 文字化けを解消するにはどうしたらいいでしょうか。

* * *

追記@2/21  
@aliceinwire
さんのコマンドを一通り(何回か)実行してみたのですが、やっぱり文字化けています。その際に、いくつかエラーが発生していたので、それが原因なのではないか、と考えているのですが、やっぱりどうしたらいいのかよくわかりません。

```

    vagrant@vagrant-ubuntu-trusty-64:~$ sudo dpkg-reconfigure locales
    perl: warning: Setting locale failed.
    perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LC_CTYPE = "UTF-8",
        LANG = "en_US.UTF-8"
        are supported and installed on your system.
    perl: warning: Falling back to the standard locale ("C").
    locale: Cannot set LC_CTYPE to default locale: No such file or directory
    locale: Cannot set LC_ALL to default locale: No such file or directory
    Generating locales...
      en_US.UTF-8... up-to-date
      ja_JP.UTF-8... up-to-date
    Generation complete.
    vagrant@vagrant-ubuntu-trusty-64:~$ locale -a
    locale: Cannot set LC_CTYPE to default locale: No such file or directory
    C
    C.UTF-8
    en_US.utf8
    ja_JP.utf8
    POSIX
    vagrant@vagrant-ubuntu-trusty-64:~$ firefox 
    
    (firefox:22320): Gtk-WARNING **: Locale not supported by C library.
        Using the fallback 'C' locale.
    Fontconfig warning: ignoring UTF-8: not a valid region tag
    
```
CC BY-SA 3.0
2016-02-20T10:03:00.487
22313
2016-02-21T04:10:35.850
2016-02-20T17:03:36.023
754
754
question
macos ubuntu firefox x11
vagrant の中で起動した firefox を x forwarding してみたら文字化けている
そのエラーメッセージの意味は今使っているlocaleはfirefoxで動かないからCのlocaleを使っている、ということですが日本語のサポートがないようですね。

```

    sudo dpkg-reconfigure locales
    
```

locale の設定をチェックしてください。

```

    locale -a
    
```

Vagrant上にubuntuを使っています可能性が高いので 日本語パッケージもインストールが必要ですね。

```

    apt-get install language-pack-ja-base
    
```
CC BY-SA 3.0
2016-02-20T12:39:48.220
22315
2016-02-20T17:18:13.803
2016-02-20T17:18:13.803
754
7325
22313
answer
Kenji Noguchiさんが指摘されているように、フォントの問題だと思います。

Firefoxはデフォルトで `sans` `sans-serif`
に該当するフォントを使いますが、例えば[ubuntu/trusty64](https://vagrantcloud.com/ubuntu/boxes/trusty64/versions/20160215.0.0)のboxでは日本語フォントが入っておらず、代わりに欧文フォントが使われてしまっています。で、日本語のグリフが含まれていないので代わりにコード値が表示されています。

```

    $ aptitude search "~d Japanese ~d font"
    （インストール済みのものがない）
    $ fc-match sans:lang=ja
    DejaVuSans.ttf: "DejaVu Sans" "Book"
    $ LANG=ja_JP.UTF-8 fc-match sans
    DejaVuSans.ttf: "DejaVu Sans" "Book"
    
```

日本語フォント、ここでは `fonts-takao-pgothic` をインストールすることで、`fc-match`
の結果は期待通りのものになりました。実際にFirefoxで試してはいませんが、おそらく解決するかと。

```

    $ sudo apt-get install fonts-takao-pgothic
    $ fc-match sans:lang=ja
    fonts-japanese-gothic.ttf: "TakaoPGothic" "Regular"
    $ LANG=ja_JP.UTF-8 fc-match sans
    fonts-japanese-gothic.ttf: "Takao Pゴシック" "Regular"
    
```

Fontconfigで言語ごとのフォントが選ばれる仕組みなどについて、以下のサイトを参考にしました。  
[ロケールとフォント - みっどメモ](http://blog.midchildan.org/2015/08/11/ja-fonts-in-ubuntu/)

`Locale not supported by C library.` や `Setting locale failed.` は別の問題で、
`LC_CTYPE=UTF-8`
となっていることによるものです。ただFirefoxに限って言えば、この状態でもフォントが正しく入っている環境では問題なく日本語が表示されました。

参考 [Mac から Ubuntu に ssh ログインするとなんかロケール云々で怒られるやつ - 復刊
ボルシチは食べ物です。](http://yano3.hatenablog.jp/entry/2012/11/25/234244)
CC BY-SA 3.0
2016-02-21T04:10:35.850
22332
2016-02-21T04:10:35.850
8000
22313
answer