Javascript Workspace 開発用メモ todo: ダウンロード出来るようにする。 アーカイブ $ tar czv --exclude=.svn --exclude=README.txt --exclude='*.gz' -f jsworkspace.tar.gz js == How To Start リモート URL : http://metatoys.org/propella/js/workspace.cgi/Home ローカル URL : ローカル起動方法 (find-file "workspace.cgi") "先頭行のパスを変更" #!ruby #!/usr/local/bin/ruby $ /cygdrive/c/Program\ Files/Apache\ Group/Apache2/bin/Apache.exe (browse-url "http://localhost:8080/propella/js/workspace.cgi") == http://localhost:8080/propella/js/workspace.cgi/Tennis (browse-url "file:///C:/takashi/pub/ruby-man-ja-html-20051129/index.html") - workspace.cgi : サーバ用 ruby cgi - workspace.html : ruby cgi から抜き出した .js へのリンク先が違う。テスト用 - workspace.js : eval 用 todo: Javascript 自身を記述 todo: コンテキストメニュー作成 todo: prelude.js HTML 確認 http://validator.w3.org/check?uri=http%3A%2F%2Fmetatoys.org%2Fpropella%2Fjs%2Fworkspace.cgi%2FHome == 名前 SikiWiki ShikiWiki cowiki spellbook juwiki == prelude.js - workspace.cgi/prelude でアクセスすると編集フォーム。 - workspace.cgi/prelude.js でアクセスすると、内容のみ。 - 起動時に prelude.js を読む - デフォルトで、親ディレクトリの prelude.js を読むようになっている。 - 一番親の prelude.js には、必要な全てのコードがある。 - prelude.js 自体を Wiki で編集する際には、親の prelude.js が呼ばれる。 == javascript:typeof workspace.selectionEnd == タイトル文字について 材料: PATH_INFO 文字列 (/test/) タイトル文字列 test/ 表示するとき test/<wow!> 保存するとき test%2F%3Cwow%21%3E.txt 文字コードの変換も同時にやった。 $ ls | sed -e 's/\(%2F\)\(.*\)/nkf --utf8 \1\2 > \2/' | sh == * Javascript Workspace 日記: http://d.hatena.ne.jp/propella/20070131/p1 Smalltalk を知らない貧乏な人の為のワークスペースを作ります。 ワークスペースとは - 文字列を入力出来る簡易エディタです。 - 選択した文字列をプログラム片として実行する事が出来ます。 -- 実行後、特に何もしません。(do it) -- 実行結果を、カーソル位置の後ろに文字列として追加します。(print it) -- 実行結果を、別のウインドウ内に表示します。(print it) Smalltalk では、ワークスペースを使ってチュートリアルやドキュメントを、 その場で実行可能な形で提供します。ユーザは読むだけでは無く、自分で操作 したり値を変更する事によって理解を含める事が出来ます。 ワークスペースに必要な技術 - エディタ(入力フォームを流用) - 選択文字列の取得 - 選択文字列の実行 (do it) - カーソル位置の取得 - 実行結果をカーソル位置に追加する (print it) - 実行結果を別のウインドウに表示 - 出来たら実行結果を、文字列だけではなくイメージや書式付文字列で出力したい。 = リンク 選択範囲の取得 http://www.teria.com/~koseki/memo/xbselection/ http://www.akatsukinishisu.net/itazuragaki/js/get_selected_text.html http://d.hatena.ne.jp/koseki/20051023 ~ を使った説明 http://www.bazon.net/mishoo/articles.epl?art_id=1292 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dhtmltechcol/cols/dnwebteam/webteam12032001.asp http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/getbookmark.asp - http://www.ozzu.com/ftopic60019.html - http://www.webdeveloper.com/forum/archive/index.php/t-74982.html - http://www.theblueform.com/Home/TheMakingOf.aspx http://groups.drupal.org/node/1210 = ローカル開発情報 (find-file "c:/Program Files/Apache Group/Apache2/conf/httpd.conf") (find-file "../metatoysWeb/propella/js") に移動 (browse-url "http://localhost:8080/propella/js/workspace.cgi/Home") (shell-command "e http://localhost:8080/propella/js/workspace.cgi/Home") Alias /propella "C:/takashi/doc/metatoysWeb/propella" Options Indexes MultiViews ExecCGI AllowOverride All Order allow,deny Allow from all