工房らくだ舎へようこそ


W.S.O とは

W.S.O(うそ) は、perl で書かれた純国産 CMSです。 W.S.O を利用すると、当サイトのようなウェブサイトが簡単に構築出来ます。 W.S.O は無料でご利用出来ます。 W.S.O は、拡張パッケージの導入によって様々なコンテンツを簡単に管理出来ます。

高機能ブログツール Xlog を標準搭載しているので、すぐにブログを始められます。 Xlog はエントリーに予定や単語を関連づけることが出来る、データ拡張型ブログモジュールです。

ドキュメントは全く整備されていません。ごめんなさい。その代わり、利用者数が少ないので、使ってくださる方には出来るだけ個別に対応いたします。

最近の日誌

watchizuOldPngDL

らくだ

watchizuOldPngDL 1.00[text/plain:0kB]は、ウォッちずの旧サービスの png 画像をダウンロードできるようにする User JavaScript ファイルです。

導入すると、ウォッちずの索引図による検索画面のリンクが、旧サービスの画像への直接リンクになります。新サービスへのリンクが利用できなくなるので注意してください。

Opera の UserJS フォルダに保存してください。

更新履歴

2008-05-06
とりあえず公開。
このリソースの情報
日記:2842
2008年06月07日(土) 13:04更新
659閲覧
公開レベル 1

able-ruby

らくだ

Opera 用 ruby UserCSS

概要

ruby-on.css[text/css:1kB] は、 Opera で ruby 要素をそれらしく表示するためのユーザスタイルシートです。

更新履歴
2008-01-18
ruby-on.css[text/css:1kB] 公開。
このリソースの情報
日記:2797
2008年01月24日(木) 17:31更新
326閲覧
公開レベル 1

ポリドラ

らくだ

ドラえもん1024x768.gif[image/gif:175kB]

このリソースの情報
日記:2771
2007年12月18日(火) 13:23更新
398閲覧
公開レベル 1

開発日記

らくだ

測地系変換の方法

なんで ALPSLAB はいまだに東京測地系なんじゃ。と言うわけで、 ALPSLAB の地図を利用するために測地系の変換をする必要があったが、自分でやる気はしなかったので探してみたらいい物が落ちていた。

ありがたく使わせていただく。

2003年05月16日(金) WHOpPERLをXOOPS風にするいくつかのアイディア

んー寝坊だ。

XOOPSのstrict化はあまり進まない。あのサイトは独自サイトと言うより、相互交流の場に出来たらいいが、それほど亜季ファンが居ない現状では無駄か。

WHOpPERLをXOOPS風にするいくつかのアイディア
htmlのテンプレート化
CGIのアイディアとしてはありきたりだが、ファイル読み込みの増加とデータ解析で負荷が増大するデメリットが。
言語のテンプレート化
各国語に対応させる。って、でも、他の国の事情とかわかんねーし。テキスト解析の部分をモジュール化してとか?他の2バイト圏ってEUCが一般的?
html構造の一般化
(右)(右中左)(左)というテーブルレイアウト的構造をhtmlStrict的に再配置する。

2003年06月14日(土) オブジェクト指向

うーむ。スクリプトを一部オブジェクト指向化・・・やっぱりちょっと重たくなったのか。それから、ドキュメント構造を変えて、indexをcoverにするとか。。。。

って、オレナニやってんだ。一体。だめだ。全然。不経済な情熱φ(._.)

2005年04月22日(金) 更新ピング

W.S.O に更新ping送信機能を付けてみた。けど、ちゃんと稼働しているのかいまいち分からん。これがテスト

2005年06月29日(水)

XMLで表現。エントリーの統一。添付ファイルの組み込み。

メインのテーブル
  • ID
  • subject→serialに。同一名は「(\d+)」を付加
  • categories→subjectにlink
  • userID
  • group
  • open
  • text
  • updatetime
  • inserttime
  • url
