2011-01-01から1年間の記事一覧

Re: InputStreamからStringへの変換

こんなんでいいのかな。 InputStreamからStringへの変換 - Humanity (該当部分を抜粋) static String convertInputStreamToString(InputStream is) { final int n = 1024; byte[] b = new byte[n]; StringBuffer buf; while (is.read(b, 0, n) != -1) { buf.…

savedconfig の使い方を知った

先日 TL の流れで evilvte というターミナルエミュレータを入れてみたのだけど、build-time configuration だというのに USE フラグがぜんぜんなくて、以下のように呟いたら、 てか evilvte、build-time configuration なのになんで USE フラグ全然ないんだ…

PhantomJS ってのを入れてみた

本当に入れただけ。以下覚え書き。Gentoo。http://www.phantomjs.org/ http://code.google.com/p/phantomjs/ https://github.com/ariya/phantomjsまずは依存パッケージをインストール。 emerge qt-webkitとりあえず私の環境だとこれだけあれば動いた。これだ…

quickrun v0.5.0dev 公開した

vim

ずっと裏でごそごそやってた quickrun v0.5.0 の dev バージョンをようやく公開したよ!変更点多すぎるので別ブランチで。 互換性のない変更が多々あります。注意。さらに、とりあえずベース部分が落ち着いたので公開したけど今後もリリースまでに非互換の変…

foldmethod=expr が重い場合の対処法

vim

この前vim_fold.vim 作ったんだけど、これが結構重い。 foldmethod=expr ではその性質上折り畳みレベルを計算するために該当関数が全行に対して呼ばれる。行数が多ければ当然重くなる。呼び出されるタイミングについては help に明記されていないのだけれど…

emerge の便利機能

emerge は Gentoo で使われているパッケージ管理システム Portage のコマンドラインツール。 Gentoo ユーザーならお世話になっていると思うけど、その中から私がよく使う便利オプションをいくつか紹介してみる。 --oneshot emerge でインストールしたパッケ…

vim_fold.vim 作った

vim

Vim script には今まで fold marker を埋め込んでいたのだけど、毎回埋め込むの面倒だし、見た目もあまりイケてないので foldexpr で折り畳むことにした。https://github.com/thinca/vim-ft-vim_fold 折り畳まれる箇所 function 〜 endfunction augroup 〜 a…

ujihisa.vim に行ってきた

ujihisa.vim に行ってきた。以下てきとーなハイライト。発表タイトルは覚えてないのでこれまたてきとーです。 shadow.vim - ujihisa @ujm shadow.vim の紹介。 vimrc を disる - @kana1 @_udonchan before: https://gist.github.com/971916 @sora_h before: …

Vim のバグっぽい挙動

vim

私が今のところ把握している Vim のバグっぽい挙動。本当は vim_dev に投げるべきなんだろうけど英語書く気力とか能力とかもろもろがないのでメモ代わりにとりあえずここにまとめておく。 buftype=acwrite なバッファでの undo 通常のバッファで undo を行う…

yokohama.vim #1 に行ってきた

と言うわけで今回も行ってきた。 http://atnd.org/events/14353 今回は Emacs ユーザの方の参加も多く、なかなか楽しい交流会でした。 私はと言うと、ノートPCのGentooさんが構成が壊れてしまって起動しなくなったので修復を試みたり諦めて Windows の環境の…

operator-sequence.vim ってのを作ってみた

vim

operator、使ってますか? motion や textobj と組み合わせてあれこれできるアレです。標準だと対して数は多くないけど、operator-user を使えば簡単に定義できるし、この辺りを探せばいくつか公開されているものもあります。 ところで、複数の operator を一…

消えた g:unite_enable_ignore_case と g:unite_enable_smart_case とその代替

vim

この記事の内容は誤っていました。最後に正しい情報が追記してあります。 私の要望により unite.vim から g:unite_enable_ignore_case オプションと g:unite_enable_smart_case オプションが削除された。 責任取って、なんで消えたのかと代わりの設定方法に…

unite-vimshell/history で <C-y>で挿入する

vim

unite-vimshell/history はデフォルトのアクションが実行なのだけど、履歴を編集したい場合もあるので、<C-y> に挿入を割り当てる。 " after/ftplugin/unite.vim let s:context = unite#get_context() if s:context.buffer_name ==# 'completion' inoremap <buffer> <expr> <C-y> uni</c-y></expr></buffer></c-y>…

vimshell のヒストリ補完

vim

最近の vimshell の変更で、今まで で起動していたヒストリ補完は unite での実装で置き換えられ、今までのものは削除された。 デフォルトのアクションは execute で、履歴のコマンドを直接実行する。通常の補完のように挿入してから編集したい場合は insert…

vital.vim のモジュールの作り方

vim

前回vital.vimの紹介をしたので、vital.vim のモジュールの作り方を解説します。暫定版です。 モジュールのソースコードのファイルを作る autoload/vital/__latest__/ 以下にモジュールのソースを置きます。vital はモジュールを階層で管理する予定ですが、…

vital.vim 開発中

vim

現在、チームで vital.vim と言うのを開発しています。ある程度形になってきたので、簡単に紹介。 vital.vim とは? Vim プラグイン作者をサポートするための組み込み式のライブラリです。よって、プラグインを作らない人は知る必要はまったくないです。 Vim …

Herbert Online Judge ってのをやってみてる

http://herbert.tealang.info/プログラマのパズルゲームみたいなもの。遊び方はルールのページを見て。 ルールはかなりシンプルだけど奥が深い。 なかなか楽しいんだけど、最初は問題0005(5問目)から解けなくて、0003/0004も解けたけどトップの記録が信じら…

Boost.勉強会 #4 に行ってきた

Boost.勉強会 #4に行ってきたよ。 正直に言うと私なんかが参加していいのか怪しいくらいレベル高かった。C++ むずい! その場で内容をきちんと理解するのは難しいと悟って、とりあえず雰囲気だけでも掴もうとがっつり聞いてた。ので、メモはあまり取ってない…

Re: quickrunで即座に終了しないプログラムを動かしてもフリーズしない方法

vim

thincaさんへの質問をまとめるとこんな感じです。暇な時に返事ください。 「50ミリ秒以内に〜」の記述の意図がわからない :help quickrun-option-runmode のasync:vimprocとasync:remote:vimprocの違いが知りたい quickrunで即座に終了しないプログラムを動…

Scala でスライドパズルを解いてみた

もうすぐ ニンテンドー3DS が発売されますね! 私は買う気まんまんなんだけど、ローンチタイトルで買う予定なのは「レイトン教授と奇跡の仮面」のみ。そしてレイトン教授シリーズは買ったのはいいけどずっと積んだまま…。 私はこの手のシリーズ物は順番にや…

pathogen.vim みたいなことをする rtputil.vim ってのを作った

vim

pathogen.vim は便利なんだけど、私に必要な機能が足りなかったので、vimrc に独自のものを書いていた。 で、折角なのでその部分をプラグイン化してみようと思い立ったのが先月の中旬。すでにあるものを移すだけだしサクッっと終わるだろ、と思ってたんだけ…

txt ファイルと filetype

vim

.txt と言う拡張子はテキストファイルの拡張子なわけだけど、テキストファイルって一言で言っても色々あるわけです。 で、私ははてダの下書きを .txt で保存してたり、仕事で書いた readme.txt をこっそり reStructuredText で書いてみたりしてるので、そう…

GamePM #9 に行ってきた

GamePM#9 に行ってきたよ。 「ゲームデザインは誰のために行うのか (その2)」 - Dug 前回に LT で紹介されていた書籍、「「ヒットする」のゲームデザイン」を更に詳しく紹介。 ゲームを遊ぶユーザーにも様々なタイプの人がいて、ターゲットを知るためにもユ…

過去の記事の更新に対する私の考え

こんなことを言われた。 @thinca neocomplcacheのインクルード補完の記事なんですけど、 URL 変数名が古くて参照に難があるため、修正してもらえないでしょうか。2011-02-04 14:45:30 via Termtter to @thinca今回は特別に直したけど、私は基本的には最新の…

unite-tags を改造した

vim

時間もないし他にやることもあるし他の人のスクリプトにはあまり手を出さない方がいいと思いつつ、どうしても我慢できなくなってしまったので id:tsukkee さんの unite-tags を改造した。before: https://github.com/tsukkee/unite-tags after: https://gith…

私が facebook のアカウントを取っていない理由

たまにはこんな話でも。まあ大した理由じゃないんですが。まず、facebook は本名が基本らしいけど、私はネット上では "thinca" と言う名前で活動していてこれを public な範囲で本名と紐付ける気は毛頭ない*1。 この時点ですでにあまり前向きにはなれないの…

役に立たない 'runtimepath' の Tips

vim

最近 pathogen.vim が流行っているようです。 これは ~/.vim/bundle 以下にプラグインをディレクトリ毎にインストールできるようにするものなんだけど、実は runtimepath にはワイルドカードが使えるので、複雑なことをしない場合は以下の 1 行で目的を達成…

commit の -C を使ったときに現在時刻でコミットする

git

以前 commit --amend 時にコミットログの入力を省くって記事を書いたんだけど、その時に書いた --date=now って言う元々 man にも載ってない怪しさ満点の指定方法が使えなくなってた。 で、なんとかならんのか、と思ってはたまた何気なく --date= と空を指定…

local_vimrc の焼き直し localrc.vim 書いた

vim

ファイルを読み込んだ際にそのファイルのある位置から上に辿っていって特定のファイルを探し、見付かったら source する、いわゆる local_vimrc なプラグイン。 既存のスクリプト 既存ですでに結構ある。まずはそれらを簡単にまとめ。 ちなみにどれもソース…