TextwellでWebリンクを作成するアクション BlogQuote(マルチ・エンディング版)

DraftPadとの違いは終了処理と看破せり。


Textwellでブログ紹介用のリンクプレートを作成する BlogQuote
もしiOS7にしたときDraftPadが動かなくなるのが心配。万一に備え、定番アシストだけでもTextwellに移植しておきたい。そう考えると、いっぱいあるんですよね。たとえば、モブログで多用している...
サムネ付きリンクプレートを作るBlogQuote。ブログを書くとき一番多く呼び出しているかもしれない。リンクを作るだけじゃない。ネットで調べ物をするのも下書きのプレビューを見るのも、基本はこれです。アクション・リストのトップに置いています。



それで気づいたのですが、TextwellとDraftPadの違いはブラウザを閉じたとき。DraftPadは一つの処理しか埋め込めない。Textwellは何個でも並べておける。この違いを今まで活かしていませんでした。サイトを表示した後にしたいことは一つだけではありません。それにTextwellのモードレス思想は「何を→どうする」の順に配列すること。ブラウザで表示してからどうするかは、そのとき考えたい。立ち上げるときに決めることではありません。
今回は4つの操作が選べるようにしました。普通のリンクタグを作成する/サムネイル付きリンクプレートを作る/Safariに制御を移す/サイトのHTMLソースを書き出す。この4つです。もちろん、必要に応じてご自由にカスタマイズしてください。

BLOG=" - W&R : Jazzと読書の日々";
T.closelets([
  {title: "リンクタグ作成",
    fn: function(arg){
        link="<li><a href=\""+location+"\">"+document.title.replace(arg.s,"")+"</a></li>\n";
        T("replaceCurrent",{text:link})},
    arg:{s:BLOG}},
  {title: "サムネイル作成",
    fn: function(arg){
        url=location;
        title=document.title.replace(arg.s,"");
        text=getSelection().toString();
        if(!text){
          p=document.getElementsByTagName("p");
          for(k in p) text+=p[k].innerText;
        };
        text=text.replace(/\n/g,"").replace(/undefined/g,"").substr(0,100);
        link="<blockquote style=\"color:black;background:ivory;padding:15px;border-radius:5px;border:1px solid lightgray;\"><a href="+url+" target=_blank style=color:darkblue;><img align=left src=http://capture.heartrails.com/150x120/?"+url+" style=\"border-radius:10px;margin:1px 15px 1px 1px;box-shadow:1px 2px 3px gray;\">"+title+"</a><a href=http://b.hatena.ne.jp/entry/"+url+" target=_blank><img src=http://b.hatena.ne.jp/entry/image/"+url+"></a><br>"+text+"...<br style=clear:both;></blockquote>\n";
        T("replaceCurrent",{text:link})},
    arg:{s:BLOG}},
  {title: "Safariで閲覧",
    fn: function(){
        T(location.href)}},
  {title: "ソース書き出し",
    fn: function(){
        T("replace",{text:document.documentElement.innerHTML})}
  }],
function(){
    s=T.current;
    if(s){
      location=(/^http/.test(s))? s:"http://www.google.com/search?q="+s;
    }else{
      document.write("<meta name=viewport content=initial-scale=1><body style=white-space:pre;word-wrap:break-word;>"+T.text+"</body>");
      T.title("BlogQuote");
    }
});

登録リンクはこちら→ http://tinyurl.com/qcze7g7
(ソース一行目にある変数BLOGは、リンク作成のときタイトルから取り省く文字列を表します。これは、ご自分のブログに合わせて設定し直してください。)



BlogQuoteは、起動時のカーソル行によっても動作が変化します。基本はGoogle検索。カーソル行の単語を検索します。もしカーソル行がURLアドレスの場合は直接サイトを開く。空行の場合は本文のプレビューを行います。つまり、リンクタグを作成した後BlogQuoteを再び立ち上げれば、そのリンクを開くことができる。簡易ブックマークになります。


うちのブログのような「面白いWebサイトを見つけました」とか「前に書いたこの記事ですけど」な場合、大半はサイトのリンクですからねぇ。このアクションでカバーできる。でも今回、内蔵ブラウザからSafariに飛ばす方法も付けたので、そこからネットサーフィンを続けられるのは結構いいかも。Textwellだと行きつ戻りつが出来ないものなあ。

  • TextwellのBlogQuoteをYouTubeやTwitterに対応させてみた(森杉版)