タイトルを「=」オプションとして入力し、タグ内にコンテンツを記述する [fieldset=] bbcode を作成しようとしています。
これまでのところ、私のルールは HTML タグを正しく生成していますが、コンテンツとオプションが欠落しています。
以下が、正しいように見えるタグ構造です:
<<fieldset class="bbcode-fieldset">
<<legend><</legend>
<<span><</span>
<</fieldset>
以下が私が追加したルールです:
md.block.bbcode.ruler.push("fieldset", {
tag: "fieldset",
replace: function(state, tagInfo, content) {
let token = state.push("fieldset_open", "fieldset", 1);
token.attrs = [["class", "bbcode-fieldset"]];
token = state.push("legend_open", "legend", 1);
token.content = tagInfo.attrs['_default'];
token = state.push("legend_close", "legend", -1);
token = state.push("span_open", "span", 1);
token.content = content;
token = state.push("span_close", "span", -1);
token = state.push("fieldset_close", "fieldset", -1);
return true;
}
});
コンテンツと _default 属性を追加する際に何か見落としているのでしょうか?以下のような形にしたいのです:
<<fieldset class="bbcode-fieldset">
<<legend>{option}<</legend>
<<span>{text}<</span>
<</fieldset>