オプション

その他のデータは拡張データとして任意に複数組み込む。

  • diary
    • diarydate
  • event
  • word
    • mean
    • etc

ニュース、辞書、スケジュールの統一。

<item id="item-0000001" subject="hoge">
<user>Fuga</user>
<word:mean>ほげなこと</word:mean>
<word:sound>ほげ</word:sound>
<event:DTstart></event:DTstart>
etc...
<text>
ほげふがほげほげ
</text>
</item>

= date:2006-05-13  複数サイトの運営
一つのシステムで、複数のサイトの運営。
*http://example.com/siteID/index.cgiでアクセス。
*スタイル、タイトル、アプレット、の管理。
*siteID,sitename,siteurl,cookiepath,keywords,author,basecategory,datatable,style
*image ディレクトリなどの設定・・・
*スクリプトファイルのコピー
*シンボリックリンクで・・・

?%

  1. !/usr/local/bin/perl

push(@INC,'../'); chdir '../'; require './index.cgi'; %?

このリソースの情報
日記:1517
2007年12月18日(火) 10:46更新
373閲覧
公開レベル 1

お知らせ

ユーザ認証に関して

最近、ユーザ登録される方がぼちぼちいらっしゃいますが、せっかく登録されても、認証されていない方が居ます。制限されたコンテンツは認証することによって閲覧可能になります。これらのコンテンツをご覧になりたい方は必ず認証するようにしてください。また、長いこと認証されていないユーザは予告なく削除することがあります。この認証は、ユーザのアドレスが有効なものかどうかを確認することによって、スパムを防止するために必要なプロセスですので、なにとぞご理解ご協力のほどよろしくお願いします。なお、認証は、登録時に送信されたメールに記載された URL にアクセスするだけです。

なお、ユーザ登録で収集した情報は、管理者がユーザと連絡を取る以外に利用することはありません。

このリソースの情報
日記:2565
2007年09月05日(水) 18:59更新
704閲覧
公開レベル 1

html でナビゲーション

らくだ

なんで html にはナビゲーション用の要素が用意されていないのか?今時のウェブページは、サイト内のいろんなページを行き来するように設計されており、そのためのナビゲーションメニューは不可欠だ。だけれども、現状の html ではそれを記述するための要素が用意されていない。なんでか?もともと html は文書を構造的に記述するためのもので、今のように複数のページを組み合わせてアプリケーションのように使うことは想定されていなかったから?でも、フォーム要素があるじゃん。フォームは文書構造とは何ら関係ないよね?フォームをナビゲーション用の要素と考えても良いのだろうか?では、サイト内のメニューを記述するような場合は、 a 要素ではなく、 form 要素で書くべきなんだろうか?それとも、うちがそうしているようにフォーム部品内にアンカーリストを書いたりしてナビゲーションとして表現しても良いのだろうか?多分、正解はないのだろう。私はこれが正解と思ってやっていこうと思う。

このリソースの情報
日記:2467
2007年04月15日(日) 23:31更新
309閲覧
公開レベル 1

サイト名のマークアップ

らくだ

長いことサイト名のマークアップは h1 でするものと信じてきたが、 なんか違うような気がしてきた。

ウェブサイト全体をあるテーマに沿ったひとつの文書としてとらえるならば、そのテーマをサイト名として h1 でマークアップするのは良いかも知れない。けれど、ブログなどのサイト名はたいていの場合、そのページの内容を説明するものではなく、サイト運営者の名前(企業・団体名など)、あるいは抽象的なフレーズである。言ってみればサイト名はページ著作者のエイリアス(別名)であることが多い。だったら、そのページの作成者などをマークアップするための要素 address を使えばいいんじゃなかろうか。

このリソースの情報
日記:2466
2007年04月15日(日) 14:13更新
340閲覧
公開レベル 1

DisOpenWinS

らくだ

概要

