なにはともあれSLAX (849レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
189: 2006/10/19(木)08:54 ID:NByMOkR/(1/13) AAS
>>182
> if [ "$(`cmdline_value lang`)" != "" ]; then
こんなときはよく
if [ x$(cmdline_value lang) != x ]; then
なんてします。 ""がxの1文字で済むので両辺で2文字倹約ですう。
xのかわりに_を使うときもあります。
190: 2006/10/19(木)09:08 ID:NByMOkR/(2/13) AAS
>>187
/etc/profile.d/lang.shはslax-ja-$(ver)-$(rev).moの中にありますね。これも良策ですが、カーネルオプションで明示的にlang=jaとやるほうが今後sysconfigのメニューで多国語選択可能になった場合、管理しやすいように思います。
191: 2006/10/19(木)09:16 ID:NByMOkR/(3/13) AAS
sysconfigじゃなくてsyslinux.cfgまたはisolinux.cfgでした。
192: 2006/10/19(木)11:03 ID:NByMOkR/(4/13) AAS
166-191をまとめると

if [ "$FS" = "vfat" ]; then
if [ "$IOCHARSET" != "" ]; then
OPT=",iocharset=$IOCHARSET"
else
case $(cmdline_value lang) in
"" ) OPT=",iocharset=utf8" ;;
省8
193: 2006/10/19(木)11:04 ID:NByMOkR/(5/13) AAS
(つづき)
ということは、
if [ "$FS" = "vfat" ]; then
if [ "$IOCHARSET" != "" ]; then
OPT=",iocharset=$IOCHARSET"
else
OPT=",iocharset=utf8"
省9
194: 2006/10/19(木)11:08 ID:NByMOkR/(6/13) AAS
(つづきのつづき)
if [ "$IOCHARSET" != "" ]; then
OPT=",iocharset=$IOCHARSET"
else
OPT=",iocharset=utf8"
fi
は1行で
省2
195: 2006/10/19(木)11:30 ID:NByMOkR/(7/13) AAS
ということで決定版です。全部で9行

if [ "$FS" = "vfat" ]; then
OPT=",iocharset=${IOCHARSET:-utf8}"
case $(cmdline_value lang) in
ja* ) OPT="${OPT},codepage=932" ;;
ko* ) OPT="${OPT},codepage=949" ;;
cn* ) OPT="${OPT},codepage=936" ;;
省3
197
(3): 2006/10/19(木)12:55 ID:NByMOkR/(8/13) AAS
>>196
あ、でもlangが指定されなかった場合、つまり$(cmdline_value lang)が空だった場合、OPT=",iocharset=${IOCHARSET:-utf8}" のままでとどめたい。でないと
OPT=",iocharset=utf8,codepage=" なんてことになってマウントエラーにならないかな。
それと$(~...~)のバッククオートは不要だと思う。$()が``と同じはたらきをするから。
あえて関数にするなら

get_codepage() {
case $(cmdline_value lang) in
省8
198: 2006/10/19(木)13:03 ID:NByMOkR/(9/13) AAS
>>197
どうでもいいことかも知れないが、この関数の内容からすれば get_codepageではなくて show_codepageだな。
200: 2006/10/19(木)14:29 ID:NByMOkR/(10/13) AAS
ついでにslax-ja-5.1.8-2.isoでは /tools/liblinuxliveでは

# add special options for NTFS
if [ "$FS" = "ntfs" ]; then
OPT=",ro"
#if [ "$IOCHARSET" != "" ]; then OPT="$OPT,nls=$IOCHARSET"; fi
if [ "$IOCHARSET" != "" ]; then
OPT="$OPT,nls=$IOCHARSET"
省7
201
(2): 2006/10/19(木)14:41 ID:NByMOkR/(11/13) AAS
(slax-ja-5.1.8-2.iso)/tools/liblinuxliveの453-488行をいっそのこと

case $FS in
'' ) ;; # skip when $FS is null
ntfs ) OPT=",ro,nls=${IOCHARSET:-utf8}" ;;
vfat ) OPT=",iocharset=${IOCHARSET:-utf8}$(get_codepage 2> /dev/null)" ;;
swap ) fstab_update_line $FSTAB~ $DEVICE swap swap defaults ;;
* ) fstab_update_line $FSTAB~ $DEVICE $MOUNTDIR $FS auto,users,suid,dev,exec$OPT;
省4
202: 2006/10/19(木)14:45 ID:NByMOkR/(12/13) AAS
あ、skip する '') はシングルクオートが二つです。ここは "")でもいいです。
それと8行とは言っても、get_codepage関数(または show_codepage関数)が必要だから全部で16行ですね。
205: 2006/10/19(木)15:19 ID:NByMOkR/(13/13) AAS
>>201
すみません。あせってまちがえました。正しい流れはこうです。

case $FS in
'' ) ;; # skip when $FS is null
swap ) fstab_update_line $FSTAB~ $DEVICE swap swap defaults ;;
* ) case $FS in
ntfs ) OPT=",ro,nls=${IOCHARSET:-utf8}" ;;
省5
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.028s