Posts Tagged ‘twitter’

twicliの設定とプラグインのメモ

ずっとメインで使っているTwitterブラウザクライアントのtwicliの設定メモ

twicliはブラウザで動くのでUnified Sidebarを使ってサイドバーに縦置きタブバーと一緒に表示しています。
サイドバーへの表示はブックマークは面倒なのでCustom Buttonsのボタンとしておいています。

twiclitwicli

次はCSSの設定、CSSは基本的に最小限で無駄なものを消したりするぐらいです。

.uname{
    display:none;
}
#counter{
    font-size: 9pt!important;
}
/* Removeボタン */
#user_info > input{
    display:none;

}
/* shortcut.js */
.selected {
    background-color: #DDD !important
}

Removeボタンを消してるのはプラグインの関係で誤爆を防ぐためです。(通常は確認ダイアログがでるので誤爆しないかな)
次にプラグインの設定

ssl.js
regexp.js
lists.js
shortcutkey.js
search.js
search2.js
followers.js
shorten_url.js
resolve_url.js
translate.js
scroll.js
thumbnail.js
geomap.js
tweet_url_reply.js

https://gist.github.com/510112.txt#multi-users.js


https://gist.github.com/567983.txt#twicli_post_canceler.js


https://gist.github.com/655300.txt#switchViewedSearches.js

data:text/javascript,var fst=$('fst');fst.focus=fst.select=confirm=Array;

URLじゃないの部分はデフォルトのプラグインなので説明を省きますが、最後の4つが使ってるプラグインです。

一度タイムラインを表示したことのあるユーザーのタイムラインを簡単に再表示するプラグイン

ポストをした際に5秒以内なら中止できるボタンを出す

ハッシュタグや検索結果のタブを一つのタブにまとめる。
サイドバーで使うと狭いので、まとめるために使ってる。

最後のデータスキームURIとなってる部分はわざわざjsファイルとして読み込ませるほど長くはないので直接書いています。

data:text/javascript,var fst=$('fst');fst.focus=fst.select=confirm=Array;

これは、twicliはデフォルトだとポスト後に入力フォーム(fst)へのフォーカスしてしまって、サイドバーで使っているとフォーカスが奪われるのでかなり邪魔になります。なので、focusやselectを潰して、またRTなどで確認ダイアログが面倒になっているので同じように潰しています。(Removeボタンも確認ダイアログがなくなるので、RemoveボタンはCSSで非表示にしています)

他のTwicliプラグインはtwicli plugins – GitHubにまとめられているそうです。

Pickup Patternはそこまで使ってないでの省略。

twicliはJavaScriptで拡張できて、ブラウザで動くのでどこでも使える感じで便利。
みんなもっと設定公開するといいよ

twicli – A Web Browser-Based Lightweight Twitter Client
http://www.geocities.jp/twicli/

Twitterの活動を検索するサービスのまとめ

Twitterを検索するサービス、自分のTweets、Favを検索するサービスをまとめてみた。

まずはTwitterを検索するサービス

  • Twitter Search
    Twitter公式の検索サービス。最も反映が早いけど、日本語とかの検索は不向き
    一週間分のデータしか検索できません。
  • Replay
    GoogleによるTwitterのアーカイブ検索です。
    反映もとても早く、過去の内容も検索でき、日本語もGoogleのエンジンで検索するので多少曖昧でも引っかかります。
    誰か知らないけど、こういう事言ってたという感じのものを検索する場合はReplayが一番期待に添えると思います。
    適当に作ったFirefoxの検索プラグイン(ChromeとIEも検索サイトに追加できるみたい)はここから
  • twitter検索(yats)
    日本語に絞ったTwitter検索です。
    user:オプションや-noiseオプションなどを使う事でかなり絞ってかつ日本語圏の発言が検索できるのでとても重宝する。
    情報の精度が高いという感じなのでTwitter search(ja) result on Google for Greasemonkeyを使ったりしてよく利用しています。