DisOpenWinS.js[text/plain:8kB] は、 Opera で、サイト側の都合によって新しいウィンドウが勝手に開くことを阻止するユーザスクリプトです。

更新履歴

2007-04-14
DisOpenWinS.js[text/plain:8kB] 公開。
window.open を書き換えるタイミングを、 document の load 時から、 document の click 時に変更。

〜続きがあります〜

このリソースの情報
日記:2116
2008年01月24日(木) 17:32更新
965閲覧
公開レベル 1

簡易整形記法について

らくだ

論理的な○○記法

  • 空行から次の空行は段落
  • 段落内の改行は無視
  • 複数の空行から、次の複数の空行は整形済テキスト
  • 改行によって終了の意志が示せる場合は終了記号を用意しない
  • リスト要素の入れ子は親要素の次の行頭にスペース文字を入れる
  • インライン要素はマークアップの方向性(開始と終了)を明示する
  • インライン要素のマークアップの開始記号は[\x20-\x3f]とする

○○記法のだめなところ

:hoge:fuga で定義リスト

dl 内に dt,dd は交互に、複数ずつ書けるはずなのに、1対1でしか書けないのは話にならん。 MediaWiki の ;dt\s:dd は良いが、 dd の子要素の記法が用意されていないのがだめ。

'''hoge''' で強調

開始と終了がわかりにくい。入れ子に出来ない。例えば、 '''hoge'''fuga'''hige''' とあったら、どこからどこまでマークアップしたらいいかわからない。

行頭にスペースで整形済テキスト

いちいち行頭にスペース入れるのめんどくさい。ものすごい長いコードとかどうすんのよ。整形済テキストは入力文字をそのまま表示したいのに、そこに関係のない一文字を追加するって意味不明。解析時に一行ずつ消すのか?行頭スペースで前の要素の子要素にする書き方と親和性が悪い。

[[〜]] でむにゃむにゃ

"[" が第2バイトなので、 Shift_jis 系で使えない。

| hoge | fuga | でテーブル

最後閉じる必要があるのか?ブロックレベルの場合、この手の記法で閉じる記号を用意する意味がわからない。冗長だ。

=hoge= で見だし

閉じる必要があるのか?上と同じく冗長だ。

○○は斜体、○○は太字

今時、斜体とか太字って・・・

**〜,++〜 などでリストの入れ子

リストに、リスト以外のブロックを入れ子にしたい時の拡張が困難な記法。

このリソースの情報
日記:2458
2007年12月14日(金) 21:49更新
349閲覧
公開レベル 1

ALPSLAB route に自前の画像を張りたい

らくだ

ALPSLAB routeに、地点情報書き込み機能を追加をもうちょっと発展させて、画像の URL を入力したら、ルートに画像を表示したり、あるいは画像(やページ)へのリンクになったりしないかな。そんなに難しい問題ではないと思うんだけど。 以前に書いた、 ALPS route に任意の画像を貼り付ける件がどうやら通ったらしい。まぁ、要望を出していたのは私だけではないだろうけど、 trackback の効果はそれなりにあっただろう。

実際に使ってみると、小さなマップ画面の中に、画像のサムネイルが表示される。うーん。どうせなら、画像へのリンクも生成してほしかった。しかも、バルーンが左上にないと、画像が flash の画面からはみ出して隠れてしまう。

それから、やっぱり Opera への対応がいまいちだ。前みたいにバルーンの文字化けはしなくなったけど、コメントが全部くっついてしまった。たぶん、改行コードとかの扱いに難があるんだろう。ルート作成時の、リソース食い尽くしも相変わらず。どうやら、画像の読み込みとポイントの×印の描画ルーチンあたりで、 Opera ではおかしくなるようだ。ので、何とかしてください。>開発者

このリソースの情報
日記:2412
2007年04月15日(日) 21:16更新
434閲覧
公開レベル 1

Google Maps API 2006年12月15日(金)

