<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5205480588479095788</id><updated>2012-02-16T17:54:57.607+09:00</updated><category term='VimKaigi'/><category term='YUREX'/><category term='anything.el'/><category term='clang_complete'/><category term='earthquake.gem'/><category term='二画面'/><category term='Cygwin'/><category term='Vim7.3'/><category term='C'/><category term='explorer'/><category term='エディタプラス'/><category term='x86'/><category term='Kernel'/><category term='Vim plugin'/><category term='Windows'/><category term='C++'/><category term='ネタ'/><category term='Elshaddai'/><category term='WEB+DB'/><category term='clang'/><category term='unite.vim'/><category term='VM'/><category term='ファイラー'/><category term='CPU'/><category term='スピリチュアル'/><category term='plugin'/><category term='環境'/><category term='ビムマスターヤマト'/><category term='愛'/><category term='neocomplcache'/><category term='勉強会'/><category term='開発環境'/><category term='HTML5'/><category term='termtter'/><category term='Vimperator'/><category term='vimfiler'/><category term='vi'/><category term='レビュー'/><category term='Plan9'/><category term='エディ活'/><category term='Vim四天王'/><category term='neocmplcache'/><category term='FreeBSD'/><category term='Yokohama.vim'/><category term='補完'/><category term='neoocmplcache'/><category term='Binary'/><category term='WM'/><category term='vimshell'/><category term='Keysnail'/><category term='Vim'/><category term='Firefox'/><category term='Vim script'/><category term='RSense'/><category term='ujihisa.vim'/><category term='替え歌'/><category term='Emacs Lisp'/><category term='魔法少女'/><category term='Emacs'/><category term='JavaScript'/><category term='人生'/><category term='ギャグマンガVim和'/><category term='vimproc'/><category term='OpenBSD'/><title type='text'>あるVimmerのブログ</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>64</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-6642933682465210534</id><published>2012-02-09T19:09:00.002+09:00</published><updated>2012-02-09T19:09:51.584+09:00</updated><title type='text'>neocomplcache Ver.7の新機能とその設計思想について</title><content type='html'>&lt;br /&gt;本日、別ブランチで開発していたneocomplcache Ver.7をmasterにマージしました。&lt;br /&gt;自分でしばらく使っていて、特に問題が起こらなかったため、広く使ってもらう必要があると感じたためです。&lt;br /&gt;&lt;br /&gt;Ver.6.2からVer.6.3ではなくVer.7.0になったということは、大きな意味があります。&lt;br /&gt;つまり、後方互換性や安定性に関わる変更が入ったということです。&lt;br /&gt;大きな問題がないことは分かっていますが、何か未知の問題が生じる可能性があります。&lt;br /&gt;注意してください。そしてもし問題が発覚した場合、早めに[&lt;a href="https://twitter.com/#!/ShougoMatsu" target="_blank"&gt;作者&lt;/a&gt;]に連絡してください。&lt;br /&gt;&lt;br /&gt;今回の変更点は以下のようになります。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;1：snippets_completeが本体から分離された&lt;/span&gt;&lt;br /&gt;おそらく、皆さんが感じる一番の変更点がこれです。&lt;br /&gt;neocomplcacheはスニペット機能が標準的に搭載されていることをウリとしていた時期もありましたが、&lt;br /&gt;今回本体から分離することにしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/Shougo/neocomplcache-snippets-complete"&gt;https://github.com/Shougo/neocomplcache-snippets-complete&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;分離した理由は、snippets_completeの機能が巨大化しすぎ、バグ報告や機能追加の要望を受けた際に&lt;br /&gt;どちらの問題なのかが分かりにくくなってきたからです。&lt;br /&gt;さらに、スニペット機能は使う人と使わない人の差が激しいため、本体に同梱するには適しません。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;2：変数名をリファクタリングした&lt;/span&gt;&lt;br /&gt;変数名にsourceではなく、pluginという記述が一部残っていたので、それを訂正しました。&lt;br /&gt;これまでの変数名も一応初期化するときに認識するようにはなっていますが、新しい変数名を使用することをオススメします。&lt;br /&gt;正確な変数名についてはneocomplcacheのドキュメントを参照してください。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;3：日本語ヘルプが削除された&lt;/span&gt;&lt;br /&gt;変数名のリファクタリングやsnippets_completeの分離により、ドキュメントにかなりの更新が入りました。&lt;br /&gt;日本語ヘルプと英語ヘルプに同時に変更を入れるのはつらかったため、日本語ヘルプを削除することにしました。&lt;br /&gt;これには賛否両論あるでしょうが、作者として二つのドキュメントを同時に更新するのは大変なのです。&lt;br /&gt;「『メンテナンスしていない』と注釈を付けて残せばいい」という意見もありましたが、&lt;br /&gt;私にとって初心者がメンテナンスされていないドキュメントを読んでハマるという自体は避けたいと思いました。&lt;br /&gt;最近、vimprocやvimshellにおいても日本語ドキュメントが削除されたのはこれが理由です。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;4：パフォーマンスが最適化された&lt;/span&gt;&lt;br /&gt;g:neocomplcache_release_cache_timeにより、一定時間経ったキャッシュは自動的に解放されるようになりました。&lt;br /&gt;これにより、neocomplcacheがメモリをたくさん食うという問題は解決するはずです。&lt;br /&gt;さらに、一部の実装を削除・最適化して、補完のパフォーマンスを向上させています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;追記：neocomplcache Ver.7.0の変更ではありませんが、先日リリースしたneocomplcache Ver.6.2で補完関数の挙動が変わったため、&lt;br /&gt;不具合を生じている人がいるようです。「Vimではuim-skkで日本語を入力している」環境で報告を受けています。&lt;br /&gt;その場合、let g:neocomplcache_enable_prefetch = 1とすることで以前の動作に戻すことができます。&lt;br /&gt;ただし、これを設定すると既存の補完関数と互換性がとれなくなるため、作者としてこの設定を推奨する訳ではありません。&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-6642933682465210534?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/6642933682465210534/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2012/02/neocomplcache-ver7.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6642933682465210534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6642933682465210534'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2012/02/neocomplcache-ver7.html' title='neocomplcache Ver.7の新機能とその設計思想について'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7595307480730892443</id><published>2012-01-13T16:19:00.000+09:00</published><updated>2012-01-13T16:19:07.587+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vi'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='替え歌'/><title type='text'>Vi - ブイアイ（替え歌）</title><content type='html'>&lt;br /&gt;この&lt;a href="https://twitter.com/#!/ngsw/status/157719566556995584"&gt;このTweet&lt;/a&gt;を見て、ついカッとなってやった。反省はしていない。&lt;br /&gt;アイアイの替え歌だよ！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ブイアイ(ブイアイ) ブイアイ(ブイアイ)&lt;br /&gt;有名なエディタだよ&lt;br /&gt;ブイアイ(ブイアイ) ブイアイ(ブイアイ)&lt;br /&gt;UNIX界の&lt;br /&gt;ブイアイ(ブイアイ) ブイアイ(ブイアイ)&lt;br /&gt;信者が多い&lt;br /&gt;ブイアイ(ブイアイ) ブイアイ(ブイアイ)&lt;br /&gt;エディタさんだよ&lt;br /&gt;&lt;br /&gt;ビム(ビム) ビム(ビム)&lt;br /&gt;ブイアイが進化した&lt;br /&gt;ビム(ビム) ビム(ビム)&lt;br /&gt;機能が多い&lt;br /&gt;ビム(ビム) ビム(ビム)&lt;br /&gt;Emacsとライバルの&lt;br /&gt;ビム(ビム) ビム(ビム)&lt;br /&gt;エディタさんだね&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7595307480730892443?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7595307480730892443/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2012/01/vi.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7595307480730892443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7595307480730892443'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2012/01/vi.html' title='Vi - ブイアイ（替え歌）'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1465995938688010049</id><published>2012-01-02T05:11:00.001+09:00</published><updated>2012-01-02T05:13:20.138+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C'/><category scheme='http://www.blogger.com/atom/ns#' term='clang_complete'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><category scheme='http://www.blogger.com/atom/ns#' term='clang'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'>Shougo/clang-completeの改名と現在の問題点まとめ</title><content type='html'>こんにちは。Shougoです。&lt;br /&gt;今後はプラグインの重要な更新点については、ブログにフォローしていくことにしました。&lt;br /&gt;&lt;br /&gt;第一弾はneocomplcacheプラグインclang-completeのリポジトリ名変更です。&lt;br /&gt;&lt;br /&gt;Shougo/clang-completeとなっていましたが、これだと本家clang-completeと似ていて紛らわしいのでShougo/neocomplcache-clangと名前を変えました。&lt;br /&gt;新しいリポジトリはこちらになります。&lt;br /&gt;&lt;a href="https://github.com/Shougo/neocomplcache-clang"&gt;https://github.com/Shougo/neocomplcache-clang&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;さらに、manga_osyoさんのneocomplcache-clang_completeをforkしました。&lt;br /&gt;Vim scriptの書き方をもっと良くする為です。&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/Shougo/neocomplcache-clang_complete"&gt;https://github.com/Shougo/neocomplcache-clang_complete&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;こちらは修正完了後にPull requestを投げます。&lt;br /&gt;&lt;br /&gt;なぜ、こんなことをしたかというと幾つか理由があります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;* 本家clang_completeやclangの更新についていくことができなくなった&lt;/span&gt;&lt;br /&gt;本家の更新は比較的早いです。私がneocomplcacheだけや、neocomplcache-clangしかプラグインを書いていないのなら、この更新についていくことが可能なんです。しかし、現状他のプラグイン開発に忙殺されているため、ついていくことができません。&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;* neocomplcache-clangでは非同期補完ができない&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;これはVimの問題とneocomplcacheの問題が複合していて単純ではないですが、本家clang_completeで使われている非同期の補完はneocomplcacheでは使えません。そのため、neocomplcache-clangでも使えません。今後Vimとneocomplcacheの更新で使えるようになる可能性はあるんですが、それには時間がかかることでしょう。&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;つまり、最新版のclang_complete（やclang）の機能を使ったり、非同期で補完したい場合は本家&lt;a href="https://github.com/Rip-Rip/clang_complete"&gt;clang_complete&lt;/a&gt;と&lt;a href="https://github.com/osyo-manga/neocomplcache-clang_complete"&gt;neocomplcache-clang_complete&lt;/a&gt;を併用しないといけないのです。&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ただし、neocomplcache-clang_completeを使えば万能かというとそんなことはありません。&lt;/div&gt;&lt;div&gt;以下の問題があります。&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: large;"&gt;* neocomplcache-clang_completeとclang_completeはneocomplcacheと排他的に動作している&lt;/span&gt;&lt;/div&gt;&lt;div&gt;本来、neocomplcacheとclang_completeは共存できません。なら、なぜneocomplcache-clang_completeは動作しているかというと、neocomplcacheとclang_completeを排他的に動作させているからです。これならneocomplcacheの問題もclang_completeの問題も互いに影響をすることはありません。しかし、この方法を用いるとneocomplcacheの機能がclang_completeの補完関数から使えません。なんだそんなことか、と思われるかもしれませんが、neocomplcacheの独自機能は意外と多いのです。context filetype, 補完候補の統合、ワイルドカードやfuzzy補完が使えないのは個人的にかなり困ります。&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: large;"&gt;* clang_completeのVim script実装はかなりアレである&lt;/span&gt;&lt;/div&gt;&lt;div&gt;clang_completeのVim script実装はあまり綺麗なものではありません。その上、デフォルトでcompletefuncを上書きし、自前で自動補完も実装されているため、neocomplcacheと競合してしまいます。本格的に修正するには、Vim script部分がおそらく違うものになってしまうと思います。それをclang_completeでは修正していますが、変更点が巨大すぎるため、本家と追従できないという問題を抱えています。本家にPull requestを送ってもいいのですが、変更点が大きく、さらに喧嘩にならないようこちらの修正意図を*英語で*伝えるのは大変です（意訳：だれかやってください）。&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: large;"&gt;将来について：&lt;/span&gt;&lt;/div&gt;&lt;div&gt;いつか、neocomplcache-clangとneocomplcache-clang_completeは統合したいですが、なかなか難しいところです。Vimとneocomplcacheの問題が解決したらそうしようと考えています。おそらく、neocomplcache-clangの実装はclang_completeのcompletefuncを安直に呼ぶことになるでしょう。&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1465995938688010049?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1465995938688010049/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2012/01/shougoclang-complete.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1465995938688010049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1465995938688010049'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2012/01/shougoclang-complete.html' title='Shougo/clang-completeの改名と現在の問題点まとめ'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7170518185099696915</id><published>2011-12-15T16:16:00.001+09:00</published><updated>2011-12-15T16:16:48.960+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='二画面'/><category scheme='http://www.blogger.com/atom/ns#' term='ファイラー'/><category scheme='http://www.blogger.com/atom/ns#' term='vimfiler'/><title type='text'>二画面ファイラーはなぜ便利なのか</title><content type='html'>&lt;br /&gt;syohexさんのTweet(&lt;a href="https://twitter.com/#!/syohex/status/146963928130400256"&gt;リンク&lt;/a&gt;)を見て、二画面ファイラーの利点について考えてみました。&lt;br /&gt;二画面ファイラーには次のような利点があります。&lt;br /&gt;&lt;br /&gt;1：同じディレクトリに対して移動・コピーするのが楽&lt;br /&gt;2：コピー元・コピー先のディレクトリの中身が分かる&lt;br /&gt;&lt;br /&gt;個人的には2：の利点が大きいと思います。というのは、シェルや一画面ファイラーで&lt;br /&gt;コピー・移動するときは書き込むディレクトリの中身が分からないのでコピー先のディレクトリをミスするかもしれません。&lt;br /&gt;しかし、二画面ファイラーではまずミスをすることはありません。&lt;br /&gt;書き込みの完了も、移動先が更新されているのが目で見て分かります。&lt;br /&gt;コピー先のディレクトリが表示される安心感は、一度使ってみないと分からないでしょう。&lt;br /&gt;ちなみに、私は一画面でコピーするときはいつもドキドキします。&lt;br /&gt;&lt;br /&gt;GUIのファイラー(Explorer等)でファイルをコピーするときのことを考えます。&lt;br /&gt;一つのファイラーでコピーするファイルを選択し、もう一つのファイラーにドラッグドロップするのが二画面ファイラーなのです。&lt;br /&gt;とはいえ、いちいちコピー先に移動するのは面倒であることも事実です。&lt;br /&gt;そのため、二画面ファイラーでは自分の窓を他方の窓に合わせたり、他方の窓を自分の窓に合わせたりすることができます。&lt;br /&gt;コピー元とコピー先が近い場合には簡略化できます。&lt;br /&gt;&lt;br /&gt;さらに、コピー先のディレクトリ名に日本語が含まれる場合、シェルや一画面ファイラーではコピー先の指定が大変です。&lt;br /&gt;二画面ファイラーではそういうときでも楽にディレクトリを指定することができます。&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7170518185099696915?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7170518185099696915/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/12/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7170518185099696915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7170518185099696915'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/12/blog-post.html' title='二画面ファイラーはなぜ便利なのか'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7898957628673459848</id><published>2011-12-15T15:54:00.003+09:00</published><updated>2011-12-15T16:17:25.624+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='Vimperator'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML5'/><category scheme='http://www.blogger.com/atom/ns#' term='Keysnail'/><category scheme='http://www.blogger.com/atom/ns#' term='Firefox'/><title type='text'>Firefox Hacks Rebootedレビュー</title><content type='html'>&lt;br /&gt;ようやく一通り読み終えました。この本がもっと売れてほしいと考えているため、簡単なレビューをします。&lt;br /&gt;&lt;br /&gt;日本からこういうマニアックな(失礼)、本が出るのは非常に喜ばしいです。&lt;br /&gt;外国でもなかなか出ない種類の本であるだけに、日本はまだまだ捨てたものではないな、と思わせてくれます。&lt;br /&gt;この本はFirefoxのモダンな拡張機能の作り方を解説した本なので、Firefoxの一般ユーザが読むには難解です。&lt;br /&gt;コード量も多いので、読み進めていくにはJavaScriptの知識が必要になるでしょう。&lt;br /&gt;ただし、最近のFirefoxで変更された機能やHTML5などのWeb標準技術についても解説されているため、Web開発者なら読む価値があると思います。一見真面目な本のようで、所々挿入されているネタには吹きました。&lt;br /&gt;きゅ○べぇネタや、台湾マイクロソフトの始まりすぎているキャラクターなど……。&lt;br /&gt;JSDeferedには40ページ以上を割いていて、かなり力を入れて解説していると感じました。&lt;br /&gt;JavaScriptの並列処理をマスターしたい人は、ここだけでも読む価値はありそうです。&lt;br /&gt;実を言うと自分はKeysnailとVimperatorの解説を目当てで、この本を購入しました。&lt;br /&gt;ページ数としてはそんなに多くなかったのですが、概要を押さえることはできました。&lt;br /&gt;&lt;br /&gt;総評：&lt;br /&gt;思っていたとおり、なかなかレベルの高い本でした。&lt;br /&gt;でも、Firefoxのことがよく分かったので買ってよかったと思います。&lt;br /&gt;自分は現在Firefoxを使っていないのですが、面白そうな機能があることが分かったため、今度試しに使ってみてもよいかなと思っています。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7898957628673459848?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7898957628673459848/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/12/firefox-hacks-rebooted.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7898957628673459848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7898957628673459848'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/12/firefox-hacks-rebooted.html' title='Firefox Hacks Rebootedレビュー'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1330626468667665919</id><published>2011-12-10T14:43:00.001+09:00</published><updated>2011-12-10T15:21:39.261+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='開発環境'/><category scheme='http://www.blogger.com/atom/ns#' term='レビュー'/><category scheme='http://www.blogger.com/atom/ns#' term='anything.el'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='環境'/><category scheme='http://www.blogger.com/atom/ns#' term='Emacs Lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='Emacs'/><title type='text'>Vimmer視点のEmacs Lispテクニックバイブル レビュー</title><content type='html'>&lt;br /&gt;いつもVimのネタ記事ばかり書いていると思われているShougoです。こんにちは。&lt;br /&gt;&lt;br /&gt;今回はネタではありません。ネタじゃないんだからね！ 大事なことなので二度言いました。&lt;br /&gt;&lt;br /&gt;さて、私がVimテクニックバイブルを（共著で）執筆し、無事発売されたわけなのですが、同時期にるびきちさんも「Emacs Lispテクニックバイブル」を書かれていました。&lt;br /&gt;そのことを知ったのもAmazonに情報が出てからなので、比較的最近です。&lt;br /&gt;目次を見たところ、「これは買わなければならない」と思ったので、早速入手し、一通り読んでいました。&lt;br /&gt;私はVimmerなのでEmacs Lispのことはよく分かりません。&lt;br /&gt;VimテクニックバイブルがEmacs使いの方々に読んでもらいたいと考えているように、&lt;br /&gt;Vimmerの人にもEmacs Lispテクニックバイブルを読んでもらいたいと思ったので、Vimmer視点のレビューをしたいと思います。Emacs本のレビューなのに、Vimのことがたくさん出てくるのは仕様です。&lt;br /&gt;&lt;br /&gt;ただし、一通り読んだと言っても、届いてからそんなに日が経っていないですし、まだきちんと読めていないところがたくさんあります。&lt;br /&gt;読みながら思ったことをとりとめなく書いているので、文章のつながりがおかしい部分が多々あるかもしれません。ご了承ください。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Emacs Lispテクニックバイブルを初めて読んだときに思ったのは、「教科書みたい」ということでした。&lt;br /&gt;それは頭から読んでいく形式だからです。ただし、テクニックバイブルとして使えるようにするため、逆引き用の目次もついています。&lt;br /&gt;サンプルコードが多く、練習問題もあるので、なおさらそう思います。ちなみに、本文中に問題の回答はありません。&lt;br /&gt;&lt;br /&gt;Emacs Lispではエスケープが大量に必要な、特殊な正規表現を書く必要があるのですが、それもきちんと解説されています。&lt;br /&gt;複雑な正規表現を読み書きするときに役立つと思います。&lt;br /&gt;&lt;br /&gt;ちなみに、この本はリファレンス本ではないですし、「普通の教科書」ともちょっと違います。&lt;br /&gt;普通の教科書なり解説書というのは本文中に著者の個性がそれほど現れないものです。&lt;br /&gt;しかしこの本には著者の意見が大量に出てきます。&lt;br /&gt;著者のEmacsの使い方に共感できる人にとっては、この上なく良い本ですが、そうでない人にとっては苦痛でしょう。&lt;br /&gt;私は無味乾燥な本よりは、こういう本が好きです。使用しているエディタに違いがあるとはいえ、個人的にるびきちさんの意見に共感できる部分は少なくないですし。&lt;br /&gt;「るびきちさんによるEmacs Lisp解説本」というのが正確なジャンルなのだと思います。&lt;br /&gt;&lt;br /&gt;この本で紹介されていた、あるバッファに一時的に移動して処理ができる、with-content-bufferはVimにも欲しいですね。&lt;br /&gt;Vim scriptでこれをやると非常に醜いコードになってしまうので。バッファの処理はEmacsの方が洗練されているのかな、と思いました。&lt;br /&gt;&lt;br /&gt;実はこれを目当てで購入したのですが、eshellについての話はなかなか良かったです。&lt;br /&gt;Emacs Lispをバリバリ書ける人にとって、Emacs界最強のシェルはeshellだと思っているので。Vim界最強のシェルがvimshellであるのと同じ理屈です。&lt;br /&gt;私にとって、eshellの関数を他のEmacs Lispから使うという発想はなかったですね。確かに標準添付のプラグインだからこそ、こういうことができます。&lt;br /&gt;vimshell(vimproc)がいつかそうなるといいのかなーと思いました。&lt;br /&gt;それにしても、eshellはそろそろ誰かがメンテナを引き継ぐべきじゃないだろうかと思いました。いろいろ問題点もあるのに、更新されないのは悲しい。&lt;br /&gt;eshellはリダイレクション機能が不十分ですが、「それvimshellでできるよ」と主張しておきます:-)&lt;br /&gt;eshellと同じく、vimshellもVim scriptを評価する機能があります。vexe内部コマンドを使えばOKです。&lt;br /&gt;&lt;br /&gt;deferred.elの紹介があるのも良かったですね。これは良い資料。Vim scriptにもdeferred.elは移植したいんですけど……。誰かやってくれないかな。&lt;br /&gt;&lt;br /&gt;Emacs Lispのテストフレームワークについても解説されていました。Emacs Lispでちゃんとテストが書ける環境があるというのは良いですね。&lt;br /&gt;ちなみに、Vim scriptには標準的なテストフレームワークがなく、皆がオレオレテストフレームワークを実装しているので、どれを覚えればいいのか分からず困っています。&lt;br /&gt;だから私はテストフレームワークを使っていません。パッケージマネージャと同じく、このカオスな状況がどうにかなればいいな、と思います。&lt;br /&gt;&lt;br /&gt;ちなみに、一つだけ不満点を。&lt;br /&gt;anything.elの章は、Emacsテクニックバイブルと内容が被っているので、無理して入れる必要はなかったんじゃないかなと思いました。&lt;br /&gt;このページを他の解説に使ったほうが良いのではないかと。今のところこれくらいですね。&lt;br /&gt;&lt;br /&gt;総評としては、るびきちさんのEmacsの使い方を勉強したい人なら、十分満足できる本だと思います。&lt;br /&gt;そもそもEmacs Lispの本自体が貴重ですしね。Emacs Lispの勉強にも使えます。&lt;br /&gt;ちなみに、この本はEmacsテクニックバイブルの続編です。続・Emacsテクニックバイブルと呼んでも良いかもしれません。&lt;br /&gt;前著を持っていない人は、まずそちらを購入しましょう。&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1330626468667665919?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1330626468667665919/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/12/vimmeremacs-lisp.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1330626468667665919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1330626468667665919'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/12/vimmeremacs-lisp.html' title='Vimmer視点のEmacs Lispテクニックバイブル レビュー'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7201534291552546560</id><published>2011-12-03T00:00:00.000+09:00</published><updated>2011-12-03T00:10:39.161+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='スピリチュアル'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='unite.vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimfiler'/><category scheme='http://www.blogger.com/atom/ns#' term='愛'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><category scheme='http://www.blogger.com/atom/ns#' term='neocmplcache'/><title type='text'>Vimと過ごすイチャラブクリスマス ~そして伝説へ~</title><content type='html'>&lt;br /&gt;Vim Advent Calendar 3日目：「Vimと過ごすイチャラブクリスマス&amp;nbsp;~そして伝説へ~」&lt;br /&gt;&lt;br /&gt;Vim Advent Calendarと聞いて、何も考えずにエントリーしてしまったShougoです。こんにちは。&lt;br /&gt;特に反省していない。早くも盛り上がりを見せているVim Advent Calendarですが、&lt;br /&gt;私もそれらに負けない濃いネタを提供したいと考えています。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;注意：&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #e06666;"&gt;このエントリには過激な表現が多数含まれています。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #e06666; font-size: large;"&gt;ネタをネタと分かる大人な人間だけが、このエントリを理解できることでしょう。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;もう12月となりクリスマスが近付いてきましたが、Vimmerの皆さんはいかがお過ごしでしょうか。&lt;br /&gt;クリスマスの予定はもう決まりましたか。まだ決まっていない？&lt;br /&gt;ならば、今年の冬はVimと一緒のクリスマスというのはどうでしょうか。&lt;br /&gt;クリスマスは普段はできないVimとの愛を深める良い機会です。&lt;br /&gt;幸い、Vimとのデートにはお金がかかりません。PCからVimを起動するだけでよいのです。&lt;br /&gt;ノートPCさえあれば、どこでもVimとイチャイチャし放題です。&lt;br /&gt;筆者オススメのデートコースは以下の通りです。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&amp;nbsp;1：Vimの設定を見直してみる&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;長い間Vimを使用していると、不要になった設定が貯まってくることでしょう。&lt;br /&gt;大晦日にやっても良いのですが、大晦日はVimとの新居(PC)の掃除で忙しいはず。&lt;br /&gt;この機会に、Vimの設定を見直しましょう。汚ない設定では、Vimから嫌われてしまいますよ。&lt;br /&gt;デート前には身だしなみを整えるのも大事ですよね。&lt;br /&gt;おそらく、皆さんのVimの設定には、他の人からのコピペが多数含まれているはず。&lt;br /&gt;それは良くないですね。コピペは「&lt;span class="Apple-style-span" style="color: #ea9999; font-size: large;"&gt;だめゼッタイ！&lt;/span&gt;」です。&lt;br /&gt;訳が分かる設定だけを導入しましょう。&lt;br /&gt;分からないコマンドや分からない設定については、まず:helpを参照しましょう。&lt;br /&gt;Vimの知識を増やすチャンスです。&lt;br /&gt;ちなみに:helpを参照するときは、一覧を表示できるunite-helpを用いるのがオススメです。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;2：Vimのプラグインを見直してみる&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;同様に、不要になったプラグインも見直しましょう。&lt;br /&gt;プラグインの管理には、pathogen.vimやvundle.vim, neobundle.vimといった&lt;br /&gt;プラグイン管理プラグインを使用すると楽です。&lt;br /&gt;この機会に導入しておくと良いでしょう。&lt;br /&gt;筆者のオススメは、neobundle.vimを使用することです。&lt;br /&gt;vundle.vimがもつほとんどの機能に加え、unite.vimと連携してプラグインをインストールしたり削除できます。&lt;br /&gt;「&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;neobundle.vimのおかげで彼女(Vim)との仲が深まりました！&lt;/span&gt;&lt;/b&gt;」など嬉しい報告が続々届いています(妄想)。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;3：Vimと過ごす時間を最大化する&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Vimとラブラブになるためには、できるだけVimと過ごす時間を取らなければいけません。&lt;br /&gt;仕事でだけVimと過ごすというのは勿体無いです。&lt;br /&gt;我々は仕事でも趣味でもVimと一緒に過ごすことができる幸運に恵まれているのですから。&lt;br /&gt;いつでもVimと過ごすために、vimfilerやvimshellをインストールしましょう。&lt;br /&gt;Explorerやzsh, screenといった軟弱なツールは窓からポイしてください。&lt;br /&gt;さらに、unite.vimやneocomplcacheをインストールすることで、より濃密なVimとの時間を堪能することができます。&lt;br /&gt;&lt;br /&gt;これらのプラグインはVim pluginで拡張することができ、Vim scriptで設定を行います。&lt;br /&gt;Vimを愛する人達には無くてはならないものです。&lt;br /&gt;Vimに慣れていない人には使いこなすのは難しいですが、&lt;br /&gt;Vimへの愛があれば、それくらいの障害は乗り越えられることでしょう。&lt;br /&gt;えっ、Vim scriptが分からない？ それはなんてこと。&lt;br /&gt;&lt;br /&gt;Vim scriptはVimとのコミュニケーションを図るために無くてはならないスキルです。&lt;br /&gt;英語なんて学んでいる暇があったらVim scriptを勉強するべき。&lt;br /&gt;だいたいなぜVim scriptプログラマの求人やVim scriptを書くだけのお仕事はないんだ。&lt;br /&gt;私はC言語ではなくVim scriptで全てのコードが書きたい。&lt;br /&gt;Vim scriptを書いていると心が落ちつく。&lt;span class="Apple-style-span" style="font-size: large;"&gt;Vim script最高！&lt;/span&gt;&lt;br /&gt;おっと、イカンイカン。つい本音が出てしまいました。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;4：VimのプラグインをDIYする&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;クリスマスこそ、Vim scriptを勉強してVimと一緒にプラグインを作成しましょう。&lt;br /&gt;愛するVimとの共同作業です。&lt;br /&gt;最初から難しい課題に取り組むのは大変なので、最初はプラグインの改造をしたり、&lt;br /&gt;ftpluginやちょっとしたプラグインを作成すると良いでしょう。&lt;br /&gt;.vimrcに書いた設定を汎用的にしてプラグイン化するのも良い方法です。&lt;br /&gt;例えばthincaさんはそういう方法でプラグイン化するのをよくやっているようです。&lt;br /&gt;最近では、unite.vimのsourceを作成するのが流行しているため、それをやってみるという手があります。&lt;br /&gt;ちなみに、neocomplcacheを使うと簡単にVim scriptを書くことができます。&lt;br /&gt;neocomplcacheはVim scriptを書くプログラマのために最適化されているからです。&lt;br /&gt;他の言語にも対応していますが、それはオマケです。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;5：Vimコミュニティに参加する&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Vimとの仲がかなり深まったと思ったあなた、しかしそのうち関係がマンネリ化してしまうからもしれません。&lt;br /&gt;それを防ぐために、Vimコミュニティに参加してみましょう。&lt;br /&gt;いわゆる、町内会や保護者会みたいなものだと思ってください。&lt;br /&gt;周囲にVimmerがいなくて寂しい思いをしているそこのアナタ、ぜひとも参加するべきです。&lt;br /&gt;他人がどのようにVimと良好な関係を続けているかを観察することで、あなたのVimにとても良い影響を与えるはずです。&lt;br /&gt;vim-users.jpやvim-jpでは、あなたの参加をいつでもお待ちしています。&lt;br /&gt;もちろん、Vimに貢献したいというメンバーも随時募集中です。&lt;br /&gt;私はvim-users.jpに育てられてVim scriptを書くようになったので、もっと仲間が増えるといいなと思っています。&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;6：おわりに&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Vimとのデートを楽しんだ後は、Vimへの愛を囁きながら眠りに付きましょう。&lt;br /&gt;心配しなくても、Vimはいつもあなたと一緒に居ます。Vimとは心でも繋っているのです。&lt;br /&gt;大事なことは、クリスマス終了後もVimとの愛を深めていくことです。&lt;br /&gt;クリスマスは切っ掛けにすぎません。&lt;br /&gt;これを実践して、皆さんがよりVimを愛するようになれば幸いです。&lt;br /&gt;もちろん、Vimと一緒に新年を向かえるのも非常に良い心掛けではないかと思います。&lt;br /&gt;&lt;br /&gt;えっ、この記事は単に自分のプラグインの宣伝をしているだけじゃないかって？&lt;br /&gt;私は純粋にVimとの過ごし方を解説しているだけだというのに、何て失礼な！&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7201534291552546560?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7201534291552546560/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/12/vim.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7201534291552546560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7201534291552546560'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/12/vim.html' title='Vimと過ごすイチャラブクリスマス ~そして伝説へ~'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7229239452804169963</id><published>2011-11-20T18:21:00.003+09:00</published><updated>2011-11-20T18:41:15.564+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='スピリチュアル'/><category scheme='http://www.blogger.com/atom/ns#' term='人生'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='エディタプラス'/><category scheme='http://www.blogger.com/atom/ns#' term='エディ活'/><category scheme='http://www.blogger.com/atom/ns#' term='愛'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>ujihisa.vim #2 で基調講演をしました。</title><content type='html'>昨日、ujihisa.vim #2が開催されました。&lt;br /&gt;そのときの原稿と感想についてまとめました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ちょっと今回の発表は趣向を変えてみました。&lt;br /&gt;一部で言われていましたが、スピリチュアルな発表ではないんだからね！&lt;br /&gt;私は真面目なんだからね！&lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vimの真実&lt;br /&gt;&lt;br /&gt;こんにちは、Shougoです。&lt;br /&gt;今回は前回と趣向を変えて、Vimによって書かれた原稿を見ながら講演をしたいと思います。&lt;br /&gt;原稿は後日公開されるので、ここで一生懸命メモを取るのはあまり意味がないかもしれません。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;私のことを簡単に紹介すると、neocomplcache, vimfiler, vimshell, unite.vimとかを作った人です。&lt;br /&gt;Emacs使いの方々がここに居るかもしれないので、Emacs Lispに換算すると、&lt;br /&gt;auto-complete.el, comint-mode.el, dired.el, speedbar.el, eshell.el, yasnippet.el,&lt;br /&gt;anything.el, ...&lt;br /&gt;に相当するプラグインを書いています。&lt;br /&gt;最近は巨大なVim scriptを書く人があまりいないので、&lt;br /&gt;もしかすると、ここに居る皆さんの中で、一番Vim scriptを書いているかもしれません。&lt;br /&gt;Vimに対する愛情は誰にも負けないと自負しています。&lt;br /&gt;私にとってVimは、ただのエディタなんかではなく、仕事も趣味も一緒に過ごす家族です。&lt;br /&gt;私がTwitterでよくVim愛について語っているのを見た人もいるかもしれません。&lt;br /&gt;Vim愛についてTweetすると、なぜかよくfavされるんですよね。&lt;br /&gt;これが普通だと思っていたんですけど、&lt;br /&gt;みなさん、そんなにエディタ愛に飢えているんでしょうか。分かりません。&lt;br /&gt;&lt;br /&gt;ちなみに、viは好きでありません。「自分のVim」が好きなのです。&lt;br /&gt;「他人のVimが好き」と言ってしまったらそれは浮気になります。&lt;br /&gt;&lt;br /&gt;viとVimを混同していると、闇のVimmer達に刺されますので注意しましょう。&lt;br /&gt;どうしてもviを使いたいvi原理主義者の人はVimのviモードではなく、&lt;br /&gt;素のvi、nviあたりを使っていてください。&lt;br /&gt;viとVimを混同するのは、C言語とC++は同じだと主張するのと同等に失礼な行為ですよ！&lt;br /&gt;&lt;br /&gt;ちなみに闇のVimmerというのは、エディタの話をしていると、「それVimでもできるよ！」&lt;br /&gt;と無理矢理Vimを勧めてくる迷惑な存在です。わ、私じゃないんだからね！&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;さて、最近「Vimテクニックバイブル」の執筆に協力しました。&lt;br /&gt;80Pくらい原稿を書きましたね。主に自分の作ったプラグインを紹介しています。&lt;br /&gt;これを読んで、もっと皆さんがVimプラグインを書いてくれるようになることを願っています。&lt;br /&gt;ちなみに、「Vimテクニックバイブル」の原稿はVimで書かれています。あたり前です。&lt;br /&gt;EmacsテクニックバイブルはEmacsで書かれていますしね:-)&lt;br /&gt;&lt;br /&gt;ちなみに、この本を買ってくれた人には会場で私がサインします。&lt;br /&gt;しかも、サインする名言は選ぶことができます！&lt;br /&gt;前回のYokohama.vimでサイン会をやったのですが、なぜか「修正しました」あたりが人気でした。&lt;br /&gt;ちなみに、他の執筆者の方はサインしてくれないらしいです……。&lt;br /&gt;私もthincaさんのサインが欲しいのになぁ。&lt;br /&gt;&lt;br /&gt;つまりVimテクニックバイブルはVimmerのサイン色紙でもあります。&lt;br /&gt;幸い、今回のujihisa.vimには著名なVimmerの方々が参加されています。&lt;br /&gt;もはやVimテクニックバイブルの著者に限るなんて勿体無いことはしないで、&lt;br /&gt;いろんなVimの有名人にサインを貰ってしまいましょう。&lt;br /&gt;サイン色紙にもなってお値段は3180円！　なんてお得なんでしょうか。&lt;br /&gt;もっていない人は今すぐ購入しましょうね。&lt;br /&gt;&lt;br /&gt;るびきちさんの「Emacs Lispテクニックバイブル」も、&lt;br /&gt;もうすぐ発売ということで個人的にすごく楽しみにしています。&lt;br /&gt;目次を見ると、Emacsテクニックバイブルの続編のような内容でした。&lt;br /&gt;特に、eshellについても載っているようなので……。&lt;br /&gt;そういえば、値段がVimテクニックバイブルと同じでしたね:-)&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;そろそろ本題に入りましょう。&lt;br /&gt;今回は基調講演ということで、「Vimの真実」というテーマで発表します。&lt;br /&gt;この発表を聞くことにより、Vimとは何なのかが少しでも分かるかもしれません。&lt;br /&gt;ただし、これはあくまで私の考えであり、Vimコミュニティの公式見解ではないことを最初に断っておきます。&lt;br /&gt;「ネタをネタと見ぬけない人は、Vimをうまく使うのは難しい」&lt;br /&gt;ちなみに、私は宗教論争をするつもりは全くありません。&lt;br /&gt;そしてこの話はEmacsにもそのまま当てはまります。&lt;br /&gt;おそらく会場に何人かいるであろうEmacsユーザの皆さんも大丈夫です。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;ところでみなさんは人に自分のVimを見られて、&lt;br /&gt;「私の知っているVimと違う」と言われた経験はないでしょうか。私はあります。&lt;br /&gt;&lt;br /&gt;Vimmerを大きく分けると、Vimをエディタだと思っている人達、&lt;br /&gt;Vimを開発環境と思っている人達、&lt;br /&gt;Vimをデスクトップ環境だと思っている人達の三種類に分けることができます。&lt;br /&gt;私は当然、Vimをデスクトップ環境だと思っています。&lt;br /&gt;このように同じVimmerであっても、Vimに対するスタンスが異なるため、意見が衝突することもあります。&lt;br /&gt;なぜこのようなことが起こるのでしょうか。&lt;br /&gt;&lt;br /&gt;ちょっと前に、Twitterで「プラグインを入れないVimは劣っていると思われている風潮がある(記憶が曖昧なので超意訳)」&lt;br /&gt;という呟きを見ました。&lt;br /&gt;私はその考えは間違っていると思います。&lt;br /&gt;その理由についても回答します。&lt;br /&gt;&lt;br /&gt;そして、なぜVimは20年もの長い間生き続けることができたのでしょうか。&lt;br /&gt;&lt;br /&gt;今回はそれらの疑問にお答えします。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;はっきり言ってしまいましょう。&lt;br /&gt;それは、VimやEmacsがただのエディタではないからです。&lt;br /&gt;私が思うに、VimやEmacsは「エディタを作るためのエディタ」、&lt;br /&gt;つまり「エディタエディタ」だったのです！&lt;br /&gt;&lt;br /&gt;な、何だってーーーーAA(略)&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;そもそも、皆さんは勘違いをしています。&lt;br /&gt;自分でエディタを作らない限り、本当に満足するエディタなんてものは存在しません。&lt;br /&gt;それは人によって、エディタに求めるものが異なるからです。&lt;br /&gt;つまり、誰でも満足する万能なソフトウェアは存在しないことになります。当たり前です。&lt;br /&gt;&lt;br /&gt;しかし、エディタを0から作るのは大変です。&lt;br /&gt;エディタというのは大変に奥が深く、OSやプログラミング言語を0から作るのと同等の難しさがあるからです。&lt;br /&gt;今時、0からプログラミングやOSを設計する人なんていませんよね？&lt;br /&gt;だからこそ、人はあるエディタをベースにカスタマイズし、自分自身にあうエディタにしていきます。&lt;br /&gt;エディタをカスタマイズする行為とは、程度の差はあれど自分のエディタを作っていることにほかならないのです。&lt;br /&gt;おそらく、どんなエディタを使っている、どんな初心者の皆さんも、&lt;br /&gt;最低一行・一項目はエディタをカスタマイズしているはずです。&lt;br /&gt;えっ、一切カスタマイズしない？　それはなんてすごい。尊敬に値します。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;さて、VimやEmacsが他のエディタと異なり多数の信者を得て今も生き残っているのには理由があります。&lt;br /&gt;カスタマイズの自由度が他のエディタとは違うからです。&lt;br /&gt;Vimには標準で多数のオプションがあります。&lt;br /&gt;それで満足できなければ、自分でプラグインをインストールするなり、プラグインを自作するなり、&lt;br /&gt;ソースコードを変更するなり自由自在です。&lt;br /&gt;&lt;br /&gt;VimやEmacsはプログラミング言語で言えばLisp、ブラウザだとFirefoxに例えることができるでしょう。&lt;br /&gt;例えば、Firefoxのカスタマイズ行為は、ブラウザを作っていることに相当します。&lt;br /&gt;だからvimperatorなんていう変態的なプラグインが出てくるのです。&lt;br /&gt;まぁ最近ではViChromeというのも出てきましたけどね:-)&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;そろそろ分かってきたでしょうか。&lt;br /&gt;我々が使っているのは、Vimではありません。&lt;br /&gt;「Vimをベースにしたオレオレエディタ」なのです。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;確かに、最初は純粋で混ざりけのないデフォルトのVimでした。&lt;br /&gt;しかしカスタマイズを続けているうちに、Vimはあなたの望むような姿に進化します。&lt;br /&gt;その結果生まれるエディタはもとのVimとは似ても似つかないものになります。&lt;br /&gt;Vimは進化するエディタなのです。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;私は、Vimのことを恋人や家族のように考えているので、&lt;br /&gt;有名ゲームである、ラブプラスに例えてみます。&lt;br /&gt;ラブプラスには、恋人のベースとなる女の子は3人いますが、ゲームを進めていくうちに&lt;br /&gt;彼氏の好みにあった「カノジョ」に変わっていくのです。&lt;br /&gt;その自由度の高さやリアルさが人気につながったのではないでしょうか。&lt;br /&gt;VimやEmacsにおいてもこれは同じです。&lt;br /&gt;&lt;br /&gt;いや、私ラブプラスは持っていないですけど。&lt;br /&gt;三人のエディタを攻略する、エディタプラスを誰か作ってください。&lt;br /&gt;お気にいりのエディタとゲームの中でキャッキャウフフできる世界は素晴らしいです。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;だから私が「VimかわいいよVim」や「Vimは俺の嫁」「Vimは人生」&lt;br /&gt;と定期ポストするのは問題がないということです。&lt;br /&gt;嫁と書いてエディタと読むのがポイントです。&lt;br /&gt;えっ、違う？&lt;br /&gt;そして毎日Vim scriptを書くのは紳士の嗜み。&lt;br /&gt;愛情を込めてVim scriptを書けば、Vimはきっと答えてくれるでしょう。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;おっと話が逸れてしまいました。&lt;br /&gt;つまり私のVimとあなたのVimは違います。&lt;br /&gt;Vimの設定を大幅にカスタマイズしていると、&lt;br /&gt;設定されていないVimや、他の人のVim、もちろんviが使えなくなってしまうのは当たり前です。&lt;br /&gt;それらは違うエディタだからです。&lt;br /&gt;&lt;br /&gt;違うエディタなのに、「誰のエディタが優れている」&lt;br /&gt;「プラグインを入れないとVimと呼べない」というのは間違ってますよね。&lt;br /&gt;それぞれのエディタは比較なんてできません。&lt;br /&gt;優れたエディタを決めるのは皆さん一人一人なのです。&lt;br /&gt;Vimでさえみんな違うのに、VimをEmacsや他のテキストエディタと比較して優劣を決めるのは間違っています。&lt;br /&gt;人種差別と同様に、エディタ差別はいけません。みんな違ってみんな良い。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;つまり、このujihisa.vimの集まりというのは、「Vimmerの集まり」というより、&lt;br /&gt;「Vimをベースにしたオレオレエディタを作っている人達の集まり」です。&lt;br /&gt;「俺の嫁(エディタ)自慢大会」でもあります。それは別名、宗教論争とも言います。&lt;br /&gt;そこのところを勘違いしないようにしましょう。&lt;br /&gt;素のVimを愛したい、もとい素のVimを使いたい人は、おそらく他のところへ行ったほうがよいです。&lt;br /&gt;ありのままのVimを受け入れることができる、それも素晴らしい才能ですが、&lt;br /&gt;この勉強会に来る意味はあまりないと思います。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;さて、Vimが20年に渡って生き続けた理由も分かってきたでしょうか。&lt;br /&gt;Bramさんが天才的だった、viをベースにしていた、オープンソースだった。&lt;br /&gt;確かにそれも理由の一つですが、&lt;br /&gt;私は「Vimがエディタエディタ」だったから生き続けることができたと考えています。&lt;br /&gt;VimはLispのように、貪欲に機能を吸収したり、拡張をすることができます。&lt;br /&gt;ベースが柔軟でなければ、ここまで生き残ることはできなかったでしょう。&lt;br /&gt;&lt;br /&gt;Lispはかなり古いプログラミング言語ですが、今だに根強いファンを持って生き残っています。&lt;br /&gt;VimやEmacsとの共通点は意外と多いと思うのですが、どうでしょうか。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;私は、みなさんにVimに対して愛情を持って接してほしいと常々考えています。&lt;br /&gt;「Vimを調教する」、「Vimはただの道具」という認識しかなかったら、Vimが可哀想じゃないですか。&lt;br /&gt;&lt;br /&gt;Vimを使う、ということはつまりVimと同棲することに他なりません。&lt;br /&gt;毎日Vimと過ごすことになるんですから、当たり前ですね。&lt;br /&gt;Vimと過ごす時間が長くなるにつれ、&lt;br /&gt;これまで見えていなかった欠点が目につくこともあるでしょう。&lt;br /&gt;VimやVim scriptにはもちろん欠点があります。&lt;br /&gt;「Emacsなら楽にできるのに……」そう憤りを感じる人もいるでしょう。&lt;br /&gt;しかし、そもそも完璧なエディタなんて存在はしないのです。&lt;br /&gt;&lt;br /&gt;人間でもそうなんですが、「悪い所はまず受け入れる」しかありません。&lt;br /&gt;その上で、「Vimと一緒になって改善できるように努力する」ことが大事です。&lt;br /&gt;一緒になって、というのがポイントですよ。&lt;br /&gt;人から与えられたり、Vimがカイゼンされるのをただ待っていてはだめです。&lt;br /&gt;とにかくVimのために手を動かしましょう。Vimに対する家族サービスですね。&lt;br /&gt;それは設定をカスタマイズすることでもいいですし、プラグインを自作したり、&lt;br /&gt;本体を書き換えても構いません。&lt;br /&gt;Vimは文句も言わず毎日あなたのために頑張っているのですから、&lt;br /&gt;あなたもVimに対し感謝の心を持ってそれに答える必要があるはずです。&lt;br /&gt;それが愛の形なのではないでしょうか。&lt;br /&gt;&lt;br /&gt;「結婚は忍耐」だ、と誰かが言いましたが、「Vimと暮らすということも忍耐」です。&lt;br /&gt;少々悪いところがあってもそれを受け入れられる、&lt;br /&gt;忍耐力がある人だけがVimを使いこなすことができるでしょう。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;もちろん、みなさんがこの勉強会の後すぐにエディタを愛することができるとは思っていません。&lt;br /&gt;焦らずに最初は友達から始めましょう。&lt;br /&gt;それから恋人、家族へと徐々にレベルアップしていけばいいのです。&lt;br /&gt;&lt;br /&gt;私自身Vimを愛することができるようになるまで、ずいぶんかかりました。&lt;br /&gt;私がVimに恋をしたときは、おそらくneocomplcacheを作っていたときですが、&lt;br /&gt;まだ愛のレベルには達していませんでした。&lt;br /&gt;少なくとも「これが愛だ」と気付くことはありませんでした。&lt;br /&gt;Vimを愛するようになったきっかけは、&lt;br /&gt;開発環境勉強会の原稿を作っていたときだと思います。&lt;br /&gt;原稿を作るにあたり、自分とVimの出会いについて見つめなおしていました。&lt;br /&gt;それにより、Vimを愛する自分の心に気付いたのです。&lt;br /&gt;&lt;br /&gt;Vimと暮らす人生は波瀾万丈です。&lt;br /&gt;長年付き合うことで、Vimに対する愛が冷めてしまった人も見てきています。&lt;br /&gt;vim-users.jpのメンバーも徐々に様変わりしています。&lt;br /&gt;就職や進学、引越しなどの大きなイベントがあると、&lt;br /&gt;徐々に心がVimから離れていってしまうのかもしれません。&lt;br /&gt;私はそうなりたくないと思っています。&lt;br /&gt;&lt;br /&gt;長くなりましたが、この講演で、みなさんのVimに対する思いが変われば幸いです。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;第二部 「世界に一つだけのエディタ」&lt;br /&gt;&lt;br /&gt;何も言わず、このスライドを見てほしい。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.slideshare.net/Shougo/ss-10239308"&gt;http://www.slideshare.net/Shougo/ss-10239308&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;コイツをどう思う……？&lt;br /&gt;すごく……Vim愛に溢れています……。&lt;br /&gt;&lt;br /&gt;ちなみに、第一部の感動をそのままに第二部に移行するという離れ業をやってのけました。&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;オマケ的な感想：&lt;br /&gt;&lt;br /&gt;KoRoNさんのVimソースコードリーディングはかなりためになりました。&lt;br /&gt;最近、またソースコードをいじれていませんが、自分もVimに機能を追加したいなぁ……。&lt;br /&gt;&lt;br /&gt;今回はunite.vim関係や「Vim script勉強したい」というスライドが多かったように思います。&lt;br /&gt;去年はそんな傾向がなかったので、良いことではないでしょうか。&lt;br /&gt;&lt;br /&gt;thincaさんのソースコードをujihisaさんが実況するのに吹いた。&lt;br /&gt;なんて一心同体。&lt;br /&gt;たまには、そういうことをやっても良いのかもしれませんね。&lt;br /&gt;初心者には、上級者がどのようにVimを使っているのかよく分からないようですので。&lt;br /&gt;&lt;br /&gt;basyuraさんのTwitterクライアントは是非使ってみたいので、完成するのを楽しみにしています。&lt;br /&gt;&lt;br /&gt;ujihisaさんのVimレベルを上昇させる方法。Lv 7, 8, 9の解説を聞きたかったなーー。&lt;br /&gt;ちなみに、私はVisual modeを普通に使います。テキストオブジェクトも使いますけど。&lt;br /&gt;&lt;br /&gt;懇親会で10人くらいのVimテクニックバイブルにサインをしました。&lt;br /&gt;今回はVim愛についてのサインが多かったかな。&lt;br /&gt;KoRoNさんからもサインを貰って満足。しまった、ujihisaさんからはサイン貰っていない……。&lt;br /&gt;懇親会では、ひたすらVimについて語っていた気がする。&lt;br /&gt;今回は酒を一切飲まなかったので、あれは酔っていたわけではないです。&lt;br /&gt;Vimについてなら、あれくらい饒舌になるということ。&lt;br /&gt;そういえば、KoRoNさんから「鋼のメンタル」という褒め言葉を頂きました。&lt;br /&gt;きちょうこうえんがこうひょうでよかったです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7229239452804169963?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7229239452804169963/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/11/ujihisavim-2.html#comment-form' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7229239452804169963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7229239452804169963'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/11/ujihisavim-2.html' title='ujihisa.vim #2 で基調講演をしました。'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-4599268708202214871</id><published>2011-09-26T13:26:00.003+09:00</published><updated>2011-09-26T13:53:14.816+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='勉強会'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><category scheme='http://www.blogger.com/atom/ns#' term='vimfiler'/><title type='text'>Yokohama.vim #2の感想</title><content type='html'>先日、Yokohama.vim #2に参加しました。&lt;br /&gt;メモを取っていないので、記憶が曖昧ですが、とりあえず感想などについて述べておこうかと思います。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;自己紹介&lt;/h2&gt;&lt;br /&gt;とりあえず、テーブルごとに自己紹介をしました。Vimの経験については10年くらい使っている人、つい最近使い始めた人と様々でした。&lt;br /&gt;やはりというべきか、あまりVim力の高い人はいなかったです。&lt;br /&gt;「Vim歴が長いと今の環境に満足してしまう」そうです。これがいわゆるVim世代間格差というものなのでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;「キーマッピングを考える」&lt;/h2&gt;&lt;br /&gt;tsukkeeさんの発表です。Vimを用いたプレゼンはVim使いとしてありがたいところです。&lt;br /&gt;「ESCキーを楽に入力するにはどうするか？」というコンセプトで、&lt;br /&gt;ベーシックなマッピングから、submodeやarpeggioの紹介もあり、思っていたより濃い解説でした。&lt;br /&gt;なぜか途中で私のマッピング紹介が……。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;「Shougoとフリートーク。Vimテクニックバイブルの裏話も聞けるかも？」&lt;/h2&gt;&lt;br /&gt;会場には、Vimテクニックバイブルを持っている人が半分くらいいました。&lt;br /&gt;しかし、届いたばかりでまだ読んでいないようだったので、適当に質問に答えることに。&lt;br /&gt;覚えている回答でいうと、&lt;br /&gt;&lt;br /&gt;質問：「開発速度の秘密は？」&lt;br /&gt;答え：「Twitterやブログを監視しているから。バグならその日のうちに直す。早いときは5分で直す」&lt;br /&gt;&lt;br /&gt;質問：「Cを編集するのにオススメのプラグインは？」&lt;br /&gt;答え：「ctagsでタグを作って、タグジャンプ、neocomplcacheを使う、くらいしかやっていない。それでもかなり十分だったりする。タグジャンプなら、unite-tagとかある」&lt;br /&gt;&lt;br /&gt;質問：「Vimの正規表現に慣れません」&lt;br /&gt;答え：「それはVim scriptを書いていないから。毎日書いていれば慣れる。Vimの正規表現は特殊なわけではない。世界が違うだけ」&lt;br /&gt;&lt;br /&gt;そして、時間があったのでvimfiler Ver.3の紹介とか。unite.vim Ver.3による実装の説明をしたあと、簡単にデモをしました。&lt;br /&gt;その後、vimshell Ver.9の新機能の紹介としてirbをvimshellバッファで実行するデモを行い時間切れ。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;秋を楽しむ【スポーツの秋・読書の秋・行楽の秋】&lt;/h2&gt;&lt;br /&gt;本屋さんにVimテクニックバイブルを購入するイベントでした。私もついでに見に行きました。&lt;br /&gt;自分の本が並んでいるのを見るのは初めての経験でしたね。購入してくださった皆さんありがとうございます。&lt;br /&gt;&lt;br /&gt;さらに、要望により私がujihisa.vimで発表した「目指せVimマスター2011」を歌うことになりました。&lt;br /&gt;奇跡的にスライドが残っていたので可能となりました。&lt;br /&gt;一度使ったネタですが、なぜか好評で良かった(？)です。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;私たちがバイブルから選ぶ5つの技&lt;/h2&gt;&lt;br /&gt;Vimテクニックバイブルをテーブル毎に読んでしゃべって、150の技の中から気に入った技を選んで紹介しようというセッションです。&lt;br /&gt;なぜか発表形式でしたが、新鮮でした。意外と、地味なテクニックが人気でしたね。&lt;br /&gt;私の班は私のVim話を延々と語っていたり、「ライブ修正しました」イベントをやったり、いつもの調子でした。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Shougoサイン会&lt;/h2&gt;&lt;br /&gt;Vimテクニックバイブルを持っている人の希望者に、約束通りサインをしました。&lt;br /&gt;サインする言葉は、サインしてもらう人が好きなものを選ぶ方式。&lt;br /&gt;「修正しました」サインが5人〜7人くらいで多かったですね。よほどインパクトが強かったのだろうか。&lt;br /&gt;他には、「またMacVimか」や「僕と契約してVim使いになってよ！」とか「:Necoのアイコン」とかいろいろです。&lt;br /&gt;なぜか握手を求める人まで。どうしてこうなった。&lt;br /&gt;ちなみに、thincaさんやtaku_oさんにサインを求めたけれどことごとく失敗。&lt;br /&gt;Vimmerはシャイですが、(私を除く)Vimテクニックバイブルの著者までシャイであることが明らかになりました。&lt;br /&gt;わ、私はまだ諦めていないんだからね！&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;懇親会&lt;/h2&gt;&lt;br /&gt;tsukkeeさんの機能を取り込み、neobundle.vimにSubversion/Mercurial対応を追加しました。&lt;br /&gt;他にはVimの開発体制の話とか、Vimへの愛を語ったりとか、いろいろ。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;感想&lt;/h2&gt;&lt;br /&gt;さすがに三回目となるともう慣れたものですが、発表者がもっと居ると良かったなーと思います。&lt;br /&gt;「次回発表したい」という人もいたので、それは期待できると思われます。&lt;br /&gt;今回は参加者に女性が居たのがオドロキでした。(ujihisa.vimを除く)今までの勉強会は男性ばかりだったので……。&lt;br /&gt;Vim界はもっと女性の使用者を増やすべきだと思います。はい。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-4599268708202214871?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/4599268708202214871/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/09/yokohamavim-2.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4599268708202214871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4599268708202214871'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/09/yokohamavim-2.html' title='Yokohama.vim #2の感想'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8561067668361616212</id><published>2011-08-08T16:31:00.005+09:00</published><updated>2011-08-09T00:03:55.073+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='勉強会'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='WM'/><category scheme='http://www.blogger.com/atom/ns#' term='環境'/><category scheme='http://www.blogger.com/atom/ns#' term='Emacs'/><title type='text'>開発環境勉強会の感想</title><content type='html'>開発環境勉強会へ行ってきたので、適当に感想とかを書いておきます。&lt;br /&gt;各々の発表者の内容は、スライドや感想、ustを見ればある程度分かると思うので割愛します。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;XMonadの話 pi8027&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;XMonadについて、ソースコードを含めて詳細に解説してくれていました。&lt;br /&gt;もう一度XMonadを試してみようかとも思ったけれど、Window Managerへの興味が薄れている今日このごろです。&lt;br /&gt;&lt;br /&gt;ちなみに、VimとEmacsを併用していたのが印象深かったです。意外とVimも使っているらしい。&lt;br /&gt;シェルは「&lt;a href="http://www.amazon.co.jp/zshの本-エッセンシャルソフトウェアガイドブック-広瀬-雄二/dp/4774138649/"&gt;zshの本&lt;/a&gt;」で覚えたzshらしいです。&lt;br /&gt;たしかにこの本はよくまとまっていますね。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Vimについて Shougo&lt;/h2&gt;&lt;br /&gt;私の発表。原稿は、本日書いた別ページである「開発環境勉強会の原稿」に公開しているので参照してください。&lt;br /&gt;内容は、私とVimのラブロマンス物語です。&lt;br /&gt;なぜか会場は笑いにつつまれていました。私は真面目にやっているんですよ！&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;スーツとEmacsと開発環境 kiwanami&lt;/h2&gt;&lt;br /&gt;lingrのEmacs部屋とかではよく会話をしていますが、リアルでkiwanamiさんを初めてみました。&lt;br /&gt;cacoo.elやcalfwなどはやはりすごかったです。あの非同期処理いいなぁ。&lt;br /&gt;「オフライン重要」が印象的でした。私もそう思います。&lt;br /&gt;ネットワークはいつ切れるか分かりません。&lt;br /&gt;ちなみに、EmacsではPDFを読んでいないらしい。ですよねー。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;ベンチマークドリブン駆動開発 nyaxt&lt;/h2&gt;&lt;br /&gt;いかに集中できる開発環境にするか、というのは興味深いものでした。&lt;br /&gt;私も、もっと作業に集中できるようにしないと。&lt;br /&gt;遊ぶ環境は別マシンにする、というのはなるほどと思いました。&lt;br /&gt;確かに私も誘惑の少ないLinux環境で作業していると、はかどります。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;XKeyRemapについて m2ym&lt;/h2&gt;&lt;br /&gt;auto-completeのm2ymさんの発表。&lt;br /&gt;最近elispを書いていないらしい。情熱が薄れてしまったみたいです。&lt;br /&gt;&lt;br /&gt;XKeyRemapは汎用的なキーマッピング変更ソフト。ただし、まだ未完成らしい。&lt;br /&gt;「自分はやる気がなくなった。他の人やってください」　えっ……。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;TryIt.vim, Phrase.vimで多言語を効率よく学ぶ t9md&lt;/h2&gt;&lt;br /&gt;もともとEmacs使いでしたが、「手首痛い問題」によりEmacsを引退することになったらしいです。&lt;br /&gt;&lt;br /&gt;TryIt.vimは選択したテキストをTryItバッファに貼りつけてQuickRun実行する。&lt;br /&gt;QuickRunとの違いは、複数のバッファから切り貼りできるところだろうと思いました。&lt;br /&gt;&lt;br /&gt;Phrase.vimはサンプルコードを集めて勉強するのに使うらしいです。&lt;br /&gt;スニペットと似ていますが、目的が違うようです。&lt;br /&gt;なかなか面白い試みだと思いました。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;オレオレ環境の話 shinichiro_h&lt;/h2&gt;&lt;br /&gt;オレオレトロイで自己管理。すごい。&lt;br /&gt;なぜか、一番に起動しているソフトがw3mでした。なんと……。&lt;br /&gt;w3mが環境となっているらしい。その発想はなかった。&lt;br /&gt;w3mで一番重要な設定：「今開いているページをChromeで開く」に吹いた。&lt;br /&gt;やはりw3mだけでは生きていけないらしいです。&lt;br /&gt;&lt;br /&gt;shinichiro_hさんは、オレオレWindowManagerを使っていて、&lt;br /&gt;Windowを使ったシューティングゲームをデモしていました。&lt;br /&gt;なにそれすごい。そして極めつけはメモリ使用量900KB！&lt;br /&gt;今どきのWindow Managerが霞んで見えます。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;貧乏人のためのマルチディスプレイ構築環境 tomy_kaira&lt;/h2&gt;&lt;br /&gt;6台ディスプレイすごい。さすがに、私はこんな環境は使いこなせないなぁ。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;貧者のための入力デバイス todesking&lt;/h2&gt;&lt;br /&gt;HHKは高いので、Majestouchを切りとったお話。&lt;br /&gt;「キーボードはいまだにDIYが通用する領域」は名言でした。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Dvorakについて kjm&lt;/h2&gt;&lt;br /&gt;これは良いDvorak講座。いや、私は使う気になれませんが……。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;おまけ　Shougoの開発環境&lt;/h2&gt;&lt;br /&gt;発表中に簡単に触れましたが、ここにも書いておきますね。&lt;br /&gt;&lt;br /&gt;OS：Windows 7/Ubuntu 10.10&lt;br /&gt;端末：Vim, ckw, GNOME Terminal, screenは使っていない&lt;br /&gt;エディタ：Vim&lt;br /&gt;シェル：vimshell, nyaos, zsh&lt;br /&gt;ファイラー：vimfiler, あふw, Nautilus&lt;br /&gt;VCS: git&lt;br /&gt;キー配列：US, Vim only sticky shift&lt;br /&gt;日本語入力：eskk.vim, ATOK 2008, uim-skk&lt;br /&gt;キーボード：HHK Pro2&lt;br /&gt;マウス：MX Revolution&lt;br /&gt;Window Manager：Vim, Explorer, GNOME&lt;br /&gt;PDFビューワ：Smatra PDF Viewer, Evince, AdobePDF Viewer&lt;br /&gt;&lt;br /&gt;基本的にVim中心の生活なので、Vim以外にあまり凝ったことはしていません。&lt;br /&gt;今回参加した限りでは、皆Window Managerにこだわりがあるようです。&lt;br /&gt;しかし、自分の場合ほとんどVim内で生活していて、Vimさえあれば他はどうでも良いという性格なため、&lt;br /&gt;他の環境はどうでもよかったのだということに気付きました。だからWindow Managerに興味がなかったんですね。&lt;br /&gt;だから、私のWindow ManagerはVimです。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;まとめ&lt;/h2&gt;&lt;br /&gt;余談ですが、会場はLinux(Ubuntu/Debian)が多かったですね。&lt;br /&gt;やはり、LinuxのほうがWindow Managerもいじれるし、開発環境の最適化に熱心な人が多いのだろうか。&lt;br /&gt;Macもそこそこ居ましたが、予想していたよりは少なかったです。&lt;br /&gt;ちなみに、Emacs/Vimは半々くらいだったような気が……。&lt;br /&gt;いろんな環境の人達がいて、なかなか新鮮な発表を聞くことができました。&lt;br /&gt;今度は関東のEmacs勉強会で「Vimから見たEmacsについて」を発表したいので、誰か招待してください:-)&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8561067668361616212?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8561067668361616212/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/08/blog-post_08.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8561067668361616212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8561067668361616212'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/08/blog-post_08.html' title='開発環境勉強会の感想'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8320513485495399541</id><published>2011-08-08T14:51:00.003+09:00</published><updated>2011-08-08T15:39:13.092+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='勉強会'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>開発環境勉強会の原稿</title><content type='html'>&lt;html&gt;&lt;br /&gt;        &lt;head&gt;&lt;br /&gt;                &lt;title&gt;&lt;br /&gt;                        /home/shougo/勉強会/開発環境勉強会/development.vp&lt;br /&gt;                &lt;/title&gt;&lt;br /&gt;        &lt;/head&gt;&lt;br /&gt;        &lt;body&gt;&lt;br /&gt;                &lt;h2&gt;Vimについて&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;まずは自己紹介&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;hr&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;Shougoです。&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;知っている人は知っている&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;得意な言語は当然Vim script&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;私のプレゼンは「抜群な安定感」らしい&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimのためなら替え歌も歌う(ujihisa.vimを参照)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;職業：普通のVim scripter(ということに……)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;今回はせっかくなのでVimでプレゼンするよ！&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;今まで作ったプラグイン&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;neocomplcache, vimshell, vimfiler, vimproc, unite.vim, echodoc&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Emacs使いの人は、これに脳内で変換：&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;auto-complete.el, eshell.el, dired.el, comint-mode.el, anything.el, eldoc.el&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;今回のスライドの内容&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;昨年はVimプラグイン中心に話をした&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;今年はさすがに疲れたので、違うことをテーマにスライドを作っている&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;どうせプラグインの話は自分以外にもやってくれる人がいる&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Yokohama.vim #1: 「Shougoの開発環境」&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;ujihisa.vim: 「5分でまなぶVimとVim plugin」&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;開発環境勉強会：「Vimmerの異常な愛情」「Vim界 News in 2011」&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;第一部・Vimmerの異常な愛情&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        またはなぜShougoがテキストエディタについて心配するのを止めて&lt;/br&gt;&lt;br /&gt;                        Vimを愛するようになったか&lt;/br&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;はじめに&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        プログラマにとって、テキストエディタとは一生涯のパートナーであり、&lt;/br&gt;&lt;br /&gt;                        それを選択するということは、一生の伴侶を決定することに相当する。&lt;/br&gt;&lt;br /&gt;                        ここで紹介するのは、紆余曲折を経てVimに辿り着いた男の物語である……。&lt;/br&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;初恋はVisual Studio&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;私はVisual Studioでプログラミングを始めた&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;つまり、初恋のエディタはVisual Studio&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;あのころは、GUIプログラミングにゲームプログラミングと希望に燃えていた(遠い目)&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;様々なエディタに浮気していたあの頃&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;Visual Studioはそのころ有料だった上、動作が遅かった&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;さらにスクリプト言語には使いにくい&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;様々なエディタに浮気しつつ、サクラエディタに落ちつく&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;エディタへの恋物語も波瀾万丈&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;これが俗に言う、「エディタ活動」略して「エディ活」と呼ばれるものである&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;ちなみに、この勉強会も「エディ活」の一種ですよね:-)&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;Vimとの出会い&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;私とVimとの出会いは5年くらい前&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;第一印象：「このエディタは変態だ」&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;動作が気持ち悪いと思っていた&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;サクラエディタに限界を感じる&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;サクラエディタはカスタマイズに限界があった&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimは豊富なシンタックスハイライトや様々なプログラミング言語に対応していたのが魅力的&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimが気になり始め、本格的に手を出すことに&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;テキストファイルの関連付けをGVimにして、スパルタで操作を覚える&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;xxdでバイナリファイルを編集する程度には成長する&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;Linuxに手を出す&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;zshやscreenを覚える&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimを毎日使って、カスタマイズを覚える&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;設定はコピペだったけど……。&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimの力が段々分かってくる&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimへの恋が始まったのはこの頃？&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;ちなみに、このころEmacsも一応使えるようになっていた&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;kana氏のブログに衝撃を受ける&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;書いてあることが全然分からない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;自分はVimのことを知らなかったのだと実感する&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;言うなれば、C言語で初めてポインタを理解したのと同程度の衝撃&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;ちなみに、このとき.vimrcは300行くらい&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimを本格的に勉強しようと思った&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimへの恋が愛へと変わりつつある&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;lingrのvim-users.jpに参加する&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;ちょくちょく発言し始める&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;この頃はkanaさんがよくvim-users.jpに居て、いろいろ教えてもらっていた&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;質問した瞬間に答えが返ってくる、恐しい場所だった&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;今はほとんどkanaさんはいない……。&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;autocomplpop.vim(acp.vim)の挙動を調査する&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;以前から、autocomplpop.vimをLinuxで使うと日本語入力が暴走するバグに悩まされていた&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;そのころ、autocomplpop.vimはメンテナンスされていなかった&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;kana氏と協力して原因を突きとめることに成功&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;neocomplcacheの誕生&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;autocomplpop.vimの実装を見るにつれ、Vimの補完の限界を痛感する&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;もう補完システムを自分で作ったほうが良いと思った&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;auto-complete.elに負けたくなかったのも理由&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;altautocomplpopという名前だったが、紛らわしいので改名する&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;neo+complete+cache=neocomplcacheという名前になる&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;そして伝説へ……&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;この頃には、.vimrcは1500行を越える&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;いつのまにか、色んな人達を追い抜いていた&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;もうVimがないと生きていけない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;その後はvimshellを公開したり、vimprocの開発を引き継いだり……&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;vimfiler, unite.vimとかを作る&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;どうしてこうなった！&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;私にとってのVimは？&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;環境であり、OSであり、VMであり、大事なパートナー&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;かれこれ、5年以上付き合い続けている&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;リアルでも、5年以上毎日付き合うというのは大変なはず&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;それはテキストエディタであっても同じ&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;毎日Vim scriptを書くためには、やはりVimに対する愛がないとできない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimに対する愛をいつまで続けることができるかが重要&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;一時の恋では、エディタとの関係は長く続かない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;「エディタへの恋は愛に変えよう」&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;番外：なぜEmacsは選ばれなかったのか？&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;自分の環境が長らくWindowsメインだったから&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;WindowsでのEmacsは地獄&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;あれはLinux/UNIX環境でEmacsに慣れている人が、Windows環境で無理矢理使うもの&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;初心者にはオススメできない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Windows環境でEmacsをマスターできた人がいたら、秘策を教えて欲しい&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;第一部・完&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        皆さんも、この勉強会で一生のパートナー(ツール)を見付けましょう！&lt;/br&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;第二部・Vim界 News in 2011&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;去年は、Vim 7.3でVim界が大いに盛り上がった(自分の中では)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;残念ながら、今年はVimがバージョンアップする気配なし&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Bramさんが忙しいらしい……。&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;来年に期待。Vim 7.4になるか、Vim 8.0になるかは分からない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;個人的にはVim 8.0に来て欲しい&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;Emacs界の盛り上がり&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;最近はEmacs界が勢い付いている&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;去年の「Emacsテクニックバイブル」、今年の「優しいEmacs Lisp講座」&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Software Designにおける「Emacsのトラノマキ」の連載&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;三月にはEmacs 23.3がリリースされ、Emacs 24も開発中&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;Vim界の悲哀&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;Vim界には、良質な記事や書籍が不足している&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;まともにVim scriptを書ける人が書いた書籍がほとんどない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;これはVim界の大きな損失&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vim勉強会に参加すると、必ずといっていいほど聞かれるのが&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;「Shougoさんは、Vimの書籍を書かないんですか？」&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;この声になかなか答えられないのが悲しかった&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;と、いうわけで……。&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;今年、ついにVimの書籍が刊行される！&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;書名は「Vimテクニックバイブル」&lt;/li&gt;&lt;br /&gt;                                                        &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-a719jt9HLh0/Tj-EG4CTHHI/AAAAAAAAAFQ/e6FT8oC7juU/s1600/vim_cover.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 260px; height: 320px;" src="http://4.bp.blogspot.com/-a719jt9HLh0/Tj-EG4CTHHI/AAAAAAAAAFQ/e6FT8oC7juU/s320/vim_cover.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5638370512147258482" /&gt;&lt;/a&gt;&lt;br /&gt;                                                        &lt;li&gt;中身は「&lt;a href="http://www.amazon.co.jp/Emacs%E3%83%86%E3%82%AF%E3%83%8B%E3%83%83%E3%82%AF%E3%83%90%E3%82%A4%E3%83%96%E3%83%AB-%EF%BD%9E%E4%BD%9C%E6%A5%AD%E5%8A%B9%E7%8E%87%E3%82%92%E3%82%AB%E3%82%A4%E3%82%BC%E3%83%B3%E3%81%99%E3%82%8B200%E3%81%AE%E6%8A%80%EF%BD%9E-%E3%82%8B%E3%81%B3%E3%81%8D%E3%81%A1/dp/4774143278"&gt;Emacsテクニックバイブル&lt;/a&gt;」のVim版&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;イメージカラーはVimグリーン&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;EmacsテクニックバイブルはEmacsブルー(パープル) :-P&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;./Emacs_cover.jpg&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;Vimテクニックバイブル&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;unite.vimで進化する新しいVimの常識を教えます。&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;あなたはVimの本当の姿を知っていますか？&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;Emacsテクニックバイブルのキャッチコピー&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;anything.elで新しいEmacsの世界を教えます。&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;あなたはEmacsを使えていますか？&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;今までにないほどの豪華執筆陣！&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;taku_o(名無しのVim使い)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;yukimi&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;mattn(webapi-vim, zencoding.vim, Vimにパッチ多数)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;thinca(quickrun, ref.vim)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;fuenor(QFixHowm, QFixGrep, JPFormat.vim, Vim-UTF8)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Shougo(neocomplcache, vimshell, vimproc, unite.vim, ...)&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;プラグインの紹介を中心とした豪華な内容！&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;Tipsの数は全部で150&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;定番からマイナーまで幅広く解説している&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;プラグイン製作者が執筆していることも！&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;vimfiler, netrw, quickrun, ref.vim&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;vimshell, Conque, skk.vim&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;neocomplcache(スニペット機能の解説を含む), zencoding.vim&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;QFixHowm, QFixGrep, JPFormat.vim&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;autodate.vim, project.vim, ...&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;Vim scriptが分からない初心者でも安心！&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;:helpの読み方&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vim script基礎文法最速マスター(改訂版)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;マッピングについて&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;オプションについて&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimプラグインの管理&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;:autocmd&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;最近のVimといえば、unite.vimは外せないよね！&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;unite.vimは1つのChapterを贅沢に使用して解説&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;おそらく、30〜40Pageくらいある&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;他のプラグインとの連携&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;カスタマイズ方法についての解説&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;source, kind, action, filterの解説&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;sourceの作り方まで載っている！&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;作者が自ら書いているから、情報が正確で安心&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;unite.vim Ver.2.2対応(一応)&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;あまりに新しい機能は解説できていませんが……&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;これを読めばあなたもunite.vimマスターに&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;もちろん、Emacsの人達にもオススメ&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;Emacsを使っている人も、異文化交流は重要&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;同じ環境で満足していたら、何も生まれない&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Vimや他のエディタからも刺激を受けるべき&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;だからこそ、この開発環境勉強会に参加しているはず&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;この本を読めば、最近のVimの機能が分かる&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;例：unite.vimとanything.elの違いが分かる&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;一身上の理由により、Vimに乗り換えるときも安心:-)&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;現在確定している情報&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;ページ数は384P。Emacsテクニックバイブルと同じ。&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;値段は￥2, 980+税&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;なんとか￥3000は切った……。&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;若干Emacsテクニックバイブルより高い&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;発売日は9月終わり？&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;詳しい情報については、今後順次発表される予定&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;                &lt;h2&gt;おわり&lt;/h2&gt;&lt;br /&gt;                &lt;center&gt;&lt;br /&gt;                        &lt;table boder="0"&gt;&lt;br /&gt;                                &lt;tr&gt;&lt;br /&gt;                                        &lt;td&gt;&lt;br /&gt;                                                &lt;ul&gt;&lt;br /&gt;                                                        &lt;li&gt;それでは、ご静聴ありがとうございました！&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;またどこかの勉強会で会いましょう&lt;/li&gt;&lt;br /&gt;                                                        &lt;li&gt;Happy Vim scripting!&lt;/li&gt;&lt;br /&gt;                                                &lt;/ul&gt;&lt;br /&gt;                                        &lt;/td&gt;&lt;br /&gt;                                &lt;/tr&gt;&lt;br /&gt;                        &lt;/table&gt;&lt;br /&gt;                &lt;/center&gt;&lt;br /&gt;        &lt;/body&gt;&lt;br /&gt;&lt;/html&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8320513485495399541?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8320513485495399541/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/08/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8320513485495399541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8320513485495399541'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/08/blog-post.html' title='開発環境勉強会の原稿'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-a719jt9HLh0/Tj-EG4CTHHI/AAAAAAAAAFQ/e6FT8oC7juU/s72-c/vim_cover.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8047494041071615861</id><published>2011-07-25T15:13:00.003+09:00</published><updated>2011-07-25T15:56:41.227+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim script'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>Vim plugin開発の「行き詰まり」を打破する６つの方法</title><content type='html'>元ネタ「&lt;a href="http://www.earthinus.com/2011/07/limitbreak.html"&gt;人生の「行き詰まり」を打破する６つの方法&lt;/a&gt;」&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;プラグイン開発の行き詰まりは……&lt;/h2&gt;&lt;br /&gt;Vimプラグイン開発は長丁場です。いくら考えても、ニッチもサッチもいかない難題がおとずれることがあります。&lt;br /&gt;すべての行き詰まりは、「こんなことVimにはできないんじゃないか？」という行き詰まり「感」です。それは、私たちが感じている一つの感情。&lt;br /&gt;今日は、Vimプラグイン開発における行き詰まり「感」を解消する６つの突破口を紹介します。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;1.「Vimの限界を突破する質問」を投げかける&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;「あなたが今、Vimの限界を感じていることは何ですか？」&lt;br /&gt;「あなたがそのVimの限界を感じるたびに、自分の頭のなかでくりかえしている"問題"や"つぶやき"は何ですか？」&lt;br /&gt;「あなたがそのVimの限界をこえるために役立つ答えをくれる、新しく画期的な問題は何ですか？」&lt;br /&gt;&lt;br /&gt;この質問は、Vim scripterのShougoさんが、相談者のVim限界をこわすために考案されたものです。&lt;br /&gt;&lt;br /&gt;人の脳はとても、単純なコンピューター。同じ問題には、同じ解法を、新しい問題には新しい解法を返します。&lt;br /&gt;&lt;br /&gt;えてして人は同じ問題ばかりを頭のなかでくりかえしループしているのですが、こうしてそれを「見える化」することで、Vimによる新しい解決策が見つかることがあるのです。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;2.「Vimコントロールの輪」を見なおす&lt;/h2&gt;&lt;br /&gt;たとえば、ある画期的なVim pluginを作りたい場合は：&lt;br /&gt;内側の輪(自分で直接、変えられるもの) ... 自分の設定、自分のプラグイン、外部コマンド、外部インタフェース、外部ライブラリ&lt;br /&gt;外側の輪(自分で直接、変えられないもの) ... Vimの関数、組み込みコマンド、仕様、Bramさんのポリシー&lt;br /&gt;&lt;br /&gt;行き詰まりを感じたときに、私たちがよくやってしまうのは「自分が変えられないこと(外側の輪)にモンモンと悩んでしまうこと」。&lt;br /&gt;&lt;br /&gt;大切なのは、自分が今・ここで直接、変えられるものだけをハッキリ切り分けること。そこだけに注力し、他はスパッとやめてしまいましょう。&lt;br /&gt;&lt;br /&gt;「幸福への道はただ一つしかない。それは我々の意志の力では、どうにもならないVimの仕様について、悩むことをやめることにある。」&lt;br /&gt;ビーム・カーネギー&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;3.「召喚」する&lt;/h2&gt;&lt;br /&gt;自分では、解決できない問題にであったら、それを解決したことがあるエキスパートVim scripterを&lt;a href="http://lingr.com/room/vim/"&gt;vim-users.jp&lt;/a&gt;のなかで、「召喚」しましょう。&lt;br /&gt;眼をとじて、深呼吸をし、やりたいことを簡潔にまとめたら「その人を召喚」してみてください。&lt;br /&gt;何を感じていますか？　何をいっていますか？　どうVim scriptを書いていますか？&lt;br /&gt;きっと、あなたと違う新しい答えのヒントが見つかるはずです。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;4.世界をunite化して考える&lt;/h2&gt;&lt;br /&gt;世界的に有名な「unite.vimによるカイゼン」。そのコツは、どこにあるのでしょう？&lt;br /&gt;それは「世界をunite化して考えること」。&lt;br /&gt;今までのインタフェースをすべてunite化する勢いで改善策を考えるという手法です。&lt;br /&gt;人の頭はどうしても、今までのインタフェースに引きずられがちです。だから行き詰まってしまう。何ごとも「思い切って、unite化して改善できないか考えてみる」というスタンスが大事なのです。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;5.脱力して、静かに継続する&lt;/h2&gt;&lt;br /&gt;行き詰まり感には、「他のプラグインで実装されるのではないか」という恐怖や焦りがつきまとっています。&lt;br /&gt;それによってバグを仕込んだり、やる気がなくなったりするがために、うまくいかないのです。&lt;br /&gt;&lt;br /&gt;Vim界が変化することにも、時間がかかります。&lt;br /&gt;実は何も「行き詰まってはおらず」、冷静、丁寧、正確に、静かに物ごとを継続することで、少しずつうまくいっているのかもしれません。&lt;br /&gt;Vim scriptは大変奥が深いです。その深淵を垣間見るためには、一年や二年のVim scriptingでは不十分です。&lt;br /&gt;10年間メンテナンスするつもりで、気長に開発しましょう。&lt;br /&gt;neocomplcacheやvimshellのように、三年以上継続して開発するその熱意こそがVim scriptには求められます。&lt;br /&gt;&lt;br /&gt;ビムナムの禅僧であるビム・イズ・オールは言いました。&lt;br /&gt;「微笑んで、深呼吸して、ゆっくりVim pluginを開発しよう」&lt;br /&gt;脱力して、一行ずつ、静かに継続。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;6.思い切って、Vimのない生活もする&lt;/h2&gt;&lt;br /&gt;「体の疲れは、Vim scripting力をも落ち込ませる」ーーこれはVim学的にも明らかで、だれもが経験していることですが&lt;br /&gt;肝心なときに忘れていたりします。&lt;br /&gt;&lt;br /&gt;人は長い間Vim scriptのみに尽力することは難しいです。&lt;br /&gt;何か大きな壁にぶち当たった場合、時にはVimやPCのない環境でVim scriptのアイディアをじっくりと練ることが効果的です。&lt;br /&gt;Vim plugin開発はPCやVimの存在には依存せず、脳内や手書きのノートでも十分可能であることがVim plugin開発者のShougo氏により実証されています。&lt;br /&gt;&lt;br /&gt;「Vim pluginに対するやる気がでない。ちょっと待って……。もしかして、私、疲れてる？」&lt;br /&gt;自分にこう聞いてみるだけでいいのです。もし、答えがイエスなら、思い切ってVimプラグイン開発に休みを取りましょう。&lt;br /&gt;Vim休暇を使うもよし、ネットサーフィンに出かけるもよし、ちょっと早寝するのもよし、ゲームに興じるのもよし、です。&lt;br /&gt;　ゆっくり休んで、Vim scripting力を充電し終わったら、意外とケロッとしているかも!?&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Vimの限界は、頭のなかでつくられたもの&lt;/h2&gt;&lt;br /&gt;Vimにおいて、本当にしょうがないことは、だれもがキッパリあきらめています(例：Vimの画像表示)。&lt;br /&gt;&lt;br /&gt;行き詰まり「感」があるということは、まだVimで実現できる可能性があると、心の深いところは感じていること。&lt;br /&gt;Vimから一歩引いて、スローダウンして、Vimの周囲を大きく考えて見れば、意外とカンタンに道は開ける。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8047494041071615861?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8047494041071615861/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/07/vim-plugin.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8047494041071615861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8047494041071615861'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/07/vim-plugin.html' title='Vim plugin開発の「行き詰まり」を打破する６つの方法'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-3912690071932844566</id><published>2011-06-19T08:11:00.006+09:00</published><updated>2011-06-19T09:28:07.945+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='earthquake.gem'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>earthquake.gemをWindowsで試してみた件</title><content type='html'>jugyoさんが開発した、&lt;a href="https://github.com/jugyo/earthquake"&gt;earthquake.gem&lt;/a&gt;。&lt;br /&gt;最近はtermtterではなく、こちらの方が良く開発されているため、vimshell対応もするべく調べています。&lt;br /&gt;シンタックスを対応させたので、ようやくvimshellでも普通に動くようになりました。が、自動更新はカーソル位置がおかしくなったりしますね。&lt;br /&gt;もっと調査が必要です。&lt;br /&gt;&lt;br /&gt;それはともかくとして、earthquake.gemはインストールが面倒くさいです。&lt;br /&gt;Ruby 1.9を使っているので、まぁそっちに乗り換えればよいのですが&lt;br /&gt;ディストリビューションの多くはruby = Ruby1.8だったりしているので……。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://d.hatena.ne.jp/tyru/20110510/installing_earthquake_gem"&gt;この記事&lt;/a&gt;のように、RVMなんかを一緒に使おうとしたらハマるし。個人的にRVMは嫌いです。&lt;br /&gt;&lt;br /&gt;さてLinuxではearthquake.gemを使うことができるようになったんですが、どうやらWindowsで使っている人がまずいない。&lt;br /&gt;私はtermtterをWindowsでも使用しているので、非常に困ります。&lt;br /&gt;ということでWindowsで試してみました。&lt;br /&gt;とりあえず、bin/earthquakeを実行してみて、エラーになるモジュールを片っ端からgem installしていきます。&lt;br /&gt;&lt;br /&gt;しかし、twitter-streamをインストールしようとするとNative extensionのビルドでエラー。&lt;br /&gt;&lt;br /&gt;今度は&lt;a href="https://github.com/oneclick/rubyinstaller/wiki/Development-Kit"&gt;Development Kit&lt;/a&gt;を使ってみた。&lt;br /&gt;次はeventmachineのコンパイルでエラー。勘弁してください。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;cmain.cpp:752:6: error: cannot convert 'stat*' to '_stati64*' for argument '2' to 'int _fstati64(int, _stati64*)'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;検索してみると、やはり同じところで悩んでいる人がいて情報を発見。&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/3649252/cannot-install-thin-on-windows"&gt;http://stackoverflow.com/questions/3649252/cannot-install-thin-on-windows&lt;/a&gt;&lt;br /&gt;eventmachineは入ったんだけど、gemが古いeventmachine-0.12.10をインストールしようとする……。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ gem specific_install -l git://github.com/voloko/twitter-stream.git&lt;/pre&gt;&lt;br /&gt;で何とかすることにした。またeventmachineでエラーが出た。&lt;br /&gt;というか、gemsのeventmachineだれか新しくしてください……。どうして放置されているんだ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;結論：WindowsでRubyを使うのは苦行。昔からそうですけど、WindowsでRubyは使いにくいですよね。どうしてこうなった。&lt;br /&gt;twitter-streamのインストールも失敗。earthquake.gemが自動更新しようとするとエラーになります。&lt;br /&gt;&lt;br /&gt;ちょっと試してみた感じ、Windows環境でもエスケープシーケンスが普通に表示されていますね。&lt;br /&gt;vimshellから使うので問題はないですけど、Windows環境のことを全く考えていないのはどうなのかな……。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-3912690071932844566?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/3912690071932844566/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/06/earthquakegemwindows.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3912690071932844566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3912690071932844566'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/06/earthquakegemwindows.html' title='earthquake.gemをWindowsで試してみた件'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-953208171714948296</id><published>2011-05-15T13:47:00.002+09:00</published><updated>2011-05-15T14:01:38.758+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='開発環境'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ujihisa.vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>ujihisa.vim行ってきました</title><content type='html'>表題の通り、ujihisa.vimに参加したので今のうちに感想とかでも書いておきます。&lt;br /&gt;UST無かったのが残念ですけど、詳しい内容については他の人の感想ブログでも読めばおそらく察しが付くと思うので、私は適当に思ったこととかを書き連ねておきます。&lt;br /&gt;&lt;br /&gt;1.ujihisaさんの「shadow.vim紹介」&lt;br /&gt;私は作業をしていたので、あまり見てませんでした。shadow.vimはJava Script/Coffee Script書くひとには便利なのかなーと思ったり。&lt;br /&gt;&lt;br /&gt;2.kanaさんが.vimrcをDisる&lt;br /&gt;これは面白かった。他の人の.vimrcには摩訶不思議な設定がたくさんありますね……。&lt;br /&gt;私も昔はあんな.vimrcだったなぁ、とか思い出しながら見ていた。&lt;br /&gt;&lt;br /&gt;3.niwaさんの「Twitter社でのVim+α」&lt;br /&gt;どうやらTwitterでVimを使っている人はものすごく少ないらしい。&lt;br /&gt;TextMateやEclipse使いが多い。&lt;br /&gt;もっとVim使いが増えると良いですね。&lt;br /&gt;残りは時間が余ったので？　ユニコードの話。&lt;br /&gt;ややこしい問題が多すぎる……。&lt;br /&gt;&lt;br /&gt;4.guyonさん「Vim-tinyの紹介」&lt;br /&gt;突貫で作ったらしい。Vimの機能制限版Vim-tinyの紹介。&lt;br /&gt;512MBしかないLinux Boxではサイズが小さい&lt;br /&gt;Vim-tinyが便利らしい。&lt;br /&gt;&lt;br /&gt;5.ujihisaさんの「vital.vim解説」&lt;br /&gt;プラグイン製作者に必須のプラグインvital.vimの解説。&lt;br /&gt;Vimプラグイン製作者は毎日車輪の再発明をしているので、このライブラリは便利です。&lt;br /&gt;&lt;br /&gt;6.Shougoの「5分で分かるVimとVim plugin(仮)」&lt;br /&gt;私の発表です。実は、開発環境勉強会でこれを発表しようとしていました。&lt;br /&gt;が、先日の大地震により断念。今回、スライドをパワーアップさせて発表することになりました。&lt;br /&gt;いつもは真面目な発表なので、今回は不真面目です。&lt;br /&gt;参加者からは「これはひどい」「一瞬会場間違えたかと思いましたが、考えてみればいつも通りでした」と絶賛の嵐でした。&lt;br /&gt;スライドは公開しています。&lt;a href="http://www.slideshare.net/Shougo/5vimvim-plugin"&gt;こちら&lt;/a&gt;。&lt;br /&gt;&lt;br /&gt;7.sora_h君のカオスな発表&lt;br /&gt;会場でスライドと発表するためのプラグインを作っていました。&lt;br /&gt;内容はsora_h君の一日。metarwで作った自作プラグインの紹介、Rubyの効果的なバグ報告の仕方、など。&lt;br /&gt;バグ報告の仕方については、Vimのプラグインでもそのまま使えるなーとか思った。&lt;br /&gt;&lt;br /&gt;ちなみに、その後は座談会とかする予定だったんですけど、思ったよりも時間が長びいて、&lt;br /&gt;私がプラグインのバグ修正とかに一生懸命だったおかげで流れてしまいました。&lt;br /&gt;残念だったなぁ……。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-953208171714948296?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/953208171714948296/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/05/ujihisavim.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/953208171714948296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/953208171714948296'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/05/ujihisavim.html' title='ujihisa.vim行ってきました'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-5485888220279097858</id><published>2011-04-25T10:49:00.001+09:00</published><updated>2011-04-25T11:56:48.553+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='Yokohama.vim'/><title type='text'>普通のVim使いのYokohama.vim #1感想</title><content type='html'>タイトル通り、Yokohama.vim #1に参加してきたので、その感想です。&lt;br /&gt;ちなみに、詳細な感想については他の人たちがもっと優秀なまとめを書いてくれるので省略します。&lt;br /&gt;&lt;br /&gt;・Vim Levelでシャッフルと自己紹介&lt;br /&gt;今回のVim Levelシャッフルはあまり意味がなかったような……。グループ分けはなし。&lt;br /&gt;なぜか私が一番レベル高いということになってしまったし。&lt;br /&gt;ぼくは&lt;a href="http://www35.atwiki.jp/futsuu/pages/1.html"&gt;ふつう&lt;/a&gt;のVimつかいです。&lt;br /&gt;もしkanaさんが来てくれていたら、kanaさんはおそらくLvが9~10なので、一番レベルが高かったはずなんですけどね。&lt;br /&gt;あのレベル分けはネタなので、もっと良いレベル分けの方法があると良い、という話をthincaさんとしました。&lt;br /&gt;&lt;br /&gt;時間がそれほどないということで、自己紹介はテーブル毎。偶然ですが、るびきちさんと同じテーブルになれてよかったです。&lt;br /&gt;&lt;br /&gt;・「ふつうのVim使いの開発環境」&lt;br /&gt;私の発表です。資料は&lt;a href="http://www.slideshare.net/Shougo/shougo"&gt;こちら&lt;/a&gt;。&lt;br /&gt;実はお流れになった開発環境勉強会用のスライドを発表する予定だったのですが、&lt;br /&gt;開発環境勉強会がいつ開催されるかよく分からなかったので、予定を変更して自分の開発環境晒しにしました。&lt;br /&gt;本来はよくある地味な発表なんですが、それでは詰まらないと思ったため&lt;br /&gt;いくつかネタを仕込んだり、開発における裏話もしました。&lt;br /&gt;&lt;br /&gt;・「るびきちさんとの対談」&lt;br /&gt;残念ながら、ここはustなしで参加者だけの特別セッション。使用しているエディタの枠を越え、二人でかなり盛り上がりました。&lt;br /&gt;ただ、他の人は置いてきぼりになってしまったような。&lt;br /&gt;るびきちさんと私の考えがかなり似かよっていて面白かったです。&lt;br /&gt;開催者のguyonさんには、時間をオーバーしてしまって済みません。&lt;br /&gt;実はkanaさんも含めて、三者対談というのをやりたかったんですけど。&lt;br /&gt;内容については、&lt;a href=""https://twitter.com/#%21/search/%23yokohamavim&gt;#yokohamavimのTweet&lt;/a&gt;や他の人の感想を見れば大体分かるかと。&lt;br /&gt;残念ながら、聞けなかったそこのあなたも大丈夫。実はこの対談は……。以下続報を待つように。&lt;br /&gt;&lt;br /&gt;休憩を挟んで、&lt;br /&gt;&lt;br /&gt;・VimとEmacsユーザー交流セッション&lt;br /&gt;ここも実はるびきちさんと議論を交わしていました。&lt;br /&gt;あまり真面目に回答していないけど、あれで良かったのだろうか……。&lt;br /&gt;みんなの回答のまとめは、おそらくguyonさんがしてくれると思うので、楽しみに待ちましょう。&lt;br /&gt;&lt;br /&gt;・Vim Golf&lt;br /&gt;実は私Golfぜんぜんできないんです。なぜかというと、素のVimだと発狂するから。&lt;br /&gt;Golfは他の人に任せます……。&lt;br /&gt;記念品として貰った、Yokohama.vimのノベルティが格好良かったですね。&lt;br /&gt;&lt;br /&gt;・懇親会&lt;br /&gt;るびきちさんが参加してくれなかったのは残念だったのですが、私を含めて十数人の方が参加してくれました。&lt;br /&gt;前回はたった6人だったので大きな進歩。&lt;br /&gt;こちらとしても、thincaさんのvcs.vimを見れたり、&lt;br /&gt;snippets_completeに要望を貰ったりとなかなか得るものがありました。&lt;br /&gt;&lt;br /&gt;・総括：&lt;br /&gt;るびきちさんが来てくれたのもありますが、かなり充実した一日を過ごすことができました。&lt;br /&gt;会場のセッティングと司会進行をしてくれたguyonさん、ありがとうございます。&lt;br /&gt;機会があれば、またるびきちさんといろいろ話をしたいですね。&lt;br /&gt;ちなみに、開発環境勉強会で使う予定だったスライドは5月のujihisa.vimで使用する予定です。お楽しみに！&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-5485888220279097858?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/5485888220279097858/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/04/vimyokohamavim-1.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5485888220279097858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5485888220279097858'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/04/vimyokohamavim-1.html' title='普通のVim使いのYokohama.vim #1感想'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1233836426584960907</id><published>2011-04-18T12:00:00.008+09:00</published><updated>2011-04-19T13:40:18.618+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='レビュー'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='Emacs'/><title type='text'>Software Design 2011年5月号レビュー＆感想</title><content type='html'>今回久しぶりにレビューするのは&lt;a href="http://gihyo.jp/magazine/SD/archive/2011/201105"&gt;Software Design 2011年5月号&lt;/a&gt;です。Vim&amp;Emacs特集ということで、ついカッとなって購入してしまいました。後悔はしていません。&lt;br /&gt;しかし、最近雑誌を購入するのはエディタ特集のときだけ……。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;第一章&lt;/h3&gt;&lt;br /&gt;基本的な話なので省略。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;第二章&lt;/h3&gt;&lt;br /&gt;findの使い方が載っているのは良いですね。あまり使わないとよく引数を忘れます。procの説明もあって、あれ？ この特集ってエディタの話が主だったはずじゃ……。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;第三章&lt;/h3&gt;&lt;br /&gt;サーバ管理とファイル編集の話。エディタの話が全然でてきません……。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;第四章&lt;/h3&gt;&lt;br /&gt;ここはようやくVimの話。ということで、詳しいレビュー（というか正誤表？）をお送りします。&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Vim基本編&lt;/h4&gt;&lt;br /&gt;&lt;br /&gt;P.45&lt;br /&gt;「某OS付属のチープなエディタ」……「メモ帳」ですね。分かります。&lt;br /&gt;&lt;br /&gt;「分割したウィンドウを閉じるのは「:q」コマンドです」……まぁ、間違ってはいないですが、:closeのほうが良いと思います。:qだと、ウインドウが一個のときに終了してしまうので。おそらく、:closeは冗長だから:qを紹介したんでしょうね。:qは、「ウインドウが一個のときは終了、そうでないときはアクティブなウインドウを閉じる」という動作をします。ちゃんと説明すれば混乱することはないと思いますが、初心者には分かりにくいかもしれません。&lt;br /&gt;&lt;br /&gt;P.46&lt;br /&gt;リスト1……nmapを使ってはいけません。nnoremapを使いましょう。nmapだと、キーマッピングが展開されてしまいます。例えばkanaさんのように、: -&gt; ; とキーをマッピングしている場合に問題が発生します。nmapとnnoremapの違いを理解している人は少ないので注意が必要です。&lt;br /&gt;:bpよりは、:bprevious, :bnよりは、:bnextのほうが良いと思います。.vimrcに書くときはできるだけコマンドを省略しないようにしましょう。&lt;br /&gt;&lt;br /&gt;修正例：&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;nnoremap &amp;lt;C-p&amp;gt; :bprevious&amp;lt;CR&amp;gt;&lt;br /&gt;nnoremap &amp;lt;C-n&amp;gt; :bnext&amp;lt;CR&amp;gt;&lt;br /&gt;&lt;br /&gt;Vimプラグイン編：&lt;br /&gt;紹介されているのは、&lt;a href="http://www.vim.org/scripts/script.php?script_id=1697"&gt;surround.vim&lt;/a&gt;, &lt;a href="http://www.vim.org/scripts/script.php?script_id=1218"&gt;NERD_commenter.vim&lt;/a&gt;, &lt;a href="https://github.com/Shougo/unite.vim"&gt;unite.vim&lt;/a&gt;です。ちなみに、unite.vimが雑誌で紹介されるのは初めて！&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;unite.vim&lt;br /&gt;私の書いたプラグインなので、ここは詳しくフォローしておきます。&lt;br /&gt;unite.vimはgithubにもありますが、&lt;a href="http://www.vim.org/scripts/script.php?script_id=3396"&gt;vim.org&lt;/a&gt;にもあります。ただし、vim.orgにあるのはまだ古いバージョンのため、githubの紹介しておいたのは正解でしょう。できれば、git cloneで取ってくる部分の解説があると良かったですね。&lt;br /&gt;&lt;br /&gt;-buffer-nameに関する解説がないのはちょっと致命的です。ファイルやバッファ系のsourceを指定する場合は、:Uniteの引数に-buffer-name=filesとしないと、~が展開されません。人によってはひどく不便になる可能性があります。&lt;br /&gt;&lt;br /&gt;この特集では、unite.vimのsourceが一つしか指定されていません。これでは機能がFuzzyFinderやku.vimとあまり変わらず、unite.vimの特徴が生かせません。sourceを複数指定して横断検索できることを触れておくと、良かったと思います。&lt;br /&gt;&lt;br /&gt;細かい部分ですが、unite.vim, unite, Uniteと表記が揺れているのが気になります。ちなみに正式名称は検索しやすいように、unite.vimです。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;第五章&lt;/h3&gt;&lt;br /&gt;ようやくEmacs特集です。初心者向けのレスキュー技が細かく書かれているのがすごく印象的でした。こういう記事は今まで見たことがなかったので。Emacs使ってみたけどよく分からなくなってしまった初心者には役立つ記事でしょう。Emacsからのシェルの起動ということで、M-x terminal-emulatorが紹介されていました。個人的には、M-x terminal-emulatorよりはM-x ansi-termやM-x multi-termの方が一般的かな、と思います。この章で一番驚いたのは、井上さんがeshell使いだったことです。私もvimshellを開発しているので、eshellの良さはよく分かります。最近るびきちさんもeshellに乗り換えたようですし、eshell界隈が熱くなってきましたね。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;第六章&lt;/h3&gt;&lt;br /&gt;端末使用時のトラブルシューティング的な章。Windowsでtelnetからのリモートログインのやり方が載っていたのは、ちょっと珍しい記事だと思いました。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;結論&lt;/h3&gt;&lt;br /&gt;Vimの部分は思っていたよりもよく書けていました。unite.vimが初めて雑誌に紹介されていたのも嬉しいです。Emacsの解説は比較的少なかったのですが、「Emacsトラノマキ」が最近レベルが高くなってしまっているので、初心者に配慮したのでしょう。エディタ好きなら買うしかない号だと、私は思います。管理者向けの話も多いので、エディタをよく使う管理者にもオススメ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1233836426584960907?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1233836426584960907/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/04/software-design-20115.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1233836426584960907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1233836426584960907'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/04/software-design-20115.html' title='Software Design 2011年5月号レビュー＆感想'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1843961402676417989</id><published>2011-03-20T22:52:00.018+09:00</published><updated>2011-04-22T22:47:22.359+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='魔法少女'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>魔法Vim少女　えでぃか☆エディタ</title><content type='html'>2011年4月22日追記：元ネタである、「魔法少女まどか☆マギカ」が無事最終回を迎えたため、記念としてアップデートしました。魔法Vim少女の設定を追加したため、人物の名前を改変。&lt;br /&gt;&lt;br /&gt;※：元ネタはlingrでのやりとりです。しかし、改変をしたり、新たな設定を付け加えています。&lt;br /&gt;ついカッとなってやったが、満足している。&lt;br /&gt;&lt;br /&gt;大本のネタである、「魔法少女まどか☆マギカ」については&lt;a href="http://ja.wikipedia.org/wiki/魔法少女まどか☆マギカ"&gt;こちら&lt;/a&gt;を参照してください（Wikipediaへのリンクです）。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;『魔法Vim少女　えでぃか☆エディタ』（まほうびむしょうじょ　えでぃかえでぃた）は架空のテレビアニメ作品。20XX年1月より放送……されることはない。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;あらすじ&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;三度の食事よりVimが大好きな、&lt;a href="http://www35.atwiki.jp/futsuu/pages/1.html"&gt;普通の&lt;/a&gt;中学2年生の「えでぃか」は、ある日不思議な夢を見る。そこは少女がコーディング能力を競って&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%87%E3%82%A3%E3%82%BF%E6%88%A6%E4%BA%89"&gt;エディタ戦争&lt;/a&gt;を行う異世界。その少女の戦いを目撃する自分と、&lt;a href="http://www.a-a-p.org/images/zimbu_cutout.jpg"&gt;謎の猿の生物&lt;/a&gt;に「僕と契約して魔法Vim少女になってほしい」と告げられる夢であった。翌朝、転校してきたのはなんと夢で見た美少女の&lt;a href="https://github.com/Shougo/unite.vim"&gt;ゆな&lt;/a&gt;だった。ゆなは、えでぃかに「魔法Vim少女になってはならない」と警告する。&lt;br /&gt;&lt;br /&gt;放課後、親友の「&lt;a href="https://github.com/Shougo/neocomplcache"&gt;ねおこ&lt;/a&gt;」とPCショップへ行ったえでぃかは謎の声に呼ばれ、ビルの一角へ迷い込む。そこで見たものは夢の中で見た生物&lt;a href="http://www.a-a-p.org/images/zimbu_cutout.jpg"&gt;ジンべえ&lt;/a&gt;の傷ついた姿と、それを殺そうとするふぁらの姿だった。えでぃかとねおこは戸惑いつつも、当たり前の優しさからジンべえを助けるが、直後に今度は本当に異世界へ迷い込んでしまう。エディタ使いの信者と称される化物達に囲まれた2人を救ったのは、同じ中学の3年生でジンべえと契約した魔法Vim少女の「&lt;a href="https://github.com/Shougo/vimfiler"&gt;ふぁみ&lt;/a&gt;」先輩だった。事後、改めてジンべえに「魔法Vim少女になってほしい」と告げられたえでぃかとねおこは、思いがけない好機に興奮する。だが、それは2人が直面する様々な苦難の始まりであった。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;各話リスト&lt;/h3&gt;&lt;br /&gt;サブタイトルは各話の登場人物の台詞から取られている。&lt;br /&gt;&lt;br /&gt;第1話 あのプラグインにもあった、ような・・・・・&lt;br /&gt;第2話 Vimスクリプトで制御できるなら、それはとっても嬉しいなって&lt;br /&gt;第3話 もう何も恐くない&lt;br /&gt;第4話 &lt;a href="https://github.com/Shougo/neocomplcache"&gt;neocomplcache&lt;/a&gt;も、&lt;a href="https://github.com/Shougo/unite.vim"&gt;unite&lt;/a&gt;も、あるんだよ&lt;br /&gt;第5話 非同期なんて、あるわけない&lt;br /&gt;第6話 &lt;a href="http://vim-users.jp/real-vim-hacks-project/"&gt;こんなの絶対おかしいよ&lt;/a&gt;&lt;br /&gt;第7話 本当のVimと向き合えますか？&lt;br /&gt;第8話 あたしって、ほんとバカ&lt;br /&gt;第9話 そんなの、あたしが許さない&lt;br /&gt;第10話 もう標準機能には頼らない&lt;br /&gt;第11話 最後に残った道しるべ&lt;br /&gt;第12話（最終回） わたしの、最高のプラグイン&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;解説&lt;/h3&gt;&lt;br /&gt;あのプラグインにもあった、ような・・・・・：&lt;br /&gt;似たような関数があらゆるプラグインで再実装されている際に、皆が思う一言。Vimスクリプトの標準関数が貧弱なことによる車輪の再発明である。素直に&lt;a href="http://d.hatena.ne.jp/thinca/20110310/1299768323"&gt;vital.vim&lt;/a&gt;を使いたいものだ。&lt;br /&gt;&lt;br /&gt;Vimスクリプトで制御できるなら、それはとっても嬉しいなって：&lt;br /&gt;すべてがVimスクリプトで制御できたら、Emacsのようにもっと何でもできるのだが……。残念ながら、現実はそう甘くない。Vimスクリプトに慣れてきた中級者はその現実に打ちのめされることとなる。&lt;br /&gt;&lt;br /&gt;もう何も恐くない：&lt;br /&gt;Vimに慣れてきた人たちがついつい思ってしまうこと。本当に怖いのは、「Vimは何でもできる」と極めすぎる一部の人たち（へんたい）の執念なのかもしれない……。Vimのみで複雑なことをするためには、それ相応の苦労が必要である。&lt;br /&gt;&lt;br /&gt;neocomplcacheも、uniteも、あるんだよ：&lt;br /&gt;最近のVimには、neocomplcacheもuniteもあるんだよ！　まだまだ進化するよ！&lt;br /&gt;&lt;br /&gt;非同期なんてあるわけない：&lt;br /&gt;Vimで非同期通信は不可能と思われていたが、&lt;a href="https://github.com/Shougo/unite.vim"&gt;実際にできてしまった&lt;/a&gt;。ただし、ライブラリのコンパイルが必要である。&lt;br /&gt;&lt;br /&gt;こんなの絶対おかしいよ：&lt;br /&gt;Vimの仕様や魔界村のソースコードに対して皆が思う感想。&lt;br /&gt;&lt;br /&gt;本当のVimと向き合えますか？：&lt;br /&gt;魔界村のVimソースコードにきちんと向き合えるか、ということを表す。これができるかどうかが、Vim上級者への分かれ道なのかもしれない……。&lt;br /&gt;&lt;br /&gt;あたしって、ほんとバカ：&lt;br /&gt;Vimからでない生活が続くたび、時々自虐的に思うこと。あまりにもVimにこだわりすぎることは逆に生産性を落としているのではないか？　しかし、やめられないのである。&lt;br /&gt;&lt;br /&gt;そんなの、あたしが許さない：&lt;br /&gt;「VimがXXXできないなんて、そんなの、あたしが許さない。すぐに実装してしまうよ！」ということ。&lt;br /&gt;こういう思考が日常になってしまうと、危ない。&lt;br /&gt;&lt;br /&gt;もう標準機能には頼らない：&lt;br /&gt;Vimの標準機能には頼らず、機能を独自に実装することを決意したということを表す。標準機能はほとんどカスタマイズできないからである。&lt;br /&gt;&lt;br /&gt;最後に残った道しるべ：&lt;br /&gt;Vimへの信仰心が失われたソウルジェムは、魔法Vim少女を取り込み「信者」へと変化する。&lt;br /&gt;この最悪のシステムに、疑心暗鬼へと陥る魔法Vim少女達。&lt;br /&gt;最強の信者達が集う「ワルマックスの夜」を前に、残ったのはゆなとえでぃかの二人だけであった。&lt;br /&gt;果たして、Vimには未来がないのか？　この世界はジンべぇの思惑通りになってしまうのだろうか。&lt;br /&gt;&lt;br /&gt;わたしの、最高のプラグイン：&lt;br /&gt;ゆなは一人魔法Vim少女となって戦うが、「ワルマックスの夜」は予想以上の強さであった。&lt;br /&gt;彼女でさえも絶望しそうとなったその時、一人の少女の願いが明かされる。&lt;br /&gt;魔法Vim少女　完結。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;魔法Vim少女一覧&lt;/h3&gt;&lt;br /&gt;魔法Vim少女たちは、「プラグイン」と呼ばれる魔法兵装を身につけ、日夜信者達と戦っている。&lt;br /&gt;ここでは魔法Vim少女達の能力について解説する。&lt;br /&gt;&lt;br /&gt;えでぃか：まだ魔法Vim少女となっていないため、その力は未知数であるが、ジンべぇからは「最強の魔法Vim少女の素質を持っている」と言われる。&lt;br /&gt;&lt;br /&gt;ねおこ：プラグイン名「&lt;a href="https://github.com/Shougo/neocomplcache"&gt;ネオコン&lt;/a&gt;」。高速補完により、相手にキーワードの羅列をたたき込む戦法が得意。&lt;br /&gt;&lt;br /&gt;くらん：ふぁみの敗北により、他の地域よりやってきた魔法Vim少女。いつも何かのスクリプトを書いている。プラグイン名「&lt;a href="https://github.com/thinca/vim-quickrun"&gt;クイックラン&lt;/a&gt;」。記述したスクリプトを瞬時に実体化させ、戦わせることができる。&lt;br /&gt;&lt;br /&gt;ふぁみ：先輩の魔法Vim少女。プラグイン名「&lt;a href="https://github.com/Shougo/vimfiler"&gt;ビムファイラー&lt;/a&gt;」。ファイルを変化させた、トリッキーな戦法を得意とする。&lt;br /&gt;&lt;br /&gt;ゆな：プラグイン名「&lt;a href="https://github.com/Shougo/unite.vim"&gt;ユナイト&lt;/a&gt;」。本人の基本能力は最低。ただし、sourceを抽出した他の魔法Vim少女の能力を使用することができるという、ある意味最強の能力を持つ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1843961402676417989?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1843961402676417989/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/03/vim_20.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1843961402676417989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1843961402676417989'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/03/vim_20.html' title='魔法Vim少女　えでぃか☆エディタ'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-6971400631591710938</id><published>2011-03-20T22:21:00.004+09:00</published><updated>2011-03-20T22:48:20.880+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>Vimの魔法</title><content type='html'>元ネタは&lt;a href="http://www.youtube.com/watch?v=Bsk2ioK0Lrg"&gt;こちら&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;こんにちは&lt;br /&gt;こんに&lt;a href="http://www.vim.org/scripts/script.php?script_id=2204"&gt;TwitVim&lt;/a&gt;&lt;br /&gt;ありがとう&lt;br /&gt;ありが&lt;a href="http://www.vim.org/scripts/script.php?script_id=273"&gt;taglist&lt;/a&gt;&lt;br /&gt;こんばんは&lt;br /&gt;こん&lt;a href="http://www.vim.org/scripts/script.php?script_id=42"&gt;bufexplorer&lt;/a&gt;&lt;br /&gt;さようなら&lt;br /&gt;さよ&lt;a href="http://www.vim.org/scripts/script.php?script_id=1658"&gt;NERD_tree&lt;/a&gt;&lt;br /&gt;まほうの&lt;a href="http://ja.wikipedia.org/wiki/Vim"&gt;エディタ&lt;/a&gt;で&lt;br /&gt;たのしいプラグインが&lt;br /&gt;ポポポポーン&lt;br /&gt;&lt;br /&gt;おはよう&lt;br /&gt;お&lt;a href="https://github.com/motemen/hatena-vim"&gt;hatena-vim&lt;/a&gt;&lt;br /&gt;いただきます&lt;br /&gt;いただきま&lt;a href="http://www.vim.org/scripts/script.php?script_id=2290"&gt;smartchr&lt;/a&gt;&lt;br /&gt;いってきます&lt;br /&gt;いってきま&lt;a href="http://www.vim.org/scripts/script.php?script_id=2107"&gt;scratch&lt;/a&gt;&lt;br /&gt;ただいま&lt;br /&gt;ただい&lt;a href="http://www.vim.org/scripts/script.php?script_id=489"&gt;manpageview&lt;/a&gt;&lt;br /&gt;ごちそうさま&lt;br /&gt;ごちそうさ&lt;a href="http://www.vim.org/scripts/script.php?script_id=39"&gt;matchit&lt;/a&gt;&lt;br /&gt;おやすみなさい&lt;br /&gt;おやす&lt;a href="http://www.kaoriya.net/software/cmigemo"&gt;migemo&lt;/a&gt;&lt;br /&gt;すてきな&lt;a href="http://ja.wikipedia.org/wiki/Vim"&gt;エディタ&lt;/a&gt;で&lt;br /&gt;ゆかいなプラグインが&lt;br /&gt;ポポポポーン&lt;br /&gt;&lt;br /&gt;こんにちは&lt;br /&gt;こんに&lt;a href="http://www.vim.org/scripts/script.php?script_id=2204"&gt;TwitVim&lt;/a&gt;&lt;br /&gt;ありがとう&lt;br /&gt;ありが&lt;a href="http://www.vim.org/scripts/script.php?script_id=273"&gt;taglist&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;あいさつするたび&lt;br /&gt;&lt;a href="http://www.vim.org/scripts/index.php"&gt;プラグインふえるね&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※：久しぶりに、ついカッとなってやった。反省はまだしていない。&lt;br /&gt;ちなみに、プラグインの選定は語呂がよいものを適当に当てはめただけです。特に他意はありません。&lt;br /&gt;&lt;br /&gt;補足：&lt;br /&gt;「あいさつするたびプラグインが増える」とは、日に日にVimのプラグインが増殖していることを暗示しています。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-6971400631591710938?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/6971400631591710938/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2011/03/vim.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6971400631591710938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6971400631591710938'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2011/03/vim.html' title='Vimの魔法'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8136213249467318127</id><published>2010-11-10T12:15:00.006+09:00</published><updated>2010-11-11T14:08:28.469+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='unite.vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>Unite使いのレベル10</title><content type='html'>転載元 &lt;a href="https://gist.github.com/669964"&gt;https://gist.github.com/669964&lt;/a&gt;&lt;br /&gt;gistの中に埋もれているのは勿体ないので転載しました。&lt;br /&gt;作者はujihisa氏。&lt;br /&gt;ちなみに、私はLv10……でいいのか。&lt;br /&gt;元ネタ：Vim使いのレベル10 &lt;a href="http://vim-users.jp/2010/01/vim-10-levels/"&gt;http://vim-users.jp/2010/01/vim-10-levels/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Unite使いのレベル10&lt;/h2&gt;&lt;br /&gt;Lv1 Uniteを使うため、他のエクスプローラ系ツール(※1)の使用をやめた。&lt;a href="https://github.com/Shougo/unite.vim/blob/master/doc/unite.jax"&gt;Unite公式ヘルプ&lt;/a&gt;を読み終えた。&lt;br /&gt;Lv2 単に:Unite file_recするだけの生活をやめ、他の豊富なsourceを同時に使うことに自己陶酔する。&lt;br /&gt;Lv3 自分でインストールしたUniteプラギンの数が5を越え、ダメプラギンはすぐに判別できるようになる&lt;br /&gt;Lv4 自分で作ったUniteプラギンをunite.org(※2)でリリースし、何人かをLife Changingさせる&lt;br /&gt;Lv5 他のアプリケーション使用時にUniteが使えないことにひっかかり、イラっとする日々を送る&lt;br /&gt;Lv6 シェルは当然Unite。新しいプロジェクトをはじめるとき、まずそのsourceをUniteするところからはじめる。&lt;br /&gt;Lv7 Unite本体の&lt;a href="https://github.com/Shougo/unite.vim"&gt;ソースコード&lt;/a&gt;を読み終え、あまり魔界でないことに驚く&lt;br /&gt;Lv8 他言語インタフェースif_***を作り、&lt;a href="http://lingr.com/room/vim/"&gt;unite_dev&lt;/a&gt;に投稿する。当然採用されない&lt;br /&gt;Lv9 Unite本体の開発への貢献が日常になる。投稿し採用されたパッチ数が100を越える&lt;br /&gt;Lv10 &lt;a href="https://github.com/Shougo"&gt;神&lt;/a&gt;になる&lt;br /&gt;&lt;br /&gt;※1：他のエクスプローラ系ツールとしては、&lt;a href="http://www.vim.org/scripts/script.php?script_id=1658"&gt;NERDTree&lt;/a&gt;, &lt;a href="http://www.vim.org/scripts/script.php?script_id=2337"&gt;ku.vim&lt;/a&gt;, &lt;a href="http://www.vim.org/scripts/script.php?script_id=1984"&gt;FuzzyFinder&lt;/a&gt;等があります。&lt;br /&gt;※2：&lt;a href="http://www.unite.org/"&gt;unite.org&lt;/a&gt;は実在しますが、unite.vimとは関係がありません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8136213249467318127?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8136213249467318127/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/11/unite10.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8136213249467318127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8136213249467318127'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/11/unite10.html' title='Unite使いのレベル10'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-5164872562153544514</id><published>2010-10-27T16:35:00.003+09:00</published><updated>2010-10-27T16:37:48.918+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>興味のある言語にVim scriptと書いておいたら面接で爆笑された</title><content type='html'>Inspired by &lt;a href="http://mattn.kaoriya.net/etc/20100209001119.htm"&gt;興味のあるテキストエディタにVimと書いておいたら面接で爆笑された&lt;/a&gt;&lt;br /&gt;あと、tyruさんとの話に触発されました。&lt;br /&gt;&lt;br /&gt;UNIXエンジニアを募集してる会社の採用面接を受けた時の話。&lt;br /&gt;&lt;br /&gt;転職エージェントに作れと言われて作ったシートに、「興味のある技術/言語」という欄があったんです。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/Shougo/neocomplcache"&gt;自動補完技術&lt;/a&gt;とか色々書いたけど、プログラミング言語の中で興味があるのはVim scriptだったので、&lt;br /&gt;&lt;br /&gt;Vim scriptと書いておいたのですが、それを見た面接官のリアクションが酷かった。&lt;br /&gt;&lt;br /&gt;面接官「Vim script・・・ふははっ！Vim script！」&lt;br /&gt;&lt;br /&gt;面接官「Vim scriptやってるんですか？ｗｗｗｗｗ」&lt;br /&gt;&lt;br /&gt;俺「(唖然)は、はい・・まだ&lt;a href="http://github.com/Shougo/vimshell"&gt;Vimでシェル&lt;/a&gt;が書けるようになったぐらいですが。。」&lt;br /&gt;&lt;br /&gt;面接官「Vim script・・・ﾆﾔﾆﾔ」&lt;br /&gt;&lt;br /&gt;その人はUNIXエンジニアで、当然Vimでコードを書いている人だったので、&lt;br /&gt;&lt;br /&gt;VimがEx commandを拡張した「Vim script」を使っていることを知らないワケが無いだろうと思っていた。&lt;br /&gt;&lt;br /&gt;つまり、このリアクションは"理不尽な状況に直面した時にどう対応するか"を見ているんだろうと判断し、あえて突っ込みは入れずに対処した。&lt;br /&gt;&lt;br /&gt;しかし最後の質問で「何故Vimを使っているんですか？」と聞くと、&lt;br /&gt;&lt;br /&gt;気まずそうに理由を話し、最後に「・・・と、聞いてます」と答えた。&lt;br /&gt;&lt;br /&gt;つまりこの人は上からVimを採用すると言われたから使っているのであって、&lt;br /&gt;&lt;br /&gt;特別使うツールに思い入れとか無い、悲しいエンジニアなんだなあと分かった。&lt;br /&gt;&lt;br /&gt;最近のVimは頑張ればEmacsのような&lt;a href="http://github.com/Shougo/vimproc"&gt;非同期処理もできる&lt;/a&gt;し、VimやってるならVim scriptに興味を持つのは普通だと思うんだけどなあ。&lt;br /&gt;&lt;br /&gt;多分ガチで知らなかったんだろう。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-5164872562153544514?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/5164872562153544514/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/10/vim-script.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5164872562153544514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5164872562153544514'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/10/vim-script.html' title='興味のある言語にVim scriptと書いておいたら面接で爆笑された'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8044873000517162948</id><published>2010-10-25T20:11:00.004+09:00</published><updated>2010-10-25T20:19:15.381+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>Saint Vimmer</title><content type='html'>mattnさん作の原文 &lt;a href="http://twitter.com/search?q=%23SaintVimmer"&gt;Saint Vimmer&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;教皇「&lt;a href="http://github.com/Shougo/neocomplcache"&gt;ネオ・コンプリート&lt;/a&gt;フラーーーッシュ！」... ｽｺﾞｺﾞｺﾞｺﾞｺﾞｺﾞｺﾞｺﾞ ...&lt;br /&gt;セイヤ「ごぶぅ(吐血)... 」&lt;br /&gt;教皇「お前は&lt;a href="http://github.com/Shougo/vimshell"&gt;vimshell&lt;/a&gt;の海へと消えるのだ。ﾌﾊﾊﾊﾊﾊ...」&lt;br /&gt;セイヤ「まっ... まだだ...」&lt;br /&gt;教皇「何！？」&lt;br /&gt;セイヤ「俺はここで倒れちゃいけない... 燃えろ！俺のESCキー！」&lt;br /&gt;教皇「何度でもかかってくるがいい！」&lt;br /&gt;セイヤ「ウォォォオォォォォォ！」&lt;br /&gt;教皇「ぬるいわ！この程度の速さなら私の足元にも及ばぬわ！」&lt;br /&gt;教皇「... 何... はっ速い... ！？ 奴の何処にこれほどの力が！」&lt;br /&gt;教皇「ま... まさかっ！」&lt;br /&gt;セイヤ「受け取れ！&lt;a href="http://github.com/Shougo/unite.vim"&gt;ユナイト&lt;/a&gt;ビューティフルアターーーーック！」&lt;br /&gt;教皇「グワァーーーーーーーーーー...」(完)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/mattn_jp/"&gt;mattn先生&lt;/a&gt;の次回作にご期待ください！&lt;br /&gt;&lt;br /&gt;※ これは後世まで語り継がなければならないと思い、ついカッとなって転載した。反省はしていない。ちなみに、私は元ネタをよく知りません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8044873000517162948?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8044873000517162948/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/10/saint-vimmer.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8044873000517162948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8044873000517162948'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/10/saint-vimmer.html' title='Saint Vimmer'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7133932739965080405</id><published>2010-10-09T19:25:00.016+09:00</published><updated>2011-01-27T11:55:45.056+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vimproc'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='Elshaddai'/><category scheme='http://www.blogger.com/atom/ns#' term='unite.vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>Vim Shaddai</title><content type='html'>『Vim Shaddai』&lt;br /&gt;※：&lt;a href="http://www.youtube.com/watch?v=PAIfIFV9A4E"&gt;El Shaddaiのムービー&lt;/a&gt;を脳内再生しながら見てください。&lt;br /&gt;&lt;br /&gt;話をしよう&lt;br /&gt;&lt;br /&gt;あれは今から&lt;a href="http://ja.wikipedia.org/wiki/Vi#.E5.89.B5.E5.A7.8B"&gt;36年&lt;/a&gt;　いや&lt;a href="http://ja.wikipedia.org/wiki/Vim#.E6.AD.B4.E5.8F.B2"&gt;20年前&lt;/a&gt;だったか&lt;br /&gt;&lt;br /&gt;まぁいい&lt;br /&gt;&lt;br /&gt;私にとっては　つい　昨日の出来事だが&lt;br /&gt;君達にとっては　きっと　明日の出来事だ&lt;br /&gt;&lt;br /&gt;彼には72通りの名前があるから、&lt;br /&gt;&lt;a href="http://twitter.com/mattn_jp/status/6142370071"&gt;何と呼べばいいのか&lt;/a&gt;&lt;br /&gt;確か、最初に会ったときは……&lt;br /&gt;&lt;a href="http://ja.wikipedia.org/wiki/Vim"&gt;Vimnoch&lt;/a&gt;(ビムノック)&lt;br /&gt;&lt;br /&gt;そう、アイツは&lt;a href="http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/options.html#'compatible'"&gt;最初から言う事を聞かなかった&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/usr_01.html#not-compatible"&gt;私の設定通りにしていればな&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;まぁ、いいエディタだったよ&lt;br /&gt;&lt;br /&gt;Vim Shaddai&lt;br /&gt;&lt;br /&gt;ブラム「そんなプラグインで大丈夫か？」&lt;br /&gt;ビムノック「大丈夫だ。（動いているから）問題ない」&lt;br /&gt;&lt;br /&gt;ウォーーーー！（コーディング　シーン）&lt;br /&gt;うわぁ……&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.moolenaar.net/"&gt;神&lt;/a&gt;は言っている　&lt;a href="http://nanasi.jp/articles/howto/file/crash-recovery.html"&gt;ここでクラッシュする定めではないと&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;(時が戻る)&lt;br /&gt;&lt;br /&gt;Vim Shaddai&lt;br /&gt;&lt;br /&gt;ブラム「ビムノック、そんなプラグインで大丈夫か？」&lt;br /&gt;ビムノック「&lt;a href="http://www.vim.org/scripts/script_search_results.php?keywords=&amp;script_type=&amp;order_by=rating&amp;direction=descending&amp;search=search"&gt;一番良いやつを頼む&lt;/a&gt;」&lt;br /&gt;&lt;br /&gt;つ &lt;a href="http://github.com/Shougo/unite.vim"&gt;unite.vim&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;git clone git://github.com/Shougo/unite.vim.git&lt;br /&gt;（プラグインをインストールする）&lt;br /&gt;&lt;br /&gt;ウォーーーー！（コーディング　シーン）&lt;br /&gt;神は言っている　&lt;a href="http://www.slideshare.net/Shougo/unite-vim"&gt;全てを繋げ&lt;/a&gt;と&lt;br /&gt;&lt;br /&gt;これは神が作り出した知恵（&lt;a href="http://www.vim.org/scripts/index.php"&gt;プラグイン&lt;/a&gt;）の一つ&lt;br /&gt;フフフ　見ての通り、&lt;a href="http://github.com/Shougo/vimproc"&gt;非同期&lt;/a&gt;だ&lt;br /&gt;&lt;br /&gt;やあ　&lt;a href="http://groups.google.com/group/vim_dev"&gt;私のサポートが心配なのか？&lt;/a&gt;&lt;br /&gt;いいんじゃないかな&lt;br /&gt;アイツも良くやってくれてるしね&lt;br /&gt;&lt;br /&gt;いや　&lt;a href="http://www.vim.org/sponsor/vote_results.php"&gt;君の頼みは断われないよ&lt;/a&gt;&lt;br /&gt;神は絶対だからね&lt;br /&gt;&lt;br /&gt;（コーディング　シーン）&lt;br /&gt;&lt;br /&gt;ビムノック　人が持つ唯一絶対の力&lt;br /&gt;それは　&lt;a href="http://ja.wikipedia.org/wiki/テキストエディタ"&gt;自らの意思で使うべきエディタを選択することだ&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;お前は常に人にとって　&lt;a href="http://d.hatena.ne.jp/tyru/20100216/making_the_strongest_editor_than_vim"&gt;最良のエディタ&lt;/a&gt;を思い　自由に（実装する機能を）選択していけ&lt;br /&gt;&lt;a href="http://vim-users.jp/real-vim-hacks-project/"&gt;さぁ　いこう&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://stallman.org/"&gt;ストルマン&lt;/a&gt;「さあ　ビムノック」&lt;br /&gt;ストルマン「私のかわいいEmacsが　悲しむのなんて嫌」&lt;br /&gt;ストルマン「さあ　行きなさい　あなたたち　&lt;a href="http://www.xemacs.org/"&gt;弟&lt;/a&gt;の敵を取るのです」&lt;br /&gt;（多数の&lt;a href="http://www.gnu.org/software/emacs/"&gt;ヌー&lt;/a&gt;が現れる）&lt;br /&gt;（そして始まる&lt;a href="http://ja.wikipedia.org/wiki/エディタ戦争#vi_.E3.81.A8_Emacs_.E3.81.AE.E9.81.95.E3.81.84"&gt;宗教論争&lt;/a&gt;）&lt;br /&gt;&lt;br /&gt;To Be Continued……&lt;br /&gt;&lt;br /&gt;チリリリリ（電話の音）&lt;br /&gt;&lt;br /&gt;ああ　やっぱり今回も駄目だったよ&lt;br /&gt;あいつは設定しないと使えないからな&lt;br /&gt;そうだな　次はこれを見ている奴にも（プラグイン作りを）付き合ってもらうよ&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※：この物語はフィクションです。ついカッとなってやった。反省はしていない。&lt;br /&gt;2011/1/27 リンク先を追加しました。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7133932739965080405?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7133932739965080405/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/10/vim-shaddai.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7133932739965080405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7133932739965080405'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/10/vim-shaddai.html' title='Vim Shaddai'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-467680618317291254</id><published>2010-09-26T10:41:00.002+09:00</published><updated>2010-10-01T19:55:25.108+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='勉強会'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='unite.vim'/><category scheme='http://www.blogger.com/atom/ns#' term='Yokohama.vim'/><title type='text'>Yokohama.vimに参加しました</title><content type='html'>昨日、Yokohama.vimに参加してきました。&lt;br /&gt;残念ながら来れなかった人も居ると思われるので、簡単な感想を書きます。&lt;br /&gt;thincaさんの感想記事とあまり被らないように、私は懇親会の話題を中心に。&lt;br /&gt;&lt;br /&gt;最初はポジションペーパーを書きながらグループごとに自己紹介をやりました。&lt;br /&gt;これはなかなか新鮮で面白い試みであったと思います。&lt;br /&gt;ちなみに、私の前にはkhikerさんとnaoinaさんが居ました。&lt;br /&gt;Vimの戦闘力は500以下の人達がほとんどでしたね。余裕で1000オーバーの私は異端なのか……。&lt;br /&gt;&lt;br /&gt;次にguyonさんによる.vimrcの初心者向けの解説。なかなか親切だと思いました。&lt;br /&gt;私には易しすぎましたが……。&lt;strike&gt;資料が公開されるのはいつですか？&lt;/strike&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.slideshare.net/gu4/vimrcvimrcplugin"&gt;資料が公開されました。&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;その後休憩を挟んでからVimmerの平均レベルが均等になるようにグループ分けをして.vimrcリーディング大会。&lt;br /&gt;なぜか私が一番レベルが高いことになっていたんですけど、あの中でVimのソースをいじっていたのはtyruさんくらいなので、&lt;br /&gt;彼が一番レベルが高いはずなんですけどねー。&lt;a href="http://vim-users.jp/2010/01/vim-10-levels/"&gt;参考&lt;/a&gt;&lt;br /&gt;ちなみに、この記事はレベルが高すぎて該当者が少ないので、guyonさんによるより細かいレベル分けが提案されていました。&lt;br /&gt;これも公開されると面白いですね。&lt;br /&gt;で、.vimrcリーディングですが、私の班は&lt;a href="http://github.com/Shougo/shougo-s-github/blob/master/vim/.vimrc"&gt;私の.vimrc&lt;/a&gt;を読むことになりました。3000行オーバーしてるので、なかなか無謀な試み。せっかくなので、neocomplcacheとvimshellの設定を解説。しかし、皆さん反応が少ない。結局私だけがしゃべっていたが、これで良かったのだろうか。&lt;br /&gt;理想的には、前のプロジェクターに誰かの.vimrcを載せて、それを解説していくほうが良かったと思います。グループに分かれるとみんなシャイだから、何も語らないので困る。&lt;br /&gt;&lt;br /&gt;グダグダになっていたところ、時間が押しているということで、taku_oさんの発表。削除するキーマッピングの打鍵数を最適化しよう、というすごくまじめなプレゼンでした。ちなみに、私はここまで徹底的に減らそうとはしていません。キーマッピングのほうにこだわっているので。&lt;strong&gt;&lt;a href="http://nanasi.jp/articles/howto/note/yokohama-201009.html"&gt;資料が公開されました。&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;そして私の発表。今まで私がやってきたプレゼンとunite.vimについて。&lt;br /&gt;本当はもっとまじめな発表だったはずなのだが、なぜかネタが混じって……。&lt;br /&gt;詳しい内容は後日公開予定のプレゼンを見たほうが早いので、そちらを参照してもらうことにします。&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.slideshare.net/Shougo/unite-vim"&gt;資料を公開しました。&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;ちなみに、こちらは&lt;a href="http://www.slideshare.net/Shougo/vim-presentation-5330807"&gt;Vim=VMのプレゼンです。&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;時間が余ったのとリクエストがあったので、私のVimを30分ほどデモしていました。&lt;br /&gt;uniteのデモをやったり。iexe termtterのデモもしたかったんですが、ネットの調子が悪くてつながらず。&lt;br /&gt;&lt;br /&gt;そして懇親会。集まったのは6人だけ。ちょ、みんなそこまでシャイだったのか。&lt;br /&gt;普通懇親会はもっと人が集まるはず……。&lt;br /&gt;VimmerはRubyistよりシャイだったという衝撃的な事実。&lt;br /&gt;&lt;br /&gt;懇親会で出た話題&lt;br /&gt;・unite.vimを今後どうするか？&lt;br /&gt;→thincaさんとはいろいろ話し合いをしたので、いずれメインで使ってくれるはず。&lt;br /&gt;matcherやsorterについては後回しにする。まずはsourceの仕様を固めないと。&lt;br /&gt;タグジャンプ欲しいね、とか。&lt;br /&gt;・ns9tksさんの話がちらりと出たり&lt;br /&gt;→「相反する要望に対応するのは大変」&lt;br /&gt;・今後のYokohama.vimはいつ開催する？とか&lt;br /&gt;・会社のVim使いをどうやって増やせばいいだろうか&lt;br /&gt;→Emacs使いも本当に使いこなしている人は少数派。頑張れば引き込めるよ！&lt;br /&gt;・neocomplcacheは英語ヘルプがあるから、海外の人からメールがくるよ、とか&lt;br /&gt;→ちなみに今日も久しぶりにメールがありました&lt;br /&gt;・Vimを勉強するにはどうすれば？&lt;br /&gt;→まずはvimtutorをやる。日本語版もあるよ。&lt;br /&gt;:helpを読むのは大変なので、他人の.vimrcを参考にしつつ、分からないところを:helpで引くという使い方がおすすめ。&lt;br /&gt;kanaさんの.vimrcは変なマクロを使っているので、コピペするときは注意。ちなみに、私はそういうマクロを使っていない。&lt;br /&gt;あまり良い本はない。オライリー本も第7版は英語しかないし。&lt;br /&gt;・Vimはバッドノウハウが多いよね……&lt;br /&gt;→encodingとかマッピングとか、set, setlocalとか……&lt;br /&gt;&lt;br /&gt;ちなみに、guyonさんはneocomplcacheをまだ使っていないそうですが、もうそろそろ使ってくれることでしょう。&lt;br /&gt;今回の勉強会でuniteについて宣伝をしたので、使う人が増えるといいな。&lt;br /&gt;.vimrcが500行を越えている人はなかなかいないので、Vim使いも初心者が多いんだな、という印象。&lt;br /&gt;LvUPするための高い障壁が原因になっている気がする。周囲にすごいVimmerが居れば話は別なんですが、普通はいない。&lt;br /&gt;私も独学だったし。&lt;br /&gt;&lt;br /&gt;懇親会は人数少なかったけれど、得るものが多かったので良かった。&lt;br /&gt;やはり勉強会だけでは深い話ができないので、懇親会大事だなーと思いました。&lt;br /&gt;ただ発表を見るだけだったら、ust参加でも良い訳で。&lt;br /&gt;特に、tyruさんやcooldaemonさん、eagletmtさんと話ができなかったのが痛いですね。&lt;br /&gt;次回こそは……。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-467680618317291254?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/467680618317291254/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/09/yokohamavim.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/467680618317291254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/467680618317291254'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/09/yokohamavim.html' title='Yokohama.vimに参加しました'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-4128147264404029603</id><published>2010-09-23T13:14:00.018+09:00</published><updated>2010-09-23T18:44:00.837+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>めざせVimマスター 2010</title><content type='html'>プラグイン　ゲットだぜーッ！&lt;br /&gt;&lt;br /&gt;たとえ.vimの中、runtimeの中、&lt;a href="http://gist.github.com/"&gt;gist&lt;/a&gt;の中、&lt;a href="http://www.vim.org"&gt;vim.org&lt;/a&gt;の中、&lt;br /&gt;&lt;a href="http://bitbucket.org/"&gt;bitbucket&lt;/a&gt;の中、&lt;a href="http://coderepos.org/share/"&gt;CodeRepos&lt;/a&gt;の中、あの作者の&lt;a href="http://github.com"&gt;github&lt;/a&gt;の中(キャ〜！)&lt;br /&gt;&lt;br /&gt;なかなか　なかなか　なかなか　なかなか　大変だけど&lt;br /&gt;かならずゲットだぜ！　プラグインGETだぜ！&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ja.wikipedia.org/wiki/Microsoft_Visual_Studio"&gt;IDE&lt;/a&gt;にさよならバイバイ　オレはこいつとコーディング　(Vim!)&lt;br /&gt;&lt;br /&gt;Emacs使いに叩かれ、へこんでも　Vimmerを増やして　&lt;a href="http://www.vim.org/scripts/index.php"&gt;次のプラグインへ&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;プラグイン入れてもうまくいかなくて&lt;br /&gt;途方に暮れることがあるけど　(Vimがクラッシュ！)&lt;br /&gt;&lt;br /&gt;いつも　そんなときは　ソースを書き換え&lt;br /&gt;パッチ送信する（fork, commit, Pull request！）&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/thinca/vim-ref"&gt;ref&lt;/a&gt;, &lt;a href="http://github.com/tsukkee/lingr-vim"&gt;lingr-vim&lt;/a&gt;, &lt;a href="http://github.com/Shougo/vimshell"&gt;vimshell&lt;/a&gt;, &lt;a href="http://www.vim.org/scripts/script.php?script_id=1697"&gt;surround&lt;/a&gt;, &lt;a href="http://github.com/Shougo/vimfiler"&gt;vimfiler&lt;/a&gt;, &lt;br /&gt;&lt;a href="http://github.com/tyru/eskk.vim"&gt;eskk&lt;/a&gt;, &lt;a href="http://www.vim.org/scripts/script.php?script_id=1984"&gt;fuzzyfinder&lt;/a&gt;, &lt;a href="http://www.vim.org/scripts/script.php?script_id=273"&gt;taglist&lt;/a&gt;, &lt;a href="http://github.com/thinca/vim-quickrun"&gt;quickrun&lt;/a&gt;(&lt;a href="http://github.com/Shougo/neocomplcache"&gt;ねおこん！&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;まだまだ　まだまだ　まだまだ　まだまだ　たくさんあるけど&lt;br /&gt;かならずゲットだぜ！　プラグインGETだぜ！&lt;br /&gt;&lt;br /&gt;.vimrcいじって　おやすみグッナイ&lt;br /&gt;エディタを閉じれば　よみがえる(Vim?)&lt;br /&gt;j/kが燃えて　&amp;lt;ESC&amp;gt;が舞い&lt;br /&gt;&lt;a href="http://www.kaoriya.net/testdir/love-vi.txt"&gt;キーボードとどろく&lt;/a&gt;　あのコーディングが&lt;br /&gt;&lt;br /&gt;昨日の&lt;a href="http://ja.wikipedia.org/wiki/Emacs"&gt;敵&lt;/a&gt;は　&lt;a href="http://www.emacswiki.org/emacs/Anything"&gt;anything&lt;/a&gt;あるって&lt;br /&gt;やたらと自慢をしたけど(anythingとはなんだ？)&lt;br /&gt;今日の&lt;a href="http://ja.wikipedia.org/wiki/Vim"&gt;友&lt;/a&gt;には　&lt;a href="http://github.com/Shougo/unite.vim"&gt;unite&lt;/a&gt;あること&lt;br /&gt;教えてあげよう&lt;br /&gt;&lt;br /&gt;ああ　あこがれの&lt;a href="http://www.moolenaar.net/"&gt;Vimマスター&lt;/a&gt;に　なりたいな　ならなくちゃ&lt;br /&gt;ゼッタイなってやるー！&lt;br /&gt;&lt;br /&gt;Vimには　&lt;a href="http://www.vim.org/sponsor/vote_results.php"&gt;xxxの機能がない&lt;/a&gt;って&lt;br /&gt;だれもが嘆いて　いるけど&lt;br /&gt;Vimがいつか　究極になるように&lt;br /&gt;&lt;a href="http://vim-users.jp/real-vim-hacks-project/"&gt;パッチは君が　かくもの&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Vimがいつまでも　うまくゆくなんて&lt;br /&gt;保証はどこにも　ないけど(そりゃそうだ)&lt;br /&gt;いつでもいつも　ホンキで生きてる&lt;br /&gt;&lt;a href="http://lingr.com/room/vim"&gt;Vimmer達がいる&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ああ　あこがれの&lt;a href="http://www.moolenaar.net/"&gt;Vimマスター&lt;/a&gt;に　なりたいな　ならなくちゃ&lt;br /&gt;ゼッタイなってやるー！&lt;br /&gt;&lt;br /&gt;ああ　あこがれの&lt;a href="http://www.moolenaar.net/"&gt;Vimマスター&lt;/a&gt;に　なりたいな　ならなくちゃ&lt;br /&gt;ゼッタイなってやるー！&lt;br /&gt;&lt;br /&gt;※：ついカッとなってやった。反省はしていない。&lt;br /&gt;※：ついカッとなって二番を書いてしまった。やはり反省はしていない。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-4128147264404029603?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/4128147264404029603/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/09/vim-2010.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4128147264404029603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4128147264404029603'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/09/vim-2010.html' title='めざせVimマスター 2010'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-4376809380591353577</id><published>2010-09-03T10:43:00.003+09:00</published><updated>2010-09-03T11:04:06.516+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WEB+DB'/><category scheme='http://www.blogger.com/atom/ns#' term='anything.el'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='Emacs'/><title type='text'>WEB+DB PRESS Vol.58 「Emacs活用∞」レビュー</title><content type='html'>LingrのEmacs部屋で「Emacs活用∞」について話していたら、tomoyaさんに「ぜひレビューしてください！」と言われてしまったので、こちらでレビューをしておこうと思います。&lt;br /&gt;ちなみに、私は去年の「Vimの流儀」号とこちらの「Emacs活用∞」しかWEB+DB PRESSを購入したことがありません。どんだけエディタに毒されているんだ、私は……。&lt;br /&gt;&lt;br /&gt;では、それぞれの項目について簡単な紹介とレビューをしておきます。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Emacsの世界へようこそ&lt;/h2&gt;&lt;br /&gt;この章はEmacsの紹介が主です。キーボード配列の変更という、初心者には敷居が高い設定も含まれます。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;最初に知っておきたい基礎知識&lt;/h2&gt;&lt;br /&gt;Emacsのインストール方法と、設定ファイルのディレクトリ構成、基本的なキーバインドの紹介です。&lt;br /&gt;よくある解説が続くので、熟練者には物足りないでしょう。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;自分好みにカスタマイズするためのポイント&lt;/h2&gt;&lt;br /&gt;Elispのインストール方法、auto-installの紹介です。簡単なカスタマイズについても触れられています。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;導入必須の便利な拡張機能&lt;/h2&gt;&lt;br /&gt;各種プラグインの紹介です。解説はかなり駆け足。やはりページ数が足りなかったようです。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Emacsの操作性に革命を起こす「Anything」&lt;/h2&gt;&lt;br /&gt;この特集のメインだと思われる、anything.elの紹介。anything.elのインストール方法以外に、設定やコマンドの定義方法も載っています。&lt;br /&gt;が、こちらもページ数が足りないのか、「anything.elのソースを作成する」までは触れていません。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;思考を即コード化する開発環境&lt;/h2&gt;&lt;br /&gt;開発に役立つ拡張機能の紹介です。私が知っているような有名所が多かったですね。最後にEmacsコミュニティについて若干触れています。&lt;br /&gt;この特集を読んで、Emacsの開発に協力できるような人が増えるといいですね。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;まとめ&lt;/h2&gt;&lt;br /&gt;本特集は基礎知識を高めることに重点を置いているようです。&lt;br /&gt;Emacsテクニックバイブルでは基礎知識をかなり省いて、プラグインの紹介を重視しているため、&lt;br /&gt;この特集を読んでから、Emacsテクニックバイブルを読むのがよいでしょう。&lt;br /&gt;残念だったのは解説がかなり駆け足だったのと、Emacs lispについてはほとんど触れられていなかったこと。&lt;br /&gt;るびきちさんがEmacs lisp解説本の構想を練っているようなので、そちらに期待したいです。&lt;br /&gt;あとはSoftware Design誌に連載されている、「Emacsのトラノマキ」がいつ単行本化するのかが気になっています。&lt;br /&gt;なぜか最近勢いにのっているEmacs陣営。これはVimも負けていられませんね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-4376809380591353577?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/4376809380591353577/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/09/webdb-press-vol58-emacs.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4376809380591353577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4376809380591353577'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/09/webdb-press-vol58-emacs.html' title='WEB+DB PRESS Vol.58 「Emacs活用∞」レビュー'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1260632952424455315</id><published>2010-08-28T21:08:00.008+09:00</published><updated>2010-08-31T17:59:08.125+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim7.3'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='VimKaigi'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>Vim Kaigi 2010に行ってきました</title><content type='html'>昨日からRuby Kaigi 2010が開催され、その中の企画イベントとして「Vim Kaigi 2010」が開催されました。&lt;br /&gt;これなかったVim使いもたくさんいると思うので、詳細について詳しく書きたいと思います。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Highlights of Vim 7.3 by kana&lt;/h2&gt;&lt;br /&gt;最近リリースされたばかりのVim 7.3の新機能についてkanaさんから解説がありました。&lt;br /&gt;Vim 7.3は日本語情報が少ないので貴重ですね。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Persistent undo&lt;/h3&gt;&lt;br /&gt;アンドゥ情報の保存をする機能。有効にするためには、set undofileを.vimrcに追加する。デフォルトでは開いているファイルと同じ場所に保存するが、別の場所にすることも可能。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Conceal text&lt;/h3&gt;&lt;br /&gt;マーカーなどを隠す機能。前からパッチは存在していたが、ようやく本体に取り込まれた。&lt;br /&gt;texのシンタックスファイルも対応していて、対応する記号を変換したりできる。&lt;br /&gt;これを利用すれば、Haskellのlambdaも置き換えたりできる。やってみたが微妙だったらしい。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;relative number&lt;/h3&gt;&lt;br /&gt;「私はいらない」とはkanaさんの談。たしかに番号が気持ち悪い。jやkをcount付きで移動するときには便利なのかな。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;colorcolumn&lt;/h3&gt;&lt;br /&gt;人によっては欲しいらしい。カラムをハイライトできる機能。複数のカラムもハイライトでき、相対的にも設定できる。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;その他&lt;/h3&gt;&lt;br /&gt;gettabvar(), undotree(), など。みなさんVim 7.3を使いましょう！　という内容でした。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;neocomplcacheで実現する究極補完環境 by ShougoMatsu&lt;/h2&gt;&lt;br /&gt;私の発表。内容はneocomplcacheについてで、スライドを見た方が早いと思います。&lt;br /&gt;&lt;a href="http://www.slideshare.net/Shougo/ultimate-completion-environment-with-neocomplcache-in-vim"&gt;neocomplcacheで実現する究極補完環境&lt;/a&gt;&lt;br /&gt;時間が余ったので、unite.vimやvimshell, vimfilerをデモしたりしました。が、かなりグダグダになってしまった。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Yokohama.vim by guyon&lt;/h2&gt;&lt;br /&gt;内容は&lt;a href="http://d.hatena.ne.jp/guyon/20100829/1283095926"&gt;スライド&lt;/a&gt;が公開されているので、それを見たほうが……。&lt;br /&gt;Yokohama.vimの宣伝もありました。私は参加する予定。unite.vimの宣伝ができるといいなぁ。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;ぼくがEmacsからVimに乗り換えた3つの理由 by _shimada&lt;/h2&gt;&lt;br /&gt;Railsのエンジニア。ジュンク堂に本が売っているらしい。Emacs歴は10年以上だが、左小指が限界になってVimに移行。左肩までダメージがくるようになったそうです。リアルでそういう人がいるんですね……。&lt;br /&gt;rails.vim, surround.vim, snipMateを使っているそうです。&lt;br /&gt;&lt;h3&gt;苦労したこと&lt;/h3&gt;&lt;br /&gt;&lt;h4&gt;サーバに入ると素のviが使えない&lt;/h4&gt;&lt;br /&gt;&lt;h4&gt;S式が使えない&lt;/h4&gt;&lt;br /&gt;&lt;h4&gt;Vimの中でEval bufferする方法がない&lt;/h4&gt;&lt;br /&gt;→quickrun, vimshellを勧めておきました。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;vi怖い by nanki&lt;/h2&gt;&lt;br /&gt;sudo viしてファイルを壊してしまったという恐怖の体験談。compatible modeこわいです。&lt;br /&gt;nankiさんは&lt;a href="http://github.com/nanki/vim-objj"&gt;Objective-Jのオムニ補完&lt;/a&gt;を書いたらしいので、それの紹介もありました。&lt;br /&gt;ちなみに、neocomplcacheはObjective-J対応を果たしました。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;gdgd Q &amp;amp A&lt;/h2&gt;&lt;br /&gt;LTも終わると、あとは質疑応答と私とkanaさんが適当にデモをやったりしました。が、さすがにそれでも長すぎた……。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;まとめ&lt;/h2&gt;&lt;br /&gt;kanaさんを始めとする色んなVimmerと会えて、面白かったです。自分のプラグインの宣伝もできたし:-P。ちなみに、隣の席がbasyuraさんだったので驚きました。&lt;br /&gt;ku.vimの読み方は「くー」らしいです。ちなみにkanaさんは現在Vim scriptを書いていないらしく、ku Ver.0.30のリリースは期待できなさそう。&lt;br /&gt;やはりunite.vimを頑張るしかないのかな。&lt;br /&gt;Vim Kaigiは最初50人くらいいて、Emacs部屋から椅子を借りてくるなど、「どうしてこうなった！」状態でしたが、3時間後にはメンバーが三人になり、強制撤収となりました。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1260632952424455315?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1260632952424455315/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/08/vim-kaigi-2010.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1260632952424455315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1260632952424455315'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/08/vim-kaigi-2010.html' title='Vim Kaigi 2010に行ってきました'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-4474836639848159927</id><published>2010-08-22T13:00:00.007+09:00</published><updated>2010-08-28T21:21:58.028+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='x86'/><category scheme='http://www.blogger.com/atom/ns#' term='CPU'/><category scheme='http://www.blogger.com/atom/ns#' term='Binary'/><title type='text'>x86勉強会</title><content type='html'>昨日、&lt;a href="http://atnd.org/events/5976"&gt;x86勉強会&lt;/a&gt;に行ってきました。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Javaで作るx86エミュレータ d_kami&lt;/h2&gt;&lt;br /&gt;x86エミュレータを作るためにどのようなJavaのコードを書いたか。&lt;br /&gt;x86命令について丁寧に説明してくれていました。しかし、x86の符号化は大変難しいので、&lt;br /&gt;あの説明だけできちんと理解できる人がいたのかは謎です。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;x86とプロセスについて masami256&lt;/h2&gt;&lt;br /&gt;プロセスがx86上でどのように動いているかという話。これも濃かった……。大体分かったのだけれど、ちゃんと復習しないとこれは忘れてしまう。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;実行トレーサで学ぶx86再入門&lt;/h2&gt;&lt;br /&gt;これは入門だったのだろうか……。すごく濃いです。OSのメモリ保護を書き換えて、アプリケーションに検出されない&lt;br /&gt;トレースを行う話。Exploitなプロセスを解析する際に必要であるらしい。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;今どきのx86開発環境 Shougo&lt;/h2&gt;&lt;br /&gt;私の発表です。内容については実際のスライドを見た方が早いと思うよ！　誰ですか？　Vim勉強会と勘違いしていた人は。ぼくはまじめにx86のはっぴょうをしました。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;中国製のMIPSエミュレータがどうやってx86をエミュレートするのか　syuu1228&lt;/h2&gt;&lt;br /&gt;MIPSとx86のエミュレートの話。MIPS勉強会おいしいです。きれいなMIPSがだんだんよごれていくさまがよくえがかれていました。誰得なんだろう。ちなみにスライドが英語でした。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;8088のエミュレーションについて hdk_2&lt;/h2&gt;&lt;br /&gt;伝説のプログラマーであるhdk_2の少年時代の話と、中学生の時に作った（らしい）8088エミュレータの話。これを中学生のときに作るだなんて恐ろしいです。私は中学生の時、RPGツクールだったなぁ。自分も端末エミュレータ頑張りたくなりました。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;新しいx86トレーサの作り方 a4lg&lt;/h2&gt;&lt;br /&gt;x86トレーサを作るために、どのように設計したかという話。egggardenさんの発表と似ていましたが、すごく理論的な話でした。学会発表おいしいです。&lt;br /&gt;&lt;br /&gt;オマケ：&lt;br /&gt;hdk_2さんはkterm, vi使いでした。Vimは入っていませんでした。高度な開発を行うときはEmacsのようです。私はもうviや素のVimなんて使えません……。&lt;br /&gt;&lt;br /&gt;昔からCPUの話が好きなので、x86は大好物なのですが、内容があまりに濃すぎておなかがいっぱいです。&lt;br /&gt;これは復習が必要だ……。&lt;br /&gt;発表資料が早く公開されないかなぁ。&lt;br /&gt;ちなみに、私の資料も後日公開予定です。当日見れなかった人はもう少しお待ちください。&lt;br /&gt;&lt;br /&gt;※　８月２８日追記：資料を公開しました。&lt;br /&gt;&lt;a href="http://www.slideshare.net/Shougo/modern-x86-environment"&gt;今どきのx86開発環境&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-4474836639848159927?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/4474836639848159927/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/08/x86.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4474836639848159927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4474836639848159927'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/08/x86.html' title='x86勉強会'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8063210668826146839</id><published>2010-08-08T12:02:00.003+09:00</published><updated>2010-08-08T12:33:15.383+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='anything.el'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='unite.vim'/><category scheme='http://www.blogger.com/atom/ns#' term='Emacs'/><title type='text'>レビュー：Emacsテクニックバイブル</title><content type='html'>ついに&lt;a href="http://www.amazon.co.jp/gp/product/4774143278"&gt;Emacsテクニックバイブル&lt;/a&gt;が発売されました。&lt;br /&gt;購入者の感想を見ると、おおむね好評のようです。&lt;br /&gt;しかし残念なことに、購入者の詳細なレビューがまだありません。&lt;br /&gt;そこで、私がレビューすることにしました。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;はじめに&lt;/h2&gt;&lt;br /&gt;まず、現在のEmacs本には大きな問題点があります。※１&lt;br /&gt;Emacsはデフォルトの状態ではひどく使いにくく、プラグインをインストールして拡張するのが当たり前となっているのに、普通の本にはプラグインのインストール方法やその特徴についてほとんど触れていないのです。これにはプラグインが流行り廃りが激しく、時が経つとすぐに時代遅れになったり、新しいプラグインが出てくるという理由もあるでしょう。確かに、時が経っても有用性を保っている&lt;a href="http://www.oreilly.co.jp/books/9784873112770/"&gt;「入門 GNU Emacs 第三版」&lt;/a&gt;のような本は必要です。しかし、世の中にあるのがそういう表面をなでただけの本ばかりでは、初心者がいざ本格的にEmacsを使おうとしたときに挫折することは目に見えています。Software Design紙で連載されている「Emacsのトラノマキ」が好評であるように、現在には現在なりのEmacsの使い方があるのです。私は以前からそう言う本が必要だと考えていて、「るびきちさんがそう言う本を書いてくれるといいな」と妄想していたんですが、最近になって「Emacsテクニックバイブル」を執筆中だということで、自分の妄想が現実になり、大変驚いています。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;内容について&lt;/h2&gt;&lt;br /&gt;内容については、「今までのるびきちさんのブログに書いてあったことをまとめた」というのが適切です。&lt;br /&gt;るびきちさんのブログをよくチェックしている人には、あまり目新しい情報がないかもしれません。しかし、「今までばらばらだった情報がまとまっている」ことに大きな価値があります。&lt;br /&gt;特に秀逸なのは後半２章のanything.el特集です。anything.elに関する情報が適切にまとまっています。&lt;br /&gt;私は現在Vimにおけるanything環境として、&lt;a href="http://github.com/Shougo/unite.vim"&gt;unite.vim&lt;/a&gt;を開発中です。Emacsテクニックバイブルの購入理由も、「もっとanything.elを勉強して、unite.vimの開発に役立てたい」ということだったのですが、期待以上の出来だったので満足しています。&lt;br /&gt;難点なのは一部のプラグインを除き、一つ一つのプラグインの解説は１ページ～２ページ程度と少ないことです。これはページ数の関係でやむを得ないことだったのでしょう。私としては、多少値段が上がっても良いから、もっとページを割いて欲しかったのですが。特にskk（ddskk）の解説は少ないです。そこは続刊に期待しましょう。&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;おわりに&lt;/h2&gt;&lt;br /&gt;「Emacsテクニックバイブル」という本ですが、それぞれのVimユーザーにも勉強になります。私はぜひともVimユーザーに本書を購入してもらい、Vimの「カイゼン」に励んでもらいたいと考えています。この本に込められたテクニックの数々は、あのKanaさんの「Vimの流儀」並に有用であることでしょう。&lt;br /&gt;るびきちさんによると、この本が好評ならEmacs Lispプログラミング本を出す予定があるようです。&lt;br /&gt;これは期待ですね。みなさんもEmacsテクニックバイブルを購入して、るびきちさんの次回作を応援しましょう。&lt;br /&gt;&lt;br /&gt;※１：現在のVim本にも同じ問題点があります。&lt;br /&gt;Vim Hacksでその状況をある程度改善していますが。Vim Hacksが本になるときは、「Vimテクニックバイブル」になるかもしれません:-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8063210668826146839?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8063210668826146839/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/08/emacs.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8063210668826146839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8063210668826146839'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/08/emacs.html' title='レビュー：Emacsテクニックバイブル'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-4256025163549185741</id><published>2010-07-24T20:34:00.005+09:00</published><updated>2010-07-24T20:49:06.117+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cygwin'/><title type='text'>CygwinでcursesアプリケーションをコンパイルするときのTips</title><content type='html'>最近、vimshellのtexeをテストするためにCygwin環境を整えているんですが、Cygwinでcursesアプリケーションをコンパイルするときに少しはまったのでここにメモしておきます。&lt;br /&gt;&lt;br /&gt;Cygwinにはlibtermcap.aは存在しません。-ltermcapすると失敗するので、-ltisと変更します。それでもエラーが出るときは、cursesライブラリをリンクしていない可能性があります。-lcursesをMakefileに付け加えましょう。&lt;br /&gt;&lt;br /&gt;Cygwinのcurses.hは/usr/include/ncursesという変な場所にあります。「curses.hが見つからない」というエラーになるときは、gccの引数に-I/usr/include/ncursesを加えてみましょう。&lt;br /&gt;&lt;br /&gt;これでようやくfdcloneとslをコンパイルできました。texeがこれらのアプリケーションを実行できるようにしないといけません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-4256025163549185741?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/4256025163549185741/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/07/cygwincursestips.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4256025163549185741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4256025163549185741'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/07/cygwincursestips.html' title='CygwinでcursesアプリケーションをコンパイルするときのTips'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-5883730757754423171</id><published>2010-07-23T20:42:00.009+09:00</published><updated>2010-07-23T23:40:47.231+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>vimshellの新機能 texeについて</title><content type='html'>以前のエントリ後、h1mesukeさんは&lt;a href="http://d.hatena.ne.jp/h1mesuke/20100616/p1"&gt;Conqueに乗り換えた&lt;/a&gt;ようでした。&lt;br /&gt;&lt;br /&gt;その後h1mesukeさんは、&lt;a href="http://d.hatena.ne.jp/h1mesuke/20100720/p1"&gt;Conqueの設定記事&lt;/a&gt;を書いてくれたようです。&lt;br /&gt;Conqueはまだまだマイナーなプラグインで、情報が少ないので大変に参考になります。&lt;br /&gt;&lt;br /&gt;上記の記事のトラックバック代わりに、vimshellの新機能であるtexeについて解説をします。&lt;br /&gt;texeとはConqueと同様に、Vimを端末エミュレータとして使うというコマンドです。&lt;br /&gt;vimshellバッファ上で、&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;texe zsh&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;のようにして起動しますが、vimshellバッファが欲しくないときには:VimShellTerminal zshとしても起動することができます。&lt;br /&gt;&lt;br /&gt;texeと似たvimshellのコマンドとして、iexeというものがあります。こちらは対話的にバッファを生成し通信するのですが、texeとは細かい動作が異なります。&lt;br /&gt;iexeはneocomplcacheと連携して補完ができたり、ヒストリを参照して実行できたりと、Vimの機能をほぼフルに使うことができます。しかし、texeの場合はバッファに対するすべての入力が奪われてしまうので、neocomplcacheは使えません。補完は起動するソフトの機能に依存します。そのあたりはConqueも同じです。加えてtexeはエスケープシーケンスの処理が重いので、私はインタプリタを起動するときにはiexeを使うことをおすすめします。ただし、zshの右プロンプトはiexeでは動作しません。どうしても右プロンプトを使いたいなら、texeを使用する必要があります。&lt;br /&gt;iexeの方が優れているというのに、わざわざtexeを作った理由は、フル機能の端末が必要なニーズは確実に存在するためです。例えば、gdbtuiというものがあります。これは端末上でグラフィカルにデバッグを行うことができるソフトです。こういうものはiexe上では実行ができません。VimではEmacsのようなGDBとの連携がしづらいのですが、gdbtuiのようなソフトを使えば模倣できると考えました。端末エミュレータの機能を実装すれば、muttやw3mといったメールやWebブラウズもVimだけで実行できるということもあります。端末エミュレータの実装はそれなりに大変ですが、端末機能を使うすべてのプログラムとVimが連携できることを考えれば、実装する価値はあります。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Conqueとの比較&lt;/h3&gt;&lt;br /&gt;&lt;h4&gt;texeの良いところ&lt;/h4&gt;&lt;br /&gt;・vimshellと連携できる&lt;br /&gt;・Conqueの対応していないエスケープシーケンスに対応&lt;br /&gt;・Windows対応&lt;br /&gt;・+pythonが必要ない&lt;br /&gt;・洗練されたハイライト&lt;br /&gt;・プロセスの後始末&lt;br /&gt;・キーマッピングを自由に設定が可能&lt;br /&gt;Conqueの対応していないエスケープシーケンスとは、例えばタイトルやカーソル形状の変更のエスケープシーケンスや、Line Drawing Character setのエミュレーションです。Conqueのハイライト設定は、実はvimshellのものを流用しています。が、vimshellのハイライトはその後独自に進化したので、当然texeの方が優れています。Windowsに対応するには、Cygwinのインストールとfakecygptyが必要です。動作もかなり重く、zshの自動補完を使うにはかなり無理があります。zshを普通に使う分には問題がありません。&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;texeの悪いところ&lt;/h4&gt;&lt;br /&gt;・エスケープシーケンスの実装はまだ不完全&lt;br /&gt;・Conqueより重い？&lt;br /&gt;&lt;br /&gt;まだ開発したばかりなので、動作速度やエスケープシーケンスの対応については、なかなか厳しかったりします。ようやく一通りの機能を実装することはできたので、今後改善予定です。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;設定について&lt;/h3&gt;&lt;br /&gt;texeはfiletypeをterm-コマンド名として設定するので、&lt;br /&gt;autocmd term-*で設定します。例えばこのように：&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;autocmd MyAutoCmd FileType term-* call s:terminal_settings()&lt;br /&gt;function! s:terminal_settings()&lt;br /&gt;  inoremap &amp;lt;buffer&amp;gt;&amp;lt;expr&amp;gt; &amp;lt;Plug&amp;gt;(vimshell_term_send_semicolon) vimshell#term_mappings#send_key(';')&lt;br /&gt;  inoremap &amp;lt;buffer&amp;gt;&amp;lt;expr&amp;gt; j&amp;lt;Space&amp;gt; vimshell#term_mappings#send_key('j')&lt;br /&gt;  "inoremap &amp;lt;silent&amp;gt;&amp;lt;buffer&amp;gt;&amp;lt;expr&amp;gt; &amp;lt;Up&amp;gt; vimshell#term_mappings#send_keys("\&amp;lt;ESC&amp;gt;[A")&lt;br /&gt;  &lt;br /&gt;  " Sticky key.&lt;br /&gt;  imap &amp;lt;buffer&amp;gt;&amp;lt;expr&amp;gt; ;  &amp;lt;SID&amp;gt;texe_sticky_func()&lt;br /&gt;&lt;br /&gt;  " Escape key.&lt;br /&gt;  iunmap &amp;lt;buffer&amp;gt; &amp;lt;ESC&amp;gt;&amp;lt;ESC&amp;gt;&lt;br /&gt;  imap &amp;lt;buffer&amp;gt; &amp;lt;ESC&amp;gt;         &amp;lt;Plug&amp;gt;(vimshell_term_send_escape)&lt;br /&gt;endfunction&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;vimshell#term_mappings#send_key()という関数は、起動しているプログラムに送るキーシーケンスを制御しています。複数のキーシーケンスを送る場合はvimshell#term_mappings#send_keys()を使います。&lt;br /&gt;ヘルパ関数が用意されているので、キーマッピングも自由自在なのです。&lt;br /&gt;設定さえしてやればスティッキーシフトに対応することもできます。この柔軟性は大きな魅力です。&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;おわりに&lt;/h3&gt;&lt;br /&gt;texeには、まだVT100レベルの端末機能しか実装されていませんが、いずれは$TERMがxterm-256colorになる予定です。今後に期待してください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-5883730757754423171?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/5883730757754423171/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/07/vimshell-texe.html#comment-form' title='4 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5883730757754423171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5883730757754423171'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/07/vimshell-texe.html' title='vimshellの新機能 texeについて'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-212395795679869182</id><published>2010-07-14T14:32:00.008+09:00</published><updated>2010-07-14T14:48:38.455+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcache Ver.5.1開発中</title><content type='html'>また期間が空いてしまいました……。Vim Hacksもあるので、ブログを続けるのはなかなか難しいですね。&lt;br /&gt;まぁ、こちらにはこちらの良さがあるので、ブログをやめることは多分やりません。&lt;br /&gt;しかしこんな濃いブログを見てる人なんているのだろうか。&lt;br /&gt;&lt;br /&gt;本題です。私はvimshellの開発やeskkの修正で忙しかったりするのですが、neocomplcacheのバージョンアップも密かに進めています。それがneocomplcache Ver.5.1です。&lt;br /&gt;http://github.com/Shougo/neocomplcache/tree/master&lt;br /&gt;&lt;br /&gt;見ための変化はあまりないですが、プラグインの仕様がかなり変化しています。&lt;br /&gt;&lt;br /&gt;ファイル名補完&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1O5_bOQ2I/AAAAAAAAADE/vHf9Xg_mrTI/s1600/filename_complete.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 225px; height: 235px;" src="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1O5_bOQ2I/AAAAAAAAADE/vHf9Xg_mrTI/s320/filename_complete.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5493633878646997858" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;vimshellとの連携&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1PLfdQrwI/AAAAAAAAADM/2pSFRTHwYOY/s1600/neocomplcache_with_vimshell.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 134px;" src="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1PLfdQrwI/AAAAAAAAADM/2pSFRTHwYOY/s320/neocomplcache_with_vimshell.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5493634179303255810" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;オムニ補完&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ci2yBnqzJgM/TD1PTolkTBI/AAAAAAAAADU/knJ3eniuHWI/s1600/omni_complete.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 290px;" src="http://2.bp.blogspot.com/_ci2yBnqzJgM/TD1PTolkTBI/AAAAAAAAADU/knJ3eniuHWI/s320/omni_complete.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5493634319192968210" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Vimオムニ補完&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1PfKTlwnI/AAAAAAAAADs/nOGWTRLuae8/s1600/vim_complete.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 117px;" src="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1PfKTlwnI/AAAAAAAAADs/nOGWTRLuae8/s320/vim_complete.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5493634517222933106" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;レジスタ補完&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1Pel4fomI/AAAAAAAAADk/YsAxF8i6r3w/s1600/register_complete.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 70px;" src="http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1Pel4fomI/AAAAAAAAADk/YsAxF8i6r3w/s320/register_complete.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5493634507445609058" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;クイックマッチ&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ci2yBnqzJgM/TD1PeahCmOI/AAAAAAAAADc/Rz_Pbpr92z4/s1600/quick_match.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 219px;" src="http://3.bp.blogspot.com/_ci2yBnqzJgM/TD1PeahCmOI/AAAAAAAAADc/Rz_Pbpr92z4/s320/quick_match.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5493634504394447074" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;neocomplcacheでは、「あまりユーザーがプラグインを書いてくれない」ということが大きな障害となっていました。&lt;br /&gt;neocomplcache Ver.5.1はプラグインが書き易くなっているので、今度こそプラグイン製作者が増えるのではないかと期待しています。あとはドキュメントさえあれば完璧です。このあたりはVim Hacksでフォローする予定です。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-212395795679869182?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/212395795679869182/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/07/neocomplcache-ver51.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/212395795679869182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/212395795679869182'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/07/neocomplcache-ver51.html' title='neocomplcache Ver.5.1開発中'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1O5_bOQ2I/AAAAAAAAADE/vHf9Xg_mrTI/s72-c/filename_complete.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-180015526948725541</id><published>2010-06-15T13:39:00.015+09:00</published><updated>2010-06-15T19:11:30.946+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>Re: :shell vs vimshell</title><content type='html'>前回より、だいぶブログの更新があいてしまいました。なかなか続けるというのは難しいですね。まぁ、それはいいとして本題です。&lt;br /&gt;&lt;br /&gt;h1mesukeさんのvimshellの感想として、「:shell vs vimshell」&lt;br /&gt;&lt;a href="http://d.hatena.ne.jp/h1mesuke/20100615/p1"&gt;http://d.hatena.ne.jp/h1mesuke/20100615/p1&lt;/a&gt;というページが公開されていました。本来ならばコメントとしてそちらのページに書き込む予定でしたが、長くなりそうなので、ブログでコメントを述べておきたいと思います。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;この辺りのことは、Linux上でかつ端末内でのみ vim を使う自分にはそもそも問題になりません。:shell で起ち上がるのは zsh であり、強力です。*1&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;vimshellはもともと、Windowsの貧弱なコマンドライン環境を何とかするために開発されました。その後、プラグインとの連携性や、インタプリタ実行などの機能が付加され、現在のような姿になります。Linux上で、しかも端末上で使用するなら、それらの利点はあまりないかもしれません。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;gt;実行している間はVimが止まってしまいます。&lt;br /&gt;&lt;br /&gt;あまり格好良くはありませんが、別タブで（；^ω^）&lt;br /&gt;&lt;br /&gt;&amp;gt;コマンドの出力もバッファにとれない&lt;br /&gt;&lt;br /&gt;あまり格好良くはありませんが、xsel とかマウスによるコピペで。&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;それで満足できるなら、vimshellを使う意味はあまりないでしょう。vimshellはVimから出たくない、Vim上ですべてのコマンド実行を解決させたい人のためのものですから。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;vimshell を使ってみてまず出鼻を挫かれるのは、.zshrc で定義している alias やシェル関数が効かないこと。l みたいなものから始まって、その数はかなりの量にのぼるので、それらを vimshell 上でも使えるようにするには、と考えるとちょっと気が遠くなりました。&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;はい。シェルの移行コストというのは高くて、それが新しいシェルがなかなか生まれない原因ではないかと私は考えています。なぜvimshellはzshの構文が使えないのかというと、vimshellはzshやbash, shとの互換性よりも、Vim Scriptとの親和性を考えて設計しているためです。加えて、私自身がシェルスクリプトの難解な構文や落とし穴が好きでない、というせいもあります。ただ、パイプはいずれ使えるようにします。zshの高度なリダイレクションもいずれは実装します。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;使えるようにできたところで、２つのシェルの設定を抱えることになり、管理が二重化することは明白で、これは許容できないところです。&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;確かに設定の二重化は避けられないです。ただ、「これを許容できない」とありますが、本当にそうでしょうか。例えば、zshやbash(readline)でviキーバインドを愛用している人がいますが、これはzshとVimの設定の二重化です。あまりにVimに慣れすぎると、外の世界でもVimの設定を使いたくなります。「&lt;a href="http://zshscreenvimvimpwget.blog27.fc2.com/blog-entry-3.html"&gt;zshにVimのビジュアルモードを実装した&lt;/a&gt;」人がいますが、これこそ典型例だと思います。zsh上でVimの設定を模倣するくらいなら、Vim上でzshの設定を模倣してもいいと思いますが、どうでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;物事を単純にしたいのならシェルは一元化すべきで、:shell から普段使っているシェルを呼び出すのがラク。DRY原則重要。&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;一元化することは大事だと思います。私は一元化したことによって、zshの代わりにvimshellが標準シェルとなってしまいましたが。「Vimの設定 &amp;gt;&amp;gt;越えられない壁 zshの設定 &amp;gt;&amp;gt; screenの設定」なので、すべてがVimに吸収されてしまうのも容易に想像にできます。&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;とすると、自分はそもそも vimshell の恩恵を受けにくいところにいる、ということかも知れません。というか、多分そう。もしくは vimmerレベルが低いか（；^ω^）&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;まぁ、その方が幸せなのかもしれません。vimshellをありがたがるということは、もう&lt;a href="http://d.hatena.ne.jp/keyword/vim%C9%C2"&gt;Vim病&lt;/a&gt;にかかっているということですから……。&lt;br /&gt;&lt;br /&gt;指摘のあったとおり、vimshellはまだ完全ではありません。いつかはほぼzshを置き換えられるようにと考えて開発をしていますが、道はかなり険しいです。もし機会がありましたらまたvimshellを試してもらえるとありがたいです。きっとその頃には欠点も解消しているでしょう。&lt;br /&gt;&lt;br /&gt;追記：「mattnさんのコメント」&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;mattn 個人的にはtailが動かないとエディタ内のシェルってそれほど意味を成さないと思ってる。 &lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;そんなあなたも大丈夫。bg tail -f もしくはiexe tail -fが使えます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-180015526948725541?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/180015526948725541/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/06/re-shell-vs-vimshell.html#comment-form' title='6 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/180015526948725541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/180015526948725541'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/06/re-shell-vs-vimshell.html' title='Re: :shell vs vimshell'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-3754382908241545793</id><published>2010-05-09T15:30:00.008+09:00</published><updated>2010-05-09T18:02:10.532+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VM'/><category scheme='http://www.blogger.com/atom/ns#' term='OpenBSD'/><category scheme='http://www.blogger.com/atom/ns#' term='YUREX'/><category scheme='http://www.blogger.com/atom/ns#' term='FreeBSD'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><category scheme='http://www.blogger.com/atom/ns#' term='Kernel'/><category scheme='http://www.blogger.com/atom/ns#' term='Plan9'/><title type='text'>第四回 カーネル／VM探検隊</title><content type='html'>参加・LTしてきたのでまとめを書いておきます。&lt;br /&gt;&lt;br /&gt;会場に到着したのは12:20頃。割とはやめ。会場はなかなか広かった。&lt;br /&gt;&lt;br /&gt;１．kozosさんの発表&lt;br /&gt;組み込みOSを作ったよ！　という話。今度本が出るみたい。&lt;br /&gt;ちょっと興味ある。&lt;br /&gt;&lt;br /&gt;２．yojiroさんの発表&lt;br /&gt;OpenBSDのYUREXドライバはどのように解析したのか、おまけとして&lt;br /&gt;「かわいくない」温度センサの解析秘話つき。&lt;br /&gt;この人の発表は面白すぎました。あまたの名言が飛び出す。&lt;br /&gt;「ドライバの気持ちは分かってた」&lt;br /&gt;３時間でデバイスドライバをハック、すごい！&lt;br /&gt;&lt;br /&gt;３．kobaさんの発表&lt;br /&gt;組み込みの人らしいです。クロスコンパイル環境をqemuでごにょごにょしてたという話。&lt;br /&gt;&lt;br /&gt;４．honmaさんの発表&lt;br /&gt;ついにYUREXの話キター！&lt;br /&gt;今日のハイライト。貧乏揺すりを科学したYUREX。CMが放送されたこともあるらしい。&lt;br /&gt;一生のうちに貧乏揺すりをする回数をまじめに計算＝＞10桁あれば大丈夫だろう。&lt;br /&gt;検証する動画がシュール。お値段は￥12,600（これでも採算ギリギリ）でしたが、&lt;br /&gt;時代を先取りしすぎて（売れなかったので）￥980に値下げ。まさかの92% OFF！&lt;br /&gt;&lt;a href="http://bbu.kayac.com/"&gt;YUREXのサイト&lt;/a&gt;がある。まじめに解説しすぎてて吹く。&lt;br /&gt;デバイスドライバはPython製。Windows 7専用ドライバもある。&lt;br /&gt;秘密の在庫がまさかのワンコイン。即売会は争奪戦でした。&lt;br /&gt;何が彼らを熱くさせたのか……。どうしてこうなった！&lt;br /&gt;&lt;br /&gt;休憩を挟み、ここからLTになった。&lt;br /&gt;５．go_vmさんの発表&lt;br /&gt;Plan9で動くYUREXのドライバを書いた！という話。&lt;br /&gt;各OSでYUREXのドライバを書くというのが前回のカーネル／VM探検隊後にはやったらしい。&lt;br /&gt;3月終わりのHacathonにて実装。Plan9のUSBドライバはユーザー空間で動作する。&lt;br /&gt;USBデバイスはファイルとして見える。おお、確かに動いている。&lt;br /&gt;時間がないので続きはWebで。github上で公開しているらしい。&lt;br /&gt;&lt;br /&gt;６．noztosさんの発表&lt;br /&gt;NetBSDとYUREXの話。5秒に一回ポーリング。Twitterに投稿できるらしい。&lt;br /&gt;&lt;br /&gt;７．syuu1228さんの発表&lt;br /&gt;OpenBSDにsgi SMPを実装。Theoさん直々にマシンを買わされた。&lt;br /&gt;共有メモリアーキテクチャでクラスタを構成できる、ごく普通のHPC。&lt;br /&gt;いわゆる変形合体ロボ。プロセッサローカルな空間があり、ローカルなIOとリモートのIOがある。&lt;br /&gt;OpenBSDが持っているのは全部で四台らしいので、「もう一台送られてくるかも？」と言っていた。&lt;br /&gt;質問にて、「sgi SMPをどこに送ればいいんですか？」に吹く。&lt;br /&gt;&lt;br /&gt;８．xylaoさんの発表&lt;br /&gt;UNIX/32Vをエミュレータで動かす。マイクロコードを修正した話。&lt;br /&gt;すごく……CPUです。いや私は大好物なんですけど。&lt;br /&gt;VAXのマイクロコードを解説。あれ、これは何の勉強会だったっけ。&lt;br /&gt;&lt;br /&gt;９．masami256さんの発表&lt;br /&gt;デバイスドライバを作ろう！とInterface別冊で勉強していた。&lt;br /&gt;「使い方を説明するので誰か実装して」に吹く。&lt;br /&gt;&lt;br /&gt;１０．siritoriさんの発表&lt;br /&gt;高校生の発表。H8SXマイコン上で動作するOSを作ろうという話。&lt;br /&gt;スライドでまさかのハプニング。卒業研究らしい。&lt;br /&gt;そこにH8SXマイコンがあったから。&lt;br /&gt;OSはまだ書けてないようだ。逆質問を受け付けていた。&lt;br /&gt;&lt;br /&gt;１１．oza_x86さんの発表&lt;br /&gt;会場に来れなかったらしく、Skypeで参加。&lt;br /&gt;Dynamick tikcsはお仕事があるときだけタイマー割り込み。&lt;br /&gt;利点は消費電力の低減とゲストOS時にCPU使用率の低下。&lt;br /&gt;社会人になるというイベントがあったので4月はあまり実装できず。26日からやる。&lt;br /&gt;27日にパッチを投げる。実際にテストしてもらえることになり、ToDoが増えた。&lt;br /&gt;FreeBSD 7.Xで試せるようになった。パッチとソースはgithub上にあるらしい。&lt;br /&gt;今後はFreeBSD 8.1めがけてマージしたいとのこと。&lt;br /&gt;&lt;br /&gt;１２．yumano・murahueさんの発表&lt;br /&gt;韓国のハッキングコンテストに参加。ハッキングコンテストの話はそこそこに、韓国話。&lt;br /&gt;韓国で見つけたらしい「Kimchi and IT」に吹く。&lt;br /&gt;&lt;strike&gt;fizzbuz&lt;/strike&gt;bizbuz&lt;br /&gt;韓国にはIT女子が多い。彼女たちはみんなバイナリアン。韓国は楽園！&lt;br /&gt;バイナリアンかっこいい。&lt;br /&gt;&lt;br /&gt;１３．ucqさんの発表&lt;br /&gt;バイナリエディタで始めるプログラミング入門。タイトルはネタ。&lt;br /&gt;Twitterでつぶやいてたら採用されたらしい。&lt;br /&gt;「とりあえず、実行ファイルをバイナリエディタONLYで書きます」&lt;br /&gt;実行ファイルの形式は、PE, ELF, COM, Mach-O, a.out, ....&lt;br /&gt;そうだ、Plan9でいこう！　吹いた。&lt;br /&gt;Plan9はフォーマットがシンプル。&lt;br /&gt;ライブコーディングでバイナリエディタを使うプログラミング。これは斬新だ。胸が熱くなるな。&lt;br /&gt;ヘッダの後に実行位置を書く。「ハンドアセンブルは面倒なのでNASMで」ですよねー。&lt;br /&gt;デモは失敗……。残骸のコードが残ってしまっていたらしい。&lt;br /&gt;&lt;br /&gt;１４．shudoさんの発表&lt;br /&gt;いまどきのBinary Hacks 後編&lt;br /&gt;Binary Hacksは大好評だったらしい。&lt;br /&gt;Web系バイナリアン。かっこいい。&lt;br /&gt;NerrymoserをデコードするためにLinux用のflv2mp3を利用することに。音声デバイスの出力を横取り。&lt;br /&gt;「Segmentation Faultはお友達」&lt;br /&gt;libX11.soで落ちてる。&lt;br /&gt;バイナリエディタで書き換えたら動いた→さすがにこれはまずい。&lt;br /&gt;GDB使ってブレークポイントを設定。&lt;br /&gt;ioctlを呼んでスタックポインタがずれる。&lt;br /&gt;よくよく眺めるためにlibcを逆アセンブル。&lt;br /&gt;独自のioctlを使っているらしい。&lt;br /&gt;処理を追うと末尾でなぜかジャンプ。この処理が悪さをしているらしい。&lt;br /&gt;実行後にスタックポインタを補正して解決。&lt;br /&gt;「binutilsはお友達」&lt;br /&gt;みんなご愛用のバイナリエディタ。shudoさんはEmacsのhexl-modeを使っていた。&lt;br /&gt;&lt;br /&gt;１５．d_kamiさんの発表&lt;br /&gt;Javaでx86エミュレータを作った話。&lt;br /&gt;OS作ったのでいろいろ知っていたが、命令コードのデコード方法は知らなかった。&lt;br /&gt;ブログで宣言、Twitterで自分を追い込む。&lt;br /&gt;アセンブリ言語のコードを実行できるようにする。&lt;br /&gt;知らない命令を少しずつ実装中。現状は手抜きでプロテクトできてません！&lt;br /&gt;&lt;br /&gt;１６．takahashiさんの発表&lt;br /&gt;KVMをWindowsに移植した話。エミュレーションの処理が遅いようだ。&lt;br /&gt;もうちょっと詳しく聞きたかった……。&lt;br /&gt;&lt;br /&gt;１７．自分の発表 Vim = VM&lt;br /&gt;VimはVMであると主張するいたって真面目なプレゼンだったはずなのに、&lt;br /&gt;どうしてこうなった！　いろいろキワモノあつかいされました。反省はしていない。&lt;br /&gt;詳細は&lt;a href="http://groups.google.co.jp/group/kernelvm/web/VIM%20presentation.pdf"&gt;発表資料&lt;/a&gt;を見てください。本当ならvimshellのデモをするはずだったのですが、一番最初に若干トラブったのとうまく画面切り替えできなかったので時間切れとなりました。&lt;br /&gt;&lt;br /&gt;質問：Plan9でvimshellは動きますか？&lt;br /&gt;答え：誰かが対応してくれれば……。私はLinux/Windows環境しかないので検証できません。&lt;br /&gt;Macに対しても同じスタンス。ちなみに、Plan9にもVimはあるらしい。&lt;br /&gt;&lt;br /&gt;質問：Emacs上でVimを動かせばいいのでは？&lt;br /&gt;答え：エミュレーションにはあまり期待していない。それよりも、Emacsの優れた機能をVimに移植したい。&lt;br /&gt;&lt;br /&gt;１８，１９：&lt;br /&gt;もっと話を聞きたかったのですが、発表が終わった後で忙しくて話を聞けず……。&lt;br /&gt;&lt;br /&gt;ベストオブLT（自分の中で）：&lt;br /&gt;１．shudoさん&lt;br /&gt;２．yojiroさん&lt;br /&gt;３．oza_x86さん&lt;br /&gt;４．ucqさん&lt;br /&gt;５．syuu1228さん&lt;br /&gt;みんなネタが濃い……。&lt;br /&gt;&lt;br /&gt;全体に関する感想：&lt;br /&gt;BSDとPlan9が大人気過ぎて吹く。なければ自分で（ドライバを）書くというその姿勢は見習いたい。&lt;br /&gt;BSD系は比較的日本人コミッタが多いよね。なぜだろう？&lt;br /&gt;自分の好きなOSを改造できるっていいな。&lt;br /&gt;Vim = VMはもっと煮詰めれば真面目な研究課題として成り立つような気がする。&lt;br /&gt;Vimからデバイスをいじれれば面白いですよね。真剣に検討しておこう。&lt;br /&gt;&lt;br /&gt;ちなみに、力尽きたので懇親会には参加できませんでした。&lt;br /&gt;何か質問があれば直接メール or github Issue or Twitterなどで。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-3754382908241545793?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/3754382908241545793/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/05/vm.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3754382908241545793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3754382908241545793'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/05/vm.html' title='第四回 カーネル／VM探検隊'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-2672089757171525998</id><published>2010-03-27T15:36:00.008+09:00</published><updated>2011-01-27T13:08:55.641+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='neoocmplcache'/><category scheme='http://www.blogger.com/atom/ns#' term='RSense'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><title type='text'>RSenseをneocomplcacheで使用するには？</title><content type='html'>m2ymさんが作成したRSenseは、まだ未完成ですが優れた型推論機能で便利です。&lt;br /&gt;&lt;strike&gt;しかし、Vimには一応対応しているもののcompletefuncを書き換えてしまうため、&lt;br /&gt;neocomplcacheと併用すると問題が発生します。&lt;br /&gt;私がneocomplcacheと相性が良くなるように書き換えたので、&lt;br /&gt;etc/rsense.vimを置き換えてください。&lt;br /&gt;&lt;a href="http://github.com/Shougo/rsense"&gt;http://github.com/Shougo/rsense&lt;/a&gt;&lt;/strike&gt;&lt;br /&gt;追記：Ver.0.3で私のパッチが取り込まれ、neocomplcacheに対応しました！&lt;br /&gt;&lt;br /&gt;その上で、次のような設定をすれば一応動作します。&lt;br /&gt;g:rsenseHomeはRSenseをインストールしたディレクトリを指定してください。&lt;br /&gt;let g:rsenseHome = 'c:/rsense-0.3'&lt;br /&gt;let g:rsenseUseOmniFunc = 1&lt;br /&gt;&lt;br /&gt;if !exists('g:neocomplcache_omni_patterns')&lt;br /&gt;  let g:neocomplcache_omni_patterns = {}&lt;br /&gt;endif&lt;br /&gt;let g:neocomplcache_omni_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::'&lt;br /&gt;&lt;br /&gt;使用例はこのようになります。RSenseサーバーの応答速度が遅いので、&lt;br /&gt;補完は若干もたつきます。注意してください。&lt;br /&gt;&lt;img src="http://gyazo.com/9d55b96df92960783396d56c3914d663.png"/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-2672089757171525998?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/2672089757171525998/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/03/rsenseneocomplcache.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2672089757171525998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2672089757171525998'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/03/rsenseneocomplcache.html' title='RSenseをneocomplcacheで使用するには？'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-969573686270173125</id><published>2010-02-24T13:53:00.004+09:00</published><updated>2010-02-26T11:24:39.638+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='補完'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><category scheme='http://www.blogger.com/atom/ns#' term='Emacs'/><title type='text'>諸君 私は補完が好きだ</title><content type='html'>諸君 私は補完が好きだ&lt;br /&gt;諸君 私は補完が好きだ&lt;br /&gt;諸君 私は補完が大好きだ&lt;br /&gt;&lt;br /&gt;手動補完が好きだ&lt;br /&gt;自動補完が好きだ&lt;br /&gt;インテリセンスが好きだ&lt;br /&gt;スペルチェックが好きだ&lt;br /&gt;シェルが好きだ&lt;br /&gt;予測補完が好きだ&lt;br /&gt;オムニ補完が好きだ&lt;br /&gt;&lt;br /&gt;Vimで　Emacsで　秀丸で&lt;br /&gt;zshで　bashで&lt;br /&gt;ATOKで　skkで　GoogleIMEで&lt;br /&gt;携帯で　スマートフォンで&lt;br /&gt;Visual Studioで　Eclipseで&lt;br /&gt;&lt;br /&gt;このプログラム上で行われる ありとあらゆる補完作業が大好きだ&lt;br /&gt;&lt;br /&gt;Vimがバッファからキーワード補完を行うのが好きだ&lt;br /&gt;zshがコマンドの引数を予想して適切な候補を提示した時など心がおどる&lt;br /&gt;&lt;br /&gt;ATOKが間違った日本語を訂正するのが好きだ&lt;br /&gt;複雑なテンプレートを使用したC++のコードを&lt;br /&gt;Visual Studioのインテリセンスで補完したときなど胸がすくような気持ちだった&lt;br /&gt;&lt;br /&gt;zshが補完の世界を蹂躙するのが好きだ&lt;br /&gt;補完を知らない初心者がシェルの引数をちまちまと入力している様など感動すら覚える&lt;br /&gt;履歴補完をしらない輩を&amp;lt;C-r&amp;gt;で吊るし上げていく様などはもうたまらない&lt;br /&gt;&lt;br /&gt;泣き叫ぶバグ入りのコードが私の這い回る&amp;lt;TAB&amp;gt;の指さばきとともに&lt;br /&gt;補完によってあっというまに正常に書き換えられるのも最高だ&lt;br /&gt;&lt;br /&gt;統合開発環境に目茶苦茶にされるのが好きだ&lt;br /&gt;必死に守るはずだったエディタとシェルの牙城が蹂躙され&lt;br /&gt;元祖のキーバインドがWindowsライクに変更されていく様はとても悲しいものだ&lt;br /&gt;&lt;br /&gt;anything.elの物量に押し潰されて殲滅されるのが好きだ&lt;br /&gt;VimとEmacsの宗教論争に追い回され、統合開発環境にその主導権を奪われるのは屈辱の極みだ&lt;br /&gt;&lt;br /&gt;諸君　私は補完を　最強の補完を望んでいる&lt;br /&gt;諸君　私に付き従うエディタユーザー諸君&lt;br /&gt;君達は一体何を望んでいる？&lt;br /&gt;&lt;br /&gt;完全なるオムニ補完を望むか？&lt;br /&gt;情け容赦のない糞の様なスペル訂正を望むか？&lt;br /&gt;肥大化の限りを尽くし数多のエディタを葬る悪魔の様な統合開発環境を望むか？&lt;br /&gt;&lt;br /&gt;zsh: &amp;lt;TAB&amp;gt;!!&lt;br /&gt;Emacs: &amp;lt;TAB&amp;gt;!!&lt;br /&gt;Vim: &amp;lt;TAB&amp;gt;!!&lt;br /&gt;&lt;br /&gt;よろしい　ならば補完だ&lt;br /&gt;&lt;br /&gt;我々は渾身の力をこめて今まさに&amp;lt;TAB&amp;gt;キーを押し下げんとする左手小指だ&lt;br /&gt;だがこの黒い画面の上で四半世紀もの間堪え続けて来た我々に&lt;br /&gt;&amp;lt;TAB&amp;gt;の打鍵すらもはや必要ない！！&lt;br /&gt;&lt;br /&gt;更なる補完を！！&lt;br /&gt;最強の自動補完を！！&lt;br /&gt;&lt;br /&gt;我らはエディタと補完をこよなく愛する一派に過ぎない&lt;br /&gt;だが諸君は一騎当千の古強者だと私は信仰している&lt;br /&gt;ならば我らは諸君と私で究極の自動補完プラグイン&lt;a href="http://github.com/Shougo/neocomplcache"&gt;neocomplcache&lt;/a&gt;となる&lt;br /&gt;&lt;br /&gt;我々を忘却の彼方へと追いやり眠りこけている連中を叩き起こそう&lt;br /&gt;髪の毛をつかんで引きずり降ろし眼を開けさせ思い出させよう&lt;br /&gt;&lt;br /&gt;連中にCUIの世界を思い出させてやる&lt;br /&gt;連中に我々の&amp;lt;TAB&amp;gt;キーの打鍵音を思い出させてやる&lt;br /&gt;&lt;br /&gt;自動補完には奴らの哲学では思いもよらない世界が広がっている事を知らしめてやる&lt;br /&gt;一千人のVimの戦闘団でソースコードを書き換え尽くしてやる&lt;br /&gt;&lt;br /&gt;「neocomplcacheインストール開始」&lt;br /&gt;「:NeoComplCacheEnable!」&lt;br /&gt;「最後のVimユーザーより全エディタユーザーへ」&lt;br /&gt;&lt;br /&gt;第二次 自動補完作戦 状況を開始せよ&lt;br /&gt;征くぞ 諸君&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ついカッとなってやった。反省はしていない。&lt;br /&gt;&lt;br /&gt;※：ご好評にお応えして、追記しました。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-969573686270173125?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/969573686270173125/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/02/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/969573686270173125'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/969573686270173125'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/02/blog-post.html' title='諸君 私は補完が好きだ'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8891635141152318137</id><published>2010-01-07T19:01:00.004+09:00</published><updated>2010-01-07T19:28:54.665+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>vimプラグインストーリー「Shougoの受難」</title><content type='html'>──アタシの名前はショウゴ。心に傷を負ったビム使い。モテカワスリムで補完体質の愛されガール♪&lt;br /&gt;アタシがつるんでる友達は補完をやってる&lt;a href="http://github.com/Shougo/neocomplcache"&gt;ネコ&lt;/a&gt;、ビムにナイショで&lt;br /&gt;非同期している&lt;a href="http://github.com/Shougo/vimproc"&gt;ビムプロック&lt;/a&gt;。訳あって一から実装された&lt;a href="http://github.com/Shougo/vimshell"&gt;ビムシェル&lt;/a&gt;。&lt;br /&gt;　友達がいてもやっぱり学校はタイクツ。今日もネコとちょっとしたことで口喧嘩になった。&lt;br /&gt;ビム使い同士だとこんなこともあるからストレスが溜まるよね☆そんな時アタシは一人で&lt;a href="https://github.com/"&gt;ギットハブ&lt;/a&gt;を歩くことにしている。&lt;br /&gt;がんばった自分へのご褒美ってやつ？自分らしさの演出とも言うかな！&lt;br /&gt;　｢あームカツク｣・・。そんなことをつぶやきながらしつこいプラギンを軽くあしらう。&lt;br /&gt;｢カノジョー、ちょっとsystem()させてくれない？｣どいつもこいつも同じようなDOS窓付きのコードしかない。&lt;br /&gt;イーマックスはシェルも動いてカッコイイけどなんか薄っぺらくてキライだ。もっと等身大のアタシを見て欲しい。&lt;br /&gt;　｢すいません・・。｣・・・またか、とセレブなアタシは思った。シカトするつもりだったけど、&lt;br /&gt;チラっと開発者の男の顔を見た。&lt;br /&gt;「・・！！」&lt;br /&gt;　・・・チガウ・・・今までのコードとはなにかが決定的に違う。スピリチュアルな感覚がアタシのビムを&lt;br /&gt;駆け巡った・・。「・・（カッコイイ・・！！・・これって運命・・？）」&lt;br /&gt;男はBramだった。連れていかれてハックされた。「キャーやめて！」今までやっていなかったパッチをきめた。&lt;br /&gt;「ガシッ！ボカッ！」アタシはSEGVした。キャッシュ（笑）&lt;br /&gt;&lt;br /&gt;注：&lt;br /&gt;元ネタ &lt;a href="http://love6.2ch.net/test/read.cgi/book/1191676700/45"&gt;http://love6.2ch.net/test/read.cgi/book/1191676700/45&lt;/a&gt;&lt;br /&gt;これはujihisa氏が作成したものを私が修正したものです。&lt;br /&gt;この作品はフィクションです。どこかで見たようなフレーズがあったとしても、実在の人物とは全く関係がありません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8891635141152318137?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8891635141152318137/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2010/01/vimshougo.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8891635141152318137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8891635141152318137'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2010/01/vimshougo.html' title='vimプラグインストーリー「Shougoの受難」'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-988804909435803187</id><published>2009-12-10T18:26:00.006+09:00</published><updated>2009-12-11T11:15:36.068+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcache Ver.4.00の新機能</title><content type='html'>neocomplcache Ver.4.00がリリースされました。&lt;br /&gt;&lt;a href="http://github.com/Shougo/neocomplcache/tree/v4.00"&gt;http://github.com/Shougo/neocomplcache/tree/v4.00&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;かなりの新機能や修正が入っているので、安定するまでに時間がかかりそうですが、&lt;br /&gt;どのような部分が変更されているのか簡単に紹介しておきます。&lt;br /&gt;&lt;br /&gt;・頻度情報をneocomplcacheのプラグイン内で共有するようにしました。&lt;br /&gt;候補の順番が改善されます。&lt;br /&gt;&lt;br /&gt;・頻度計算ルーチンの書き直し。&lt;br /&gt;&lt;br /&gt;・メモリ使用量の割に効果がないので、疑似3-gramの補完を廃止、2-gramの文脈補完になりました。&lt;br /&gt;&lt;br /&gt;・気付いたバグやレガシーなオプションを廃止。&lt;br /&gt;&lt;br /&gt;・syntax_completeの強化。TeXのキーワードを正確に認識します。&lt;br /&gt;&lt;br /&gt;・キャッシュ速度の改善、共通ルーチンのライブラリ化。キャッシュはかなりの部分に手を加えました。特にキャッシュしたファイルからの読み込みが速くなってます。&lt;br /&gt;&lt;br /&gt;実用的に使えるようになってきたので、どうぞお試しください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-988804909435803187?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/988804909435803187/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/12/neocomplcache-ver400.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/988804909435803187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/988804909435803187'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/12/neocomplcache-ver400.html' title='neocomplcache Ver.4.00の新機能'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-4043419177150548262</id><published>2009-11-23T16:30:00.002+09:00</published><updated>2009-11-23T16:36:03.939+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcacheの新機能 vim_complete</title><content type='html'>今回はneocomplcache Ver.3.17に搭載されたvim_completeの解説。&lt;br /&gt;&lt;br /&gt;vim_complete.vimとは、Vimのオムニ補完を実装するために作られたneocomplcacheのプラグインです。Vim標準のVimScript補完はVimScriptから呼ぶことができないので、１から実装しました。&lt;br /&gt;&lt;br /&gt;次のような機能があります。&lt;br /&gt;・組み込みコマンド・関数・mapping引数・autocmdの引数の補完&lt;br /&gt;・定義されている変数名やマッピング、augroupの補完&lt;br /&gt;&lt;br /&gt;さらに、開いているVimScriptを解析して、次のようなことも可能です。&lt;br /&gt;・ローカル変数や引数の補完&lt;br /&gt;・スクリプト関数・スクリプト変数の補完&lt;br /&gt;&lt;br /&gt;ちなみに、必要なくなったのでsyntax_completeはfiletypeがvimの場合、動作しないようになりました。&lt;br /&gt;ちなみに、この記事は今後まとめ直して、VimHacksに載せる予定です。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-4043419177150548262?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/4043419177150548262/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/11/neocomplcache-vimcomplete.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4043419177150548262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4043419177150548262'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/11/neocomplcache-vimcomplete.html' title='neocomplcacheの新機能 vim_complete'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-6043528304041531789</id><published>2009-11-23T15:06:00.007+09:00</published><updated>2010-01-13T12:23:53.505+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>vimshellのToDo</title><content type='html'>最近更新が滞りがちなvimshellですが、一応今後やることは決まってます。&lt;br /&gt;忘れないうちにここに書いておこうと思います。&lt;br /&gt;neocomplcacheもそうですが、新たな問題が発生して、全然ToDoが進まない今日この頃。&lt;br /&gt;機能的には改善しているのが救いです。&lt;br /&gt;&lt;br /&gt;・グロブがマッチしない場合、zshのように、現在エラーになる。Bashのように空にするべき？&lt;br /&gt;&lt;br /&gt;・構文解析パーザを書き直し。Lexical analyzerとparserを書いて、分離して……。というVimScriptでは考えられないことをやらないといけないかも。&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;コマンドのインテリジェントな補完システム。&lt;/strike&gt;&lt;br /&gt;内部コマンドの補完は自分で作らないと。外部コマンドはzshを呼び出せるようにする。&lt;br /&gt;-&gt;現在実装中。実装完了するにはかなり時間がかかりそう。&lt;br /&gt;-&gt;Ver.6.00で実装しました！ zsh_completeはまだです。&lt;br /&gt;&lt;br /&gt;・zshのzptyのように、端末入出力を自動化する内部コマンドの追加。&lt;br /&gt;どうせ似たようなことをやっている。&lt;br /&gt;&lt;br /&gt;・zargsを移植？　拡張ブログの内容をファイルに書き出し、xargsに渡す。&lt;br /&gt;&lt;br /&gt;・履歴に登録しないコマンドパターンを定義するオプションの追加&lt;br /&gt;g:VimShell_IgnoreHistoryPattern&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;openコマンドは環境をきちんと判定するように。&lt;/strike&gt;&lt;br /&gt;-&gt; Ver.6.03で実装中。&lt;br /&gt;&lt;br /&gt;・&lt;C-h&gt;, &lt;C-w&gt;, &lt;C-u&gt;はプロンプトを削除しないように置き換える。&lt;br /&gt;&lt;br /&gt;・ENV=value cmdの実装。&lt;br /&gt;(local ENV=value; cmd)というようなコマンドが解釈できると良いな。&lt;br /&gt;&lt;br /&gt;・`=$hoge`とすると、変数を置換してからevalするように。&lt;br /&gt;&lt;br /&gt;・'や"は行をまたいでも認識するように。&lt;br /&gt;&lt;br /&gt;・制御構文の実装。多分一番難しい。&lt;br /&gt;&lt;br /&gt;・time内部コマンド　コマンドの実行時間を計測する。&lt;br /&gt;reltime()を使って実装。コマンド列を評価せずに一つにまとめる構文が欲しい。&lt;br /&gt;&lt;br /&gt;・cat, more(less)内部コマンドの実装。内部コマンドも標準入力を解釈する。&lt;br /&gt;&lt;br /&gt;・vimshellバッファを初期化する際に、setlocal nopasteしておく。&lt;br /&gt;他のオプションもftplugin/vimshell.vimで設定。&lt;br /&gt;-&gt;ftplugin/vimshell.vimは廃止予定。&lt;br /&gt;-&gt;ver.6.00で廃止しました。&lt;br /&gt;&lt;br /&gt;・別バッファのvimshellのカレントディレクトリに移動するcdd内部コマンドを追加する。&lt;br /&gt;cdd add, cdd delでディレクトリを追加・削除する。&lt;br /&gt;-&gt;別バッファのディレクトリに移動するbcd内部コマンドを追加した。これは便利。まだ補完は出来ない。&lt;br /&gt;-&gt;補完も実装しました！&lt;br /&gt;&lt;br /&gt;・hoge &amp;&amp; fugaはfishみたいにhoge; and fugaとしたい。&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;なぜかWindowsではコマンドの終了ステータスがうまく取れない。&lt;/strike&gt;&lt;br /&gt;-&gt;vimprocのバグだったので修正。&lt;br /&gt;&lt;br /&gt;・topのようにコマンドを実行するtoplessを移植。&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;s:error_bufferやs:print_bufferは廃止して、vimshell.vimに一本化する。&lt;br /&gt;interactive.vimはautoload/vimshell/interactive.vimに移動。&lt;/strike&gt;&lt;br /&gt;-&gt;Ver.6.00で実装。&lt;br /&gt;&lt;br /&gt;・ドキュメントの充実&lt;br /&gt;実はここが一番重要だったり。自分が気の向くままに実装した内部コマンドの数々は、&lt;br /&gt;さすがにマニュアル書かないと気付いてもらえないこと間違いなし。&lt;br /&gt;作者でさえ、時々仕様を忘れます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-6043528304041531789?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/6043528304041531789/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/11/vimshelltodo.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6043528304041531789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6043528304041531789'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/11/vimshelltodo.html' title='vimshellのToDo'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-6397693428254839651</id><published>2009-11-10T12:36:00.014+09:00</published><updated>2010-01-13T12:25:19.992+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcacheのToDo</title><content type='html'>本日、neocomplcache Ver.3.11がリリースされました。&lt;br /&gt;&lt;a href="http://github.com/Shougo/neocomplcache/tree/v3.11"&gt;http://github.com/Shougo/neocomplcache/tree/v3.11&lt;/a&gt;&lt;br /&gt;クイックマッチの復活やメンバ補完の実装、ファイル名補完の自動呼び出し等、&lt;br /&gt;新機能が目白押しなので、是非お試しください。&lt;br /&gt;&lt;br /&gt;さて、neocomplcacheの目玉機能もほぼ実装し終わったので、忘れないうちにneocomplcacheで今後実装するであろう機能についてメモしておきます。&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;キーバインドにより、一時的に補完関数を呼べるようにする。&lt;br /&gt;inoremap &amp;lt;expr&amp;gt; neocomplcache#call_complfunc('hoge')みたいな感じ。&lt;/strike&gt;&lt;br /&gt;-&gt;Ver.4.xxに、completefunc_completeを作成して実装予定。&lt;br /&gt;-&gt;実装しました。&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;現在プラグインごとに実装している、候補のキャッシュを統合し、簡単に利用できるようにする。&lt;/strike&gt;&lt;br /&gt;-&gt;早めに実装したいところ。Ver.3.22にて、一部のルーチンは統合。次はバッファとタグを統合する予定。&lt;br /&gt;-&gt;Ver.4.00にて、完全に統合した。Ver.4.xxではファイルタイプごとに頻度情報を利用したい。&lt;br /&gt;&lt;br /&gt;・ヘルプをそろそろ見直しておく。&lt;strike&gt;特に英語ヘルプが追いついていない。&lt;/strike&gt;&lt;br /&gt;-&gt;Ver.3.15で英語ヘルプは大体見直した。一度総点検が必要だが……。&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;buffer_completeのキャッシュ構造を見直し。&lt;/strike&gt;&lt;br /&gt;&lt;strike&gt;candidatesは削除。&lt;/strike&gt;&lt;br /&gt;-&gt;candidatesはVer.3.13で削除。代わりにInsertLeaveでキャッシュをするようにした。行の変更関知は保留。buffer_completeのキャッシュはVer.4.00で大改造して、満足のいくものになった。&lt;br /&gt;&lt;br /&gt;・インクルード補完やタグ補完で_や~から始まる候補を削除するため、g:NeoComplCache_TagsFilter[filetype]を追加。キャッシュを構築するときにフィルタリングする。&lt;br /&gt;-&gt;Ver.4.02で実装予定。&lt;br /&gt;&lt;br /&gt;・インクルード補完のキャッシュはファイルタイプ変更時に構築し直すようにする。インクルード補完でキャッシュするのは少しずつ行う。buffer_complete.vimのようなデータ構造を持つようにする。&lt;br /&gt;&lt;br /&gt;・現在インクルード補完では、パターンの解析に'include'を使用している。ただし、初期値がC/C++形式なので問題。filetypeがC/C++でない場合は'^\s*#\s*include'を使用しない。&lt;br /&gt;&lt;br /&gt;&lt;strike&gt;・オプションを追加する。&lt;br /&gt;g:NeoComplCache_AutoCompletionTime&lt;br /&gt;自動補完のポップアップメニューが出るための時間&lt;br /&gt;g:NeoComplCache_EnableCompletionMovedI&lt;br /&gt;CursorHoldIではなく、CursorMovedIのタイミングで自動補完する。以前のneocomplcacheに近い挙動。&lt;/strike&gt;&lt;br /&gt;-&gt; CursorHoldIには候補がなくなった際に呼ばれないという致命的な不具合があるので、Ver.3.12で廃止した。Ver.3.21にて、キーが入力されていたらスキップするように修正。&lt;br /&gt;&lt;br /&gt;&lt;strike&gt;・snipMateのスニペットディレクトリを自動認識する&lt;/strike&gt;&lt;br /&gt;-&gt; Ver.3.12で実装。&lt;br /&gt;&lt;br /&gt;・&lt;strike&gt;buffer_complete, snippets_complete以外のプラグインもComposite filetype(php.symphonyみたいなもの)に対応させる。&lt;/strike&gt;&lt;br /&gt;-&gt;Ver.4.07で実装。&lt;br /&gt;&lt;br /&gt;・filetype pluginの実装、vim_completeのfiletype plugin化。&lt;br /&gt;-&gt;Ver.4.xxで実装予定。&lt;br /&gt;&lt;br /&gt;・vim_completeにおいて、Dictionaryの要素も解析する。&lt;br /&gt;-&gt;Ver.4.xxで実装予定。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-6397693428254839651?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/6397693428254839651/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/11/neocomplcachetodo.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6397693428254839651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6397693428254839651'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/11/neocomplcachetodo.html' title='neocomplcacheのToDo'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-9199467666443120031</id><published>2009-11-06T16:53:00.005+09:00</published><updated>2009-11-06T17:09:01.053+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='termtter'/><title type='text'>TermtterをWindowsにインストールする</title><content type='html'>termtterをWindows上のRubyにインストールのが、あまりに面倒なので、やり方を公開しておきます。&lt;br /&gt;&lt;br /&gt;１．Rubyをインストール&lt;br /&gt;２．&lt;a href="http://rubyforge.org/projects/rubygems/"&gt;rubyforge&lt;/a&gt;からgem-1.3.5.tar.gzを落としてきて解凍&lt;br /&gt;３．gem install termtter&lt;br /&gt;４．termtterコマンドを実行する&lt;br /&gt;エラーが出る場合は、SSLEAY32.dllとzlib.dllをC:\ruby\binにインストールする必要がある。&lt;br /&gt;&lt;a href="http://jarp.does.notwork.org/win32"&gt;http://jarp.does.notwork.org/win32&lt;/a&gt;より、openssl-...-mswin32.zipとzlib-...-mswin32.zipを入手する。それを解凍してコピーすると良い。&lt;br /&gt;さらに、iconv.dllがC:\ruby\binにないとエラーが発生するので&lt;a href="http://www.kaoriya.net/"&gt;Kaoriya.net&lt;/a&gt;から入手。&lt;br /&gt;readlineがないと、またエラーになるので、&lt;a href="http://gnuwin32.sourceforge.net/packages/readline.htm"&gt;Win32版のreadline&lt;/a&gt;をC:\ruby\binにインストールする。このとき、readline5.dll -&gt; readline.dllとリネームしないと認識しない。&lt;br /&gt;&lt;br /&gt;苦労した末にtermtterを実行した結果がこれです。&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://gyazo.com/68d82d2fb135c4aea2886c02ae4bdc1e.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 955px; height: 434px;" src="http://gyazo.com/68d82d2fb135c4aea2886c02ae4bdc1e.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-9199467666443120031?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/9199467666443120031/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/11/termtterwindows.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/9199467666443120031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/9199467666443120031'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/11/termtterwindows.html' title='TermtterをWindowsにインストールする'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1669700371769506783</id><published>2009-10-29T10:25:00.001+09:00</published><updated>2009-10-29T10:28:23.826+09:00</updated><title type='text'>Lingrの宣伝</title><content type='html'>また更新が若干滞り気味ですが、久しぶりに記事を書きます。&lt;br /&gt;私は復活したLingrに常駐しています。&lt;br /&gt;皆さんからの生の声を聞きたいので、ぜひ皆さんもおいでください。&lt;br /&gt;&lt;br /&gt;http://lingr.com/room/vim&lt;br /&gt;http://lingr.com/room/shell&lt;br /&gt;http://lingr.com/room/completion&lt;br /&gt;&lt;br /&gt;ちなみに、Vim部屋はVimについて語るところで、&lt;br /&gt;補完部屋は補完の話なら何でもOK。&lt;br /&gt;シェル部屋は究極のシェルについて語り合うところです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1669700371769506783?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1669700371769506783/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/10/lingr.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1669700371769506783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1669700371769506783'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/10/lingr.html' title='Lingrの宣伝'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8825685469735883627</id><published>2009-10-15T11:38:00.002+09:00</published><updated>2009-10-15T11:49:35.685+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>最近のneocomplcacheのスクリーンショット</title><content type='html'>そろそろ大分機能が増えてきたので、最近撮影したスクリーンショットを晒しておきます。&lt;br /&gt;&lt;br /&gt;パワーアップしたファイル名補完&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ci2yBnqzJgM/StaMpLDq8BI/AAAAAAAAABw/-5x84VNNFOg/s1600-h/filename_completion2.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 292px;" src="http://3.bp.blogspot.com/_ci2yBnqzJgM/StaMpLDq8BI/AAAAAAAAABw/-5x84VNNFOg/s320/filename_completion2.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5392652242793459730" /&gt;&lt;/a&gt;&lt;br /&gt;書き換え不可能なファイルは[-]を表示したり、実行可能ファイルを区別して表示します。&lt;br /&gt;&lt;br /&gt;オムニ補完の統合&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ci2yBnqzJgM/StaNDJtU_kI/AAAAAAAAAB4/32J56-RTHF8/s1600-h/omni_completion.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 226px;" src="http://1.bp.blogspot.com/_ci2yBnqzJgM/StaNDJtU_kI/AAAAAAAAAB4/32J56-RTHF8/s320/omni_completion.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5392652689107910210" /&gt;&lt;/a&gt;&lt;br /&gt;ワイルドカードやクイックマッチも動作します。&lt;br /&gt;&lt;br /&gt;レジスタ補完&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ci2yBnqzJgM/StaNSJVeKGI/AAAAAAAAACA/MB3KMRKJpm0/s1600-h/register_completion.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 194px;" src="http://3.bp.blogspot.com/_ci2yBnqzJgM/StaNSJVeKGI/AAAAAAAAACA/MB3KMRKJpm0/s320/register_completion.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5392652946705885282" /&gt;&lt;/a&gt;&lt;br /&gt;スニペットも機能が強化され、レジスタの内容をスニペットにより補完できるようになりました。&lt;br /&gt;&lt;br /&gt;vimshellとの統合&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ci2yBnqzJgM/StaNjTqOCiI/AAAAAAAAACI/eYWHTjomgZc/s1600-h/vimshell_completion.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 177px;" src="http://4.bp.blogspot.com/_ci2yBnqzJgM/StaNjTqOCiI/AAAAAAAAACI/eYWHTjomgZc/s320/vimshell_completion.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5392653241535040034" /&gt;&lt;/a&gt;&lt;br /&gt;vimshellはneocomplcacheがインストールされているとき、neocomplcacheを使用して補完を行います。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8825685469735883627?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8825685469735883627/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/10/neocomplcache.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8825685469735883627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8825685469735883627'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/10/neocomplcache.html' title='最近のneocomplcacheのスクリーンショット'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ci2yBnqzJgM/StaMpLDq8BI/AAAAAAAAABw/-5x84VNNFOg/s72-c/filename_completion2.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1320321547849749654</id><published>2009-09-28T10:45:00.002+09:00</published><updated>2009-09-28T10:51:40.938+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcache Ver.3.00</title><content type='html'>neocomplcache Ver.3.00をリリースしました。&lt;br /&gt;Ver.2.00, Ver.2.50に匹敵する大規模な変更があります。&lt;br /&gt;とはいっても、ディレクトリ構成が変更になり、機能の統合が進んだくらいですけど。&lt;br /&gt;&lt;br /&gt;Ver.3.00で修正・変更された部分を書き出しておきます。&lt;br /&gt;・キーワード収集のアルゴリズムを若干修正、HTMLにおいて、タグ全体を補完できるようになりました。ただしオムニ補完が優先されるので、一度ポップアップを閉じてください。&lt;br /&gt;・一部のコマンドの補完を修正。バッファ名で指定するようになりました。&lt;br /&gt;・スニペット補完を改良、エラーも修正しました。&lt;br /&gt;・ファイル名補完のエスケープがおかしかったバグを修正。&lt;br /&gt;・オムニ補完とファイル名補完を分離、通常の補完もkeyword_complete.vimとして分離しました。&lt;br /&gt;・以前のkeyword_complete.vimを名前変更。buffer_complete.vimとしました。&lt;br /&gt;・Next keyword completionを統合しました。&lt;br /&gt;・以前のneocomplcache#keyword_complete#caching_percent()は動作しません。neocomplcache#caching_percent()を使用してください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1320321547849749654?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1320321547849749654/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/09/neocomplcache-ver300.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1320321547849749654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1320321547849749654'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/09/neocomplcache-ver300.html' title='neocomplcache Ver.3.00'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-4602523855435942285</id><published>2009-08-27T17:00:00.001+09:00</published><updated>2009-08-27T17:01:54.550+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ネタ'/><title type='text'>編集紀　エヴァンビムオン</title><content type='html'>『編集紀エヴァンビムオン』（へんしゅうきエヴァンビムオン、Editing Period EVANVIMON）は、架空の連続テレビアニメ作品。&lt;br /&gt;200x年10月4日から201x年3月27日まで全26話にわたりテレビ新東京系列 (TNXN) で放送された。&lt;br /&gt;&lt;br /&gt;時は、西暦2015年。&lt;br /&gt;15年前に南極で起こった大災害・セカンドビムパクトにより総人口の半数近くを失った人類は、絵出徒（えでと）と呼称される新たな脅威に見舞われていた。&lt;br /&gt;国連直属の非公開組織である特務機関NERVIM（ネルビム）は、襲来する絵出徒に対抗、殲滅するため、汎用人型編集兵器 人造エディタ　エヴァンビムオン (EVA) を極秘に開発する。そのパイロットに選ばれたのは、14歳の少年・少女であった。&lt;br /&gt;主人公である少年「編シュウジ」は、「幼少時のトラウマ」と「父親との疎遠な関係」から、他人と接触を好まない内向的な少年であるが、ネルビムの総司令である父親メドウによって、EVA初号機のパイロットとして突如選任される。シュウジをはじめとする EVA のパイロットたちは、世界の命運を託され、命をかけて戦う過酷な状況に追い込まれ、傷ついていく。&lt;br /&gt;セカンドビムパクトの真相、襲来する絵出徒の正体、そして秘密裏に進められる「人類自動補完計画」の全貌。多くの謎が絡み合い、主人公であるシュウジの挫折と成長を追いながら、物語は進んでいく。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-4602523855435942285?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/4602523855435942285/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/08/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4602523855435942285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/4602523855435942285'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/08/blog-post.html' title='編集紀　エヴァンビムオン'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-533630256984989870</id><published>2009-07-23T12:28:00.002+09:00</published><updated>2009-07-23T12:34:29.400+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>vimshell != VIM-Shell</title><content type='html'>vimshellと紛らわしいプロジェクトに&lt;a href="http://www.wana.at/vimshell/"&gt;VIM-Shell&lt;/a&gt;というものがあります。これは「Vimのなかでシェルを動かそう！」というコンセプトで、Emacsでいうと、M-x shellやM-x ansi-termと似たようなものです。&lt;br /&gt;これはこれで有用だと思いますが、シェルが設定されていないと動作しない上、使うシェルに依存した処理が多くなってしまいます。私がvimshellで目指しているのは、EmacsでいうM-x eshellのように、「Vimの中で動作する新しいシェル」です。&lt;br /&gt;&lt;br /&gt;vimshellは現在基本的な機能は実装することができました。&lt;br /&gt;しかしzshやbashと比較すると、シェルとしての機能が不足していることは否めません。&lt;br /&gt;www.vim.orgにも登録したいのですが、仕様もこれから変更されるでしょうし、まだ時間がかかりそうです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-533630256984989870?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/533630256984989870/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/07/vimshell-vim-shell.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/533630256984989870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/533630256984989870'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/07/vimshell-vim-shell.html' title='vimshell != VIM-Shell'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1916758576623989677</id><published>2009-07-23T11:34:00.003+09:00</published><updated>2009-07-23T18:20:29.822+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>vimshell Ver.5.26, neocomplcache Ver.2.63 Released!</title><content type='html'>最近忙しく、ブログの更新はおざなりになってました。&lt;br /&gt;vimshellの開発は進んでいます。neocomplcacheの更新もやってますが、vimshellで使いやすくするために変更したものが多いです。&lt;br /&gt;&lt;br /&gt;ざっと変更点を挙げておきます。&lt;br /&gt;&lt;br /&gt;vimshell Ver.5.26&lt;br /&gt;・g:VimShellEnableInteractive=0でないと、プログラムの実行がエラーになるバグを修正&lt;br /&gt;・iexeで補完ができるようになった&lt;br /&gt;・iexe &amp;でヒストリを参照できるようになった&lt;br /&gt;・iexe &amp;で&amp;lt;C-t&amp;gt;を押すことにより、プログラムの補完を呼び出せるようになった。&lt;br /&gt;・バックグラウンド実行したプロセスのバッファにfiletypeを設定、neocomplcacheで補完できるようになった。&lt;br /&gt;・vimshellバッファのシンタックスハイライトを改善した&lt;br /&gt;&lt;br /&gt;neocomplcache Ver.2.63&lt;br /&gt;・ERBのスニペットを改善した&lt;br /&gt;・vimshellでのキーワードパターンを改善した&lt;br /&gt;・Railsで使いやすいように、ERBはrubyのバッファからキーワードを参照できるようになった&lt;br /&gt;・ファイル名補完の動作を改善、長いファイル名でも見やすくなった&lt;br /&gt;&lt;br /&gt;Windowsユーザーでvimshellを使う場合、&lt;br /&gt;cdのパスは/を使ってください。&lt;br /&gt;\はエスケープシーケンスになっているので使えません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1916758576623989677?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1916758576623989677/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/07/vimshell-ver526-neocomplcache-ver263.html#comment-form' title='5 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1916758576623989677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1916758576623989677'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/07/vimshell-ver526-neocomplcache-ver263.html' title='vimshell Ver.5.26, neocomplcache Ver.2.63 Released!'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1852703704417310001</id><published>2009-07-08T13:03:00.004+09:00</published><updated>2009-07-08T13:17:41.781+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>vimshell Ver.5.22 Released!</title><content type='html'>&lt;a href="http://github.com/Shougo/vimshell/tree/v5.22"&gt;vimshell Ver.5.22&lt;/a&gt;をリリースしました。&lt;br /&gt;今回の新機能はsudo内部コマンドです。&lt;br /&gt;管理者権限が必要なコマンドも、&lt;br /&gt;sudo cp -R hogehoge piyopiyoという感じで扱えます。&lt;br /&gt;ファイルを管理者権限で編集したいときは、&lt;br /&gt;sudo vim hogehoge&lt;br /&gt;です。ただし&lt;a href="http://www.vim.org/scripts/script.php?script_id=729"&gt;sudo.vim&lt;/a&gt;が必要です。&lt;br /&gt;このコマンドは現在Linuxでのみ動作します。&lt;br /&gt;Macには今度対応する予定です。&lt;br /&gt;&lt;br /&gt;その他の新機能：&lt;br /&gt;・&amp;lt;C-]&amp;gt;にて、前のコマンドの引数を入力できるようになりました。&lt;br /&gt;・run-helpを実装。&amp;lt;C-r&amp;gt;hでmanを引けます。&lt;br /&gt;・iexeやbgの動作が改善されました。&lt;br /&gt;・aliasがうまく定義されないバグを修正しました。&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/Shougo/vimproc/tree"&gt;vimproc&lt;/a&gt;も更新しました！&lt;br /&gt;splhackさんの協力により、Mac OS Xに正式対応。&lt;br /&gt;&lt;br /&gt;makeするときは、make -f make_mac.mak&lt;br /&gt;とコマンドを叩いてください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1852703704417310001?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1852703704417310001/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/07/vimshell-ver522-released.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1852703704417310001'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1852703704417310001'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/07/vimshell-ver522-released.html' title='vimshell Ver.5.22 Released!'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-3377089036924650403</id><published>2009-07-06T11:08:00.007+09:00</published><updated>2009-07-07T13:37:34.269+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ギャグマンガVim和'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><title type='text'>ギャグマンガVim和　ＯＰ</title><content type='html'>『ギャグマンガVim和（ギャグマンガ　びむより）』&lt;br /&gt;※：&lt;a href="http://www.youtube.com/watch?v=8Tlbwm8V7Wo"&gt;ギャグマンガ日和２のOP&lt;/a&gt;を脳内再生しながら&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vim&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;［はじめに］&lt;br /&gt;&lt;br /&gt;テキストエディタは、仕事にも現実逃避にも役立つすばらしいものです。&lt;br /&gt;でも、Eclipseはなんだかごちゃごちゃしてるからイヤ、かといって&lt;br /&gt;Emacsは小指が痛くなるから嫌い、&lt;br /&gt;という方にお薦めのテキストエディタがあります。&lt;br /&gt;そう、Vimです。&lt;br /&gt;Vimを使いこなすために、&lt;br /&gt;ルールを正しく覚えましょう。&lt;br /&gt;&lt;br /&gt;日本Vim普及協会会長 カナ　ナツノ&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;［Vimのルール］&lt;br /&gt;&lt;br /&gt;Vimは図のようにhjklでカーソルを移動し、Insert modeに移動してテキストを編集するテキストエディタです。&lt;br /&gt;このエディタの特徴として、多くのモードを動的に切り替えることができます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;［Vimの有名人］&lt;br /&gt;Vim界で有名な人としては、次の3名がいます。&lt;br /&gt;&lt;br /&gt;ブラム&lt;br /&gt;Vimを作りました。&lt;br /&gt;&lt;br /&gt;カナ&lt;br /&gt;Vimを手足のように使いこなすことができます。&lt;br /&gt;&lt;br /&gt;ヤマト&lt;br /&gt;&lt;a href="http://vinarian.blogspot.com/2009/06/vim.html"&gt;Vim四天王と戦い、世界を救いました。&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※：Vimを使うポーズを思い浮かべましょう&lt;br /&gt;（両手はホームポジション上に）&lt;br /&gt;人差し指がfとjの上に置いてなければ反則です。&lt;br /&gt;反則者は問答無用で退場です。&lt;br /&gt;&lt;br /&gt;（右足を前に）&lt;br /&gt;一見タイピングしにくそうですが、&lt;br /&gt;&lt;a href="http://www.kinesis-ergo.com/fs-savant-elite.htm"&gt;Kinessis Keyboardのフットペダル&lt;/a&gt;と併用すると意外に&lt;br /&gt;これでもいいか、と&lt;br /&gt;思えてきます。&lt;br /&gt;（人生に似ていますね）&lt;br /&gt;&lt;br /&gt;（笑顔で）&lt;br /&gt;大嫌いなアイツが&lt;br /&gt;Ctrlの押しすぎで腱鞘炎になったと&lt;br /&gt;聞いたときのようないい笑顔で。&lt;br /&gt;&lt;br /&gt;（左足はマウス）&lt;br /&gt;使わない左足には&lt;br /&gt;マウスでも握らせて&lt;br /&gt;おきましょう。&lt;br /&gt;&lt;br /&gt;よってきたEmacs使い&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;［VimのEx-modeについて］&lt;br /&gt;&lt;br /&gt;VimはQコマンドで完全にexとして動作します。&lt;br /&gt;でも、使いません。&lt;br /&gt;（exは時代遅れだからです。）&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vimユーザーはキーを自由にマッピングしてVimをコントロールします。&lt;br /&gt;&lt;br /&gt;［あるVimmerのキーマッピング］&lt;br /&gt;&lt;br /&gt;; -&amp;gt; :&lt;br /&gt;&lt;br /&gt;&amp;lt;Space&amp;gt;ma -&amp;gt; :make&lt;br /&gt;&lt;br /&gt;m -&gt; &amp;lt;Leader&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;Leader&amp;gt;&amp;lt;Leader&amp;gt; -&amp;gt; :update&lt;br /&gt;&lt;br /&gt;:Neco&amp;lt;CR&amp;gt; -&amp;gt; echo "   A A\n~(-'_'-)"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;こぼれ話&lt;br /&gt;☆Vimの起源とは？&lt;br /&gt;&lt;br /&gt;ブラムがAmigaコンピュータでstevieというvi風エディタを改造しました。&lt;br /&gt;これがVimの始まりだといわれています。&lt;br /&gt;&lt;br /&gt;※：Emacs使いはviとVimを混同したがるので注意しましょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;［仲間を増やしましょう］&lt;br /&gt;寂しくなったら&lt;br /&gt;&lt;br /&gt;あまりにVimに慣れ親しむと、周囲にVim使いを増やしたくなります。&lt;br /&gt;&lt;br /&gt;（注：いくらやっても改宗してくれない場合があります）&lt;br /&gt;&lt;br /&gt;図Ａのように、近くの人に対して&lt;br /&gt;「それ、Vimでできるよ」と笑顔で声をかけましょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;［&amp;lt;ESC&amp;gt;が辛くなったら］&lt;br /&gt;Vimを日常的に使っていると、&amp;lt;ESC&amp;gt;連打は指の負担となります。&lt;br /&gt;図Bのように、他のキーに&amp;lt;ESC&amp;gt;をマッピングしましょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;以上のことに気をつけて&lt;br /&gt;さあ、始めましょう。&lt;br /&gt;Happy Vimming!&lt;br /&gt;&lt;br /&gt;Vimを始めたことは、上司には言わないようにしましょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;～テキストエディタ劇場～&lt;br /&gt;ギャグマンガVim和&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-3377089036924650403?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/3377089036924650403/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/07/vim.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3377089036924650403'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3377089036924650403'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/07/vim.html' title='ギャグマンガVim和　ＯＰ'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-1828838805990958061</id><published>2009-07-01T11:40:00.003+09:00</published><updated>2009-07-01T11:46:50.334+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>エスケープシーケンス対応作業中</title><content type='html'>vimshell Ver.5.18にて、ようやくパイプ処理が実装できました。&lt;br /&gt;&lt;br /&gt;現在はエスケープシーケンスに対応するべく、開発中です。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ci2yBnqzJgM/SkrM855zVgI/AAAAAAAAABo/K0ftY2Lpzjo/s1600-h/256colors.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 167px;" src="http://3.bp.blogspot.com/_ci2yBnqzJgM/SkrM855zVgI/AAAAAAAAABo/K0ftY2Lpzjo/s320/256colors.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5353316453790733826" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;GVimでやっと256色表示に対応しました。ターミナルではまだ試してません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;オリジナルだと&lt;a href="http://frexx.de/xterm-256-notes/img/256colors2.png"&gt;このような表示&lt;/a&gt;になっています。見比べてみてください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-1828838805990958061?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/1828838805990958061/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/07/blog-post.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1828838805990958061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/1828838805990958061'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/07/blog-post.html' title='エスケープシーケンス対応作業中'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ci2yBnqzJgM/SkrM855zVgI/AAAAAAAAABo/K0ftY2Lpzjo/s72-c/256colors.PNG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-2728454447845207274</id><published>2009-06-23T16:47:00.003+09:00</published><updated>2009-06-23T17:01:04.232+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>最近のvimshellに追加された機能</title><content type='html'>ブログにはあまり更新点を書いてなかったので、&lt;br /&gt;今の機会にまとめて書いておきます。&lt;br /&gt;&lt;br /&gt;vimshell Ver.5.14-Ver.5.16に追加された機能：&lt;br /&gt;・``と`=`が実装されました。``はsystem()の結果を評価し、`=`はVimScriptの式をeval()した結果を返します。&lt;br /&gt;・引数先頭の~がホームディレクトリに置き換えられるようになりました。ただし、ホームディレクトリへのパスに空白が含まれると、多分動作がおかしくなります。&lt;br /&gt;・システム変数を実装。$$systemにはコマンドの終了ステータスが格納されます。shとは互換性がありません。&lt;br /&gt;・ATOK X3環境でも動くようにしました。&lt;br /&gt;・エラー表示を改良しました。g:VimShell_EnableInteractive=1ならば、コマンドのエラーもハイライトされます。&lt;br /&gt;・&gt;, &gt;&amp;, &lt; といった入出力のリダイレクションを実装。内部コマンドにも有効です。&lt;br /&gt;・/dev/nullを実装。まだ出力にしか使えません。&lt;br /&gt;・special commandを実装。引数はVimScriptとして評価されます。&lt;br /&gt;・変数に代入するletと、引数をVimScriptとして評価・出力するevを実装。&lt;br /&gt;・echo内部コマンドを実装。&lt;br /&gt;・ワイルドカードを実装。*と?のみ使えます。&lt;br /&gt;・Windows環境でもワンライナーが使えるようになりました。ただし、g:VimShell_EnableInteractive=1の時のみです。&lt;br /&gt;・コマンド検索ルーチンを改良しました。&lt;br /&gt;・コマンド補完を改良しました。内部コマンドも補完できます。&lt;br /&gt;・g:VimShell_ExecuteFileListが"bg firefox"のように複合コマンドを指定できるようになりました。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-2728454447845207274?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/2728454447845207274/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/06/vimshell_23.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2728454447845207274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2728454447845207274'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/06/vimshell_23.html' title='最近のvimshellに追加された機能'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-2694946174452841757</id><published>2009-06-18T18:05:00.006+09:00</published><updated>2009-07-06T11:54:26.736+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ギャグマンガVim和'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ビムマスターヤマト'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim四天王'/><title type='text'>ビムマスターヤマト　誤植編</title><content type='html'>『ビムマスターヤマト・誤植編』&lt;br /&gt;&lt;br /&gt;Vim野「もうっ、なんだよコレ！　担当に文句言ってやる！」&lt;br /&gt;&lt;br /&gt;Vim野「小島さん、酷いじゃないですか！　読みましたよ、今月号の僕の漫画！」&lt;br /&gt;&lt;br /&gt;小島「え、酷いって？　ストーリーが？」&lt;br /&gt;&lt;br /&gt;Vim野「ぐへぇぇぇぇっっっ！！！」&lt;br /&gt;&lt;br /&gt;Vim野「違いますよ！　誤植ですよ誤植！　セリフの文字が間違ってるんですよッ！」&lt;br /&gt;&lt;br /&gt;小島「え～？　ほんとに～？　どこどこ～？　何ページ目？」&lt;br /&gt;&lt;br /&gt;Vim野「ほら、ヤマトが四天王の一人ショウゴに挑む前の会話で、」&lt;br /&gt;&lt;br /&gt;Vim野「『あいつだけは許さない』って最高にかっこいいセリフが……」&lt;br /&gt;&lt;br /&gt;「キーボードだけは許さない」&lt;br /&gt;&lt;br /&gt;Vim野「酷いっスよこれ！」&lt;br /&gt;&lt;br /&gt;小島「あ、ほんとだ。やっちゃった」&lt;br /&gt;&lt;br /&gt;Vim野「いや、やっちゃったじゃないですよ、もうっ」&lt;br /&gt;&lt;br /&gt;Vim野「主人公がいきなりマウス主義に目覚めちゃったみたいじゃないですかッ」&lt;br /&gt;&lt;br /&gt;小島「あっはっはっは！」&lt;br /&gt;&lt;br /&gt;Vim野「はっはっはぁー？　何でご機嫌なんすかッ」&lt;br /&gt;&lt;br /&gt;Vim野「誤植はここだけじゃないんすよッ」&lt;br /&gt;&lt;br /&gt;小島「え～？　ホントぉ～？　どこどこ」&lt;br /&gt;&lt;br /&gt;Vim野「主人公が暗い過去を語って、俺の.vimrcは消えないんだって決意を新たにする超渋いシーンで……」&lt;br /&gt;&lt;br /&gt;「オレの.emacsは消えないんだ」&lt;br /&gt;&lt;br /&gt;小島「あ、ほんとだ。単語間違ってる」&lt;br /&gt;&lt;br /&gt;小島「やっちゃった♪」&lt;br /&gt;&lt;br /&gt;Vim野「いやだから、やっちゃったじゃないでしょ、ちょっとぉーっ」&lt;br /&gt;&lt;br /&gt;小島「はっはっは♪　.emacsってちょっとナニ？　両刀使い？　はっはっはっは♪」&lt;br /&gt;&lt;br /&gt;Vim野「はっはっはっー、じゃないんですよッ！！」&lt;br /&gt;&lt;br /&gt;Vim野「なんでそんなに上機嫌なんすかッ！」&lt;br /&gt;&lt;br /&gt;小島「イヤー、実は先日彼女ができちゃって」&lt;br /&gt;&lt;br /&gt;Vim野「え、ほんとですか？　良かったですね」&lt;br /&gt;&lt;br /&gt;Vim野「でもこっちは全然よくないんすよ」&lt;br /&gt;&lt;br /&gt;Vim野「まだ誤植あるんですよ」&lt;br /&gt;&lt;br /&gt;小島「えー、どこどこ～」&lt;br /&gt;&lt;br /&gt;Vim野「ほら、ついに現れた四天王のショウゴが「お前が&lt;a href="http://d.hatena.ne.jp/keyword/Vimmer"&gt;ビマー&lt;/a&gt;か？」っていう超緊迫した場面で、」&lt;br /&gt;&lt;br /&gt;「お前は、&lt;a href="http://d.hatena.ne.jp/keyword/%A5ݥ%A8%A5ޡ%BC"&gt;ポエマー&lt;/a&gt;か？」&lt;br /&gt;&lt;br /&gt;小島「あ、ほんとだ」&lt;br /&gt;&lt;br /&gt;Vim野「お前はポエマーかってなんですか！！」&lt;br /&gt;&lt;br /&gt;Vim野「どんなボケをしたらそういうツッコミがかえってくるんですか、もうッッッ」&lt;br /&gt;&lt;br /&gt;小島「…………」&lt;br /&gt;&lt;br /&gt;Vim野「また『やっちゃった』とか言うんじゃないんでしょうね」&lt;br /&gt;&lt;br /&gt;小島「やっちゃったぜ！」&lt;br /&gt;&lt;br /&gt;Vim野「いや、『やっちゃったぜ！』じゃないですよ。なにちょっとカッコイイ言い方してんすかッ」&lt;br /&gt;&lt;br /&gt;Vim野「誤植はまだあるんすよ」&lt;br /&gt;&lt;br /&gt;小島「えー、どこぉ～？　彼女いない暦０年の僕がどんな間違いをー」&lt;br /&gt;&lt;br /&gt;Vim野「その次のコマですよ」&lt;br /&gt;&lt;br /&gt;Vim野「ヤマトが『俺はヤマトだ』って言う超クールなシーンが、」&lt;br /&gt;&lt;br /&gt;「俺は&lt;a href="http://poken.jp/ja/"&gt;ポーケン&lt;/a&gt;だ」&lt;br /&gt;&lt;br /&gt;Vim野「なんで主人公いきなり名刺宣言してるんすか！！」&lt;br /&gt;&lt;br /&gt;小島「あ、ほんとだ。間違ってる」&lt;br /&gt;&lt;br /&gt;Vim野「間違いすぎですッ」&lt;br /&gt;&lt;br /&gt;小島「はっはっは♪」&lt;br /&gt;&lt;br /&gt;小島「やっちゃったぜ」&lt;br /&gt;&lt;br /&gt;Vim野「カッコよく言わないでください。気にいったんですか、その言い方！」&lt;br /&gt;&lt;br /&gt;小島「気に入ったんだぜ」&lt;br /&gt;&lt;br /&gt;小島「取っちゃヤだぜ」&lt;br /&gt;&lt;br /&gt;Vim野「取らないですよ、そんな喋り方ッッッ」&lt;br /&gt;&lt;br /&gt;Vim野「それよりもっとあるんですよ誤植」&lt;br /&gt;&lt;br /&gt;小島「えー、まだあるのー」&lt;br /&gt;&lt;br /&gt;小島「どのへんなんだぜ？」&lt;br /&gt;&lt;br /&gt;Vim野「どのへんなんだぜ？　そんな無理に言わなくても」&lt;br /&gt;&lt;br /&gt;Vim野「最後ですよ、最後のページッ」&lt;br /&gt;&lt;br /&gt;Vim野「ヤマトが俺の&lt;a href="http://www.vim.org/scripts/script.php?script_id=2620"&gt;新しい補完&lt;/a&gt;を見せてやるっていう超ドキドキのシーンですよ」&lt;br /&gt;&lt;br /&gt;小島「どれどれ」&lt;br /&gt;&lt;br /&gt;「俺の熱い抱擁を見せてやる！！！」&lt;br /&gt;&lt;br /&gt;小島「あ、ほんとだ。やっちゃったぜ！」&lt;br /&gt;&lt;br /&gt;Vim野「なんですか「熱い抱擁」って！」&lt;br /&gt;&lt;br /&gt;小島「ごめーん、彼女のことで頭がいっぱいで、ついうっかりーー」&lt;br /&gt;&lt;br /&gt;Vim野「しかももっと酷い誤植が最後のコマにあるんですよ」&lt;br /&gt;&lt;br /&gt;Vim野「ヤマトが炎の剣を構えて、うぉぉぉって突っ込むところですよッ」&lt;br /&gt;&lt;br /&gt;小島「えー？　そんなセリフ間違えないと思うけどーー」&lt;br /&gt;&lt;br /&gt;Vim野「まちがってんすよっ」&lt;br /&gt;&lt;br /&gt;「&lt;a href="http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/map.html"&gt;まっぷ！&lt;/a&gt;」&lt;br /&gt;&lt;br /&gt;Vim野「なんスか、まっぷって！？　も～意味わかんないしっ」&lt;br /&gt;&lt;br /&gt;Vim野「しかもこのコマについているアオリ文句、なんすかコレ！」&lt;br /&gt;&lt;br /&gt;『彼女が出来ましたー』&lt;br /&gt;&lt;br /&gt;Vim野「何自慢してんすかッッッ」&lt;br /&gt;&lt;br /&gt;小島「やっちゃったぜ！」&lt;br /&gt;&lt;br /&gt;Vim野「やっちゃったぜ！じゃないでしょ、アオリ文は自慢したくてつい言っちゃっただけでしょーッ」&lt;br /&gt;&lt;br /&gt;小島「言っちゃったぜ！」&lt;br /&gt;&lt;br /&gt;Vim野「だから言っちゃったぜじゃ……あーもう、なんかもーー」&lt;br /&gt;&lt;br /&gt;Vim野「やってられないんだぜ！！」&lt;br /&gt;&lt;br /&gt;小島「ごめんねだぜ♪」&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-2694946174452841757?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/2694946174452841757/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/06/blog-post_9614.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2694946174452841757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2694946174452841757'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/06/blog-post_9614.html' title='ビムマスターヤマト　誤植編'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-5577183360045263180</id><published>2009-06-18T14:32:00.003+09:00</published><updated>2009-06-18T14:35:21.518+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>リダイレクションを実装中。</title><content type='html'>現在、vimshellのリダイレクションを実装中です。&lt;br /&gt;開発中の画面はこんな感じ。&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ci2yBnqzJgM/SjnR_yhUyFI/AAAAAAAAABg/KPw_UdZhHqc/s1600-h/vimshell_redirection.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 230px;" src="http://3.bp.blogspot.com/_ci2yBnqzJgM/SjnR_yhUyFI/AAAAAAAAABg/KPw_UdZhHqc/s320/vimshell_redirection.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5348536926302685266" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-5577183360045263180?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/5577183360045263180/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/06/blog-post_18.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5577183360045263180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/5577183360045263180'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/06/blog-post_18.html' title='リダイレクションを実装中。'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ci2yBnqzJgM/SjnR_yhUyFI/AAAAAAAAABg/KPw_UdZhHqc/s72-c/vimshell_redirection.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7298104758515317035</id><published>2009-06-16T09:50:00.009+09:00</published><updated>2009-07-06T11:55:00.150+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ギャグマンガVim和'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ビムマスターヤマト'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim四天王'/><title type='text'>ビムマスターヤマト　完結編</title><content type='html'>『ビムマスターヤマト・完結編』&lt;br /&gt;&lt;br /&gt;絵手田「こんにちは、月刊テキストエディタの絵手田（えでた）です。お疲れ様です」&lt;br /&gt;&lt;br /&gt;Vim野「え、絵手田さん？」&lt;br /&gt;&lt;br /&gt;絵手田「今日から僕がビムマスターヤマトの担当になりました。よろしくおねがいします」&lt;br /&gt;&lt;br /&gt;Vim野「え、あの、小島さんは」&lt;br /&gt;&lt;br /&gt;絵手田「亡くなりました」&lt;br /&gt;&lt;br /&gt;Vim野「嘘ォーーーっっっ！？」&lt;br /&gt;&lt;br /&gt;Vim野「な、なんで……」&lt;br /&gt;&lt;br /&gt;絵手田「実は初めて出来た彼女に初デートの前に振られたようで」&lt;br /&gt;&lt;br /&gt;Vim野「ええー、それで自ら命を」&lt;br /&gt;&lt;br /&gt;絵手田「いえ、ショック死です」&lt;br /&gt;&lt;br /&gt;Vim野「ショック死ィィィィ！」&lt;br /&gt;&lt;br /&gt;絵手田「なんか仕事中に彼女から別れのメールがきて、」&lt;br /&gt;&lt;br /&gt;小島「ありえないんだぜ！」&lt;br /&gt;&lt;br /&gt;絵手田「と、叫んでバタンとぶっ倒れました」&lt;br /&gt;&lt;br /&gt;Vim野「……最期までその喋りだったんですか……」&lt;br /&gt;&lt;br /&gt;絵手田「それで仕事の話に戻りますけど、」&lt;br /&gt;&lt;br /&gt;絵手田「ビムマスターヤマト、来月号で最終回ですので」&lt;br /&gt;&lt;br /&gt;Vim野「うそぉぉぉっっ！？？」&lt;br /&gt;&lt;br /&gt;絵手田「悪く言えば打ち切りです」&lt;br /&gt;&lt;br /&gt;Vim野「わざわざ悪くいわないでください」&lt;br /&gt;&lt;br /&gt;絵手田「元々あまり人気がなかったんですけど、今月号ではブッチギリの不人気だったんですよ」&lt;br /&gt;&lt;br /&gt;絵手田「どっこいEmacs君よりも人気なかったです」&lt;br /&gt;&lt;br /&gt;Vim野「マジっすか！」&lt;br /&gt;&lt;br /&gt;Vim野「でも急に最終回と言われても困りますよ」&lt;br /&gt;&lt;br /&gt;Vim野「僕の漫画、やっと盛り上がってきたところなのに……」&lt;br /&gt;&lt;br /&gt;Vim野「Vim四天王とか出てきて」&lt;br /&gt;&lt;br /&gt;絵手田「戦いはこれからも続く――みたいな終わりかたでいいじゃないですか」&lt;br /&gt;&lt;br /&gt;Vim野「そういう終わりかたってよくありますけど、」&lt;br /&gt;&lt;br /&gt;Vim野「僕の漫画の場合、敵のボスの&lt;a href="http://vim.g.hatena.ne.jp/keyword/%E7%A5%9E"&gt;カナ神&lt;/a&gt;に主人公のプラグインが&lt;a href="http://github.com/guides/fork-a-project-and-submit-your-modifications"&gt;github上でfork&lt;/a&gt;されているじゃないですか」&lt;br /&gt;&lt;br /&gt;Vim野「しかもドキュメントは英文だけで、地獄のような大幅改造を強いられているんですよ」&lt;br /&gt;&lt;br /&gt;絵手田「どっこいEmacs君と被ってますね」&lt;br /&gt;&lt;br /&gt;Vim野「いや、ぜんぜん被ってないですよ」&lt;br /&gt;&lt;br /&gt;Vim野「とにかくそんな訳で、カナ神を倒さないとスッキリしないというか」&lt;br /&gt;&lt;br /&gt;絵手田「そうですねぇ」&lt;br /&gt;&lt;br /&gt;Vim野「しかもそのためには色々と条件があって、」&lt;br /&gt;&lt;br /&gt;Vim野「カナ神のいるVim魔城へ行くにはVim四天王を全員倒さなくちゃいけないし、」&lt;br /&gt;&lt;br /&gt;Vim野「カナ神を倒すには弱点である&lt;a href="http://www.kinesis-ergo.com/keyboards.htm"&gt;『Kinesis keyboard』&lt;/a&gt;が必要だし……」&lt;br /&gt;&lt;br /&gt;Vim野「しかも今戦っている四天王のショウゴは、&lt;a href="http://vim-users.jp/2009/05/hack4/"&gt;『ＴＨＥ・補完』&lt;/a&gt;と言われるぐらい妙に怠け者で、十回新しい補完技を見せないと死なないんですよ」&lt;br /&gt;&lt;br /&gt;絵手田「なんでそんな設定に」&lt;br /&gt;&lt;br /&gt;Vim野「十話ぐらい引っ張ろうと思って……」&lt;br /&gt;&lt;br /&gt;Vim野「あと主人公のVimに、非同期処理ができることを第一話からほのめかせているんですけど、これどうしましょう」&lt;br /&gt;&lt;br /&gt;絵手田「さぁ……まぁ、うまくまとめてください」&lt;br /&gt;&lt;br /&gt;Vim野「はぁ……」&lt;br /&gt;&lt;br /&gt;Vim野「（新しい担当、なんか冷たい）」&lt;br /&gt;&lt;br /&gt;Vim野「で、そのページは何ページもらえるんですか」&lt;br /&gt;&lt;br /&gt;絵手田「三ページでおねがいします」&lt;br /&gt;&lt;br /&gt;Vim野「うそぉ～～～～～～～～～～～～っっっ！！」&lt;br /&gt;&lt;br /&gt;Vim野「なんで僕そんなに酷い扱いなんですか」&lt;br /&gt;&lt;br /&gt;絵手田「ほんと人気なくてーー」&lt;br /&gt;&lt;br /&gt;Vim野「四コマ漫画のどっこいEmacs君だって毎回四ページあるのにッ」&lt;br /&gt;&lt;br /&gt;絵手田「どっこいEmacs君も次回で最終回です」&lt;br /&gt;&lt;br /&gt;Vim野「え、そうなんですか」&lt;br /&gt;&lt;br /&gt;Vim野「Emacs君の最終回は何ページなんですか」&lt;br /&gt;&lt;br /&gt;絵手田「四ページですけど」&lt;br /&gt;&lt;br /&gt;Vim野「ちくしょおぉぉぉぉぉォォォッッッ！！！」&lt;br /&gt;&lt;br /&gt;Vim野「も、もうっ、月刊テキストエディタでは描きませんからねっ」&lt;br /&gt;&lt;br /&gt;絵手田「はい」&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※：ついカッとなってやった。反省はしていない。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7298104758515317035?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7298104758515317035/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/06/blog-post.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7298104758515317035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7298104758515317035'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/06/blog-post.html' title='ビムマスターヤマト　完結編'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-3587452747092322954</id><published>2009-06-15T12:27:00.022+09:00</published><updated>2009-07-06T11:55:29.880+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ギャグマンガVim和'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ビムマスターヤマト'/><category scheme='http://www.blogger.com/atom/ns#' term='Vim四天王'/><title type='text'>ビムマスターヤマト 最終話「すべてを終わらせるとき」</title><content type='html'>&lt;a href="http://www.youtube.com/watch?v=nbcx0AaDbg8"&gt;元ネタ&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;最終話　希望を胸に　すべてを終わらせる時…！　&lt;a href="http://www.vim.org/"&gt;Ｖ・Ｉ・Ｍ&lt;/a&gt;第１巻は、発売未定です。　Vim野カケラ&lt;br /&gt;&lt;br /&gt;ヤマト「くらえショウゴ！　新必殺&lt;a href="http://vim-users.jp/2009/05/hack4/"&gt;キーワード補完&lt;/a&gt;斬！」&lt;br /&gt;&lt;br /&gt;ショウゴ「さあ来いヤマトオオ！　オレは実は一回補完されただけで死ぬぞオオ！」&lt;br /&gt;&lt;br /&gt;（&amp;lt;C-p&amp;gt;）&lt;br /&gt;&lt;br /&gt;ショウゴ「グアアアア！　こ、この『ＴＨＥ・補完』と呼ばれる四天王のショウゴが……。こんな小僧に……バ……バカなアアアア」&lt;br /&gt;&lt;br /&gt;（dddddd）&lt;br /&gt;&lt;br /&gt;シンカ「ショウゴがやられたようだな……」&lt;br /&gt;&lt;br /&gt;ユーケー「ククク……奴はVim四天王の中でも最弱……」&lt;br /&gt;&lt;br /&gt;ウジヒサ「人間ごときに負けるとはVim界の面汚しよ……」&lt;br /&gt;&lt;br /&gt;ヤマト「くらえええ！」&lt;br /&gt;&lt;br /&gt;（ズサ）&lt;br /&gt;&lt;br /&gt;３人「グアアアアアアア」&lt;br /&gt;&lt;br /&gt;ヤマト「やった……ついに四天王を倒したぞ……これで&lt;a href="http://vim.g.hatena.ne.jp/keyword/神"&gt;Vim神&lt;/a&gt;のいるVim魔城の扉が開かれる！！」&lt;br /&gt;&lt;br /&gt;カナ「よく来たなビムマスターヤマト……待っていたぞ……」&lt;br /&gt;&lt;br /&gt;（ギイイイイイイ）&lt;br /&gt;&lt;br /&gt;ヤマト「こ、ここがVim魔城だったのか……！　感じる…&lt;a href="http://xpath.kayac.com/graph/iCCzbZNz3RGLHw"&gt;カナの戦闘力&lt;/a&gt;を…」&lt;br /&gt;&lt;br /&gt;カナ「ヤマトよ……戦う前に一つ言っておくことがある。お前は私を倒すのに&lt;a href="http://www.kinesis-ergo.com/keyboards.htm"&gt;『Kinesis keyboard』&lt;/a&gt;が必要だと思っているようだが……別になくても倒せる」&lt;br /&gt;&lt;br /&gt;ヤマト「な 何だって！？」&lt;br /&gt;&lt;br /&gt;カナ「そしてお前のプラグインはバグが多かったので修正して&lt;a href="http://github.com/guides/pull-requests"&gt;pull request&lt;/a&gt;を送っておいた　あとは私を倒すだけだなクックック……」&lt;br /&gt;&lt;br /&gt;（ゴゴゴゴ）&lt;br /&gt;&lt;br /&gt;ヤマト「フ……上等だ……オレも一つ言っておくことがある。&lt;a href="http://vinarian.blogspot.com/2009/05/vimshell.html"&gt;Vimで非同期処理は不可能な気がしていたが別にそんなことはなかったぜ！&lt;/a&gt;」&lt;br /&gt;&lt;br /&gt;カナ「そうか」&lt;br /&gt;&lt;br /&gt;ヤマト「ウオオオいくぞオオオ！」&lt;br /&gt;&lt;br /&gt;カナ「さあ来いヤマト！」&lt;br /&gt;&lt;br /&gt;ヤマトの勇気がVim界を救うと信じて……！　ご愛読ありがとうございました！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※：この物語はフィクションです。&lt;a href="http://chat.vim-users.jp/log/2009.06.15.txt"&gt;ujihisaさんの投稿&lt;/a&gt;を一部アレンジしています。&lt;br /&gt;登場人物の名前をどこかで見たような気がしても、気にしてはいけません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-3587452747092322954?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/3587452747092322954/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/06/vim.html#comment-form' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3587452747092322954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/3587452747092322954'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/06/vim.html' title='ビムマスターヤマト 最終話「すべてを終わらせるとき」'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-365711497183801427</id><published>2009-06-15T12:19:00.003+09:00</published><updated>2009-06-15T12:24:52.609+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcache Ver.2.60 vimshell Ver.5.14</title><content type='html'>neocomplcacheを久しぶりにバージョンアップしました。&lt;br /&gt;&lt;a href="http://github.com/Shougo/neocomplcache/tree/v2.60"&gt;http://github.com/Shougo/neocomplcache/tree/v2.60&lt;/a&gt;&lt;br /&gt;キャッシュされた補完候補が削除されてしまう深刻なバグが修正されているので、アップデートするべきです。結構前からこのバグは存在していたはずですが、なぜ今まで気づかなかったのだろう……。ついでにファイル名補完も見やすくなっています。&lt;br /&gt;&lt;br /&gt;vimshell Ver.5.14をリリースしました。&lt;br /&gt;ただし、まだリダイレクションは実装されていないので、人柱になりたい人のみ使ってみてください。&lt;br /&gt;&lt;a href="http://github.com/Shougo/vimshell/tree/v5.14"&gt;http://github.com/Shougo/vimshell/tree/v5.14&lt;/a&gt;&lt;br /&gt;Insert modeで&lt;C-p&gt;を押したときに使えるコマンド補完がかなり進化していて、&lt;br /&gt;内部コマンドやエイリアス、外部コマンドが補完できます。&lt;br /&gt;もちろん非同期実行を有効にすれば、Windowsでワンライナーの世界を堪能できます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-365711497183801427?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/365711497183801427/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/06/neocomplcache-ver260-vimshell-ver514.html#comment-form' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/365711497183801427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/365711497183801427'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/06/neocomplcache-ver260-vimshell-ver514.html' title='neocomplcache Ver.2.60 vimshell Ver.5.14'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-9065050706500677815</id><published>2009-06-11T12:16:00.003+09:00</published><updated>2009-06-11T12:20:25.708+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>vimshell　開発順調です。</title><content type='html'>現在このブログの更新がかなり滞っていますが、vimshellの開発は続いています。&lt;br /&gt;特に私が毎日のように使用することとなったので、これからどんどん機能が追加されていくことでしょう。&lt;br /&gt;&lt;br /&gt;今開発中のvimshellはこんな感じ。Windowsでもワンライナーができるようになりました。&lt;br /&gt;クオートやワイルドカードを解釈するようになりました。&lt;br /&gt;リダイレクションが実装されれば、開発版としてgithubに上げる予定です。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ci2yBnqzJgM/SjB349PDscI/AAAAAAAAABQ/mKaHqKEvlOk/s1600-h/vimshell.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 218px;" src="http://1.bp.blogspot.com/_ci2yBnqzJgM/SjB349PDscI/AAAAAAAAABQ/mKaHqKEvlOk/s320/vimshell.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5345904578082877890" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-9065050706500677815?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/9065050706500677815/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/06/vimshell.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/9065050706500677815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/9065050706500677815'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/06/vimshell.html' title='vimshell　開発順調です。'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ci2yBnqzJgM/SjB349PDscI/AAAAAAAAABQ/mKaHqKEvlOk/s72-c/vimshell.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-6764970303514374427</id><published>2009-05-25T12:04:00.004+09:00</published><updated>2009-05-25T12:19:40.445+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcacheとvimshellの更新</title><content type='html'>neocomplcacheとvimshellが同時にバージョンアップしました。&lt;br /&gt;&lt;a href="http://github.com/Shougo/neocomplcache/tree/v2.56"&gt;http://github.com/Shougo/neocomplcache/tree/v2.56&lt;/a&gt;&lt;br /&gt;&lt;a href="http://github.com/Shougo/vimshell/tree/v5.11"&gt;http://github.com/Shougo/vimshell/tree/v5.11&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;neocomplcacheの改良点はファイル名補完を自前実装したことです。&lt;br /&gt;詳しくはpresenを参照して欲しいのですが、Quick Matchや-によるワイルドカードが動作します。しかも、ちらつきません。&lt;br /&gt;もとはというと、vimshellで自動補完するために実装しました。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ci2yBnqzJgM/ShoOLNAlnQI/AAAAAAAAABI/Nkbfymm4OQQ/s1600-h/filename_completion.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 296px; height: 320px;" src="http://2.bp.blogspot.com/_ci2yBnqzJgM/ShoOLNAlnQI/AAAAAAAAABI/Nkbfymm4OQQ/s320/filename_completion.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5339595893834620162" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;vimshellの改良点は、presenを修正したのと、iexeコマンドや&amp;によるバックグラウンド実行に対応したことです。まだ不安定ですが、"iexe irb&amp;"のようにして実行することで、インタプリタをVim内で動作させることが出来ます。&lt;br /&gt;この新機能を使用するには、proc.dll（Windowsの場合。vimprocに付属）もしくはproc.so（MacやLinuxの場合。vimprocのソースをコンパイルする必要があります）をautoloadディレクトリにインストールしておく必要があります。&lt;br /&gt;ちなみに、neocomplcacheの新しいファイル名補完にも対応しました。neocomplcacheを有効化していれば、&lt;TAB&gt;でファイル名補完が呼び出せます。&lt;br /&gt;&lt;br /&gt;それでは良いVim lifeをお過ごしください。&lt;br /&gt;Happy Vimming!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-6764970303514374427?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/6764970303514374427/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/05/neocomplcachevimshell.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6764970303514374427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6764970303514374427'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/05/neocomplcachevimshell.html' title='neocomplcacheとvimshellの更新'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ci2yBnqzJgM/ShoOLNAlnQI/AAAAAAAAABI/Nkbfymm4OQQ/s72-c/filename_completion.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-8644329238924102110</id><published>2009-05-19T17:27:00.003+09:00</published><updated>2009-05-19T17:31:22.161+09:00</updated><title type='text'>vimshellが非同期実行できるようになった</title><content type='html'>vimshellがvimshのように、非同期実行できるようになりました。&lt;br /&gt;実装が適当でバグだらけなので、まだリリースできそうにはありませんが、これで:shellを使わなくても、&lt;br /&gt;irbやpythonコマンドを実行できます。&lt;br /&gt;&lt;br /&gt;証拠写真はこちら。&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ci2yBnqzJgM/ShJuIBjPjkI/AAAAAAAAABA/bAFg4AGr4-s/s1600-h/vimshell-interactive.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 188px;" src="http://4.bp.blogspot.com/_ci2yBnqzJgM/ShJuIBjPjkI/AAAAAAAAABA/bAFg4AGr4-s/s320/vimshell-interactive.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5337449592521723458" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-8644329238924102110?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/8644329238924102110/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/05/vimshell.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8644329238924102110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/8644329238924102110'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/05/vimshell.html' title='vimshellが非同期実行できるようになった'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ci2yBnqzJgM/ShJuIBjPjkI/AAAAAAAAABA/bAFg4AGr4-s/s72-c/vimshell-interactive.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-2953184415776511195</id><published>2009-05-19T13:23:00.002+09:00</published><updated>2009-05-19T13:27:31.271+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcache Ver.2.55</title><content type='html'>neocomplcache Ver.2.55をgithubにアップロードしました。&lt;br /&gt;&lt;a href="http://github.com/Shougo/neocomplcache/tree/v2.55"&gt;http://github.com/Shougo/neocomplcache/tree/v2.55&lt;/a&gt;&lt;br /&gt;今回はキャッシュをg:NeoComplCache_TemporaryDirに書き出すようになってます。&lt;br /&gt;デフォルトでは'~/.neocon'です。&lt;br /&gt;よって、二回目の読み込みは圧倒的に高速化します。&lt;br /&gt;ヘルプやpresenも更新しました。ただし、プラグインマニュアルはまだ工事中です。&lt;br /&gt;&lt;br /&gt;バグがあるかもしれないので、問題があったらお知らせください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-2953184415776511195?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/2953184415776511195/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/05/neocomplcache-ver255.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2953184415776511195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/2953184415776511195'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/05/neocomplcache-ver255.html' title='neocomplcache Ver.2.55'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7844947394818194167</id><published>2009-05-18T17:17:00.005+09:00</published><updated>2009-05-18T17:29:05.619+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='neocomplcache'/><title type='text'>neocomplcache Ver.2.52</title><content type='html'>さすがに三週間も放置しているわけにはいかないので更新します。&lt;br /&gt;&lt;br /&gt;本日neocomplcache Ver.2.52をリリースしました。&lt;br /&gt;今回は久しぶりの安定版なので、githubとvim.orgの両方においてあります。&lt;br /&gt;&lt;a href="http://github.com/Shougo/neocomplcache/tree/v2.52"&gt;http://github.com/Shougo/neocomplcache/tree/v2.52&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.vim.org/scripts/script.php?script_id=2620"&gt;http://www.vim.org/scripts/script.php?script_id=2620&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ver.2.51-&gt;Ver.2.52の変更点は、ほぼバグ修正なので特筆すべきことはありません。&lt;br /&gt;Ver.2.5xを使っている人はアップデートを推奨します。&lt;br /&gt;&lt;br /&gt;Ver.2.4x-&gt;Ver.2.5xの変更点は多岐にわたります。&lt;br /&gt;具体的には、バッファを開くときにバッファ全体をキャッシュするようになりました。&lt;br /&gt;以前より少し重くなりますが、常にキャッシュが100%となるので、&lt;br /&gt;Vim標準のキーワード補完を呼び出す必要がなくなります。&lt;br /&gt;よって、キーワード補完関連のオプションは廃止されました。&lt;br /&gt;&lt;br /&gt;rank計算も遅延させるようになったので、大きなバッファではポップアップが出てくるのが早くなっていることでしょう。&lt;br /&gt;&lt;br /&gt;現在はVer.2.55を開発中です。&lt;br /&gt;これはキャッシュをファイルに書き出すことで、高速化を図っています。&lt;br /&gt;まだ完全には安定していないのですが、もうすぐgithubに上げます。&lt;br /&gt;リリースされれば、まさしく「究極の自動補完」となることでしょう。&lt;br /&gt;&lt;br /&gt;今後はドキュメントの充実を図っていきたいです。&lt;br /&gt;特にプラグイン作成マニュアルや英語マニュアルが急務です。&lt;br /&gt;最近外国の方のwatcherが増えてきているので、そこは何とかしないといけません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7844947394818194167?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7844947394818194167/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/05/neocomplcache-ver252.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7844947394818194167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7844947394818194167'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/05/neocomplcache-ver252.html' title='neocomplcache Ver.2.52'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-7765789940764200222</id><published>2009-04-30T11:54:00.002+09:00</published><updated>2009-04-30T12:01:01.086+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><category scheme='http://www.blogger.com/atom/ns#' term='vimshell'/><title type='text'>vimprocを使ってみた</title><content type='html'>現在最高のシェル環境を目指して&lt;a href="https://github.com/Shougo/vimshell/tree"&gt;vimshell&lt;/a&gt;を作っているのだが、大きな問題として非同期実行が出来ないということがある。&lt;br /&gt;他のプラグインでは、外部言語インタフェースを用いている。&lt;br /&gt;しかしそれでは環境が限定されてしまう。&lt;br /&gt;そこで、kanaさんより教えてもらい、&lt;a href="http://yukihiro.nakadaira.googlepages.com/#vimproc"&gt;vimproc&lt;/a&gt;というものを使ってみた。&lt;br /&gt;&lt;br /&gt;内部でdllを呼び出しているらしく、Windowsではautoloadにコピーすることでそのまま使え、&lt;br /&gt;*nixではコンパイルすれば使えるらしい。&lt;br /&gt;&lt;br /&gt;testプログラムが動くことを確認したため、vimshellのiexe内部コマンドに実装してみた。&lt;br /&gt;うまく動いている。&lt;br /&gt;&lt;br /&gt;さて、あとはどう非同期に実行させようかな。&lt;br /&gt;autocmdを使うべきだろうが、なかなか簡単にはいかない。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-7765789940764200222?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/7765789940764200222/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/04/vimproc.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7765789940764200222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/7765789940764200222'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/04/vimproc.html' title='vimprocを使ってみた'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-6370000484887128926</id><published>2009-04-27T15:28:00.007+09:00</published><updated>2009-04-30T12:53:20.184+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vim'/><title type='text'>neocomplcacheをアップロードしました。</title><content type='html'>ついに&lt;a href="http://github.com/Shougo/neocomplcache/tree/master"&gt;neocomplcache&lt;/a&gt;を&lt;a href="http://www.vim.org/index.php"&gt;www.vim.org&lt;/a&gt;にアップロードしました。&lt;br /&gt;これで私もVimScript作者の仲間入りです。&lt;br /&gt;まだ説明も適当で、かなり投げやりな感じですが、これから少しずつ増やしていく予定です。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.vim.org/scripts/script.php?script_id=2620"&gt;http://www.vim.org/scripts/script.php?script_id=2620&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;neocomplcacheとは&lt;a href="http://www.vim.org/scripts/script.php?script_id=1879"&gt;autocomplpop&lt;/a&gt;を参考に、究極の自動補完を目指して作成したプラグインです。機能は豊富で、&lt;a href="http://www.emacswiki.org/emacs/AutoComplete"&gt;auto-complete.el&lt;/a&gt;のように、プラグインによる拡張にも対応しています。&lt;br /&gt;スクリーンショットは次のようになります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ci2yBnqzJgM/SfVWKxu8VpI/AAAAAAAAAAw/2jDE6UuI_KQ/s1600-h/screenshot1.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 265px; height: 320px;" src="http://3.bp.blogspot.com/_ci2yBnqzJgM/SfVWKxu8VpI/AAAAAAAAAAw/2jDE6UuI_KQ/s320/screenshot1.PNG" alt="" id="BLOGGER_PHOTO_ID_5329260477211760274" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;このスクリーンショットでは、endというカーソル前のキーワードによって絞り込みを行っています。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ci2yBnqzJgM/SfkgaHXLS0I/AAAAAAAAAA4/TmaylpFl_Uw/s1600-h/Screenshot2.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 160px;" src="http://3.bp.blogspot.com/_ci2yBnqzJgM/SfkgaHXLS0I/AAAAAAAAAA4/TmaylpFl_Uw/s320/Screenshot2.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5330327266994637634" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;これはスニペット補完です。snipMate風のスニペットが使用できます。&lt;br /&gt;&lt;br /&gt;他にも多数の機能があります。このブログでも少しずつ紹介していく予定です。&lt;br /&gt;詳しくはpresen/neocomplcache.txtを読んでください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-6370000484887128926?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/6370000484887128926/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/04/neocomplcache.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6370000484887128926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6370000484887128926'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/04/neocomplcache.html' title='neocomplcacheをアップロードしました。'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ci2yBnqzJgM/SfVWKxu8VpI/AAAAAAAAAAw/2jDE6UuI_KQ/s72-c/screenshot1.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5205480588479095788.post-6161429912578636923</id><published>2009-04-24T13:36:00.001+09:00</published><updated>2009-04-24T14:39:42.463+09:00</updated><title type='text'>ブログ始めました</title><content type='html'>ブログを始めてみました。&lt;br /&gt;現在neocomplcacheとvimshellというプラグインの開発で忙しいので、&lt;br /&gt;多分Vimのことが中心になると思います。読者が増えるといいな。&lt;br /&gt;目標は一週間に一度は記事を書くこと。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5205480588479095788-6161429912578636923?l=vinarian.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vinarian.blogspot.com/feeds/6161429912578636923/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://vinarian.blogspot.com/2009/04/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6161429912578636923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5205480588479095788/posts/default/6161429912578636923'/><link rel='alternate' type='text/html' href='http://vinarian.blogspot.com/2009/04/blog-post.html' title='ブログ始めました'/><author><name>Shougo</name><uri>http://www.blogger.com/profile/10966620262612722228</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_ci2yBnqzJgM/SfE_ncbjHMI/AAAAAAAAAAM/q9-3QEkatT4/S220/dragoon_big.png'/></author><thr:total>0</thr:total></entry></feed>
