e2wmとcolor-moccurのバッティングをなんとかする(未完成)
e2wmの管理下でcolor-moccurがうまく動かないのでなんとかしてみようという試み。
今回はRET押してもカーソルが正しい位置に動いてくれないのを解消する。原因は推測でしかないけどgoto-lineが動いてないこと。
e2wm-configのadviceだとcolor-moccurがpop-to-bufferしてgoto-lineでカーソル動かしてから他のウィンドウを削除する流れのウィンドウ削除を無効化して、*Moccur*を開いてたウィンドウを削除してメインウィンドウにフォーカスを戻してる。これだと不完全で、selected-windowを消す前にメインウィンドウにselected-windowのバッファを表示しないといけない気がする。ついでに行番号を取得しておいてカーソルを再度移動させてやる。
あと、e2wm管理外の時もadviceが効いてcolor-moccurが使えないのでこれも修正。
以下をinit.elに追記。
(load "e2wm-config") (defadvice moccur-mode-goto-occurrence (around e2wm:ad-override activate) (flet ((delete-other-windows () )) ad-do-it ) (let ((bufname (buffer-name)) (lineno (line-number-at-pos))) (delete-window (selected-window)) (e2wm:pst-window-select-main) (pop-to-buffer bufname) (goto-line lineno))) (ad-deactivate 'moccur-mode-goto-occurrence) (add-hook 'e2wm-post-start-hook '(lambda () (ad-activate 'moccur-mode-goto-occurrence))) (add-hook 'e2wm-post-stop-hook '(lambda () (ad-deactivate 'moccur-mode-goto-occurrence)))
WiMAXをやめてフレッツ光ネクストにした
色々思うところがあってWiMAXをやめた。主な原因はこんな感じ。
- HD動画がみれない
- iOS 4とかiTunes 9.2とか、DLに時間かかりすぎ
- 日々のiPhone App更新がもたつく
- iPhone 4のA4プロセッサに回線がついていかない
- オンラインゲームはできるけど、アップデートとかダウンロードとか無理
1〜3は我慢できてたけど、切り替えを思い立ったのは4番がきっかけ。iPhone 3G -> iPhone 4で思考に操作がついてくるようになったのに、この回線の低速さはなんだと。5番はまぁ、ね。
で、折角なので回線速度を比較してみた。新しい回線はNTT東日本のフレッツ光ネクスト マンション ハイスピードタイプ(200Mbps)。プロバイダは@nifty。OCNじゃないのは価格.com経由のキャンペーンで39,000円キャッシュバックだったからで他意はなし。
自宅からのWiMAX回線速度
http://www.speedtest.jp/
- DL: 2.596Mbps
- DL: 2.92Mbps
- UL: 1.23Mbps
- RTT: 90ms
自宅からのフレッツ光回線速度
http://www.speedtest.jp/
- DL: 7.044Mbps
- DL: 81.45Mbps
- UL: 39.90Mbps
- RTT: 7ms
というわけで光ぱねぇっすw 一応speedtest.netの結果から倍速計算してみた。
- DL: 27.89倍
- UL: 32.44倍
- RTT: 1/12.86
大きい画像とかHD動画とかアプリとか、そういうのは帯域の影響が大きいけど、そこまで帯域のいらないTwitterとかWeb、iTunes Storeでもレイテンシの低さでかなり高速化した。
WiMAXの良さは3月末の引越しシーズンに即日開通できたこと…かなぁ。それ以外に自宅で使用するメリットが見つからない。
LVMのSwapパーティションのリサイズ
Ubuntu ServerをデフォルトのパーティションでインストールしたらSwap領域が12GBも割り当てられていたので、LVM上のSwapパーティションを縮小した時の記録。
Swapサイズの確認方法
$ free -m
Swapを4GBに縮小
$ sudo swapoff /dev/mapper/*-swap_1
$ sudo lvreduce -L 4G /dev/mapper/*-swap_1
$ sudo mkswap /dev/mapper/*-swap_1
$ sudo swapoon /dev/mapper/*-swap_1
lvreduceの代わりにlvextentを使うとSwapパーティションを拡張することもできます。
KeySnailでクリップボードの内容を新しいタブで開くor検索
VimperatorにあってKeySnailにない(と思ってる)個人的に必須機能の一つがクリップボードの内容を開くor検索です。vimpだと"p"キーのコマンドですね。テキストをコピーしてGoogle検索っていうフローがよくあるのでキー一発でできると非常に楽です。
そんなわけで実装してみました。"y"を押すとクリップボードの内容を新しいタブで開きます。URLっぽければ直接、それ以外はGoogleに投げます。URLの判別は適当です。
key.setViewKey("y", function (ev, arg) { var url = command.getClipboardText(); if (url.match(/\s/) || url.indexOf("://") == -1) url = "http://www.google.co.jp/search?q=" + encodeURIComponent(url) + "&ie=utf-8&oe=utf-8&aq=t&hl=ja"; gBrowser.loadOneTab(url, null, null, null, false); }, "クリップボードのテキストを開く");
MacとKeySnailとTwitterのおいしい関係
KeySnailにはYet Another Twitter Client KeySnailというTwitterプラグインがあります。このプラグインはとっても素敵なのでKeySnailユーザのTwitterユーザは使ってみるといいと思います。
閑話休題。このプラグイン、Macでタブとかウィンドウをすぐ閉じる使い方してると本領発揮できません。Macの場合Firefoxのウィンドウを全て閉じてもプロセスは残るのですが、タイマーが停まっちゃって次に開いても自動的に更新されなくなります。このままだとおいしくないので、PluginLoadedにフックを設定してウィンドウ生成時に自動更新するようにしてやります。
keysnail.jsのPRESERVEエリアに以下を追記
hook.addToHook('PluginLoaded', function() { plugins.twitterClient.updateStatusesCache(); plugins.twitterClient.updateMentionsCache(); });
これでおいしくなりました。