Nikep Software Lab.

ニケプ ソフトウェアラボ 〜 Nikep Software Lab.

便利でフリーなソフトウェアとウェブサービスをご提供するサイトです。  ホーム » ソフトウェア » FedoreCoreの設定
ホーム事業ソフトウェアWEBサービスブログ趣味のページ自己紹介
設定Window Managernamed/bindFonts 1Fonts 2kterm → xtermIPTablempeg123Emacs

Fedora Core 1の設定

Fedora Core 1

fedora desktop

今迄メインマシンではLASER5 Linux 6.4ベースを使っていたが、新しいパッケージに乗り換える必要が出てきた。

しかしながら、メインマシンの場合は、環境整備できるまでの間が不便で絶えられないため、何回かRedhat Linuxや Debianへの update を試みて挫折してきた。 今回Fedora Core 1では、localeがUTF-8になったのが嬉しくて、面倒だけどやってみようという気になった。 Unicode/UTF-8を使うことには、国内では根強い反対者もいるようだが、日本のソフトヱアの国際化には、 これしかないのは間違いない。ASCII safeでないエンコーディングでロケール切り替えなどに拘っていては、 「日本以外で作成されたソフトを使えない/日本で開発されたソフトは外国で使われない」状態を変えることは できない。

しかし、結構癖があって、設定して使えるようになるまで苦労が多かったので、少し後から来るチャレンジャーのためになれば、と思いまと めることにした。

設定

Window Manager

defaultのWindow ManagerはMetacityであるが、以下の点がどうしても耐えられない。中途半端な開発状況だと思うのだが、どうして採用されているのだろう。

慣れている sawfish を使うことにする。切り替え方法

sawfish は version up されて、設定が激しく変わっている。edge flipとかは、.sawfishrc に設定しないと出てこないようだ。最低限このくらいは必要。ちなみに、require文を .sawfishrc と .sawfish/custom の両方に書くとエラーするようだ。