自分の発言やお気に入りを検索するサービス

  • Twilog – Twitterのつぶやきをブログ形式で保存
    自分の発言をアーカイブできるサービス。
    ログインすることで公式ReTweetしたものもアーカイブできるので、発言+RTが保存できます
  • favolog – Twitterのお気に入りをらくらく管理
    TwilogのFavバージョン。
    Favmemoと同じくタグ編集機能があります。
    基本的な作りはTwilogと同じなので、自分以外のユーザーへも公開できます。
  • Favmemo
    自分のお気に入り(Fav)したものを検索できるサービス
    過去をさかのぼって、お気に入りしたものも取り込んでくれます。
    お気に入りにタグをつけて管理することもできるのでこれからも期待。
    検索がAjaxで行われるので体感的に早く感じます。
    Favmemoの検索プラグインはこちらから
  • ふぁぼるっく
    お気に入りしたものやお気に入りされたものを検索できる。(ふぁぼったーにあったような感じ)
    ただ取りこぼしもあるので完璧ではない。

Favmemoができた事で、Twitterでの事は大体アーカイブでき検索できる環境が整った気がします。
FavstarとかふぁぼったーとかTwistarは通常は検索できないので今回は除外した。

では良き検索生活を。

JavaScriptベストプラクティス30選-jsEdu

#jsEduから適当に選んで日本語にしたものです。
訳とかは全く正確ではなく、as possibleなど表現をかなり省いてるので命令口調になってます。
フィーリング的なものはあんまり入れてないので、興味をもったらTogetter – 「JavaScriptのベストプラクティス大会 jsEdu」を読みましょう。(まとめた奴はこれの10倍くらいありますが、被ってるのや関係無いのもあるので読める程度の量です)
全てを確認したわけではないので、正確性は保証しかねます。

Read the rest of this entry »

またニコニコ動画見てるGreasemonkeyのOAuth対応版

2010.8月末にTwitterのBASIC認証が終わったので、今までのまたニコぐりもんは動かなくなっていると思います。
なのでOAuth認証に対応してるまたニコニコ見てるを作ってみました。(作ったのは結構前だけどね)

使用方法

まずはニコニコ動画の動画ページでステータスバーのGreasemonkeyアイコンを右クリック→ユーザースクリプトコマンドからOAuth認証をする必要があります。

コマンドを実行するとOAuth認証のパネルが出てくるので、ボタンからTwitterへ行きOAuth認証してPINコードをコピーしてテキストエリアに入力すると準備完了です。

