読者です 読者をやめる 読者になる 読者になる

How to FAV toshi_a on Krile

19日目 20日目 21日目
NTTrfさん この記事 k725さん


僕がなぜとしぁさんをふぁぼるようになったか、それを語るとおそらくカップラーメン1000個を最短で作る時間とどっこいどっこいじゃないかと思います。ちなみに一度に作ればいいので最短は3分程度なんじゃないかと思います
なので割愛しますが、とにかくここ2年近くとしぁさんをふぁぼっています
あと今日引っ越します。
あと風邪引いてめっちゃつらい。

僕は某クライアントについてる一括で大量にふぁぼれるような機能は使いたくない*1ので、ほぼ全て、1つひとつ手でふぁぼってます。
今まで30万ツイートほどふぁぼってきましたが、そのうち 97% くらいが、1つひとつ星を押したり、ツイートを横にスライドさせたりして手動でふぁぼったやつです。
残りの 3% の多くを占めるのが、 "らこらこらこ~w" みたいな文字列に勝手に反応するスクリプトによるふぁぼです。みぞ氏のやつを少しいじって確率で反応するようにし、正規表現で一致させるようにしてらこらこらこ~wっぽい言葉の組み合わせに反応…おっと、これは Krile Advent Calendar の記事でした。

本題に入りたいと思います。

抽出

さて、としぁさんをふぁぼるにあたって、まずはとしぁさんのツイートを抽出しましょう。

from user:"toshi_a" where ()

こういう Query を書けば、 API を使用してとしぁさんのツイートを持ってくることができます。

ですが、

経験上、これだと取得漏れがある気がするんですよね…
なので僕はこっちを使ってます。

from all where user <- [@toshi_a]

これは、としぁさんをフォローしていて、 TL にツイートが表示されていること、24時間ずっと Krile を起動していること*2が前提ですが、同じようにとしぁさんのツイートを抽出することができます。実はこっちだと赤の他人 (自分のフォロー外のアカウント) 宛の Mentions が抽出されませんが、としぁさん用のアカウントでも作り、 Krile のアカウント設定で "他人へのリプライを受信する" にチェック*3しとけば問題ありません。
また、 Streaming で流れてきたものをこっちで抽出しているので、 API を新たに消費しません。

24時間起動するのが無理な場合は、この2つを組み合わせて

from all, user:"toshi_a" where user <- [@toshi_a]

としてもいいんじゃないかと思います。

ここで早速抽出してみた方、いいですね。そーいうの、嫌いじゃないゾ!星

実は、 "user <- [@toshi_a]" で抽出した場合、自分のフォロワーなど他の人が RT したとしぁさんのツイートも抽出されてしまいます。
例えば、としぁさんがネタツイをしてたくさん RT された場合、抽出タブの中はこのツイートばかりになってしまいます。

f:id:uzuky:20141213012734p:plain

こういうツイートも抽出されてしまう (これはせきみやくんによる RT ) 。

なので、他人の RT を外すために Query を少し追加します (太字部分) 。

from all where (user <- [@toshi_a] | retweeter in @toshi_a) & !(retweet & user <- [@toshi_a])

この Query は、としぁさんのユーザタイムライン (としぁさんのツイート、としぁさんの RT) をフィルタ部分で再現するものですが、この挙動はよくわからないです。
ちなみに青文字部分緑文字部分を消せば純粋なとしぁさんのツイートのみになります (RT が全部消える) 。
青文字部分を追加することでとしぁさんによる RT を抽出させていますが、なんか納得がいってません。
なんかいい感じの Query が作れる人おしえてください。

なにはともあれ、これでとしぁさんのツイートが抽出されました。

ふぁぼる

Krile のふぁぼ機能は、複数アカウントで一気に同じアクションができることを除けば他の一般的なクライアントと同程度なので、ワンタッチで複数のツイートをまとめてふぁぼるなんてことはできません。*4
というか前述したようにそういう機能は使いたくありません。

この状態での一番楽なふぁぼり方は、キーアサインを利用すること*5です。
それでいいじゃんという感じですが、少しだけ工夫をします (太字部分) 。

from all where (user <- [@toshi_a] | retweeter in @toshi_a) & !(retweet & user <- [@toshi_a]| favs -> @uzuky)

※ @uzuky のところは自分のアカウントに変えてください。

こうすると、自分がふぁぼったとしぁさんのツイートがタブから消えるようになります。

f:id:uzuky:20141213032235p:plain

ただし RT は消えません。以前バグかと思って報告したら、そういう仕様だそうで、対応すると Query が複雑になりそうとのことで仕方ないな~という感じです。

そんなわけで、ふぁぼったツイートが消えると選択ツイートの位置がリセットされるのと、 RT が消えないために、キーアサインの利用ではなくマウスで星をクリック*6することになりますが、かなりふぁぼりやすくなりました。
というかマウスでふぁぼると、☆ボタンの位置にカーソルを合わせるついでにツイートをチラッと読むようになるんですよね。
一気に何十とふぁぼるときにキーアサインを使っていると、そういう作業がなくなるので、ツイートを読まなくなります。
誰かが言ってました。ふぁぼは既読ボタンだと。
いくらとしぁさんがておくれやと言ってもツイート読んでないのにふぁぼるなんて失礼です。

ふぁぼこぼし

実は稀にふぁぼこぼしが発生します。
なのでたまに Krile を再起動したり、タブの再読み込み (この機能はついてないので、 "タブをコピーして追加" したあとに元のタブを消してます) してふぁぼこぼしを拾ってあげてください。*7

以上で How to FAV toshi_a を終了したいと思います!(^o^)

明日はk725さんです

*1:1回だけ使ったことある

*2:少なくともとしぁさんがツイートしたときは必ず起動した状態であることが必要

*3:メインアカウントでこれを有効にするとうざったくなるのでおすすめしません

*4:ツイートを複数選択して一気にふぁぼることはできるが、ツイートを選択する動作はやはり1つひとつ選ばないといけない

*5:デフォルトだと TL 上で FJFJFJFJFJ… ?

*6:なんかこっちのほうがふぁぼってる感ある

*7:from user:"toshi_a" で抽出している場合、再読み込みすると既にふぁぼったツイートがなぜか表示されてしまうので注意