読者です 読者をやめる 読者になる 読者になる

本当にキモい Vim script - 正規表現編

Vim Advent Calendar 2012 の 339 日目の記事です。先日、Lingr で :s コマンドの引数をパースする方法についての話になりました。 :s はご存知の通り、置換コマンドです。 :[range]s[ubstitute]/{pattern}/{string}/[flags] [count]今回 [range] と [count]…

momonga.vim #2 に行ってきた

momonga.vim #2 に行ってきた。 昼食 開始が13時だったので、始まる前に現地でお昼を食べることに。一人で食べるのもアレなので、一緒に食べる人を適当に募ったところ、5人で一緒に食べることに。実際に現地に着いてみると、たまたま早めに来ていた daisuzu …

空間を飛び越えろ!portal.vim を作りました

Vim Advent Calendar 2012 の 239 日目の記事です。みなさんは Portal と言うゲームをご存知でしょうか。 ポータルガンと呼ばれるアイテムを駆使して仕掛けを突破しながら脱出を目指すアクションパズルゲームです。ゲームの細かい説明ははぶきますが、とても…

quickfix を便利に使う設定

Vim Advent Calendar 2012 の 220 日目の記事です。 最近の Vim Advent Calendar は子供が生まれたり結婚したりで大変めでたいことが続いていますね。良いことです。みなさんも Vim Advent Calendar で執筆すれば御利益があるかもしれませんよ? あ、ちなみに…

TokyoVim#15 に行ってきた

いつものごとく TokyoVim#15 に行ってきた。 今回はおやつどうしようかと思って、同じなのも芸がない*1なぁと別のにしようかと思ったのだけど、たまたまミスドでドーナツ100円のセールをやっていたので、前回同様ドーナツ買ってった。 芸がないけど今100円で…

Vim で C# を書くなら OmniSharp で決まり!

Vim Advent Calendar 2012 の 173 日目の記事です。今回は C# を書くのに便利な OmniSharp と言うツールを紹介します。これさえあれば、エディタとしての Visual Studio はもう必要ありません! 経緯 (興味ない人はここは飛ばしてインストールのところから読…

同一視されるキーに注意

Vim Advent Calendar 2012 の 164 日目の記事です。Vim は元々端末で動作していたソフトウェアで、それ故のキー周りに関する制限がいくつかあります。端末版の Vim を使うのであればある程度は仕方のないことですが、いくつかの制限は gVim にも残っています…

意外と知られていない diff に関する機能

Vim Advent Calendar 2012 の 147 日目の記事です。137 日目の tyru さんの記事で、Vim の diff 機能について紹介がありました。この記事ではもう少し細かい diff の機能について紹介したいと思います。 :diffthis 比較したい対象がファイルではない場合、例…

TokyoVim#14 に行ってきた

TokyoVim#14 に行ってきたよ。 今回はおやつにミスドでドーナツを買っていった。 ミスドでドーナツ買っていきます。 #TokyoVim2013-04-20 11:29:05 via twiccaドーナツも含めて、チョコレートやら飴やらカントリーマアムやら、今回はおやつが充実しすぎてて…

カラースキームを作ってみよう

Vim Advent Calendar 2012 の 131 日目の記事です。毎日のように Vim を使っているみなさんは、恐らくお気に入りのカラースキームがあったりすると思います。中には一部が気に食わなくて改造してみたり、更にはすでに自作している方もいるかもしれません。 …

Vim を起動したときに Vim Girl に会いたい!

Vim Advent Calendar 2012 の 122 日目の記事です。 122日目と言うことで全体(365日)の1/3を突破しました。まだまだこれからですね。 さて、100日目のIMAGEDRIVEさんの記事で、Vim Girl のイラストが公開され、あちこちで好評のようです。Vim Advent Calenda…

TokyoVim#13 に行ってきた

TokyoVim#13 に行ってきた。 今回の参加者は10名と結構多め。いいですね。今回、と言うか最近は毎回なのだけど、自宅にあるサーバに接続してそこで作業している。ここが開発の母艦になっているので、ここで直接作業すると後で作業結果を反映する必要がないの…

clever-f.vim を魔改造した話

