Hatena::ブログ(Diary)

オタク日記 このページをアンテナに追加 RSSフィード

2012年01月16日 マウスジェスチャでリンク生成機能を追加する方法 このエントリーを含むブックマーク このエントリーのブックマークコメント

 別に管理してたブログを作り直すので、メモ書きを転載する。自分が後々使いそうな、お役立つ情報である。

1.はてな記法はてなに記載する方法

 まず、はてなダイアリープログラムコードを直接記載すると、文字化けを起こす。サーバー側が文字なのか、コードなのか分からんからである。技術支援を社是にするはてなは、公式にプログラムコード記載のためのスーパーpre記法というものを実装している。詳しくは「入力したコードやはてな記法をそのまま表示する(スーパーpre記法) - はてなダイアリーのヘルプ」。

 ところで、はてな内でのみ使える、はてな記法。例えば、スーパーpre記法自体について言及したい時、我々は一体どうしたらいいのか。はてなは「スーパーpre記法を使えば、はてな記法も記載できますよ」と言ってるが、どうも上手くいかない。残念ながら、俺のブラウザでは文字化けしている。

 同じ症状になった人は、preタグ追加と文字コード変換を行うといい。

<pre>
&gt;|aa|
||&lt;
</pre>

 これは余談だけれど、スーパーpre記法も万能ではなく、長ったらしいコードを書くと見切れてしまう。見切れるのをどうにかしたい時は、スーパーpre記法をCSSで拡張する必要がある。例えば、問答無用でコード見せることを優先する場合、以下。

pre {
    overflow:auto;
}

2.はてなで手軽にAAを貼る方法

 はてな記法にaa記法があるので、基本はそれを使う。「アスキーアート(AA)を簡単にきれいに表示する(aa記法) - はてなダイアリーのヘルプ」。ただ、aa記法はフォントサイズが固定されている。もうちょっと大きくって需要は少ないと思うが、もっと小さくしたい方は結構いると思う。そういう方は、スタイルシートをいじってみるといい。

div.main {
    width:700;
}

div.AA {
    font-family:"MS Pゴシック","Mona","mona-gothic-jisx0208.1990-0",sans-serif;
    font-size:12px;
    line-height:14px;
}

 ポイントはフォントサイズに合わせてaa記法を入れる箱、この場合はmainをいじっちゃってるけど、これのサイズも変更しておくことである。ここを設定しておかないと、改行でグチャグチャになってしまうことがある。

3.マウスジェスチャでリンク生成機能を追加する方法

var CLIPBOARD = Components.classes['@mozilla.org/widget/clipboardhelper;1'].getService(Components.interfaces.nsIClipboardHelper);
                CLIPBOARD.copyString('<a href=\"'+window._content.document.location.href+'\">'+window._content.document.title+'</a>');

 JavaScript対応のアドオンでのみ使用可能である。適当なジェスチャを設定して、動作部分に上記コードを突っ込むと、リンク生成ができる。リンクタグになっているのは俺の趣味なので、タイトルとURLを別々にしたい方はリンクタグ周辺をいじってみるといい。