{注意記法}{補足記法}{折り畳み記法}{感じさせてくれる}{歴史的な意義}{今となっては}{意味的な}{紛らわしさ}{最新案}{2案}...=}(166)

{希哲16年1月20日8歩 K#F85E/A-E74C-2FC4}

進捗時限記録中略

ひょんなことから予てから課題だった折り畳み記法急速にまとまった

折り畳み記法は,他の部区記法組み合わせ使える汎用的な記法として実装していくことにした。以下のように,部区開始行末^加えることで,その部区見出しなら階層下内容折り畳まれるようにする。厳密に言えば見出し階層下内容含む部区ではないが,例外的に扱う

・リストの折り畳み ^
  ・折り畳まれる項目

* 折り畳む見出し ^
折り畳まれる内容

+{埋め込みの折り畳み K#XXXX} ^

検討中,これがネタバレNSFW のような閲覧注意内容使えそうなことにも気付いた

きっかけからまとまるまで

補足記法・注意記法についての検討で,終了記号区切り線--)も使えるようにすることを考えた時,以下のように区切り線亜種として ^^ を使って折り畳めることをしてもいいのではないかと思い付いたことがきっかけだった。

?? 補足
補足内容
^^

この終了記号のように,他の部区にも統一的に応用出来る記法があれば何かと可能性が広がる。そこであれこれ検討してみると,部区終了記号だけでなく開始記号側にも分かりやすい目印欲しくなった。むしろそちらの方が自然場合多い

^対応する記号なら v考えられるが, などと異なり自然言語扱うデラングラテン文字導入しにくい日本語はともかく外国語問題が起きないとも限らない

何より下向きの三角形一般に展開されていることを表す記号なので,折り畳まれている記号として v開始記号添えるのは直感的ではない。となると,<>デラングではある程度活用方向性決まっているので,矢印的に使えそうASCII 記号^ しかない。

ここで,「行末^」を思いついた。これなら折り畳み記号としての直感性もあり,他記法とも組み合わせやすいパンくず記法で「行末>」を採用する直前にあっただが,微妙な違和感があり回避していた。この直感大当たりだった。

そして終了記号^^ とも整合的見える……と考え出したところで,今度はこっちの問題気になってきた。まず,日本人感覚ではぱっと見顔文字見える。そこで,--亜種であることが分かりやすいように --^考えてみたが,空行挟まない特定の文字指しているような記号見える

そもそも開始行末1個あれば,特別な終了記号要らないことに気付くまで時間はかからなかった結果的に非常にすっきりしたになった。

他の検討案

昨年6月18日の開発時点からは,以下2案があった。

++ ラベル
折り畳まれる内容
--

? ラベル
折り畳まれる内容
!

前者がこれまでの最新案で,区切り線--対応させて,++使うツリー開閉記号しばしば +-使われることに引っかけただったが,埋め込み記法渡括記法との紛らわしさから現時点での採用考えにくい。特に最近では ++使った行内埋め込み記法有力視していることもあった。無理に区別出来なくはないが,意味的な整合性確保するのが難しい

後者は,補足記法注意記法方向性固まった今となっては採用余地皆無だが,当時から今回の検討きっかけになった補足記法との組み合わせ考えていたことを示すであり,歴史的な意義感じさせてくれるものではある。

{部区}{希哲16年1月18日の開発}{希哲16年1月18日12歩}{行内埋め込み}{行内埋め込み記法}{書き分けられる}{視覚的な}{導入予定}{短くする}{目立ちにく過ぎる}...=}(161)

{希哲16年1月18日8歩 K#F85E/A-E74C-91F1}

進捗時限記録中略

埋め込み記法渡括記法)の応付子オプションなどについての検討終了

概ね方針が固まってきた

引数風の応付子

これまで埋め込み記法には,埋め込み方細かく指定するような機能がなく,例えば画像埋め込みでも表示サイズ水平方向寄せ方指定出来なかった。この問題当然当初から認識していたが,どうしてもごちゃごちゃしがちな部分なので,直感的美しい記法練るのに時間がかかった差し当たり欲しいのは画像埋め込み表示サイズ寄せ方指定出来る機能だが,他の埋め込み対象でも使える汎用的な枠組み整えておきたい

そこで,[寄せ方指定スペース]+([応付])[埋め込み対象]形式採用することにした。例えば,添付譜類PNG 画像100x100埋め込みたい場合,+(100x100)png書けるようにする。

丸括弧内は,函数引数風にコンマ区切りで,埋め込み対象毎に使える応付子設定する。引数名指定出来るように a=xa:x受け取ってもいいが,柔軟性必要なのであえて必須にはしない。スペースを含む文字列扱いたい場合考えられなくはないのでとりあえずコンマ区切りにしておくが,各引数扱い駒手欄感覚近い

他のとして,+100x100 png+100x100,png のように全てを引数的に扱うことも考えたが,あくまでも埋め込み対象とする応付役割まとまり一番分かりやすいという点で丸括弧採用する。また,埋め込み対象URL など長い文字列になることも多いため,応付+直後置く。あるいは,末尾に置く書き分けられるようにする。

水平方向寄せ方

水平方向寄せ方は,表組み記法採用予定スペースを使う方法応用することにした。以下のように,+ 前のスペース無しは無指定4つ未満は左寄せ4つ以上で中央寄せ6つ以上で右寄せとする予定

+png            <!-- 無指定 -->
  +png          <!-- 左寄せ -->
    +png        <!-- 中央寄せ -->
      +png      <!-- 右寄せ -->

直感性でいえば矢印のような記号導入することも考えられる。となるとまず <>使うことになるが,すでに多用しているため無闇役割広げる記号意味稀薄化しかねない。そうでなければ leftcenterright のようなキーワード導入するくらいしかないだろう。いずれにせよ,見た目的にもあまり美しくない

当初,以下のようにスペースの数表組み記法合わせようとした2つ中央寄せ3つ右寄せが,いくつか問題がある。

+png         <!-- 無指定 -->
 +png        <!-- 左寄せ -->
  +png       <!-- 中央寄せ -->
   +png      <!-- 右寄せ -->

まず,表組みにおけるセル内での編集に比べそこまで編集効率問題にならないためここまで短くする必要もなく,比較的長くなる後続文字列に対して目立ちにく過ぎる単純にスペース2つ中央寄せ3つ右寄せ表現には見えない

さらに致命的な問題は,いくつかの他記法との整合性だ。導入予定字下げ記法では,行頭全角スペース使う。あまり好き記法ではないが,Markdown4つの半角スペースを使う交度記法互換性のため導入する可能性がある。これらの記法混ぜ書いた場合,視覚的な整合性が取れない。

そこで,行頭に使う寄せ方指定スペース表組み記法とすることにした。交度記法にも使われる4つの半角スペース右寄せ一致するよりは中央寄せに一致した方が違和感がずっと小さい

行内埋め込み記法

おまけに,行内埋め込み記法についても少し考えた

これまで埋め込み記法部区として扱うことを主に考えてきたが,やはり行内埋め込み必要だろう。まだ草案段階だが,例えば以下のようにして画像回り込む段落が作れると便利だ。

++png++ 左上の画像に回り込む段落。
=}
{>}
{}