-
Notifications
You must be signed in to change notification settings - Fork 4
/
263.txt
53 lines (42 loc) · 3.04 KB
/
263.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#?SuikaWiki/0.9
- Subject: 正しい HTML の出力
- Priority: high
- Status: closed
- Category: WikiView
- Creation-Date: 2003-08-09T01:05:30+00:00
[1]
[14] : [[名無しさん]] : 2002-12-06 (金) 14:43
今の SuikaWiki では高い確率で正しい HTML を出力しません。
しかも、 [[ruby]] 要素を追加した時点で[[文書型宣言]]も[[注釈]]化しました。
-将来的目標として、 [[XHTML]] 適合を目指す。
-短期的目標として、 [[HTML4]].01 Transitional 適合を目指す。ただし ruby 使用時を除く。
-特定 [[UA]] 向け [[downgrade]] (See [[SuikaWiki:内容折衝]]) 時には対象
UA が正しく扱えることだけを目指し、必ずしも [[W3C]] 仕様に適合しなくても良い。
だけど、 [[YukiWiki]] 由来の今の parser のままで HTML 4.01 Strict
は無理だろうなー。
[22] >>14 SuikaWiki/0.9 の HTML 出力が関係しない編集とかの一部モードでは、相手が
[[Mozilla]] なら [[XHTML]] を吐くようにしました。 ([[Accept:]] 欄は今はまだ見てません。
[[User-Agent:]] で判別中。)
[41] : [[わかば]] : 2003-05-31 11:51
[[SuikaWiki::Markup::XML]] が思いのほか使える(謎)ので、
>>14 の roadmap は変更ね。
=とりあえず[[整形式]]な HTML を出力できるようにする
=- 既に8割方は完了済み。
=- プラグインの整理と並行してるからちょっと時間がかかるかも。=まともな XHTML になるようになんとかする
=- [CODE(HTML)[[[p]] 要素の中に [CODE(HTML)[[[form]]]] 要素が入る問題とかを何とかする。
= [[conneg]] をなんとかして、 [[XHTML2]] 出力 mode をつくる
=- XHTML 2 mode では独自の語彙をばしばし使う方向で。
=--まだ出来てない wikipage へのリンクの「?」とかも CSS で出す。
=--[[RDF]] の埋め込みとかも出来るようにする。
=--CODE(HTML) を somewhat:html みたいに要素型にしてみるとか。
=- navigation bar や toc は client 側 script で生成させる。
[42] : [[わかば]] : 2003-05-31 11:52
もっとも、予定はあくまで予定だからね:)
[43] SuikaWiki 3 はほとんど必ず整形式を出力できます。
それ以上 (妥当とか [[Strict]]) は機械的に実現するのはほとんど無理なので、
WikiPlugin module を書くときに注意する + 運用で頑張るということで。
[[SuikaWiki/0.9]] 文書はどうしても仕様上、
[CODE(HTMLe)[[[form]]]] が不適当な文脈
([[行内要素]]の中とか) に出現してしまうことを簡単な方法で保証できません。(運用で回避できますが。)
将来のマーク付け言語の設計では注意しないといけません。
[[#form:'%submit(label=>書き込む); %text(label=>"名前 : ",id=>name,size=>"9.5"); %text(label=>"メイル: ",id=>mail,size=>9.5);%n;%textarea(id=>msg,size=>35,lines=>5);':'[%index;] : %name;%text(source=>mail,prefix=>" [",suffix=>"]"); : %date;%n;%n;%text(source=>msg);%n;':'%require(msg);']]