basyura's blog

あしたになったらほんきだす。

vimconf 2015

楽しかった。最近は勉強会におっくうだったり、行っても午前中で帰ったりを繰り返していたのだけど一日楽しめた。発表者のみなさん、スタッフさん、mixi さんありがとうございました _( _ _)_

感想は他の方のブログ参照として

_人人人人人人人人人人_
> 突然の tweetvim  <
 ̄YYYYYYYYY人 ̄


発表を聞いていたら休憩時間に突然 Vim script を書きたくなる衝動に襲われた。その勢いで前々からドッグさんに要望されていた引用ツイートの対応を tweetvim の dev branch に入れてみた。久しぶりに書いたらセミコロンを書いてしまったりと無駄にハマったのは内緒だ ( ー`дー´)キリッ

twitter web で表示した場合。

f:id:basyura:20151128151400p:plain:w450

tweetvim で表示した場合。

f:id:basyura:20151128151435p:plain

要望されたときは tweet から引用されている tweet を個別に API で取ってきて表示しないといけないからめんどくさそうだなぁと思っていたのだけれど、実際には tweet に含まれてた。アイコンを出したい気がするけど、どこに出すか問題があるし、twitter web も出してないので現状維持とする。

あわせて引用ツイートアクションの動作を変更した。<Leader>q した時に QT + tweet 内容を tweet 用バッファに表示するという超旧式だったけど、tweet の url を埋め込む今風?に変更。

この引用ツイートも RT のカウントに含まれるのだと思っていたのだけど、そうではなさそうだった。

PR をいくつももらったまま dev ブランチに眠っている状態なので、そろそろ master にマージしてリリースしたい。

ということで、満足の vimconf でした!!

yokohama.vim.osaka? #7 に行ってきた

http://yokohamavim.connpass.com/event/21069/
会場は atWare さん。今回は迷わなかった。

VimExcel について発表してきた。

www.slideshare.net

アイスブレイク

首から下げているボードに vim に関するキーワードを貼り付けておき (自分では見えない)、他の人に質問をして「はい」「いいえ」「おしい」の解答をもらって特定するゲーム。
最初にルールを把握するまでに時間がかかってしまったけど最初にペアになった thinca さんのおかげで (というか質問のパクリ) 正解。最初からなかなか盛り上がった。

haya14busa さん

基調講演良かった。某社と某社にインターンしてるとかアグレッシブで非常に良い。

にはびっくりしたけれど周りの人にアドバイスをもらいながらアウトプットを出しまくるっていうのが良かった。自分もひたすら Vim script に限らずひたすら書いてた時期があったけど、最近はそういうのがなかったなってのを思い出した。仕事ではそれなりに書いているのだけどプライベートでもやりたいなと思った。

yasuharu519 さん

codic に続く新しいプラグインの制作がもとまれる。

Linda_pp さん

僕も Electron やりたい (ΦωΦ)

Yokohama.vim でパーセントファイト

  • 持ち点 100 で開始
  • ◯◯ は何 % かという質問に対して ◯ % と解答。その差分を持ち点から引いていく

調子良かったんだけど、mattn さんのリポジトリのうち vim が何 % かという質問で、期待を込めて 50% 超えを解答したものの玉砕・・・でも最下位は免れた。
正直これが始まる時点でだいぶお腹いっぱいで、まだあるんだって感じだったけど非常に盛り上がってよかった。

打ち上げ

楽しかった。チーズナン美味しかった。きのこたけのこ戦争に負けた。

f:id:basyura:20151025112808p:plain:w200

家に持ち帰ったけど奥さん、たけのこ派だった >┼○ バタッ

vimconf 2014 に行ってきた

楽しかったー。
自分も何か発表したいとは思っていたのだけど、仕事のピークの高まりと、ネタの鎮まりによるコラボレーションによって去年に続いて今年も至らず。引き出しの少なさにガックリくる。vim 活もあまりできていないので何か新しいネタを頑張りたいなぁと思う今日このごろ。

mixi - Vim and mixi

社内に vimmer が多いのは羨ましい。うちはいないかなぁ・・・ヘタすると僕だけだったりするかもしれない。
矢印キーとマウスを駆使して IDE で戦うさまを見るともったいないなぁと思うことはよくある。そこを切って張ってちょっと手を加えるだけじゃんとは思いつつも黙って眺める感じがちょっとつらいことはよくある。

僕は vim じゃなくて visual studio + viemu を使って開発しているけど。java の時は viPlugin を使っていたけど途中から vrapper に乗り換えて使ってた。さらに emacs ライクなキーバインドを混ぜるとかなりいい感じ。一番の不満はジャンプした時に思ったところに飛ばなかったり、戻らなかったりするところだろうか。

KoRoN - Identity of the Vim

この方がいらっしゃらなければココにいなかっただろうし、秀丸最強とか言いながら効率のあまりよろしくない開発をしていたのではないだろうか (windows 環境で Vim を除けば最強だとは思っている)。

発表中の「色々やるなら Vim を使おう」「ユーザが色々やる意義」のあたりは

だった。Vim を使えというわけではないのだけど、社内でこういう感じで布教できるといいなぁと思いながら聞いてた。外にはすげーやついっぱいいるんだよって感じで。

ujihisa - PM2

Civilization めちゃくちゃ面白そうだけど、信長の野望 Internet で大学時代と社会人数年を潰してしまったので手を出せない。暇つぶしの iPhone アプリぐらいでとどめておきたい。

懇親会の時にちょろっとお話をしたときに ujihisa.vim の時の鳥取ネタを覚えてもらえてたことに驚いたとともに感激したことを添えておきます (PM2 に関係ない)。

Linda_pp - f

これは benrily (=ΦωΦ)
「;」と「,」があいたので・・・のくだりに「!!!!」となった。僕もなにか埋めたい。

kamichidu - Hey, Java! Vim is coming.

eclipse 立ち上げたらメモリ 3 G で会場に衝撃が走る。あとで聞いてみるとプロジェクトがでかいからという単純?な理由だった。
僕が eclipse を使ってた時はたまに強制終了したり eclipse を落とさないで os 再起動したりしたばいにフルビルドが走ってこれが終わるまでに 30 分ぐらいかかったりしたことがあった。これ、いまでもありますか?と聞いたら「あります」との回答に闇を感じた・・・。

J6uil を使ってくださっててなにか不具合があるということなので、プルリクエストをお待ちしております (丸投げw)。
メッセージをキャッシュして部屋切り替えをスムーズにする実装を dwango での momonga.vim の時に追加したのだけど、その実装がやや強引になってしまったのと、それ以来さわってないのとで手を入れるのが億劫になりつつある。ちょっとずつ見直していきたい。

cohama - auto closing parenthesis

すげーと思って早速いれたのだけど、デフォルト設定だと日本語入力がうまくいかなくなってしまいちょっと保留中・・・。

懇親会の際に agit.vim に Gitv! 相当のファイル単位の歴を見る機能がほしいと強く要望させて頂きました・・・。advent calendar のころには・・・期待。
会社で歴を見たい時に unite-everything でファイルを見つけて、Gitv! でその歴をみるということをよくやる。やるのだけど、めちゃくちゃ遅くてかなりストレスフル・・・。単純に !git log % するとさくっとでるのでそっちでみることもあるのだけど、細かい編集歴を見たいときは我慢するしか無くて辛い。そもそも windows + cygwin + git + svn という組み合わせが良くないのは分かっている。

deris - 怖くないマクロ入門

今回のマクロ漁船会場。
マクロで編集することも多いのだけど、<C-v> で範囲指定で張り替えることが多いかなぁ。

thinca - Test for Vim script

thinca さんがテストフレームワークを作ったらテストを書くと言っていたにも関わらず全くやってません!!!
themis のテストも themis でやっているようですごい。あんしんのまんぼうブロダクトなので手を出したい。

Shougo - Let's talk about neovim

いつもの。
正直 neovim の存在を忘れていた。neovim が数年後にパワーアップしてて乗り換えるとか言い出しているかもしれないけど。
非同期とかあるけど、既存の vim + vimscript でどこまでできるのかの方が面白かったりするので乗り換えるかと言われると・・・それこそ visual studio や eclipse と同程度の感覚で補完やビルドができるところまでいってないと無いかなぁ。

暗黒美夢王は本編で力を使い果たしたらしく懇親会中はややぐったりしてた。

supermomonga かなりすごい発表(かなり)

benrily
tweetvim とか J6uil とか出てくるたびに、最近更新してないや・・・という点でグサグサきたので頑張りたい。

pebble8888 XVim with MacVim and smartgrep

そろそろ Xcode デビューして swift ブイブイしたいと思っていたので参考にしたい。

haya14busa - /-improved

incrsearch.vim すごい。けど、日本語通らないのだろうか・・・・そこだけ・・・。

Kuniwak - vim script初心者に使ってもらいたい、転ばぬ先の杖「Vint」

ストリーミング放送の管理もしつつ発表もしつつお疲れさまです。
あの vim girl の方だとしって驚きつつ、その画力に嫉妬。

raa0121(らぁ) Jenkins + vimenv で 最新のVimを使おう!

白い恋人を家に持って帰ったら妻がめちゃくちゃよろこんで食べてましたありがとうございます。

懇親会

寿司余り過ぎ・・・もったいなかった。めっちゃ美味しかったけど腹もパンパンだった。最初にピザの量を抑えておくべきだった。

まとめ

今回もとても楽しい会でした!
thinca さんを始めとして運営していただいた方々、場所を提供していただいた mixi さんありがとうございました!

vim いいよー ヴぃむー。

osx をアップデートしたら MacVim-Kaoriya で esc 時の ime off が効かなくなった

osx のアップデートをしたら消したはずの U.S. が復活していた。
Macの入力ソースで「U.S.」が削除できないときの対処法 | あのねちょう に従って Google IME だけにしたのはいいのだけど、MacVim-Kaoriya で esc 時の ime off が効かなくなった。

悩んだあげく、なんとなく再起動したら直った。

以前もなっていつの間にか直ったのだけど、何故直ったか分からないままだった。その時も osx のアップデートで直った気がしたのだが再起動がトリガーだったのかな。

今後も同じことになると思われるのでメモ。

statusline にプロジェクトルートからの相対パスを表示する

f:id:basyura:20140810234703p:plain

statusline が表示されてるのがあまり好きじゃなくて、laststatus=0 でのスッキリして表示が好きなのだけど、たまにファイル名とかディレクトリをさっと確認したいことがあるので statuline を表示したり、しなかったりする。

右側にファイルがあるディレクトリのパスを表示していたのだけど、

  • 見たいのはルートやホームディレクトリからのパスじゃなくて、プロジェクトルートからのパス
  • 表示するパスが長いと分割したときに切れちゃう

というのが気になったので、ややごういんに .git フォルダ or Rakefile ファイルの位置で判定するようにしてみた。やっつけ。

set statusline=\ %Y\ \|\ %t\ %<\ %m\ %r%=%{MyStatusPath()}\ \|\ %3c\ \|\%3p%%\ 

function! MyStatusPath()
  if exists('b:my_status_path')
    return b:my_status_path
  endif
  let path  = expand("%:p:h")
  let gpath = finddir('.git', path . ';.;')

  if gpath == ''
    let gpath = findfile('Rakefile', path . ';')
  endif

  if gpath == ''
    let b:my_status_path = fnamemodify(path, ':~:h')
    return b:my_status_path
  endif

  if gpath == '.git' || gpath == 'Rakefile'
    let b:my_status_path = fnamemodify(path, ':t')
  else
    let gpath = fnamemodify(gpath, ':h:h') . '/'
    let b:my_status_path = substitute(path, gpath, '', '')
  endif

  return b:my_status_path
endfunction

momonga.vim #6 に行ってきた

暗黒美夢王が降臨する ドワンゴ開催ということで参加。#MomongaVim のタイムラインにあるとおりのもくもく会 (?) だった。

もくもく内容

  • J6uil.vim で部屋を切り替える際にメッセージを取り直しているのをやめる
  • 取り直し無しでメッセージをキャッシュしておいてスムーズに部屋を切り替えられるようにする

というのをゴニョゴニョしてた。 (UΦωΦ) にプレッシャーを受けつつ。

もくもく

まずは vial.vim のアップデートを、と思ったのだけどやり方を忘れてしまって毎回調べるという・・・忘れないうちにメモ。

Vitalize --name=j6uil . DateTime
Vitalize .  +Web.JSON

さぁ、実装するか・・・と思いきや今度は久々すぎて構造が思い出せず調べ始める。実装を始めてみると「メッセージをキャッシュする」ためにはあれこれ考慮しないといけないことがあってこころが折れかける。実装を進めるとそもそも構造とか役割分担がおかしくなってモニョモニョし始めるのでコードの整理を始める。ひとまず動いたか・・・な?でもくもく終了。

その後、家でもくもくして今日もゴニョゴニョしてひとまず・・・で一区切り。dev ブランチに push。使ってもらうにはまだまだ感あるけど・・・。

まとめ

今回は初めて参加される方も多く居ました。中々話しかけづらいというのもあるかと思い、「この人コミュニケーションすごいできる」の通り名を持つ私としては、ここはひとつ皆さんにアドバイスをしてあげようと思い、コミュニケーションを円滑に進めるための魔法の言葉「進捗どうですか」を皆さんに教えてあげました。

momonga.vim #6 in ドワンゴ 開催レポート記事 - かなりすごいブログ

進捗どうですか。