Vim Advent Calendar 2012 の 89 日目の記事です。昨年、clever-f.vim と言うプラグインが rhysd(@Linda_pp) さんからリリースされました。https://github.com/rhysd/clever-f.vimどんなプラグインかと言うと、f が便利になるプラグインです。 Vim の f はみ…

Live Coding で painter.vim(仮) 作った

Vim Advent Calendar 2012 の 81 日目の記事です。 先日 Yokohama.vim #4 で Live Coding をしたわけですが、今回はその成果について紹介したいと思います。 以下がその時作った painter.vim(仮) です。Vim を使ってマウスでお絵描きできるプラグインです。h…

Yokohama.vim.reverse #4 に行ってきた

Yokohama.vim.reverse #4 に行ってきたよ。 なんで reverse なのかは、↑のイベントページとか前回のguyonさんのレポート記事の最後の方を見てもらえるとわかります。 pre懇親会 で、reverseと言うことでまずは懇親会から。 気になるpre懇親会の結果は…やって…

vital.vim に Text.Ltsv モジュールを追加した

vim

表題どおり、LTSVデータをパースしたりダンプしたりする Text.Ltsv モジュールを追加しました。 本体コードを書き上げた時点でとっくの昔にmattnさんが書いてたことに気付いたのだけど、書いてしまったもんはしょーがないので上げておきます。何より、gistじ…

submode.vim とその設定例なんかを紹介

vim

Vim Advent Calendar 2012 の 62 日目の記事です。私が毎日のようにお世話になっているプラグインの1つに、kana さん作の submode.vim と言うのがあります。結構昔からあり、かなり便利なのにあまり知られていないような気がします。これはもったいない!と…

neosnippet#expandable() の仕様が変わってた

vim

最近 neosnippet.vim で展開したあとうまくジャンプできなくて、あれーと思って調べたら neosnippet#expandable() の仕様が変わってた。 以前はジャンプできるかのチェックも内部で行われて、数値で状態のチェックができたのだけど、純粋に展開可能かどうか…

blink1.vim 作った

vim

最近、完全に勢いで blink(1) ってものを買ってみた。どんなもんかは適当にググるとこことかみつかると思うけど、要はNotification用途のフルカラーLEDのUSBデバイス。小さな USB デバイスで、任意の色で光らせることができる。 色々応用が可能ってことで、…

Sublime Text 2 のあの機能を使う

Vim Advent Calendar 2012 の 3 日目の記事です。前回の kaoriya さんの記事でも触れられていましたが、Sublime Text 2、最近とても注目されていますね。私の周りにも使っている人をちらほらみかけます。 これだけ人気があるのだから、何か秘密があるはず。…

vimrc の一部を分離して scall.vim 作った

vim

昨日の TokyoVim の成果。https://github.com/thinca/vim-scall何かと言うと、去年のVim Advent Calendar(2周目)で紹介した関数をまんまプラグインにしただけです。スクリプトローカルな関数を呼ぶための関数を提供するプラグイン。 しかし、元々の S() と言…

TokyoVim#12 に行ってきた

TokyoVim#12 に行ってきたよ。 開催4日前の時点で参加者が私と主催のkanaさんしかいなく、危うく二人きりの危険な会になるところだったけど宣伝が功を奏したかなんとか回避。6人参加でした。 今までの TokyoVim の参加では作業成果が表に出せてない感じだっ…

ujihisa.vim#3 に行ってきた

ujihisa.vim#3 に行ってきたよ。 vim-jpの活動報告 Vimの過去と現在と未来 - @kaoriya 発表資料: http://koron.github.com/ujihisa-201211/vim-jp の紹介、在り方、そして今後のVimへの貢献の話など。 興味を持った方は vim-jp の活動に参加してみてはどうで…

partedit.vim 更新した

vim

遥か昔に partedit.vim と言うものを作ったのだけど、最近ちょっとあって更新してみた。 今月の TokyoVim#11 で、kawakami_o3 さんが文芸的プログラミング、具体的には Literate Haskell でうまいことインデントしようとがんばっていた。Literate Haskell は…

Clojure 用の indent と syntax 書いた

clojure 用の Vim プラグインと言えば VimClojure が有名どころで、私もこれを使っていたのだけど、グローバル変数汚染やらレジスタが勝手に書き変わるやらのバグがあったり(comment ...)とかのコメントがちゃんとコメントとしてハイライトされなかったりで…

