Sun Java VM で日本語フォントを好みのものにしたい

ちまたの解説でよく見られるのが、fallback を設定してそこにフォントファイルをコピーするというものですが、たとえば、sazanamiフォントやVLゴシックフォントも(様々な事情で)インストールしてあるんだけど、Java VM では IPA モナーフォントを使いたいなぁ、というときに破綻します。

そこで、fontconfig.properties 設定ファイルを直接いじっちゃって解決してしまいましょう。

ファイルの場所は、Ubuntu だと /usr/lib/jvm/java-6-sun/jre/lib、 Fedora だと /usr/java/latest/jre/lib あたりでしょうか。

まず、fontconfig.*.bfc ファイルが認識されないようにリネームしてしまいます。bash(root) にて

# for file in *.bfc; do mv $file ${file%%.bfc}.bfc.bak; done 


fontconfig.properties.src を fontconfig.properties にコピーして

# cp fontconfig.properties.src fontconfig.properties 


fontconfig.properties ファイルの最後に以下の内容を書き足します。

awtfontpath.japanese=/usr/local/share/fonts
allfonts.japanese=Mona
filename.Mona=/usr/local/share/fonts/ipagui-mona.ttf
sequence.allfonts.UTF-8.ja=latin-1,japanese


お好みフォントファイルの名前や場所などはあなたの環境に合わせて書き変えてください。

おしまい。

Fedora で一部の chrome エクステンションがクラッシュする

google-chrome の動作不良なのか  Fedora (SELinux) 側に原因があるのかどうかはわからないですが、以下のコマンドを打ちこめばクラッシュしなくなりました。

$ restorecon -R -v -F ~

ここで解説されている方法で導入できる chromium-browser も同様の動作不良がありますが、上記方法でやはり解決できます。

Fedora導入入門サイトとかでよくありがちなのが、SELinuxをDisableにしろという解説ですが、そういうセキュリティ意識の低い人の発信する情報は鵜呑みにしないようにしたいものですw

参考リンク: http://forums.lastpass.com/viewtopic.php?f=12&t=76761

proxy.pac: プロバイダによって自動的に proxy 設定を変える

説明

  • データキャッシングの恩恵によって、みんながよく行く WEB サイトは Proxy サーバ経由で見た方がイイに決まってます。もしかしたら、ダイアルアップラインからインターネットへのアクセスとは別枠のバックボーンで   Proxy サーバからインターネットへのアクセスをしているプロバイダもありうる話。
  • Proxy サーバは普通プロバイダごとに用意されていますが、プロバイダをつなぎかえるごとに設定を開いて入力し直すのも面倒くさい。
  • そこで、Netscape 3 以上くらいからのブラウザでは、JavaScript を用いた、Proxy Automatic Configuration というメカニズムが用意されています。これを利用して、今接続しているプロバイダがどこか判別して自動的に Proxy サーバを切り替えようという魂胆です。
  • MSIE での動作は未確認です。

改版履歴

  • 1.0 – 1997.12.01 : Initial Release
  • 1.0.1 – 1997.12.01 : ODN は https の proxy をしてくれないようなので、https は設定しないようにした。

使い方

  • まず最初に、どこのアクセスポイントに接続すると、自分のマシンにどのような IP が振られるかを調べる必要があります。これは、Windows 95 なら、「winipcfg」というプログラムが用意されているので、簡単に調べられます。「ファイル名を指定して実行」から「winipcfg」と入力すると起動します。
  • 以下は、 ODN 東京第 2 AP に接続している例です。
  • 「IP アドレス」が 143.90.211.13、「サブネットマスク」が 255.255.0.0 と表示されていますが、これをメモしておきます。プロバイダごと、というより同じプロバイダ内でもアクセスポイントが違うごとにメモしておく必要があります。
  • ここでは例として、 Famille 東京 AP では IP が 202.231.111.114 でサブネットマスクが 255.255.255.0 だったとしておきます。
  • 実は IP アドレスは電話をかけるごとに違うものが割り振られるのですが、ここでは説明を簡単にするためにこのままでいきます ^_^;
  • それぞれのアクセスポイントで使うべき Proxy サーバの名前とポート番号を調べます。プロバイダからの資料やサポート関係の WEB サイトにあります。私の場合、 ODN は cache4.odn.ne.jp:8080、 Famille は proxy.marinet.or.jp:8080 ということでした。
  • 以下のようなテキストファイルを作り、ハードディスク上に保存します。
    function FindProxyForURL(url, host) {
      var myip = myIpAddress();
      if (url.substring(0, 5) != "http:" && url.substring(0, 4) != "ftp:")
    return "DIRECT";
      if (isInNet(myip, "143.90.211.91", "255.255.0.0"))
    return "PROXY cache4.odn.ne.jp:8080; DIRECT";
      else if (isInNet(myip, "202.231.111.114", "255.255.255.0"))
        return "PROXY proxy.marinet.or.jp:8080; DIRECT";
      else
        return "DIRECT";
    }
  • 赤文字の部分は、先ほどメモしておいた IP アドレス、サブネットマスク、 Proxy サーバの設定です。
  • 設定しようとしている Proxy サーバの数が多ければ、青バックの部分を複製して下に続けてください。
  • 保存するファイル名は、たとえば「C:proxy.pac」としておきます。拡張子「.pac」は必須ですが、保存する場所やファイル名は好きなようにできます。
  • Navigator で、この proxy.pac を設定します。Proxy サーバを設定する場所の近くに「自動設定」とか「Automatic Proxy Configuration」とかいう設定項目があります。ここに、「file:///C|/proxy.pac」のように設定します。