basyura's blog

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

Tokyovim #15 に参加してきた

TokyoVim#15 - PARTAKE

#5 以来っぽいので 1 年 2 ヶ月ぶりか・・・。仕事ばっかやっててコミュニティに参加する機会がどっと減ってしまった。いかんいかん。

もくもくタイムでは unite.vim の head 資源に合わせた vimrc と自作プラグインの修正をして、その後に unite.vim の matcher を作っていました。以下作業メモ。

set_substitute_pattern が無くなった

unite#set_substitute_pattern が unite#custom#profile に変わった。
thinca さんのコンバータをパクリ。local vimrc の個別設定が多いので読む込む前に設定。

" for unite
function! Unite_substitute(profile, pat, subst, ...)
  let priority = get(a:000, 0, 0)
  call unite#custom#profile(a:profile, 'substitute_patterns', {
        \   'pattern': a:pat,
        \   'subst': a:subst,
        \   'priority': priority,
        \ })
endfunction

if filereadable($HOME . '/.vimrc_local')
  source ~/.vimrc_local
endif

できた、と思ってたら関数名が変わったけど引数が同じ関数があることを thinca さんに教えてもらうなど。unite#custom#substitute なのかな。

file_mru のカスタムフィルタでエラー

自作の unite-matcher-file-name が原因だった。
unite の関数名に変更があっただけだった。

unite#escape_match → unite#util#escape_match

unite#set_buffer_name_option

修正前

call unite#set_buffer_name_option('file', 'smartcase', 0)

修正後

call unite#custom#profile('file', 'smartcase', 0)

でも、そもそも buffer-name = files だとデフォルトが 0 だし、file にしてるこの設定はそもそも効いてなかったしで削除。

(U^ω^)からの pull リクエスト (tweetvim) を取り込み

(≡ΦωΦ) thanks!

unite.vim の新しい matcher を作った

ignorecase を設定してるつもりなんだけど substitute でパスを展開した場合に ignore してくれない

> gp
> /Users/basyura/.vim/gitplugins/
> /Users/basyura/.vim/gitplugins/t

とパスをたどった際に

> /Users/basyura/.vim/gitplugins/TweetVim

にマッチしてくれない

> /Users/basyura/.vim/gitplugins/mat

とパスをたどった際に

> /Users/basyura/.vim/gitplugins/unite-matchers

にマッチしてくれない。

という以前からモヤモヤしてたものに対応してみた。というか、matcher_fuzzy をコピってちょっといじっただけ。
後者はやり過ぎな感じもあるので、ある程度使ってみて逆効果だったら捨てるかな。

リポジトリ

設定

call unite#custom_filters('file',
      \ ['matcher_fussy', 'sorter_default', 'converter_default'])

fuzzy ならぬ fussy とは。

fussy【形】

  • 〔人が〕細かいことにこだわる、小うるさい
  • 〔人が〕好き嫌いが激しい、好みにうるさい
  • 〔人が〕イライラしやすい、じれている
  • 〔飾りなどが〕細部までこだわった、念入りな
  • 〔問題などが〕面倒な、注意深く取り組む必要がある
fussy

なかなかいいネーミング(?)。

もぐもぐタイム

おやついっぱいでドーナツたくさん食べた。満足、満足。

感想

もくもくタイムはものすごい集中してると見せかけて twitter や lingr を追いかけてしまうことがしばしばなのだけど、なかなかにはかどった。
もくもくだけど twitter や lingr ごしに会話するのがおもしろいと thinca さんが言っていた (lingr でつぶやいていた)のだけど、たしかにそう。それが、面と向かってしゃべらないといけないというハードルを下げてコミュニケーションが取りやすくなっているのかなと。発声だけがコミュニケーションじゃないですし、いざとなれば vimrc を見せ合えば(ry

あと、新 macbook air をセットアップされていたうらやましからん modsound さんに unite-rails 使ってると言われたのが嬉しかった。rails 勉強するする詐欺でアプリを作りながらも、いろいろ手間が気になって plugin を書いて満足するパターン。なのでこれといった機能アップがないのが申し訳ないところです。はい。

次会も参加したいです。