u-labo
https://lh3.googleusercontent.com/a-/AOh14GgFTD8pe4Ss-pepNJ6o4Tj78GakzKPrSi7BKmtK=s96-c#.png
/icons/水平線.icon
小見出し付ける
code:script.js
scrapbox.PopupMenu.addButton({
title: '小見出し',
onClick: text => {
return '' + text + '';
}
})
アンダーラインを引く
code:script.js
scrapbox.PopupMenu.addButton({
title: '下線',
onClick: text => {
return '' + text + '';
}
})
見出し付ける
code:script.js
scrapbox.PopupMenu.addButton({
title: '栞見出し',
onClick: text => {
return '' + text + '';
}
})
code:import.js
import '/api/code/scrasobox/WebからコピペしたらSB記法に変換する/script.js'
ピンしてジャンプ!
code:import.js
import "/api/code/scrasobox/ピンしてるページにジャンプするメニュー/script.js"
Tweet埋め込みJS
code:script.js
scrapbox.PopupMenu.addButton({
title : 'Embed Tweet',
onClick : text => {
const convertContent = (content, indent) => {
const replaced = content
.replace(/<a href="(https?:.*?)">(.*?)<\/a>/g, '$1 $2') .replace(/<br>/g, \n${indent});
const elem = document.createElement('div');
elem.innerHTML = replaced;
return indent + elem.innerText;
}
const tweetRegex = /(?<spaces>\t *)<blockquote\w"\-= *><p\w"\-= *>(?<content>.*)<\/p>—(?<author>.*)(?<link><a.*>)<\/blockquote>\n\t *<script.*?><\/script>/; const match = text.match(tweetRegex);
if(!match) return;
const {spaces, content, author, link} = match.groups;
const ind = ${spaces}>;
return text.replace(tweetRegex, convertContent(content, ind) + '\n' + convertContent(\t—${author} ${link}, ind));
}
})
タイムスタンプJS
code:script.js
scrapbox.TimeStamp.addFormat('#YYYY #MMDD'); 栞記法のJS
code:script.js
const __bkmClass = '.deco-\\.' /* ここで記法のセレクタを設定してね。デフォルトはドットです */
const __bkmMenuTitle = 'Bookmarks'
scrapbox.PageMenu.addMenu({ title: __bkmMenuTitle, image: 'dummy.png',
onClick: function() {
const __fixedHeaderHeight = ($('.navbar').css('position') == 'fixed' ? $('.navbar').height() : 0) +
($('.navbar-pagemenu').height() || 0)
scrapbox.PageMenu(__bkmMenuTitle).removeAllItems()
$(__bkmClass).closest('.line').each(function(i, e){
scrapbox.PageMenu(__bkmMenuTitle).addItem({
title: $(e).find(__bkmClass).text(),
onClick: function() {
$('html,body').animate({
scrollTop: $(e).offset().top - $('body').offset().top - __fixedHeaderHeight
}, 150)
}
})
})
}
})
Chrome拡張機能用スクリプト
code:script.js
$('body').attr('data-daiiz-rel-bubble', 'on'); // 関連ページを吹き出し表示する
$('body').attr('data-daiiz-text-bubble', 'on'); // リンク先ページのテキストを表示する
$('body').attr('data-daiiz-icon-button', 'on'); // アイコンをボタンにする
選択した文字列にマーカー
code:script.js
scrapbox.PopupMenu.addButton({
title: 'マーカー',
onClick: text => [[${text}]]
})
行頭に引用符を付ける
code:script.js
scrapbox.PopupMenu.addButton({
title: 'quote',
onClick: text => text.split(/\n/).map(line => > ${line}).join('\n')
})
文字カウントツール
code:script.js
scrapbox.PopupMenu.addButton({
title: function (text) {
const chars = text.replace(/\r\n/g, '').length const words = text.trim().split(/\r\n\s+/).length return ${chars}c ${words}w
},
onClick: () => null
})