Posts tagged ‘fileman’

2008/04/07

[FileMan] VisualWorks版のFileMan

一部の人には人気の高い、ファイル操作ライブラリのFileManですが、VisualWorksに移植して、Public Store Repositoryに置きました。

これでファイルを扱うような処理において、SqueakとVisualWorks間の移植性が良くなりますよ。
まだMacやLinuxのVWで動作確認していませんので、その辺りは考慮の上でお使い下さい。

ところで、会社名の投票中 なので、興味のある方は、そちらもご参加ください。

記事を見てコメントする | 友だちに紹介する

広告
2008/02/16

[Squeak] デブサミ後夜祭 Squeaker達の何か with Scala

思ったよりも参加人数が多く、盛況のうちに無事終了しました。こうしたジョイント企画は、新たな人達との交流を図ることができるので良いですね。

発表者も予想よりも多かったため、時間については少し足りなかったように思います。私自身もFileManの発表を省き、またAIDA/Webなどの多くの実演を省くことになりました。

(FileManについて、のばしのばしですが、いつか発表しようと思います。興味のある方は資料をダウンロードしてください。わずか3クラスで作られているコンパクトで使いでのあるファイル操作ライブラリです)

またこのような機会をつくっていくので、よろしくお願いします。

記事を見てコメントする | 友だちに紹介する

タグ: ,
2007/10/28

[自由自在Squeak][FileMan] サンプルコードをまとめてBOM付きに

自由自在Squeakプログラミング」は、今から3年前に出た本です。当時はSqueakは3.6で、BOMなしUTF-8をソースとして読む仕様になっていました。現在はBOMつきを読むようになっています。

そのため当時のサンプルコードを最近のSqueak(3.8以降)で読ませるようにするにはBOMをつけるという変換を行わなければなりません。これを我らがFileManで行ったという話です。

まずはBOMを付ける処理です。SampleCodes以下のサブディレクトリ群以下にあるファイル全てについて、BOMを先頭に追加します。以前のファイルを消さずに、ファイル名に'.bom'を付けています。

dir := './SampleCodes' asDirectoryEntry.
bom := {16rEF. 16rBB. 16rBF} asByteArray.
dirs directoriesDo: [:dir |
dir filesDo: [:file |
binContents := file binaryContents.
dir binaryAt: (file name, '.bom') put: (bom, binContents).
]
].

どうやら変換がうまくいったようなので、'.bom'以外のファイルを全て消します。
rootDir := './SampleCodes' asDirectoryEntry.
rootDir allFilesDo: [:file |
(file extension endsWith: '.bom') ifFalse: [file delete]
].

次にファイル名をもとに戻します。
rootDir := './SampleCodes' asDirectoryEntry.
rootDir allFilesDo: [:file |
file rename: (file name copyReplaceAll: '.bom' with: '')
].

ということで、Squeakであればファイル操作も簡単にできますよ。

変換したサンプルは自由自在SqueakプログラミングサポートWikiに置いてあります。

記事を見てコメントする | 友だちに紹介する