matanico.js ver. 0.60

指定したキーワードを含むタグを検索する機能が実装されたようなので ( via : http://blog.nicovideo.jp/2008/09/post_236.php ) matanico.js で対応してみた。タグの表記揺れとか似たものを横断できるので便利。たぶんもうやってる人はいると思うけどこれを使ってタグの管理をしたりとかツールが出てきたりとかするんじゃないかな。 http://www.nicovideo.jp/related_tag/%E3%82%A4%E3%82%AA%E3%82%B7%E3%82%B9http://www.nicovideo.jp/related_tag/iosys をまとめるとかそういうことね。

モノは以下から持ってってくださいな。

http://www012.upp.so-net.ne.jp/legio/distribute/matanico.js
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/matanico.js

前のバージョンで追加された機能については以下を。

使い方

検索後のページで :matnico とうつ。それだけ。

設定項目は以下の二つ。

  • g:matanico_related_tag_format
    • 書式設定。
    • デフォルトは '$SERVICENAME : $KEYWORD($NUMOFTAGS件) - $URL $COMMENT' 。
    • 指定可能な変数は以下の表のとおり。
$SERVICENAME このプラグインが付加する文字列。 g:matanico_tag_servicename で指定する。
$KEYWORD 検索したタグ。複数の場合は半角スペースで区切られる。
$NUMOFTAGS 検索結果の件数。
$URL 検索結果の URL。
$COMMENT コメント。これがないとコメントを書いても反映されない。
  • g:matanico_related_tag_servicename
    • 投稿時に固定で付加される文字列。
    • デフォルトは 'またキーワードでニコニコタグ検索してる' 。

投稿される文字列は以下のような感じ。うえがデフォルト、したがおれ設定。

おれの設定は以下のような感じ。

let g:matanico_related_tag_servicename='またニコタグ(キーワード)'
let g:matanico_related_tag_format='$SERVICENAME : $COMMENT [$KEYWORD]($NUMOFTAGS件) - $URL'

今開いているページの情報を Twitter に投稿する Vimperator plugin

前々から見かけていたけど今日突然やる気になったのでちゃっちゃか作ってみた。 matanico.js のコードが流用できたのでコーディングが 30 分ほどで出来たんだけどこのエントリ書くのに 90 分かかるというオチがついた。どんだけ文章力がないんだおれ。

http://www012.upp.so-net.ne.jp/legio/distribute/reading.js
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/reading.js

元ネタはいろいろあってよくわからんのだけど http://twitter.g.hatena.ne.jp/Uchimata/20071008/1191837376 なのかな。ならって 'I'm reading now' ではじまるようにしてみたけども。

使い方

  • :reading [comment]
    • 開いているページの title, URL を選択している文字列・コメントといっしょに投稿する。文字列選択していなくてもいいしコメントを指定しなくてもいい。選択文字列やコメントのせいで 140 字を超える場合はまぁ気にしない方向で。そのうち外部サービスを使って自動でなんとかしたりしなかったり。
  • :reading! [comment]

デフォルトでは 'I'm reading now : コメント "やぬすさんとこの日記" http://d.hatena.ne.jp/janus_wel/ 選択文字列だよー' みたいに投稿される。

最初に投稿する際に twitter に登録したメールアドレスとパスワードを聞かれるので入力してください。入力は 1 回だけで 2 回目以降の投稿は自動でやってくれます。 matanico.js を使ってる人は設定を併用してるので新しく入力する必要はないです。

設定で投稿文章を変更することも可能。

  • g:reading_format
    • 書式設定。
    • デフォルトでは '$SERVICENAME : $COMMENT "$TITLE" $URL $SELECTED' 。
    • $SERVICENAME だとかは書式設定にのみ使える変数 ( 参照のみ ) で以下のものが使用可能。
$SERVICENAME このプラグインが付加する文字列。 g:reading_servicename で指定する。
$TITLE ページのタイトル。
$URL ページの URL。
$SELECTED visual mode やマウスで選択した文字列。
$COMMENT コメント。これがないとコメントを書いても反映されない。
  • g:reading_servicename
    • このプラグインが固定で付加する文字列。 'I'm reading now' の部分。
    • デフォルトは "I'm reading now" 。
  • g:reading_title_default
    • title がないときに使われるもの。
    • デフォルトは 'no title' 。

以下は設定例という名の晒し。

let g:reading_servicename='reading'
let g:reading_format='$SERVICENAME : $COMMENT [$TITLE] $URL $SELECTED'

上記の設定だと 'reading : コメント [やぬすさんとこの日記] http://d.hatena.ne.jp/janus_wel/ 選択文字列だよー' のように投稿される。あなた色に染めてください。

技術的なはなし

選択文字列を取得するのに最初は liberator.buffer.getCurrentWord() を使ってたんだけど何も選択してないとエラーが出たり脈絡のない文字列を拾ってきたりするので window.content.getSelection().toString() に切り替えた形。どうやら caret mode 時のカーソル位置に近い単語を無理やり拾ってくるみたいでスクロールしたりするとカーソルも動くらしい。名前のとおりの関数だった。

あと tinyurl のテキスト版サービスの紹介をどっかで読んだ覚えがあるんがサービス名をド忘れしてしまったので誰か知ってる方いたら教えてほしいです。