[Squeak-ja: 2450] Re: MacOSX で FileDirectry fileNames の全角数字が半角になる

Tetsuya HAYASHI tetha @ st.rim.or.jp
2005年 5月 20日 (金) 15:14:05 JST


高橋さん、林です。どうも。
さっそくのチャレンジがんばってください。

ところで、試しに先日出た 3.8 final のイメージでVM 
ソースを生成して
みるとどうでしょう?

http://box1.squeakfoundation.org/files/3.8/Squeak3.8-6665.zip

# そういえば、VM ソースは source forge から  
subversion に移動して
# たのでしたっけ。
# 失念してました(お恥ずかしい)。

On 2005/05/20, at 10:51, Kouji takahashi wrote:

>
> subversionのインストール、platformsのdownload
>  svn co http://squeak.hp1.hp.com/sbn/squeak/trunk
>
> Squeak3.7+5989-fullをdownload。
> SqueakMap で VMMaker3.8b3 とBaloon3Dをインストール
> (Tim Rowledgeさんのサイトが 500 Internal Errorで 
> accessできないので
> VMMakerは 3.8b3 以外はインストール不可でした。)
>
> platforms:Mac OS の specialChangeSetsをInstall
>
> VMMakerでsrc作成、Gnuify
>
> config.h
> aio.h
> interp.h
> が必要そうなので32bit VM用に適当に(RISC OSなどから) 
> pratforms:Mac OS:VM にcopy(おいおい)
>
> ビルド→error
>
>  ではでは
>
> At 19:45 05.5.18, Tetsuya HAYASHI wrote:
>
>> 高橋さん、こんにちは
>> みなさん、どうも
>> 林徹也です。
>>
>> On 2005/05/18, at 16:21, Kouji takahashi wrote:
>>
>>
>>>  高橋@池袋です。
>>>
>>> MacOSX(10.3.9)上の Squeak 3.7.3Bete4jpc.app で
>>> fileNameを取得すると全角数字が
>>> 半角数字に入れ替わってしまうようです。
>>>
>>
>> 私のところの Tiger (10.4.1) と Squeak
>> 3.8.6Beta6.app でも同じ問題が
>> 確認できました。
>>
>>
>>> 例)本来のファイル名 取得されるファイル名
>>> × test1.txt → test1.txt
>>> × テスト1.txt → テスト1.txt
>>> ○ test1.txt
>>> ○ テスト1.txt
>>>
>>> ファイル・リストで上記のような名前のファイルを含むフォルダを見
>>> るとファイル名は半角数字で
>>> 表示され、×印のファイル名では下側paneに内容表示をさせよ
>>> うとするとデバッガが起動します。
>>>
>>> image側の問題では無く
>>> FileDirectry>>primLookupEntryIn:index: のレベルで誤ったファイ
>>> ル名が返っているようです。
>>>
>>
>> ご指摘の通り、これは、VM の問題かと推察されます。
>> Carbon Squeak VM は、ディレクトリのエントリを取得する際に、古い
>> APIを
>> 使ってるので内部的に UTF-8 <-> ShiftJIS と相互に変換し 
>> て動
>> いており、
>> さらに、UTF-8について Apple では  
>> decomposed な
>> ものを用いてる関係から
>> 起きてる問題ではないかと思われます。
>>
>> 今手元で確認できないのですが…
>> もし、よければどなたか、VM ソースの中の
>> CFStringNormalize 関数で引数
>> の定数を以下のように
>>
>> kCFStringNormalizationFormKC
>>      → kCFStringNormalizationFormC
>>
>> kCFStringNormalizationFormKD
>>      → kCFStringNormalizationFormD
>>
>> 変更してビルドしたものだとどうなるでしょうか?
>>
>>
>> --
>> Tetsuya HAYASHI <tetha @ st.rim.or.jp>
>> PGP: 5C 7D 4C 07 DA 73 74 C4  1F 6D 87 EE FD 09 0D FE
>>
>
>
> -------------------------------
> ^. .^    Kouji Takahashi  <tako @ aquilax.co.jp>
>  ='=     Tel +81-3-3986-4834    Fax +81-3-5992-0792




--
Tetsuya HAYASHI <tetha @ st.rim.or.jp>
PGP: 5C 7D 4C 07 DA 73 74 C4  1F 6D 87 EE FD 09 0D FE




Squeak-ja メーリングリストの案内