らくだ

Google Maps API で、遊んでやろうかなって思ったら、え? application/xhtml+xml では動かないの?マジで?つかえねー

このリソースの情報
日記:2397
2006年12月15日(金) 23:01更新
392閲覧
公開レベル 1

visibleAttribute

らくだ

概要

visibleAttribute.js[text/plain:4kB] は、普通は画面上には反映されない属性を可視化する、 javascript クラスです。

コンストラクタ

visibleAttribute(className)

className
新たに生成される要素につけられる class 属性の値。

メソッド

cite(element,imageData)
cite 属性を持つ要素名 element の要素の末尾に、 cite 属性へのリンクを、 imageData を src 属性に持つ画像で表示する。
datetime(element)
datetime 属性を持つ要素名 element の要素の datetime 属性を、 title 属性に加える。
title(element)
title 属性がツールチップ表示されない要素名 element の要素を、 span 要素で囲み title 属性を表示させる。

使い方

ファイルには、 Opera の UserJS として動作するスクリプトが同梱されています。ほかで使う場合は、クラスの部分だけを切り出して使ってください。

更新履歴

2006.11.10
visibleAttribute.js[text/plain:4kB] 公開。
このリソースの情報
日記:2365
2008年01月24日(木) 17:44更新
414閲覧
公開レベル 1

Takahashi メソッド 2006年11月09日(木)

らくだ

ある要素の文字サイズを、画面いっぱいになるようにする

function takahashiXY(element,size)
{
	var windowWidth		= window.innerWidth;
	var windowHeight	= window.innerHeight;
	var elementLength	= element.innerText.length;
	var imgSpace	= 0;
	var imgs			= element.getElementsByTagName('img');
	for(var i = 0,img;img = imgs[i];i++)
	{
		imgSpace = imgSpace + img.clientWidth * img.clientHeight;
	}
	var eleFontSize	= Math.ceil(Math.sqrt((windowWidth * windowHeight - imgSpace) / elementLength) * size);
	with(element.style)
	{
		fontSize	= eleFontSize + "px";
		lineHeight	= "1.2em !important";
	}
}

element
要素オブジェクト。
size
表示中のウインドウに対する element 要素の占有率。
このリソースの情報
日記:2363
2006年11月09日(木) 21:47更新
307閲覧
公開レベル 1

IE7 のバグ

らくだ

隣接セレクタ

ぶっとんだ。

なにかって、 IE7 のアホすぎる仕様に驚いた。

IE7 は隣接セレクタに対応したと謳っているが、うちのサイトではどうしても #hoge+#fuga な指定が反映してくれなかった。うちでは、以下のようにコメントをつけて、ソースを見やすくしている。

<!--~~hoge~~-->
<div id="hoge">
hogehoge
</div>
<!--__hoge__-->
<!--~~fuga~~-->
<div id="fuga">
fugafuga
</div>
<!--__fuga__-->

もしやと思って、コメントをはずしてみた。

・・・見事に隣接セレクタが反映された。

つまり、 IE7 では、コメントを要素として扱っている・・・かどうかは確認とれていないが、いずれにしても <要素 A><!--コメント--><要素 B> の時、 要素 A + 要素 B と言う指定は無視されるのです。もう、ほんとに、アホかと。

このリソースの情報
日記:2362
2007年12月15日(土) 12:11更新
733閲覧
公開レベル 1

ArrayCookie2

らくだ

概要

ArrayCookie2.js[text/plain:4kB] は、一つのキーに複数の値を保存する cookie を操作する javascript クラスです。

更新履歴

2006.10.26
ArrayCookie2.js[text/plain:4kB]を公開。
setArrayData,removeArrayData メソッドを追加。

〜続きがあります〜

このリソースの情報
日記:2117
2006年10月26日(木) 23:47更新
514閲覧
公開レベル 1

Usertime : 0.13 / Systemtime : 0.01