オペレータが入力されたら相対行番号を表示

Yokohama.vimの行削除のスライドみてて、オペレータが入力されたら、その行から相対的行番号を一時的に左側に表示すればいいんではないかと思った。Vimスクリプトでそんなことできるかどうかは知らんけど。— m2ym (@m2ym) September 26, 2010という話があっ…

マルチモニタ環境でウィンドウが画面外にはみ出すのを防止

最近はディスプレイも安いので, ディスプレイを複数台並べて広い作業環境を確保している人も多いはず. うちの自宅環境も, 24インチワイドディスプレイの隣に21.5インチワイドディスプレイを縦置きにしている. 縦置きする理由は, Webブラウザを最大化表示して…

auto-fu.zshでコマンドを確定するときに不完全な補完サフィックスを無視する

zsh

auto-fu.zshのちょっとした改善.

Emacs (Viper/Vimpulse)で日本語の文節を扱う

というか、Emacsだとうまく文節ごとに削除してくれたりするんだろうか。それだったらすごいな。2010-07-30 15:38:47 via Termtterという話があったので, どうなっているか調べてみた. まず移動に関して, Emacsの単語移動コマンドforward-word/backward-word …

スマートポインタのつくりかた

cpp

2年ちょっと前にC++で書いた非侵入的参照カウント方式のスマートポインタ実装を発掘した. スマートポインタの実装にはC++の様々なマニアックな実装手法が隠れていて面白い. せっかくなので, 解説つきで晒すことにした.このスマートポインタはboost::shared_p…

Emacs (Vimpulse)でtextobj-between

textobj-between 書いた - 永遠に未完成のtextobj-betweenをEmacs+Vimpulseでも使えるようにしてみた.

Emacs (Vimpulse)でtext-objectでも使えるコメントアウトoperator

EmacsでviをエミュレートするViperを強化してVimをエミュレートするようにしたのがVimpulse. ここ最近開発が活発で, 設計もかなりスマートになって, ゆくゆくは本家Viperを置き換えることを目指すまでになっている. 入れる場合は最新版をgit cloneする.ぼち…

ThinkPad X201 TabletをSSDに換装

購入時に選択できるSSDはとても高かったので, 320GB SATA HDDを選択して購入して, 後で自分でIntel X25-M SATA SSD 80GBに換装した.

このブログのデザインを変更した

いまさらながら, デザインをいじってみた. Hatena2-darkgrayを基本として変更.

auto-fu.zshを使う+キャンセルできるようにする

zsh

zshで自動補完したい - hchbaw記を使ってみた. これはすごい!

我こそは無頼漢

新風館で地ビール祭があるというので腹も空かせたまま駆け付けてみると, 普段の夜の閑散とした物悲しさが嘘のように, ビールを飲む日本人と日本人以外のビールを飲む人々でごった返していた.

zshの履歴検索にanything.elを使う(ターミナル版)

anything.elを使ってzshの履歴検索をする - http://rubikitch.com/に移転しましたを参考に, ポップアップせずにターミナル内で動くようにしてみた.

複数のメジャーモードを文脈に応じて切り替え

multi-mode.elを使うと, 一つのバッファ内で文脈に応じてメジャーモードを切り替えることができる. けれど, カーソル位置を受け取って, 切り替えるべきメジャーモードとその有効範囲を返す関数を定義しないといけなくて, 使い方が難しい.そこで, 開始・終了…

最小限のJavaで素数を列挙(Javaで無限リスト)

以前書いた「ラムダ計算基礎文法最速マスター」では, ラムダ計算に自然数やデータ構造, 条件分岐, ループが用意されていないため, これらをラムダ項を使って模倣する方法を紹介しました. このようなことはどんなプログラミング言語でも起きうることで, たと…

はてなグループ日記でプレゼンモード

はてなグループのキーワードで使えるプレゼンモードはちょっとしたスライドを作るときにとてもべんり. でも, はてなグループを無料で使っているとキーワードはパブリックになってしまうので, あんまり馬鹿なスライドを作って公開してしまうわけにもいかない.…

