なにはともあれSLAX
1 :よーだ :2006/08/25(金) 08:34:04 ID:hyAu/OJ9.net ディストリの壁をこえて SLAX を語ろう。
181 :login:Penguin :2006/10/19(木) 02:51:15 ID:K4H0Yqvl.net >>180 jfbtermの中でuim-fepを実行する。 autoexec=jfbterm -e uim-fep
182 :login:Penguin :2006/10/19(木) 02:54:05 ID:K4H0Yqvl.net >>179 こんな感じ? if [ "$(`cmdline_value lang`)" != "" ]; then
183 :login:Penguin :2006/10/19(木) 03:31:58 ID:yAGz+9wf.net >>181 やってみました。 autoexec=jfbterm -e uim-fep だと -e uim-fepがjfbtermのパラメータだと認識されませんでした。 というわけで、以下のような簡単なスクリプトを作りました。 #!/bin/sh jfbterm -e uim-fep でも、プロンプトがbash-3.0となって、uim-fepは日本語オンになりませんでした。 もうちょっとぽいんですが…。
184 :login:Penguin :2006/10/19(木) 03:33:29 ID:yAGz+9wf.net >>182 なるほど。 これだと後ろのcase文はどのようにすればいいでしょうか。
185 :login:Penguin :2006/10/19(木) 04:01:14 ID:K4H0Yqvl.net >>183 それuim-fepの起動失敗してるんじゃない? スクリプトの実行属性が付いている? >>184 一緒。 #もう寝る。
186 :login:Penguin :2006/10/19(木) 04:55:59 ID:diLupZWd.net >>184 元のままでいいんじゃね?
187 :login:Penguin :2006/10/19(木) 06:55:25 ID:K4H0Yqvl.net liblinuxliveの中で$LANGをトレースしてみたらやはり設定されてなかった。 そこで、ブートオプションでlang=ja_jp.UTF-8などとしてして、それを /proc/cmdlineからとってくる方法もありますが、もうひとつ、別な方法として、 実はLANGの指定は/etc/profile.d/lang.shで、 export LANG=ja_JP.UTF-8 などと設定されている。これから取ってくるものを考えてみた。 LANGの値を次のように設定する。 LANG=`grep -e ^export /etc/profile.d/lang.sh|grep LANG=|cut -f 2 -d " "|cut -f 2 -d =` この行をliblinuxliveに次のように挿入する。 if [ "$FS" = "vfat" -a "$IOCHARSET" != "" ]; then OPT=",iocharset=$IOCHARSET" else if [ "$FS" = "vfat" ]; then LANG=`grep -e ^export /etc/profile.d/lang.sh|grep LANG=|cut -f 2 -d " "|cut -f 2 -d =` case $LANG in ja_JP* ) CODEPAGE="codepage=932" ;; ko_KR* ) CODEPAGE="codepage=949" ;; zh_CN* ) CODEPAGE="codepage=936" ;; zh_TW* ) CODEPAGE="codepage=950" ;; esac OPT=",iocharset=utf8,$CODEPAGE" fi fi はとちゃん版slaxで/usr/lib/liblinuxliveを修正して動作することを確認しました。
188 :login:Penguin :2006/10/19(木) 07:04:46 ID:K4H0Yqvl.net なお、fstabのオプションの生成は/usr/lib/liblinuxliveだけが関係してくるようであり、 /usr/lib/liblinuxliveを修正するだけでOKとなった。 initrd.gzの中とtoolsの下のliblinuxliveはどこで使われるのか不明。 ま、一応修正しといた方がいいと思うけど。
189 :login:Penguin :2006/10/19(木) 08:54:38 ID:NByMOkR/.net >>182 > if [ "$(`cmdline_value lang`)" != "" ]; then こんなときはよく if [ x$(cmdline_value lang) != x ]; then なんてします。 ""がxの1文字で済むので両辺で2文字倹約ですう。 xのかわりに_を使うときもあります。
190 :login:Penguin :2006/10/19(木) 09:08:20 ID:NByMOkR/.net >>187 /etc/profile.d/lang.shはslax-ja-$(ver)-$(rev).moの中にありますね。これも良策ですが、カーネルオプションで明示的にlang=jaとやるほうが今後sysconfigのメニューで多国語選択可能になった場合、管理しやすいように思います。
241 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★
本文 スレッドタイトル 投稿者