【HTML】StrictなHTMLのBBSを作ろう【Perl,PHP】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/11/27 10:29:37ID:???strictの種類としては、html4.01.XHTML問いません。
書き込みに対し、どのような処理を与え、どんな結果を出すことが望ましいか、
そのコードはどんな風にすればよいか、を話し合うスレです。
参照スレッド
Strict-HTML スレッド25@Web制作
http://pc5.2ch.net/test/read.cgi/hp/1101043958/l50
0243241
04/12/03 01:19:30ID:???今さらで申し訳ないんだが、空白後に「・」の場合は?
現状どこぞの掲示板に書き込むときはインデント代わりに空白入れたりしちゃってるが、
>240のサンプルだとそれは反映しない設定になってるよね?
・リスト1
・リスト2
2chとかにリストを書き込むときこんな感じで(自分内整形)書くことがあるんだけど。
0244nobodyさん
04/12/03 01:29:04ID:???空白1つとは限らないしなぁ。
そこ難しいところかも。
0245nobodyさん
04/12/03 04:00:15ID:???0246nobodyさん
04/12/03 07:06:23ID:???全角スペースまで無視しちゃうと、AAが貼れなくなるわけだが。
0247nobodyさん
04/12/03 11:32:40ID:???0249nobodyさん
04/12/03 18:36:04ID:???いつの時代だよ・・・
0250120
04/12/03 20:17:14ID:???というWebProg側の主張を”実演”したつもりなんだが、ちゃんと伝わっただろうか…。
この反応の薄さは成功したと見て良いのか…あるいは単に人が少ないだけか(笑。
>>243行頭の半角/全角空白はリスト判定時には無視するようにしてみた。
>>246リスト判定から外れれば空白も残るよ。
---------------------
・リスト。
・リスト。
・・・・テスト。
---------------------
<ul><li>リスト。</li><li>リスト。</li></ul><p> ・・・・テスト。</p>
---------------------
AAについては…まあよく考えておくれ。
0251120
04/12/03 20:19:23ID:???しまった、空白が消えてしまった…。
全角で書き直し。
---------------------
・リスト。
・リスト。
・・・・テスト。
---------------------
<ul><li>リスト。</li><li>リスト。</li></ul><p> ・・・・テスト。</p>
---------------------
0252nobodyさん
04/12/03 21:44:30ID:???という疑問が…。
0253nobodyさん
04/12/03 22:15:28ID:???0254nobodyさん
04/12/04 11:57:26ID:???もし実用公開されたらサポート掲示板として使わせてもらうよ。
0255nobodyさん
04/12/04 17:26:55ID:???これでもリスト判定されるみたい。
------------------------
>>・テスト1
>・テスト2
------------------------
<blockquote><blockquote><ul><li>テスト1</li><li>テスト2</li></ul></blockquote></blockquote>
------------------------
<strong>や<em>は利用者にタグを書かせれば良いんでない?
0256nobodyさん
04/12/04 21:21:11ID:???><strong>や<em>は利用者にタグを書かせれば良いんでない?
掲示板でHTMLの話をする場合、<strong> と書かず <strong&gt;
と書かなきゃならなくなるのか?
0257nobodyさん
04/12/04 21:52:27ID:???'<' => '<', '>' => '>'
0258nobodyさん
04/12/04 21:54:55ID:???0259nobodyさん
04/12/04 21:55:43ID:???0260120
04/12/04 23:51:15ID:???http://rain.s88.xrea.com/strictbbs/
HTML変換部分のソースを切り出したり、色々変更。
>>255のも修正されたはず。
<em>や<strong>は…どうだろうな。
日本語としても適当な表記があれば良いんだが、
「」とかは用法が広すぎるし…。
0261nobodyさん
04/12/05 02:34:15ID:???「!」が使われてる部分を強調すると言うのはどうだろうか?
------------------------
テスト!
テスト,テスト!
テスト、テスト!
テスト。テスト!
テスト!テスト。
------------------------
<p>
<strong>テスト!</strong><br />
テスト,<strong>テスト!</strong><br />
テスト、<strong>テスト!</strong><br />
テスト。<strong>テスト!</strong><br />
<strong>テスト!</strong>テスト。
</p>
------------------------
でもこれだとAAを書く時問題が出そう…。
0263nobodyさん
04/12/05 12:12:49ID:???AAは無しでいいじゃん・・・
body {font-family:○○; /*MS Pゴシックなどに*/
}
0264nobodyさん
04/12/05 12:28:50ID:???もしそれを実装するなら>>255も実装出来ると思う。
<select name="" tabindex="">
<optgroup label="通常投稿用">
<option value="1"><strong>,<em>タグ有効</option>
<option value="2"><strong>,<em>タグ無効</option>
</optgroup>
<optgroup label="AA用">
<option value="3"><pre>で書く</option>
<option value="4">段落まで<pre>で書く</option>
</optgroup>
</select>
0265nobodyさん
04/12/05 16:48:27ID:???0266nobodyさん
04/12/05 16:48:45ID:???0267nobodyさん
04/12/05 21:40:53ID:???0268nobodyさん
04/12/05 23:08:25ID:???0269nobodyさん
04/12/06 00:11:06ID:???0271nobodyさん
04/12/06 06:18:43ID:???利用してくれるとは思えないんだよね。実際に使うのはBBSの管理人
だけになりそうな予感。
0274nobodyさん
04/12/07 17:22:26ID:???結構大変なのかな…
0275120
04/12/07 21:59:03ID:???とりあえず>>270、「選ぶ」ためには予め全部作っておく必要があることを忘れないでくれよ。
…実業務でも往々にしてある構図だな、これ(苦笑。
それとPRE(AA用のブロック?)とかって、結局どんな処理を期待してるの?
要するに改行をそのまま表示する(段落区切りと見なさない)ってこと?
それだけなら、まあそのまま素直に実装するけど…。
あと困ってると言ったのは、<em>とか<strong>とか置換する際の問題。
平たく言えば、書き手を信じて単純に置換すると
<strong><em></strong></em>こうなりかねない、ってこと。
完全に対処するためにはもう一段階解析を細かくしなくちゃいけないんだけど、
流石に面倒になってきた。適当な妥協策を探るか、覚悟を決めて書き直すか…。
0276nobodyさん
04/12/07 22:17:24ID:???> それとPRE(AA用のブロック?)とかって、結局どんな処理を期待してるの?
> 要するに改行をそのまま表示する(段落区切りと見なさない)ってこと?
じゃなくて、
連続スペースは無視しようぜ→じゃあAAは?→AAはpreで括ろうぜ
ってだけの話で、preにする理由はそんな流れ。
0277nobodyさん
04/12/07 22:41:28ID:???0279nobodyさん
04/12/07 23:04:02ID:???ないよりあったほうがいいと思う。
0281120
04/12/07 23:34:50ID:???>>276とりあえずAAを書く上での問題が連続スペース「だけ」なら、
現状でも特に問題はないはず。
デフォルトで空白は保持されるから。
一方で、普通PREという名称でイメージする領域、
つまり連続改行による段落区切りを無効にした領域が
別に必要なんですか?
もしくは強調などのインライン要素置換をも
無効にした領域(それをPREと呼ぶべきかは知らない)がご所望ですか?
と訊いたのが>>275
…ついでに
「重要度に関わらず、とりあえず選択式で」ってのは勘弁してくれ、とも言ってるわけだが(笑
0282nobodyさん
04/12/07 23:36:28ID:???0283nobodyさん
04/12/07 23:46:25ID:???> デフォルトで空白は保持されるから。
保持しないオプションつけてくれ、はスルーされるわけね。
連続スペースは気持ち悪い。
0284120
04/12/08 22:21:13ID:???http://rain.s88.xrea.com/strictbbs/clrea/parse.php
ソースはまだぐちゃぐちゃだが、動くことは動くはず。
<pre>と</pre>に囲まれた領域では、全ての改行が単純に<br />に置き換わる。
インライン要素置換は起こらない。勿論リスト引用等々も機能しない。
あとインライン要素置換のテスト用に<em>を実装しておいた。
作ってから気付いたけど、tag-map.iniで
preformatted=<pre>%CONTENTS%</pre>
となってるのを
preformatted=<pre><code>%CONTENTS%</code></pre>
にすればソースコード用に、
preformatted=<p>%CONTENTS%</p>
にすればAA用になるな、これ。
排他使用でも良いけど、どうせなら複数同時に使えれば平和になりそうな気がする。
0285120
04/12/08 22:22:24ID:???それは設置時のオプションとして、ってことだよね?
確かに、<pre>を実装するとなると空白の扱いくらいは
設置者のポリシーとして設定できた方が良いかも知れないな。
ちなみに「空白を保持しない」ってのは
「連続する半角/全角空白を半角空白1つに置き換える」くらいの意味でOK?
0287nobodyさん
04/12/10 18:52:57ID:???0288nobodyさん
04/12/10 22:50:16ID:???仕様かも知れないけど一応報告。
------------------------
<pre>
テスト
</pre>
------------------------
<pre><br />テスト<br /></pre>
------------------------
あと、
1 文字
2 文字
3 文字
みたいに連番になると<ol>なんてどうかな……?
0289nobodyさん
04/12/11 20:56:51ID:???* foo
* bar
* baz
みたくするとulでリスト化するとか
0290289
04/12/11 20:57:41ID:???スマソ
0291nobodyさん
04/12/11 21:39:47ID:???0292120
04/12/13 21:02:49ID:???http://rain.s88.xrea.com/strictbbs/clrea/parse.php
PRE系統のタグが複数同時に使用できるようになった。
デフォルトでは<pre>と<AA>が使用可能だが、カスタマイズも可能。
(方法については別途実験用のラウンジにでも詳述しておく)。
あと空白の扱いと<pre>系タグの使用許否も設定できるようになった。
/StrictBBS/config.php
内の定数で設定する。例えば
define('PRESERVE_WS', false);
にすれば、連続する全角/半角空白とタブは半角空白1つに置換される。
またこの設定は実際の変換時にダイナミックに変更することも出来る。
上URLで実演しているので試してみて欲しい。
0293120
04/12/13 21:10:23ID:???それはずばり仕様。
中途半端に改行を削ったりすると意味が無くなってしまうので。
あと<ol>については、<ul>以上に書き方のバリエーションが
ありすぎるので保留にしている。
0294nobodyさん
04/12/14 01:06:25ID:???> あと<ol>については、<ul>以上に書き方のバリエーションが
見当違いだったらごめん。バリエーションって、ナンバリングのスタート地点とかのこととかかな?
だったら、type属性もstart属性もvalue属性もcompact属性も非推奨だから気にしなくていいと思うよ。
strictBBSなんだし。
0295nobodyさん
04/12/14 02:47:27ID:???見当違いとかいう以前に、非推奨の意味を誤解していないか?
HTMLで見かけを指定する要素が非推奨という意味は、標準の見かけだけを
考えればいいということではなく、見かけが違っても本質は同じものなら
本質の方だけを考えろという意味だよ。見かけはいくらでもあり得るわけ。
つまり、非推奨だからこそ、よりバリエーションがあり得るんだけど。
0296nobodyさん
04/12/14 10:47:42ID:???> つまり、非推奨だからこそ、よりバリエーションがあり得るんだけど。
ごめん。意味がわかんない。
非推奨は実装しなくていいんだからそれによって増えうるバリエーションはない、ってのはあってるよね?
0297nobodyさん
04/12/14 12:18:32ID:???そこが違ってるんだって。例えば、
1. ぬるぽ
2. がっ
i. ぬるぽ
ii. がっ
この2つは数の表示方法が違うけど、本質的な論理構造は「ぬるぽ」と
「がっ」がこの順序に並んだリストという意味で全く同じものを表している。
だから本質的でない見栄えの違いをtype属性などで指定したりはせずに、
<ol><li>ぬるぽ</li><li>がっ</li></ol>
と、どちらも本質部分だけを書こうというのがStrict。それをおまいさんは、
上のリストが推奨で下が非推奨と誤解していないか?…と。
0298nobodyさん
04/12/14 13:17:38ID:???先頭に少数付きの数字を書きたいときに競合するか。ふーむ…。
0299nobodyさん
04/12/14 14:18:39ID:???0301nobodyさん
04/12/14 20:42:16ID:???ttp://www.htmlhelp.com/ja/reference/css/classification/list-style-type.html
0302120
04/12/14 21:03:41ID:???<ol>のバリエーションってのは単純に、
1. 2. と書く人もいれば I. II. と書く人も i. ii. (1) (2) 1、2、等と書く人もいるから難しい、
というだけの話。
これだけ多くのバリエーションがあると、全てに対応するのはまず無理だ。
かといって>>298が言うような限定的な実装をすると、本当に使われるのかどうかが疑問になってくる。
そのあたりうまい妥協点が見出せないから、実装の手間も考えて保留中、ってこと。
0303nobodyさん
04/12/14 23:16:15ID:???0304nobodyさん
04/12/15 17:39:11ID:???書き込まれ方、って話?
そんなのは「引用の場合は文頭に「>」を」というのと同じで、ルール作っておけばいいでしょ。
「iiにしたい」と思う書き込み人のことを考慮する、ってのはstrictBBS的な発想じゃないし。
数字のタイプはページ管理者の一存でいいでそ。
0305nobodyさん
04/12/15 19:36:37ID:???iiだろうが2だろうがolはolであって、どう見栄えをコントロールしようかなんて話にはなっていないが。
0306nobodyさん
04/12/16 00:55:37ID:???> そうじゃなくて、olにしたいけどどの書き込み方法を実装しようか、って話だろ?
だから、「いずれか一種類にする」でいい、と言ってるわけでしょ。
>あと<ol>については、<ul>以上に書き方のバリエーションが
この言い方ではいろんな書き方をカバーするつもりととれるから。
0308nobodyさん
04/12/16 15:20:40ID:???仕様に従わない人には使えない機能、で割り切るしかないんじゃないの?
だってこう書けば強調になる、に従わない人の強調の書き方までサポートできないでしょ?
それと同じだと思うんだけど。
0309nobodyさん
04/12/16 15:57:01ID:???んなことを言い出したら、
「閲覧者が入力した内容を可能な限りStrictにマークアップ」
という最初の命題なんぞ投げ捨ててしまうことになりかねんが。
実際問題不可能なことは不可能で仕方がないとして、
対応策がどうしようもなく広がるものでなければ検討する価値はあると思うんだがなぁ。
強調を ** で挟んだり文字間空けるなんてのじゃ追いきれないもんだが、
文頭に算用数字(アラビア、ギリシャ)か漢数字か全角か半角か、
っていうのは最初っから割り切っちゃうほど難しい実装かねぇ。
0310nobodyさん
04/12/16 17:10:28ID:???> 「閲覧者が入力した内容を可能な限りStrictにマークアップ」
> という最初の命題なんぞ投げ捨ててしまうことになりかねんが。
そんな主旨があったのか。
俺が提起して、スレ立て(失敗して代わりに立ててもらった)んだが、
そんな意図はまるでなかったよ。
strictな記述が可能な掲示板を作ろう、であって、
書き込んだ人の意図を「エスパー的に汲んで」StrictなHTMLとして吐き出す、というものなんて作れるわけない、と思うわけで。
0311120
04/12/16 18:18:56ID:???とりあえず(半角/全角数字+区切り文字)だけ実装してみた。
区切り文字として使用可能なのは
1,全角コンマ
2,半角コンマ
3.全角ドット
4.半角ドット
5、全角読点
半角全角・区切り文字は混在可能。上の5つは1つのリストになる。
ただし数字は1から始まり、連続していなければならない。
今回結構変更点が大きいので、色々試して欲しい。
特に<ul>との組み合わせとか。
0312120
04/12/16 18:20:03ID:???俺は少なくとも「ほとんど何も考えなくても使える」ものを作っているつもりだったが?
掲示板に書き込む人全てがHTMLに明るいわけじゃない。
そういう人が何も考えずに書いたとしてもある程度妥当なマークアップになる、
という部分こそが”HTMLの簡便記法”に過ぎないWikiとの違いじゃないのか?
で、日本語で個条書きを書こうと思ったら8〜9割の人間は・を使うだろう。
一方順序リストの場合はそうはいかない。
だからどの程度サポートすればOKか議論してくれまいか。
俺としては漢数字ローマ数字あたりはかなり面倒くさいので半角/全角くらいで勘弁して欲しいが、
いやどうしても必要だ、と結論されれば何とか挑戦してみよう、
てのが今の話。
0313nobodyさん
04/12/16 20:03:45ID:???0314nobodyさん
04/12/16 20:05:33ID:???2チャンネルは今日で
3回目です。
0315nobodyさん
04/12/16 20:47:04ID:???IIで始めてドラクエをやりました
IIIが一番の傑作だと思います
0316nobodyさん
04/12/16 23:11:29ID:???ピリオドかコンマ入れてるんじゃないかな。
統計でも取らなきゃわからんなこんなもん。実質無理だw
印象だけで語ると偏りやすいからどんどん意見きぼん。
0317nobodyさん
04/12/17 13:57:08ID:???0318nobodyさん
04/12/18 00:01:35ID:???・2
・3
・4
・か・でリスト化だが、もしその後に数字があったら…とかしても
・12345
・いろはにほ
・ABCDE
とかされたら困るな
0319nobodyさん
04/12/18 00:07:55ID:???0320nobodyさん
04/12/18 00:15:55ID:???!2
!3
はどうかな。
0321320
04/12/18 00:16:53ID:???ナンバリングを書き込み主に決定させる必要は無いわな。
!だけで充分かも。
0322nobodyさん
04/12/18 00:31:25ID:???0324nobodyさん
04/12/18 00:49:56ID:???0326nobodyさん
04/12/18 02:17:51ID:???(強調とかはそう実装されてるけど、平常の文で強調を示す記号なんかはないからなぁ)
0328nobodyさん
04/12/18 15:17:43ID:???投稿者の投稿した本文をなす プレーンテキストをStrictHTMLに変換すること
になってきているわけだが、
そ も そ も
その解法があるならHTMLの存在意義がないということを心しておけ。
本格的にマークアップすることは 投稿される本文が ただのプレーンテキストなら 困難だ。
しかし、ただのプレーンテキストでなく、何らかの記法に依存したもの(wikiのように)すると、利便性が低下する。
つまりは>>326の質問に対する答えが設計方針に多大な影響を与えることになる。
0330nobodyさん
04/12/18 17:02:27ID:???HTMLの存在意義がなくなる?アホかお前は。
0331nobodyさん
04/12/18 17:14:21ID:???多分言いたいことは、「そんな方法があるなら著者がマーク付けを施す、なんて作業は要らなくなる」ということなんだろうね。
0332nobodyさん
04/12/18 18:53:06ID:???その辺のBBSはStrictとうたっていてもbrで空行作ってるからな。
0333nobodyさん
04/12/18 19:30:01ID:???こんだけじゃん
0335120
04/12/18 22:51:41ID:???とりあえず<ol>の実装は現状でOKと見なさせてもらおう。
(特別な記法を用いないという前提での話だが)
さてこれで
・段落<p>
・引用<blockquote>
・順序無しリスト<ul><li>
・順序付きリスト<ol><li>
・整形済み領域<pre>/大型アスキーアート領域
に対応したわけだが、他に何かある?特にブロック要素で。
無ければ既存の掲示板への組み込み作業について考えていこうと思うんだけど。
0336nobodyさん
04/12/18 22:57:43ID:???完成期待。
0337nobodyさん
04/12/24 02:59:07ID:vKtSVU0R年末だから仕事忙しいのかな?
0338nobodyさん
04/12/26 02:14:05ID:???0339nobodyさん
04/12/28 21:55:48ID:???0340nobodyさん
04/12/28 22:46:51ID:???0341nobodyさん
04/12/29 03:29:03ID:???0342nobodyさん
04/12/29 09:52:46ID:???■ このスレッドは過去ログ倉庫に格納されています