認証済みだったら動画タイトル部分にまたニコのボタンが出るので、それをクリックしてコメントを入力してまたボタンを押せばTwitterへ投稿できます。(nico.msのURLを使って投稿します。

オリジナルの機能としてはコメント入力欄の右側に文字数のカウンターが付いてるぐらいです。

mataniconicomiteru for Greasemonkey
http://userscripts.org/scripts/show/83795

 

NILScriptの使い方と書き方

NILScriptとはSpiderMonkeyを使ったJavaScriptベースのスクリプト実行環境です。(Windows専用+Wine環境でもある程度)
直感的に言うと、WSH + AutoHotKeyみたいな感じというのが分かりやすいかな。
できることなど細かい事はNILScriptのページやDocを読んでもらうとして、SpiderMonkey(JavaScript 1.8.1ベース)を使った処理系なのでFirefoxと同じJavaScriptの文法で、エクスプローラでのバッチ処理やキーバインドの変更などWSHやAutoHotKeyで行っていたような事がJavaScriptで書けます。

使い方

NILScriptのページからnil.zipをダウンロードして、適当な場所に解凍します。
解凍して出てくるng.exe(コンソールあり)とngw.exe(コンソールなし)のどちらかに、NILScriptのスクリプトファイルである*.ngファイルを渡すと実行されます。(WSHだとng = Cscript ,ngw = Wscript みたいな感じ)
毎回ng.exeなどにD&Dや引数などでngファイルを渡すのは面倒なので、ngファイルをクリックで実行できるように関連づけを行うinstall.batというのが入っています。実行するとng.exeと*.ngファイルが関連づけされ、クリックで実行できるようになります。
(多分レジストリを使うのはここだけ)
これで、実行する準備はできたので試しに何かスクリプトを実行してみましょう。

追記:現在はHome – NILScript – GitHubにほとんどのスクリプト置いてあります
自分が作った適当なスクリプトで試してみる。

上のngスクリプトはちっちゃいウィンドウが出てきて押したキー(組み合わせも大丈夫)を表示するだけのスクリプトです。

こっちのngスクリプトは、Twitterで自分がフォローしてる人からユーザー名を検索してコピーするスクリプトです。
初回の起動時はOAuth認証します。(NILScriptで立てた簡易サーバをリダイレクト先にしている)
2回目の起動で自分のフォローしてるユーザーのリストを取得してから、ユーザー名を検索するウィンドウを表示します。
ユーザー名を途中まで入力して↓キーなどを押せば、入力したユーザー名の所まで飛べます。Ctrl+Cでユーザー名をコピーできます。

このようにngスクリプトを書けば、ローカルで動くものがJavaScriptで書けるので簡単なものを書いたりするのに便利です。
特にエクスプローラなどのファイル操作周りはWSHより簡単に書けるので、簡易なバッチ処理を書きやすい。
次はngスクリプトの書き方を見ていきます。

書き方

ドキュメントはダウンロードしたnilフォルダにdocというフォルダがあり、その中にユニット(機能)毎のドキュメントが書いてあります。
いろいろあるので何から見れば良いか迷いますが、まずは_readme.txtを開いてみると、NILScriptには大きく分けて、
Base.ng内で定義されているNIL標準クラス・関数 と require()関数で読み込んで使うユニットスクリプトがあることが分かります。
簡単言うと、前者はngスクリプトにそのまま書いて使える関数などで、後者はrequire(‘Clipboard’)のようにユニットスクリプトを読み込んでから使えるようになる関数などが存在するという事です。
まずはNIL標準クラス・関数にどんなものがあるかをbase_*.txtなどを軽く見て把握しましょう。
眺めているとprintlnなどのよくあるような感じのものからsleepやスレッドやポインタなどのJavaScriptでは扱えないものもあることが分かります。(base_main.txtはよく使う関数があるので必須)
正直、まだドキュメントは箇条書き程度で文例などが不足しているので、実際に動かしながら確認する必要がある。
(NILScriptブログで使い方などの解説も始まったので合わせて読む)
必要な機能は必要になったらgrepなどで検索して探すので効率的。

ドキュメントばかり見てもよく分からないので、サンプルファイルを見ながらどういう風に書いているのかを見てみましょう。
サンプルはnilフォルダのsampleというフォルダに入っています。
NIL標準クラス・関数はそのまま使えるので、ドキュメントや動作を見れば何となく分かってくると思います。
ユニットスクリプトを使うものはrequireしてから使う必要があるので、requireの仕方を見てみましょう。
例えばsampleのclipboard.ngを見ると、clipboardを扱うためのユニットスクリプトを読み込んでいるのが分かります。(詳細はClipboard.txtに)

/*
タスクトレイにアイコンを登録して常駐し、
クリップボードの内容が変更された時に、形式に応じた情報を表示します。
*/

Main.createNotifyIcon();// タスクバーにアイコン表示
var Clipboard=require('Clipboard').Clipboard;// ユニットスクリプトを読み込む

Clipboard.observe('change',function(obj){// クリップボードが変化したら動作するリスナー
	if(this.hasFormat('files')){// クリップボードの中身がファイル形式
		var a=this.files,r=[];
		for(var i=0,l=a.length;i<l;i++){
			r.push(a[i].name);
		}
		Main.notifyIcon.showInfo(r.join("\n"),this.isMove?"move":"copy");// タスクトレイのアイコンにバルーンメッセージを表示する
	}else if(this.hasFormat('html')){// html形式
		var h=this.html;
		Main.notifyIcon.showInfo(h.fragment,h.url);
	}else if(this.hasFormat('text')){// テキスト形式
		Main.notifyIcon.showInfo(this.text,'text');
	}
});

上ではvar Clipboard=require(‘Clipboard’).Clipboard;というようにクリップボードのユニットスクリプトを読み込んで、
読み込んだクリップボードスクリプトのClipboardというクラスをClipboardという変数に渡しています。
_readme.txtの●ユニットスクリプト機能にも書いてありますが、ユニットスクリプトrequire(“SomeUnit”).SomeClass という感じで、
多くのものはSomeUnitとSomeClassは同じ名前を持っているので上のような読み込み方法がよく出てきます。
他にもユニットスクリプトの使い方はあるので詳しくはNILScript: ユニット(拡張ライブラリスクリプト)の読み込み方法を見ると良いでしょう。(withでやるやり方はWindowでよく使います)

まずはHelloWorldを書いて実行するところから始めて、クリップボードが使いたくなったら関係するサンプルとClipboard.txtを見て作ってみる(それでもよく分からないときはlibフォルダにユニットスクリプトのソースがあるので中身を見てしまうと言うのもあります)

println("Hellow World");

サンプルを見ていくと大体雰囲気は使えめると思いますが、まだまだ文例が足りないのでハマる事があります。
くだらないものを書いてもどんどん公開して、いろんな書き方が見られるようになるともっと使いやすいものになると思います!

作例

追記:現在はHome – NILScript – GitHubにほとんどのスクリプト置いてあります

というわけで自分が今までに自分が書いたNILScript。


最後の方で出てきたOAuthをNILScriptで使う方法。(上のサンプルは無視していいよ)

  • OAuth.ng (ライブラリみたいなものです)

をダウンロードして、OAuthを使うスクリプト内でinclude(“OAuth.ng”);して、後はOAuth for Greasemonkeyのラッパーライブラリ | Web scratchとメソッドの使い方は同じ。(xhrは実装してないです)
単純なサンプルで、OAuth.ngと同じフォルダに入れて実行するとOAuth認証ができます。

本当はユニットスクリプトやプラグインにした方が良いんだけどやり方がイマイチ分からなかったのでincludeにしてみた。

まとめ

良いところ

SpiderMonkeyベースなのでE4Xなども使えて文字列処理がやりやすいので、Firebugなどでマクロ的な文字列処理をしてる人とかJavaScriptで書くならこっちの方が便利かもよ。(JavaScript の新しめの機能(Array の拡張)とかも動くよ)
デフォルトでマルチストローク対応ホットキーやマウスジェスチャープラグインなどもあるので、AutoHotKeyでよくあるキーバインドを変更するとかもできるよ(自分の設定を公開とかやるといいかも)
WSHに比べてファイル操作をするものがかなり書きやすいよ。(base_io.txtを読む)
AutoHotKeyと違ってマルチバイト文字列に対応してるのでダメ文字とか日本語書けないとかに悩まされないよ。
標準関数やユニットスクリプトなどもNILScriptで書かれているので、ソースを直接読むことができる(この辺、情報不足感といいJetpackによく似てる。requireするとこも)

悪いところ

知名度が少ないので情報が少ない(→作ったものはどんどん公開して欲しい)
SpiderMonkeyにはDOM実装はないので、LooseXMLという独自のパーサーになっている。XPathに似た表記で使えたり悪いとは言い切れないけど、普段使うJavaScriptのDOMとはちょっと違うので手間取る。
GUIの表現が貧弱。Windowを使う事で基本的なウィンドウは簡単に作れるが、文字サイズなど装飾など細かい事ができない部分も多い。

NILScriptの用途として個人的に使うものを書く場合が多いと思いますが、書いたものをどんどん公開していこうぜ!という感じで〆

NILScript
NILScript配布場所
NILScriptブログ
特徴や使用例の紹介記事

OAuth for Greasemonkeyのラッパーライブラリ

Post Now browsing to TwitterをOAuth認証に対応しました | Web scratchでGreasemonkeyスクリプトの「Post Now browsing to Twitter」をOAuth認証に対応したものを作りました。
OAuthのJavaScript実装はいくつかあるみたいですがGreasemonkeyで使う感じになってるものは無かったみたいなので、OAuth.jsを使ったtwitterでのOAuth認証を手助けするラッパーみたいなものを書きました。

xAuthを使えば楽な気もしますがブラウザベースのものはxAuthを使わずにOAuthを使ってねとの事です

大部分は

を参考に書きました。
何となく分かるかも知れませんが、今回扱うアプリはApplication Typeがclientタイプのものです。

Read the rest of this entry »

Post Now browsing to Twitterの解説


Post Now browsing to Twitter
の機能解説ページ。
今見ているサイトのURLとタイトルにコメントを付けてTwitterにポストするGreasemonkeyスクリプトです。

使用方法

OAuthを使ってTwitterへポストするためまずはOAuth認証をする必要があります。
OAuth認証の手順は以下の動画を参考にして下さい。

文字で書くと、

  1. ステータスバーのGreasemonkeyアイコンを右クリック
    ユーザースクリプトコマンド→Post Now browsing to Twitter Settingから設定画面へ
  2. OAuth認証をまだしてないなら、”Sign in with Twitter”ボタンが表示されるのでクリック
  3. OAuth認証ページが開くので、そこへ行き許可(Allow)する。
  4. PINコードが表示されるのでCtrl+Cなどでコピーする。
  5. 再び設定画面に戻り、インプットボックスへPINコードをCtrl+V(ペースト)して、Comfirmボタンを押す。
  6. Success!と出たら認証完了

投稿の仕方

  1. 投稿したいページで設定したショートカットキーを押す(デフォルトはCtrl+Shift+Enter)
  2. 適当にコメントとかを書いたらEnter(設定でCtrl+Enterに変えられます)でTwitterへポストする
  3. 投稿できたらOK

この時、設定のUse selectionQuoteに✓チェックが入っていると、選択範囲を引用して投稿することもできます。
また入力画面でESCキーを押すとキャンセルできます。

設定項目

設定画面を開くにはステータスバーのGreasemonkeyアイコンを右クリック
ユーザースクリプトコマンド→Post Now browsing to Twitter Setting
をクリックします。

それぞれの設定項目の解説

  • Prefix:コメント未入力でポストした時に付ける接頭辞とする文字列
  • Use selectionQuote:選択範囲があるときにそれを「」で囲って引用するか?
  • Short URL:使用する短縮URLサービス
  • ShortcutKey: ポストするために使うショートカット 枠内でキーを押すと自動で入力されます。 デフォルトはCS+Enter
    テキストボックスで使いたいショートカットキーの組み合わせを押すだけで設定できます。
  • Post with Ctrl+Enter:Enterの代わりにCtrl+Enterでポストできるようにします。

使用できる短縮URLサービス

  • bit.ly : 短縮URLでbit.lyまたはj.mpを選んだときに使用するAPIKEYを変えられます。
    デフォルトは作者のものになっています。

OAuth Authorization : OAuth認証についての設定です。(上記の設定とは別領域に保存されています)
まだOAuth認証をしていない場合は以下のような表示になるのでOAuth認証をして下さい。
未認証

認証が既に済んでいる場合はlogoutボタンが表示されているので、OAuth認証をやり直したい場合の時などそこからOAuth関係の情報を削除できます。(Twitter側のconnection設定が解除されるわけではないので、完全に消す場合はTwitter / Connectionsから削除して下さい)

以上で設定項目は終わりです。
またサイト固有の行動としてLDRとFastladderの記事上でショートカットキーを押すと、フォーカスがある記事を投稿できます。

その他機能

  • 引用機能
    設定のUse selectionQuoteに✓チェックが入っているとき、ショートカットキーを押す前に引用したい部分を選択しておくと、選択範囲(複数の選択範囲も対応)の内容を「」で囲んでタイトルの前に付加します。
  • activityFiled(引用とタイトルが表示される部分)の編集
    activityFiledをクリックまたはコメント入力欄でTabキーを押すことで編集状態になります。
    引用したい部分を後から少し削りたい時などに使う。

インストールはこちらから

Post Now browsing to Twitter for Greasemonkey
http://userscripts.org/scripts/show/46441

 

Post Now browsing to TwitterをOAuth認証に対応しました

Twitterへ今見ているサイトをコメントと共に投稿する「Post Now browsing to Twitter」がOAuth認証に対応しました。
このGreasemonkeyをインストールする前に、以前のバージョン(2010年6月より前)のものを入れている場合はそれをアンインストールしてから、改めて「Post Now browsing to Twitter」をインストールして下さい。(以前と設定の互換が無くなったため設定ごと破棄をお勧めします)
ツール→Greasemonkey(もしくはステータスバーの猿アイコン)→ユーザースクリプトの管理→Post Now browsing to Twitterを選択→✓関連付けられた設定も削除にチェック→アンインストール

Read the rest of this entry »

twilogに日付毎のページへ飛ぶリンクをつけるGreasemonkey

twilogの日付の隣あたりに日付毎のページへ飛ぶリンクをつけるGreasemonkeyです。
要は下のスクリーンショットみたいに日付ページへ飛ぶリンクをつけるだけです。

カッとなってつけたけどデフォルトでないのが意外。

twilog date linker for Greasemonkey
http://userscripts.org/scripts/show/70683

TwitterとJavaScriptな人々

自分のTLで見る感じのJavaScriptな人々
勝手な印象、主観なのでコメントを気にしたら負け。
Firefoxはデフォルト要素なので特に書いてません。

t_trace

pbtweet、mbtweetの作者
CSS3が好きそうな人
実際にHTML5を使ったアプリケーションをつくったりしてる

m_satyrUbiquity
何かJavaScriptでも珍しい事をやってる気がする。
Griever2Opera、Firefox
userChrome.jsとか弄ってる
miya2000Opera
wnpの作者。
テクい事をやってたりするような
snj14LDRizeとかMinibuffer
hell2uEmacs、CSSに詳しそう
teramako

vimperator(vimperatorとなげくと監視されます)
JScriptとかxpcshellとか
Firefoxのあんなことやこんなことを知ってる印象

monjudohjQueryとかfirebugとかMercurial
プログラミング関係のツールが好きそう。
nanto_viJavaScriptやHTMLなど仕様に関して本当に詳しい
nantoメソッド:誰かが記事にしたことに対して既にDays on the Moonで記事になっていたことがよくある。
kuiPhoneアプリとかGoogleChromeとか
新しいことを見つけ出したりしてる印象
stillpedantKeySnailの作者。
勉強家、出てきたことに対してちゃんと学ぼうとしてる感じ。
javascripternightlyを追ってる気がする。
あんまりTLじゃ見ないけど、一行コードを残していく。
amachang最近はJavaScriptな話題はあんまりみないけど。
高速化、新しいことには手が早い
昔のプレゼンの資料どこだろ?
ofkオレオレjQueryとか。
JavaScriptの高速化について詳しい
そういえばこれ書こうと思ったきっかけ → 日本のJavaScript界隈のブログを適当かつ詳細にまとめてみようと思って挫折したけど、もうちょっと頑張ってみた – ?D of K
uupaauupaa.js(uupaa.jsはフレームワークではなくてライブラリ)の人
JavaScriptの高速化について詳しい。
黒魔術の使い手。
他とは互換が効かないような人な気がする。
azu_re自分
Greasemonkeyとかニコニコ
edvakfOpera、Google Chrome
英語圏の記事を読んでたり、新しい機能を弄ってたり、それをアウトプットしたりいくつかあるブログの更新頻度は高め
勉強家
33tombloo作者
kiva
swdyhAutoPagerize作者
os0xOpera、Google Chromeに深く関係
細かいところまで拾える人
cherenkovjetpack、Greasemonkey
hagino3000サーバーサイドJSとかExt JS
anekos猫、vimperator
xulappまだつかみ切れてない。
結構お詳しそうな様子
ConstellationTaberareloo作者、Greasemonkey
ホントよくコードを書いてる気がする。
最近はGoogle chromeでいろいろ
azu (azu_re) on Twitter
http://twitter.com/azu_re
プロフィール: azu(アズ)
Firefoxの事やソフトウェアの紹介や使い道、Greasemonkeyの作成
  • OS:Windows Vista, 7
  • ブラウザ:Firefox
  • Twitterのアカウントはこちら
  • azu_re
  • メールアドレス(Twitterの方が確実)
  • info@ドメイン名
リンク