ほとんど見た目も操作も設定も拡張スクリプトもVimなTwitterクライアントを 作ってみた。まだまだ未完成。Cocoaと名づけた。UserStreamAPIを基本的に使う仕様。 ファイル構造。 Cocoa.exe ... 本体 vimrc.cocoa ... 設定ファイル。(.vimrcみたいな) /cache ... 中に画像キャッシュ一杯貯めこむフォルダ 表示について。 左側にタイムライン(テキストファイル)を、右側に画像などを表示。 アイコンの画像については、テキストファイルとして開いてみると <img src="...">というおもいっきりhtmlタグとして書いてある。 Cocoaではこれをアイコン画像として32*32pxで表示する。サイズとか そういうのは設定コマンドを用意してる。気分でその場だけ大きくしたい とかあるからね。 ああ、あとコレ一番面倒だった。 in reply to があった場合には、"@user"という文字列だけ別の行に 抜き出して、そいつのツイートを折りたたみで表示した。 zc,zo,<CR>で開閉できる。 基本的な操作方法 Vimと大体同じ、を目指してる。試してみて。 一応カーソルの移動、文字列の撰択にマウスは使えるけど… 使わないよね。hjklwb()で移動できて、{}は特にツイート単位で 移動するのに便利。 コマンドなど。 :h[elp] [cmd] ヘルプ。 :post 本文 半角スペースで開けて本文をpostに引数として渡す。 ご察しの通り投稿する為のコマンド。 デフォルトでは<CR>で投稿。 改行は<S-CR>でする。 後述の:set enter で投稿の為のキーは変更できて、 <S-CR>に変更した場合は<CR>が単に改行として扱われる。 !p :post が自動で入力される。postの後ろには半角スペースが入ってる。 それでもpostする度に!pを頭につけるのが面倒ならもう デフォルトの投稿が&lr;CR>の状態ならば :map <CR> <CR>!p とでもしたらいいんじゃないですか? 常にツイート入力待受状態ですよ !r カーソルが今乗ってるツイート(フォーカスしてるターゲットとする) に対してのリツイート !R ターゲットをRT・解除(トグル) !Q ターゲットをQT(非公式RT) !@ ターゲットのツイートを丸パクる! !f ターゲットをお気に入り・解除(トグル) リンクの上で<CR> 画像(拡張子で判断)なら画像を右ウィンドウに表示。 その他ならブラウザに渡す。 twitpicとかそういうのにも対応しよう、と思った。 右ウィンドウ(画像表示用)にカーソルを移動して :w[rite] 画像を保存する。 :set imgdir で保存先ディレクトリを指定しておくこと。 :w test.jpg とすればそのディレクトリにtest.jpgとして保存。 単に :w とすれば元の名前で保存。 :w ~/My Picture/test/ とディレクトリを指定してもよい。 :Home Homeのタイムラインを表示 :List 自分が作った・自分が入れられたリストの一覧を表示 カーソル移動で撰択して<CR>でリストのタイムラインを表示 :List {user} {listname} とするとuserが作ったlistnameというリストのタイムラインを 一発で表示する。{}という波カッコはいらないからね? :Rep[lies] 自分へのリプライ :Fav[orites] 自分がファボったの一覧 :follow {user} userをフォローする。 :follow cnoremap こんな風に。 :unfollow {user} :block {user} アンフォロー、ブロック。 :sougo {user1} {user2} user1とuser2が相互フォローかどうかを調べる。 setオプション Vimでもあるオプションとして guifont, transparency, lines, columns enter :set enter=<S-CR> :postの決定キーを設定する。(投稿内容に改行を含めたいから) imgdir :set imgdir=~/My Picture/ 画像保存先のデフォルトを設定する。 iconsize :set iconsize=32px iconをどけるようにして本文は表示されます。
コメ(0) | トラ(0)