neobundle をコマンドラインから実行するスクリプト書いてみた

vim

絶賛叩き台版。https://gist.github.com/3421512 shell script用とWindowsのcmd.exe用。まず gist 内にある sample のような :NeoBundle を列挙したファイルを用意する。そしてコマンドラインからおもむろに neobundle bundle.vimとすると neobundle で管理…

vimrc読書会のリクエストページを作ったよ

https://github.com/vim-jp/reading-vimrc/wiki/Request読みたい vimrc があったらここの Wiki に追記していってね!

vimrc読書会まとめページ作った

最初は Github Wiki を使おうと思っていたのだけど、h1 がタイトルになる技が使えなくなっていて、URLに日本語入れたくなかったしタイトルは「vimrc読書会」にしたかったしで諦めた。 ので、Github Pages で作ってみた。http://vim-jp.org/reading-vimrc/今…

第5回 vimrc読書会やった

vimrc読書会の5回目を 8/4(土) 23 時から Lingr の Vim 部屋でやりました。 今回の vimrc 今回は @manga_osyo さんの vimrc を読ませていただきました!https://github.com/osyo-manga/vimrc/blob/9ef0ca9757abcdaa11c76024aa551f0b473624bf/vimrcs/default/…

TokyoVim#9 に行ってきた

TokyoVim#9 に行ってきた。 今回、寝坊により40分ほど遅刻してしまった。反省。2度寝のいざないが…。 この会場では毎回私の Gentoo マシンではネットに繋がらないので、今回は趣向を変えて Windows にしてみた。元々デュアルブート*1になっていて、Windows …

第4回 vimrc読書会やった

vimrc読書会の4回目を 7/28(土) 23 時から Lingr の Vim 部屋でやりました。 今回の vimrc 今回は @basyura さんの vimrc を読ませていただきました!https://github.com/basyura/vimfiles/blob/ee086f25b8c58b8ea6bf025d26ebc11ae50e6ca1/rc/vimrc 参加者リ…

第3回 vimrc読書会やった

vimrc読書会の3回目を 7/21(土) 24 時から Lingr の Vim 部屋でやりました。 決まり 今回は簡単に決まりを設けてみました。 途中参加/途中離脱OK 読む順はとくに決めないので、好きなように読んで好きなように発言します vimrc 内の特定位置を参照する場合は…

第5回 sugamo.vim に行ってきた

第5回 sugamo.vim に行ってきた。いつも通り最初に全員順番に軽く自己紹介して、「あとはご自由にどうぞ」ゆるいw だがそれがいい。 Shougo さん初参戦回*1。 のキーマッピング 「jj に を割り当てている」と言う人が Shougo さん以外にもいた。使ってる人は…

第2回 vimrc読書会やった

前回やったvimrc読書会の2回目を7/14(土) 23 時から同じく Lingr の Vim 部屋でやりました。 今回の vimrc 今回は @anekos さんに vimrc を提供していただきました!ありがとうございます!https://github.com/anekos/my-config/blob/0afcd78455743a4d3fad31…

vimrc読書会やった

少し前に Lingr の Vim 部屋で vimrc 読書会を開いたので、そのまとめ。 発端 きっかけは本当にただの思い付きだった。 thinca: オンラインでの vimrc 読書会またやりたい。 http://lingr.com/room/vim/archives/2012/07/10#message-10599596 呼応した。 uji…

TokyoVim #8 に行ってきた

TokyoVim #8 に行ってきたよ。 毎回のように KPT の Problem で「もくもくしすぎ」と言われるこのイベント、今回も相変わらずのもくもく具合でした。 そして私のマシンだとなぜかこの会場ではネットに繋げないのだけど、前回色々試したし今回は特に新しい対…

akiba.vim#1 に行ってきた

akiba.vim#1に行ってきた。最初はみんなで順番に自己紹介したり普段どんなことに Vim を使っているかを話したりしつつ、全体的には雑談な感じでした。途中で出た話題のメモを1つ。初心者に1つだけ機能やプラグインを勧めるとしたら何? と言う話題。以下のよ…

Vim script の変数のスコープについてのお話

vim

