ほとんど見た目も操作も設定も拡張スクリプトも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)
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をどけるようにして本文は表示されます。