【Scrapbox・Cosense】選択範囲を引用付きでブックマークするブックマークレット
概要
Webページを Scrapbox に簡単にブックマークするためのブックマークレットです。ページのタイトル・URLを Scrapbox のページに埋め込み、選択したテキストがあれば引用として追加します。
改善点
Scrapbox の標準機能で生成されるブックマークレットには、以下の問題がありました。
ページタイトルに含まれる [ や ] がそのまま入ってしまい、リンク表記が崩れることがある。
最後の URL で '?body=%27+body) となっている。
動作しているので問題ないと言えば無いですが、モヤっとするので修正。
特徴
ページタイトルとURLを自動で挿入
選択中のテキストを > 付きの引用として貼り付け
Scrapbox ページのタイトルはページのタイトルを利用
タイトル内の [ と ] を全角に変換して安全に保存
URL は encodeURI で安定化
'?body=' + body として正しく本文を渡すよう修正済み
コード: 安全強化版(ブラケット無害化・URL表示安定)
code:ブックマークレット(リーダブル).js
javascript:(function(){
function sbxTextSafe(s){
return (s||'').replace(/\/g,'[').replace(/\/g,']');
}
var rawTitle=document.title||'';
var title=rawTitle.trim();
if(!title) return;
var linkUrl=window.location.href;
var lines=['',''+encodeURI(linkUrl)+' '+sbxTextSafe(rawTitle)+''];
var quote=window.getSelection().toString();
if(quote.trim()){
lines=lines.concat(quote.split(/\n/g).map(function(line){return ' > '+line;}));
}
lines.push('');
var body=encodeURIComponent(lines.join('\n'));
var pagePath=encodeURIComponent(title);
window.open('https://scrapbox.io/Rutile3-Bookmark/'+pagePath+'?body='+body);
})();
圧縮ブックマークレット
code:ブックマークレット.js
javascript:(function(){function s(t){return(t||'').replace(/\/g,'[').replace(/\/g,']')}var r=document.title||'',t=r.trim();if(!t)return;var u=window.location.href,l=['',''+encodeURI(u)+' '+s(r)+''],q=window.getSelection().toString();if(q.trim())l=l.concat(q.split(/\n/g).map(function(n){return' > '+n}));l.push('');var b=encodeURIComponent(l.join('\n')),p=encodeURIComponent(t);window.open('https://scrapbox.io/Rutile3-Bookmark/'+p+'?body='+b)})();
使い方
1. 上記のコードをコピーして、ブラウザのブックマークに登録する
2. Scrapbox の対象プロジェクト名(例: Rutile3-Bookmark)を自分の環境に合わせて書き換える
3. 任意のページを開き、必要ならテキストを選択してからブックマークを実行
すると Scrapbox に新しいページが作成され、URLリンクと引用文が自動で挿入されます。
#Cosense #Scrapbox #ブックマークレット