(require 'sawmill-defaults)
(custom-set-typed-variable (quote default-font) (quote "-alias-variable-medium-r-normal-*-12-*-*-*-p-*-iso10646-1") (quote font))
(custom-set-typed-variable (quote focus-mode) (quote enter-exit) (quote symbol))
(custom-set-typed-variable (quote raise-windows-on-focus) (quote t) (quote boolean) (quote sawfish.wm.ext.auto-raise))
(custom-set-typed-variable (quote raise-window-timeout) (quote 700) (quote number))
(custom-set-typed-variable (quote edge-flip-enabled) (quote t) (quote boolean) (quote sawfish.wm.ext.edge-flip))
(custom-set-typed-variable (quote edge-flip-type) (quote workspace) (quote (choice viewport workspace)))
(custom-set-typed-variable (quote edge-flip-delay) (quote 900) (quote number))

<ただし、edge-flip-delayは効 いていない。(仕様変更みたいなことが書いてある。が、昔の仕様に慣れてしまっており…) 嬉しいことに開発が再開され、 "sawfish-1.3.3"では直っている。(昔通りに戻っている)

さらに、WorkSpaceの切り替えがバグっているので、こ こからパッチ(libwnck-2.4.0.1-1lab.i386.rpm)を取ってきてインストールする。

named/bind

namedの設定で少しはまる。/etc/sysconfig/named に chroot の設定がしてあるため、設定ファイル等も、chroot 以下の(/etc/named/chroot/etc/)が有効になっている。

Fonts 1

TrueType の font path を追加したいのだが、/etc/X11/fs/config とかに追加してもうまく動作しない。/etc/fonts/fonts.conf に追加しないとならないようだ。しかしながら、freetype のせいか、xtt のときにできた、bold, itallic フォントの生成ができなくなっている。 xttに戻そうとしたが挫折。今のとこ ろ、anti-aliasを取るか、bold, italicを取るかの どちらかなってしまう。xfsのほうをFreeTypeのままで、XServerを xttに して使うことができる。

# モジュールのロードを追加 (freetypeの代わりにxttをロード)
Section "Module"
#Load "freetype" #-- コメントアウトする
Load "xtt" #-- 追加
# フォントパスにパスを追加する。(xfsのではなく、XF86Configの)
FontPath "unix/:7100"
FontPath "/public/fonts/TrueType" # これを追加
・"xtt"用のフォント
ab=y:ai=0.4:kochi-mincho.ttf -misc-Kochi_Mincho-bold-i-normal--0-0-0-0-c-0-iso8859-1
・freetype 用のフォント
kochi-mincho-subst.ttf -misc-Kochi Mincho-medium-r-normal--0-0-0-0-c-0-iso8859-1

Fonts 2

gimp など、GTKアプリのテキスト表示が縦に広くなる。これは、gtk のフォント設定で縦長なフォントが入れられるためと思う。
.gtkrc.mine を作成し、

style "font-setting" {
fontset = "-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1,\
-misc-fixed-medium-r-normal--14-130-75-75-c-140-jisx0208.1983-0,\
-misc-fixed-medium-r-normal--14-130-75-75-c-70-jisx0201.1976-0,\
-*--14-130-75-75-c-*"
}
class "GtkWidget" style "font-setting"

なお、これに限らず、フォントセットを読み込ませると、予期せぬ色んな言語用のフォントを読み込むようで、load時間も猛烈に食う。以下を $HOME/.xserverrc に書いておくと少しましになる。

X -deferglyphs 16

残念なことに、GTKなど"きちんと"日本語化対応されたものは、「フォントセット」で対応している。つまり、各国語に合わせて、複数のフォントを読み込むようになっていて、UTF-8の場合はマルチリンガル対応となるので、インストールされている(定義されている?)多くの言語のフォントセットを読みに行くと思う。(どうしてiso10646一発にしなかったのか…)。

kterm → xterm

gnome-terminalは重いし、ポインターやカーソルに色が着かないので好きではない。しかしktermは UTF-8 localeで動かないので困る。"LANG=ja_JP.ujis kterm"などとしても良いが、これでは UTF-8 localeを使っていることにはならないよ。
ということで、xterm を使う。このくらい設定すると使えるようになる。

      XTerm*utf8: 1
XTerm*wideChars: true
XTerm*locale: true
xterm*fontDoublesize: true
XTerm*font: -efont-fixed-medium-r-normal--14-140-75-75-c-70-iso10646-1
XTerm*wideFont: -efont-fixed-medium-r-normal--14-140-75-75-c-140-iso10646-1
XTerm*font1: -efont-fixed-medium-r-normal-*-12-120-75-75-c-60-iso10646-1
XTerm*wideFont1: -efont-fixed-medium-r-normal-*-12-120-75-75-c-120-iso10646-1
XTerm*font2: -misc-fixed-medium-r-normal-*-13-120-75-75-c-70-iso10646-1
XTerm*wideFont2: -misc-fixed-medium-r-normal-*-13-120-75-75-c-120-iso10646-1
XTerm*font3: -efont-fixed-medium-r-normal-*-14-140-75-75-c-70-iso10646-1
XTerm*wideFont3: -efont-fixed-medium-r-normal-*-14-140-75-75-c-140-iso10646-1
XTerm*font4: -efont-fixed-medium-r-normal-*-16-160-75-75-c-80-iso10646-1
XTerm*wideFont4: -efont-fixed-medium-r-normal-*-16-160-75-75-c-160-iso10646-1
XTerm*font5: -misc-fixed-medium-r-normal-*-18-120-100-100-c-90-iso10646-1
XTerm*wideFont5: -misc-fixed-medium-r-normal-*-18-120-100-100-c-180-iso10646-1
XTerm*font6: -efont-fixed-medium-r-normal-*-24-240-75-75-c-120-iso10646-1
XTerm*wideFont6: -efont-fixed-medium-r-normal-*-24-240-75-75-c-240-iso10646-1
XTerm*ximFont: -*-*-medium-r-normal--14-140-75-75-*-*-*

なお、efontは、efont-unicode-bdf-0.4.2.tar.bz2をダウンロードし、"bdftopcf" で pcf フォントに変換し、フォントパスが通ったディレクトリ(例えば/usr/share/fonts/ja/misc)にコピーし、mkfontdirをすれば使えるようになります。

# tar jxvf efont-unicode-bdf-0.4.2.tar.bz2
# cd efont-unicode-bdf-0.4.2
# for i in *.bdf; do Pcf=`echo $i | sed 's/\.bdf$/.pcf/'`; bdftopcf $i | gzip - > ${Pcf}.gz; done
# cp *.pcf.gz /usr/share/fonts/ja/misc
# (cd /usr/share/fonts/ja/misc && mkfontdir .)
 

xterm/ktermのマウスカーソルマスク(ポインターの背面がマスクされて見やすくなる)が背景色ではなく、白になってしまう不具合(?)がずっと昔からあるのだけれど、皆さん気にならないのでしょうか。
pointerColorBackgroundのリソースで指定されますが、コマンドラインで指定することはできなく、かつ backGroundColor が指定されたときに、これに合わせて変更するコードがありません。これを変更する小さなクイックハックパッチxterm-mousebackground.patchです。(ReverseVideoの対応が今一ですが、仕様自体が妙なので)

まだ、SKKINPUTを使ったときに、表示が縦に長いという不具合が解決できていない 一応解決した。が、今一である。以下の通り。

 XTerm*ximFont: -*-*-medium-r-normal--14-140-75-75-*-*-*
/*
* For XIMPreeditPosition (or OverTheSpot), XIM client has to
* prepare a font.
* The font has to be locale-dependent XFontSet, whereas
* XTerm use Unicode font. This leads a problem that the
* same font cannot be used for XIM preedit.
*/

IPTable

IPChainsからIPTablesに変更になった。
結構時間が掛かったので書いておきたいけど、設定に不備があって、これを見た悪党が攻撃してきたりすると嫌だしなぁ。

mpeg123

mpg123はライセンスの関係で入っていないので、mpg321-0.2.10-1.rpmを取ってきてインストールする。

Emacs

EmacsはCVSから最新開発版(2.2版)を取ってきてコンパイル/インストールする。

Emacs(Mule)は早くから多言語化しており、UNIX環境では昔からこれだけで日本語環境OKな感じであった。 しかしながら(or このためか)ユニコード対応が遅れてしまい、現在のリリースではMule-UCS lispライブラリによる実装となっている。 このモジュールは大きく(多分コードテーブルを読み込んでいる)、ロードに多大な時間が掛かってしまうので、正直なところ、私は起動時に読み込む気がしない。他のエディタ(gedit等)はNativeで対応しており起動時間は問題ない。また、Windowsのxyzzyも起動は充分早いのを見るにつけ、早くでないかと思っていたのだが、未だにリリースされていない。 少し中身も見てみたが、文字コードの扱いが単純でないようで、手が出せなかった。
開発版は以前にもインストールしてみたことがあるが、そのときはUTF8の日本語が正しく表示できなかった。しかし、今は全くOKだ。 私は、ようやく、PC内にEUC-JPで保存されていたファイルをUTF-8に変換し始めている。

なお、正式リリースでないと嫌な方はMule-UCSを使うしかない。現在はデフォルトで読み込むようになっているが、最低限、ユニコードなファイルを読 み込む前にMule-UCSを読み込むように変更したほうが良いと思う。そうでないとEmacsはこんなに遅いのかと誤解してしまうことになる。(自動認識できないので、UTF-8の文書を読み込んだとき、C-x 8を打つ)

(defun unicode-edit-mode () "editting mode for unicode"
(interactive)
(require 'un-define) ; Unicode
(require 'unicode)
(set-language-environment "Japanese")
(prefer-coding-system 'utf-8-unix)
(setq default-buffer-file-coding-system 'utf-8-unix)
(setq default-process-coding-system '(utf-8-unix . utf-8-unix))
(setq buffer-file-coding-system 'utf-8-unix)
(setq buffer-process-coding-system 'utf-8-unix)
(setq keyboard-coding-system 'utf-8-unix)
(setq process-coding-system 'utf-8-unix)
(setq terminal-coding-system 'utf-8-unix)
)
(global-set-key [?\C-x ?8] 'unicode-edit-mode)

サイト内検索

ウェブ検索

開発したいものは、ありませんか?

ニケプソフトウェアラボではシステム構築やアプリケーション開発業務をお手伝いいたします。
詳細はこちらをご覧下さい。

また、当サイトで提供しているサービスの商用利用のためのカスタマイゼーション(コーデック作り込み、ダウンロードサーバ利用、データストレージの確保等)承ります。
御問い合わせはこちらまで
2004-2010 Shigeki Kaneko, all right reserved.