番号を振るPopupMenu
シンプルバージョン
1. ①
2. ②
3. ③
code:script.js
scrapbox.PopupMenu.addButton({
/*三項演算子で複数行選択されたときのみに限定できる*/
title: "#",
onClick: (text) => text.split("\n")
.map((line, index) => line.replace(/^(\s*)/, $1${index + 1}. ))
.join("\n"),
});
インデント部分を別カウント
1. ①
2. ②
1. ②1
2. ②2
3. ③
code:script.js.old
scrapbox.PopupMenu.addButton({
title: "#",
onClick: (text) => {
let indentLevels = {};
return text.split("\n")
.map((line) => {
let indent = line.match(/^\s*/)0; return line.replace(/^(\s*)/, $1${indentLevels[indent]}. );
})
.join("\n");
},
});