A Day in the Life

2006-05-24

それPla

$ egrep 'それ ?Pla' log/plagger-ja/* |awk -F' ' '{print $2}'|awk -F':' '{print $2}'|tr -d '>)'|ruby -pe '$_.gsub!(/^(\w\w\w).*/, "\\1******")'| sort | uniq -c | sort -nr
     20 miy******
     14 ots******
     11 Yap******
      7 tak******
      3 s_n******
      2 tok******
      2 miz******
      2 hsb******
      1 nao******
      1 nag******
      1 ken******
      1 drr******
      1 clo******

雨だ

外でたらわりかし小雨だったのでチャリで帰った途中中目黒あたりで本降りになって濡れまくった。。。

雨だ

帰るのダルー

Greasemonkey の GM_setValue を利用した Hash の保存

# 保存
GM_setValue("sid_hash", sid_hash.toSource());
# 復元
var sid_hash = eval("("+GM_getValue("sid_hash")+")") || {};

from http://la.ma.la/misc/userjs/ldr_add_thumbnail.user.js

Ruby のユーザスレッド

ヒゲヲにいろいろ教わる。なるほど。

require 'resolv-replace'

しただけでめちゃくちゃ速く(並列で動いてるとこに影響がなくなった)なって感動。

追記:て以前 RedHanded » Speeding Up Net::HTTP, OpenURI or Any Other TCPSocket Offspring ぶっくまってるじゃん!!!

ここスタイルが見にくい

人としてありえない云われた。みるなよウンコ!

テレポテーション / capsule

vim7 新機能の説明

あっちで出そうと思ったけど途中書きかけで放置してて続き書く気もなくなったのでこっちで書いとく。

:h new-7

new-vim-script

vim スクリプト周りの説明ですが、vim スクリプト書けないでよく解りません…。List, Funcref 型や let での +=, -=, .= 演算子の追加 などが行われたようです。id:motemen が List あると超便利になりますよ!とか云ってた気もします。

また、vimball と呼ばれる vim プラグインのパッケージングが加わりました。.vba ファイル開いて、

vim PackageName.vba
:so %

のようなコマンドで plugin やら document やらを適切なディレクトリにインストールしてくれます。また、vimball の使い方も簡単で、自作の plugin やドキュメントなどを runtimepath においておきます。

~/.vim/plugin/example.vim
~/.vim/doc/example.vim

次に、そのファイル名から runtimepath をのぞいた文字列を作り

plugin/example.vim
doc/example.vim

その文字列を範囲選択して

:MkVimball example.vba

と MkVimball コマンドで vimball ファイルを作ることができます。

Spell checking

スペルチェック機能が加わりました。使ってないのでよく解りませんが、辞書ファイルなどからチェックが可能になり、[s などのコマンドでエラー箇所に飛べるみたいです。

Omin completion

インテリジェンスな補完を行う機能が加わりました。デフォルトでは Ctrl-X Ctrl-O で補完が可能になります。VIMRUNTIME/autoload/*.vim に filetype のファイルがあり、その中で *complete#Complete* という関数(php なら phpcomplete#CompletePHP )が定義されていると利用できるようになります。

例えば JavaScript で

document.getE[tab]

と押したときは

document.getElementById(
~        getElementById(
~        getElementsByName(
~        getElementsByTagName(

と補完候補が表示され補完が行えます。また今現在、次の形式がサポートされています。

  • C
  • (X)HTML with CS
  • JavaScript
  • PHP
  • Python
  • Ruby
  • SQL
  • XML

php の Omni 補完はめっちゃ強まってます(参考)が、vim だと遅くて話にならなかったりします、、、。(gvim でなんとか)

MzScheme interface

MzScheme のインタプリタがサポートされました。--enable-mzschemeinterp してコンパイルすると使えるようになります。

これで mzscheme の中から vim を弄ったり、:mzf で選択範囲を実行したりといったことができるようです。

Printing multi-byte text

マルチバイト文字を PostScript を使ったときに印刷できるようになったみたいです。

Tab pages

ネイティブでタブがサポートされました。以下簡単な使い方です。

vim -p foo.txt bar.txt baz.txt
# おのおののタブでファイルを開く
:tabe foo.txt
# foo.txt を新しいタブで編集
gt
# 次のタブへ
:tabn
# 次のタブへ
:tabp
# 前のタブへ
:tabonly
# そのタブのみにする
:tab ball
# バッファをすべてタブで開く
:tabs
# タブの一覧表示
:h tabpage
# タブ機能のヘルプ

個人的には MiniBufExplorer の方が今のところ使い勝手がよいです。

Undo branches

undo や redo を時系列で戻せる機能がつきました。例えば 30 秒前まで遡りたければ、

:earlier 30s

5分前まで遡りたければ

:earlier 5m

で戻ることが可能です。この undo は undolevels によってどこまで undo の履歴を保存しておくか(default 1000)なので、数百時間前まで戻したいような人は、set undolevels で多めに設定しておくと良さそうです。

World Fabrication / capsule

Array のランダム化

http://d.hatena.ne.jp/ha-tan/20060519/1148334291

な、なるほど。

>> (1..10).to_a.sort_by{ rand }
=> [4, 8, 3, 7, 9, 1, 5, 10, 6, 2]

スプリンクラー / 矢野顕子

ですくとぷ

動くようになったはいいけどCPUファンの制御ができねええええ!!!!BIOS にも無いし、SpeedFan 使っても変更できへん…。

Athlon 64 といえば C'n'Q で CPU 使ってないときはファンの回転数下げて静穏に、つーのが重要なのに。。。あーーーーもう

記事の一覧 >