- 追加された行はこの色です。
- 削除された行はこの色です。
今更ながらですけど、書式の定義について、[[ヘルプ]]に書かれてはいますが、今後を見越して再定義&論じていければなぁと思います。現在、HTMLの正規化((言葉として正しいかどうかは不安))をムリにワタシが行ったために内部的にはかなり歪な処理になっていて、それに伴う不具合やバグも増えてきているので、そろそろ見直す必要があるのではないかと思います。 -- [[kawara]]
#contents
*書式の定義
**行頭で有効な書式
-見出し
* ** ***
-リスト
- -- ---
+ ++ +++
: : ←問題あり
--<dl>の<dt>と<dd>を:で区切るという現在の書式は、ユーザー定義やURL、InterWikiの書式と競合してしまっているので改善する必要がある。-- [[reimy]]
--リストのネスト方法をきちんと整理する必要あり。HTMLとして出力させるかぎり、第2階層は第1階層の子要素に、第3階層は第2階層の子要素にする必要がある。現状のように先頭の要素をいきなり第2階層や第3階層にすることはできない。-- [[reimy]]
--これに伴い、#contentsの出力も見直す必要が出てくる。-- [[reimy]]
-引用
> >> >>>
--引用文内での改段落の書式を考える必要あり。-- [[reimy]]
-プラグイン(ブロック)
#
-表組み
|
--表組みの各要素のセル幅指定ができるような書式も検討。-- [[reimy]]
-ヘアライン
----
-コメント
//
-整形済み
-位置指定 (div align) 左寄せ・右寄せ・センタリングは必要((暫定的にプラグインで対処してるけど、限界があるので)) -- [[reimy]]
**行末で有効な書式
-改行
~
**行中で有効な書式
-WikiName
-BracketName
[[ ]]
-InterWiki
[ : ]
-Alias
[[ > ]]
-URL
-注釈
(( ))
-ユーザー定義書式(書き込み時変換)
-ユーザー定義書式(逐次変換)
:~:←問題あり
--うちでは&~;という形式にしていますが、なかなか便利です -- [[reimy]]
-ボールド
'' ''
-イタリック
''' '''
-アンダーライン((現在はない -- [[reimy]]))
-打ち消し線
%% %%
-色づけ
COLOR( ){ }
-フォントサイズ
SIZE( ){ }
-位置指定 (表組みの中でのみ -- [[reimy]])
LEFT: CENTER: RIGHT:
-改行 (表組みの中で必要 -- [[reimy]])
-改段落 (引用文、注釈の中で必要 -- [[reimy]])
-インラインプラグイン (anchor、online、versionなど((現在はインラインであるべきなのにブロックになってしまっている)) -- [[reimy]])
--anchorはAliasやURLの中で処理すべき。-- [[reimy]]
*空行のあつかい
空行は現在段落の切れ目という意味となっている。
-段落の切れ目ではなく、段落と段落の区切りの意味になってます。それゆえ、段落と他のブロック要素との間に空行を入れていはいけない。 -- [[reimy]]
-はい、段落の切れ目ってのは区切りのつもりで書きました。個人的には空行で''ブロック抜け''をイメージしています。 -- [[kawara]] SIZE(10){2002-07-26 (金) 14:33:36}
-「段落の切れ目」だと段落の次に他のブロック要素が来る場合も含んでしまうので。段落以外のブロック要素からの脱出には空行は不要((PukiWikiはブロック要素の中に他の種類のブロック要素を含むことを認めていないため。<ol>の中に<ul>や<dl>を使いたいという要望はありそうだけどねぇ…))。 -- [[reimy]] SIZE(10){2002-07-26 (金) 14:36:47}
-現在の空行は''空の段落''を入れるという仕様になっているが、個人的にはどうも抵抗があります。空行は何もしないって方向でいいのかななんて思ってます。 -- [[kawara]] SIZE(10){2002-07-26 (金) 17:52:05}
-わたしも「何もしない」がベストだと思います。ただ、従来との「見た目の」互換性を考えると<p></p>や<br>というのも仕方ないかなとも思えるけどね。個人的には空行=改行は好きじゃないので、互換性を無視してでも「何もしない」がいいけど。 -- [[reimy]] SIZE(10){2002-07-26 (金) 18:14:43}
-見た目の互換性って現在のPukiWikiを使いこなしている人に影響があることだと思うので、現状の使用者数ならあまり気にしなくてもいいのかな、ってのは横暴ですかね。 (^^; -- [[kawara]] SIZE(10){2002-07-26 (金) 18:45:10}
-1.3系列は互換性重視で、1.4からは新書式でというのはどうでしょう。1.4リリース後もセキュリティfixなどは1.3系列もサポートするということで。 -- [[reimy]] SIZE(10){2002-07-26 (金) 20:59:56}
-1.4じゃなくてPukiWiki2じゃないですかね?新書式までいくと。 -- [[ゆう]] SIZE(10){2002-07-27 (土) 00:18:00}
#comment
*ブロック構造の実現
もともと(1.3まで)が行指向でブロックという考え方が無かった。
プラグインのブロック構文には下記のような書式が考えられますね。 - [[ゆう]]
上の書き方の方がスマートですが、終わりの}の後にも何か書けてしまってちょっとイヤな感じじゃないですか?
#hogegege(zz) {
foo bar baz
}
#hogehoge(zz)
foo bar baz
#end
-ブロックの閉めは # だけってのは乱暴ですかね?さすがに乱暴かな…。 (^^; -- [[kawara]] SIZE(10){2002-07-26 (金) 19:32:40}
-SIZE(9){ブロックをプラグインで実現するにはそのプラグインがブロック構造を持つことを本体に知らせる必要がありますね。って、そこは書式とはちょっと違う話になっちゃうな。} -- [[kawara]] SIZE(10){2002-07-26 (金) 19:35:10}
-これは書式というより、プラグインの仕様次第ですね。極端な話、プラグインのネストも許したりして(笑い) -- [[reimy]] SIZE(10){2002-07-26 (金) 21:13:34}
-{と}はCOLORやSIZEで使ってるけど競合はしないのかな? -- [[reimy]] SIZE(10){2002-07-26 (金) 23:32:23}
-上はインラインプラグイン、下はブロックプラグインって方法もありますね。 -- [[ゆう]] SIZE(10){2002-07-27 (土) 00:17:20}
-インラインであれば行頭に書く必要はないですね(というか行頭に書かなければいけないというのではインラインにならない) -- [[reimy]] SIZE(10){2002-07-27 (土) 04:23:06}
-&calc(hogehoe)ですかね?<インライン -- [[ゆう]] SIZE(10){2002-07-28 (日) 13:27:15}
-上記のような定義の仕方だと、ブロック構造の引数は1つしかとれないことになりますね。次のようにすれば複数のブロック構造を引数に取れるのでは? -- [[reimy]] SIZE(10){2002-07-29 (月) 17:09:45}
#hogehoge({
hogera
hogetta
},{
hogeme
hogereba
hogetatoki
})
-プラグインのブロック構造が実現すると、表組みの右寄せとかができるようになるね。期待してます。 -- [[reimy]] SIZE(10){2002-07-29 (月) 17:01:56}
#align(RIGHT,{
|東京|名古屋|大阪|
|フジ|東海|関西|
})
-だんだん複雑になってきちゃってますが・・・・HTMLの再開発にならないことを祈ってます。 -- SIZE(10){2002-07-30 (火) 07:04:17}
-個人的にはTeXの書式が使えればいいんだけど(^^;; -- [[reimy]] SIZE(10){2002-07-30 (火) 07:34:26}
-TeXWiki作ってみません?(笑>reimy -- [[ゆう]] SIZE(10){2002-07-30 (火) 13:11:47}
-HTML再開発になってきている気はするんですよ。私も。LEFT, RIGHT,SIZE,COLORもプラグイン行きですよね。 -- [[ゆう]] SIZE(10){2002-07-30 (火) 13:14:55}
-ブロック構造の引数は一つでいいと思います>reimy -- [[ゆう]] SIZE(10){2002-07-30 (火) 13:15:53}
-インラインの書式は&size(1){test}でいいんじゃないですかね。 -- [[ゆう]] SIZE(10){2002-07-30 (火) 13:16:40}
-難しいことをしたい場合はプラグインっていうノリだから車輪の再発明にはならなくて済むと思いますよ。基本の書式使うだけでけっこう文書作れちゃいますもんね。 -- [[kawara]] SIZE(10){2002-07-30 (火) 13:27:09}
-その場合、&size(1){&color(red){small red}}をどうやって許すかだよなー。ブロックの引数内に}があったらそこで終わってしまうし。{}内はWiki書式とは限らないから{}の対応が取れてるとは限らないし。基本的には{}対応が取れてるとしてそれ以外に}を使いたい場合はやっぱりエスケープしかないなぁー -- [[ゆう]] SIZE(10){2002-07-30 (火) 17:34:14}
#comment
*ページ内変数の導入
-書式の中で変数を扱えるようになるとおもしろいかもしれません。簡単な表計算に利用するとか -- [[reimy]] SIZE(10){2002-07-26 (金) 21:16:00}
-うーん、それはプラグインにしません?そこまで行くとZopeになっちゃう気が -- [[ゆう]] SIZE(10){2002-07-27 (土) 00:15:23}
-#script("$a=10")とか #calc(10+20*30)とか。 -- [[ゆう]] SIZE(10){2002-07-27 (土) 00:30:56}
-ページ単位で変数が使えると見出しに「第1章」とか出力できるのでいいかなあと思ったの。まあページ単位では章はちとつらいけど。 -- [[reimy]] SIZE(10){2002-07-27 (土) 04:21:38}
-calcとかはインラインでないと意味がないので、行頭から#で始まるブロックプラグインでは使い物にならないです。行中で「昨日の支出は&calc((10+24)*1000);円でした」という形で使えないと。 -- [[reimy]] SIZE(10){2002-07-27 (土) 04:25:28}
#comment
* 方向性
気をつけてください。書式が複雑になる方向ですすんでいます。~
Wikiは「簡単に書ける」ことが大事で、表現力は二の次だと思います。~
レイアウトや見た目の問題はプラグインにしませんか。~
LEFT, RIGHT, SIZE, COLOR, 複雑なTABLEはインライン型プラグインにできますよね。~
こうすれば、Wikiエンジンとしては軽くなりますし。 - [[ゆう]]
-なぜTABLEがインラインなんですか? TABLEなんてブロック型の典型じゃないですか(笑い) -- [[reimy]] SIZE(10){2002-07-30 (火) 19:03:30}
-もっときちんとインラインとブロックの違いをきちんと理解していないと1.3の二の舞になってしまいます。 -- [[reimy]] SIZE(10){2002-07-30 (火) 19:06:27}
-ブロック要素であるブロック型プラグインと、構文としてのブロック構造とはまったく別物です。 -- [[reimy]] SIZE(10){2002-07-30 (火) 19:10:03}
#comment