Vim の変数のスコープについて調べたら「わかってない」ということがわかった - sci このような記事を見かけた。具体的にどんなコードで試したのかわらないので具体的なアドバイスはできそうにないが、せっかくので Vim script の変数のスコープについて解説…

quickrun.vim 0.6.0 リリース

vim

quickrun.vim 0.6.0 リリース予告を出してから気付けばもう1月以上経ってしまった昨今、いかがお過ごしでしょうか。 色々あったけどいい加減出さないといかんなと思っていて、今日ようやくリリースにこぎつけました。 変更内容とかは予告の時に書いたのとほ…

showtime.vim 作った

vim

経緯 yokohama.vim でプレゼンするにあたって、どうやってプレゼンするか悩んでいた。 @ShougoMatsu 一応今回はquickrunの解説でもしてみようかと考えているので資料は必要ですねと言ってもVimで発表したいのでそこでどうしようか若干ジレンマが。良いプレゼ…

TokyoVim #7 に行ってきた

TokyoVim #7 に行ってひたすらもくもくしてきたよ。最初は quickrun.vim のドキュメントの英訳の残りをやってリリース作業をしようかと思っていたのだけど、私の Gentoo 力の低さによってネットに繋ぐことができず、英語力も低い残念な私はあえなく英訳作業…

yokohama.vim #3 に行ってきた

yokohama.vim #3行ってきました! いつも参加させていただくだけなので今回は自分も何かできればと思い発表するなどしました。 quickrun.vim の詳解 - thinca 資料 私の発表。資料作成が遅れてろくに練習もせずに当日の行きの電車の中で最終調整を行うという…

ref.vim に webdict と言うソースを追加した

vim

ref.vim に webdict と言うソースを追加した。取り急ぎ版。 これは設定した Web サイト(主に辞書サイトを想定)を扱うソース。 例えば以下のように設定する。 let g:ref_source_webdict_sites = { \ 'wikipedia:ja': 'http://ja.wikipedia.org/wiki/%s', \ } …

ref.vim から alc 用のソースを削除した

vim

少し前に Twitter 上で、ref.vim の alc ソースが規約違反ではないか って話が出て、色々意見が出ていたのだけど、個人的には加工はしてないしギリギリセーフのつもりでいた*1。 いたのだけど、一連の流れを ALC の方が見つけたのかどなたかが報告したのかは…

quickrun.vim 0.6.0 リリース予告

vim

現在 quickrun.vim 0.6.0 を v0.6.0dev ブランチで開発中です。やりたいことはだいたいできたっぽいので、そろそろ master に merge しようかと考えてます。 で、0.6.0 ではいくつか非互換の変更があるので、周知も兼ねて新機能と一緒に紹介してみることにし…

vimrc のどこが重いのかを調べるもう1つの方法

vim

何やら mattn さんがプラグインを書いたみたい。Big Sky :: vimrcのどこが重いのかを調べられるプラグイン書いた。どうやらvimrcの各行にreltimeで時間差を取るコードを埋め込んで実行することで計測している模様。 ところでVimには+profileって機能がある。…

vital.vim 近況

vim

vital.vim について、近況をつらつらと書きます。 vitalizer の追加 vital.vim をプラグインへ組み込むことを vitalize と言い、これを行うものを vitalizer と呼ぶことにしています。 以前は vitalize.rb と言うのがあったのですが、この度 pure Vim script…

editvar.vim に unite-variable を追加した

vim

そのうちやろうと思っていたんだけど、最近こんなものを見付けたので、触発されてやってみた。https://github.com/thinca/vim-editvarついでにあれもこれもとやってたらなんか色々おかしなことに…。 unite-variable 追加。 edit はもちろん、delete(:unletす…

$this-> をラクに入力する

PHP 書いてると、$this-> をよく書く割に Shift を 2 回も使わないといけなくてすごく書きづらい。 あまりに書きづらいので @ で $this-> を出すようにした。確か PHPer って @ は滅多なことがないと使わない*1んだよね。 " after/ftplugin/php.vim inoremap <buffer></buffer>…

singleton.vim 作った

vim

Vim を 1 つのインスタンスだけで使うためのプラグイン、singleton.vim ってのを作った。 初期版を書いたのはずーっと前だったんだけど、整理しきれてなかったのを最近になってようやく公開できそうな感じにした。 多重起動を避けるって意味では、--remote-t…