Emacsサーバを適切に終了する

emacs --daemon でサーバを起動しておいて, 複数のターミナルウィンドウから emacsclient -nw することで, ターミナルモードでも単一のEmacsプロセスで複数フレームの編集ができる. これはとてもべんり. でもごく稀にサーバを再起動したいことがあって, kill…

JavaScriptで読む「ラムダ計算基礎文法最速マスター」

以前書いた「ラムダ計算基礎文法最速マスター」(以下「最速マスター」)は, 予想以上に多くの人に興味を持ってもらえたようですが, 同時に難しくてわからなかったという人も多かったようです. 反響から察するに, 構文を見慣れていない(と錯覚してしまう)こと…

GNU screenのウィンドウタイトルを自動設定

screenで開いているウィンドウの数が増えてくると, どれがどれだったか分からなくなってくる. かと言って, いちいちウィンドウに名前をつけるのも面倒. いまいるディレクトリや, 起動しているプログラムに応じて自動的に名前がついて欲しい.zshを使っている…

ラムダ計算基礎文法最速マスター

ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう.ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と…

imageLoaderをVimperatorから使う+α

d:id:tomo_snowbug:20090619:1245430454 のimageLoaderというGreasemonkeyスクリプトがなかなか素晴しいので, Vimperatorから使えるようにするついでに機能拡張してみた.

zshでvcs_infoを省略しながら表示

zsh

Git だろうと Mercurial だろうと、ブランチ名をzshのプロンプトにスマートに表示する方法 - mollifier delta blogを原形にして, 表示を工夫してみた. 主にgitを使っているのでgitの場合はVCS名は表示しない svnの場合はリビジョンが表示されることで識別で…

skksearchとrskkservの共存

やりたいこと skksearchを普通に運用 rskkservを別ポートで運用 辞書ソースとしてskksearchを使う 適宜他の辞書ソースを追加する 辞典を使う(skkserv/ebdic) Webを使う(c.f. App::SocialSKK)

Google日本語入力がやっているデータ収集方法まとめ

Web上の膨大な情報を使ってかな漢字変換を行なうGoogle日本語入力(のベータ版)がリリースされた. Web上の膨大な情報を機械的に取り扱うのはGoogleのお家芸だけれど, それだけでは変換された後の文字列しか用意できない. どうやって変換前の文字列を集めるの…

location.hrefの挙動

Firefox 3.5.5で, location.hrefに値を代入したときの挙動が, 普通に実行した場合と動的に読み込まれたjsファイルで実行した場合で違う模様. 普通に実行した場合 location.hrefに代入したURIに移動する 移動前のページがhistoryに残る 動的に読み込まれたjs…

Debian (lenny)でFirefoxをコンパイルするためにやったこと

余計なものを入れていたりするかも. 他で必要になったときに入れてあったおかげで今回は入れなくて済んだものもあるかも.

好きなエディタでFirefoxに入力

やりたいこと ブラウザの入力エリアはとても貧弱で, とくに普段からEmacsのような高機能エディタを使っていたり, Emacsのような高機能エディタのviエミュレーションモードを使っていたりするような変態さんにとって, これは耐え難い苦痛.JavaScriptを頑張っ…

HatenaDiaryFS

やたーはてなダイアリーファイルシステムできたよ\(^o^)/ - 2nd lifeを改造してみた. 変更点: 下書きに対応 タグが余計にエスケープされてしまう問題を解消(REXML::Textのバグっぽい) ファイル名をISO 8601に タイトルに*がつく 本文とタイトルの間に行間…

今日の食事

Kansai.pm #11 HTMLからの本文抽出

CPANのHTML::ExtractContentについて発表。発表資料: HTMLからの本文抽出 from Lintaro Ina 記事の表示モードを変更したせいで表示されなくなってしまったブクマ: