以下Squeak 2.3の場合で説明します。6つの簡単なステップで完了します。
Squeakを手にいれてください。最新版は2.3です。
SwikiはHTMLの自動生成をする際に特定のディレクトリ下のテンプレートファイルを参照します。テンプレートは自作も可能ですが、とりあえず出来合いのものを入手しましょう。
http://guzdial.cc.gatech.edu/st/Swiki-GuzPWS2.tar (Win,Unix)
http://guzdial.cc.gatech.edu/st/Swiki-GuzPWS2.sea (Mac)
からダウンロード!!
サーバが非常に重いので注意してください。
コピーをおいています(Swiki-GuzPWS2.tar, Swiki-GuzPWS2.sea -バージョンが古くなるかもしれませんが悪しからず )
以下は Windowsで、上記ファイルをC:\lang\Squeak\Server の下に展開したとします。
swiki というサブディレクトリに幾つかのhtmlテンプレートが展開されます。
なお、日本語訳したテンプレートファイルを ここ においています。本家のファイルの代わりに使うことで、日本語による使い方の案内、日本語文字列の取り扱いが可能になります。よろしければお使いください。
Squeakを起動し、ServerAction class >> serverAction メソッドを修正します。
(個人的にはクラス変数で設定できるようにしてほしいですが。。)
以下のようにプラットフォーム固有の形で書きます。
serverDirectory ^ 'C:\lang\Squeak\Server\'
最後のセパレータ(Windowsの場合は\)もお忘れなく。
で"accept"してください。
ワークスペースで、PWS initializeAll と"do it"します。
今までの設定が正しければ特に文句は言われないはずです。
serverDirectoryのパスが間違っていた場合、警告ダイアログと修正用ブラウザが立ち上がるので修正、"accept"してください。
SwikiAction setUp: 'swiki'. と"do it"します。これで、Swikiサーバにswikiという名前のWikiディレクトリが登録されたことになります。ディレクトリがSwikiサーバの管理下におかれ、そのディレクトリをトップにWebブラウザ上からのページ編集、追加が可能になったことを意味します。
ワークスペースで、PWS serveOnPort: 8079 loggingTo: 'log.txt' と"do it"します。
ポート番号、ログのファイル名は御自身の環境にあわせて適当に修正してください。
あとは、Wikiの機能を満喫するだけです。存分にWebブラウザ上からすべてのコンテンツの編集、追加、検索を行ってください。 URLは、上記設定の場合では、http://Swikiの立ち上がっているサーバ名:8079/swikiとなります。
以下のような画面イメージとなります。(テンプレートファイルをカスタマイズすればもっと派手なページにできます。が、知識共有のグループウェアとして使う実用を考えるとこれくらいがいいのかもしれません)
デフォルトではサーバディレクトリ以下にswikiというサブディレクトリが作成されているだけです。
これをそのまま使用してもかまわないのですが、やはり自分用のwikiを作成し、そこのページが書きかわるようにしたほうが、今後の拡張性、メンテナンス性も確保できます。
まずサーバディレクトリ以下に適当な名前のサブディレクトリを作成します。これが自分用のWikiの名前になります。
ここでは仮にmyswikiとします。(例ではe:\lang\Squeak\Server\myswikiを作成)
次にSwikiサーバに新たなWikiディレクトリを登録します。
ワークスペースでSwikiAction setUp: 'myswiki'. と"do it"してください。
あとは、http://Swikiの立ち上がっているサーバ名:8079/myswiki というURLでアクセスするのみです。
Headlessとは、画面をださない状態でSmaltalkを立ち上げることを指します。Squeakを開発環境でなく、単なる実行環境、Wikiサーバとして使う場合にはこのほうが便利でしょう。
Squeak.exe -headless squeak.image
また、Windows-NTの場合は、いったん下記のような形で実行することによって、NTのサービスとして登録することが可能です。
Squeak.exe -service: "Swiki" squeak.image
Squeakが立ち上がると自動的にSwikiが開始されるようになっていると便利です。デフォルトでは立ち上げるごとにワークスペースで、PWS serveOnPort: 8079 loggingTo: 'log.txt' と"do it"する必要があります。
SystemDictionary >> processStartUpList の最後にSwiki実行の文を追加します。
PWS serveOnPort: 8079 loggingTo: 'log.txt'
Squeak2.4からは、スタートアップの仕組みがより洗練されました。以下の方法に従ってください。
Swikiはサーバ側でページのファイルを作成していきますが、ページ間のリンク情報はオンメモリにあり、デフォルトではSqueakを再起動した場合にはリンクが無効になってしまいます。
Swikiには、ファイルからリンク情報をロードし、回復する機能が備わっています。そこでSqueak再起動時にこの機能が動作するようにします。
3で示しました再起動時に呼ばれるメソッド(SystemDictionary >> processStartUpList または SwikiStartUp class >> startUp )に以下の文を追加します。(PWS serveOnPort: 8079 loggingTo: 'log.txt' の前です)
(PWS actions select: [ :action | action isKindOf: SwikiAction ]) do: [ :action | action restore: action name ].
3.4まとめたSwikiStartUpの実装を置いておきました。ダウンロードしてお使いください。
Swikiのバイナリを入手することもできます。お気軽に、Wikiの機能を自分のサイトで使いたいというかたはこちらでもいいでしょう。
なお、これは正確には、上記Swikiに管理用のユーティリティを加えたものの、バイナリ版です。現時点(1999/1/25)でバイナリは、Squeak2.2で作成されており少し古くなります。
最新のSqueakで動くものがいい、管理ツールのみSwikiに追加したいというかたはソースのほうを入手し、Squeak内にファイルインするようにしてください。
ともあれこのバイナリ版を使えば環境のセットアップも含め、すべてWebブラウザ上から操作することができます。Smalltalkをまったく知らなくとも、Swikiを動かすことが可能になります。
Squeakを手にいれてください。古いほうの2.2です。
2.2のバーチャルマシン (SqueakBeta.exe) とソースファイル(SqueakV2.sources)をダウンロードしてください。
Squeak2.2.images、Squeak2.2.changes、readme.txtのファイルに展開されます。
これらのファイルが何なのか気になるというかたはぜひHappySqueakingを見てください。
カラフルな画面が立ち上がりますが、とりあえずほっておきます。
以後はwebページ上の指示にしたがってください。