VimConf2019に参加しました

こんにちは、はじめまして。グリーグループのグリーライフスタイル株式会社で美容メディアARINEのサーバーサイド開発を行っているエンジニアの清野です。

2019年11月3日に開催されたVimConf2019に参加してまいりました。本記事はその参加レポートです。

VimConfについて

VimConfとはテキストエディタVimに関する国際カンファレンスで、2013年に第1回が開催され、今回で第7回目の開催となります。私は今回始めて参加しました。

当日の様子や実況ツイートなどは #vimconfでご覧いただけます。

今回のVimConfには、グリーもシルバースポンサーとして参加しており、ノベルティの中に本エンジニアブログの広告が入っておりました。

キーノート、セッションについて

今年のテーマは「How to be more productive with Vim?」、Vimを使いより生産性を高めるための方法や知見が紹介されました。各セッションのスライドはこちらで紹介されています。

ここからは個人的に印象に残ったセッションを紹介させていただきます。

Vim Renaissance(by Prabir Shrestha)

vim-lspの作者であるPrabir Shrestha氏によるキーノートです。

LSP(Language Server Protocol)の詳細とvim-lspを作った動機やプラグインを作る際のポリシー等について話してくださいました。

Prabir氏は発表の中で「LSPをまだ使ったことがない人はぜひ使ってほしい」と話しており、LSPを導入することで簡単に生産性を高めることができると強調していました。

Your Vim is Only for You(by mopp)

Vim中級者が、Vimをより使いやすいようにどのようにしてvimrcを整備・進化させていくのかという内容でした。

生産性を上げていくために、

  • プラグインを入れたり、設定をしていないVimをマスターする
  • Vimにパッチを送る
  • vimrcを記述してVimをカスタマイズする

という道筋を提案しており、mopp氏の発表では最後のvimrcによるカスタマイズにフォーカスしています。

発表の中で提案していたテクニックには、次の内容が挙げられていました。

  • Lazy loadingを活用してVimの起動時間を早くする
  • LeaderにSpaceを割り当ててより素早くタイプできるようにする
  • has('nvim')を活用してNeovimでもVimでも使えるvimrcにする
  • 設定はすべて1つのファイルに記述する

また、Vimを自分のものにしていくためのワークフローを示し、日々vimrcを進歩させていくことも提案していました。

make test (by m-nishi)

Vimのテストにフォーカスし、テストの動かし方と書き方、Vimのテストを書くことがコントリビュートのチャンスであることの紹介でした。

Vimのテストを書くことの恩恵として、

  • Vimの実装について深く理解することができる
  • PRを出す敷居は案外低い、カバレッジが向上するためマージされるのも早い

テストを書く際はVimのcodecovでテストが存在しない箇所を特定し、helpを読んでその箇所がどのように実行されるかを調べてテストコードを書くようです。

普段利用するOSSのソフトウェア品質に貢献できるのは貴重な経験ですし、Vimをもっと効率よく使いこなすための実装に関する深い理解を得る機会になると思います。

さいごに

1日を通してVimを使う、もしくはVimをカスタマイズ・改善して生産性を高める方法、またはそこに貢献する方法を知り、考えることができました。
登壇者や懇親会でお話した方々のVimへの熱い想い、数多くの刺激を受けましたた。今後のVimmer生活をよりよくしてくため、今回のVimConfで得た知見を活かしたい、またVimに貢献していきたいと考えています。

VimConf2019の運営スタッフのみなさま、登壇者のみなさま、懇親会でお話させてくださったみなさま、本当にありがとうございました!