ggdG:wq

個人的なメモとか書いてます。

VimConf 2018が最高だった

最高でした!!

VimConf 2018に参加してきました。
最初から最後まで最高of最高なカンファレンスでした。
運営スタッフ、登壇者の方々、本当にありがとうございました。

Vim熱が上がりまくったので、今後は何かVimに貢献したいと思います。
ただ、英語も怪しい上にパッチを送れるような技術も無いのでまずはその勉強からになりそうですが...

朝からワクワクしている様子です。

会場では珈琲がおかわり自由だったのですが、注ぐためのボタンが分からず全然違うボタン(おそらく開閉ボタン)を押しながら出ないな?? って首をかしげていたらBramさんに"こっちだよ"って教えて頂きました。

最高ですね。
珈琲の淹れ方をVimの生みの親に直接教えてもらえるのはVimConfだけです。

英語力があればもう少し気の利いたお礼が言えたのかも(思いっきり日本語で「ありがとうございます!」って言ってしまった)と思うと、かなり悔しい気持ちなのでちゃんと勉強し直します。

各セッションも最高でした。

Keynote - What is the next feature?

mattnさんのKeynoteでVimのエモい話

mattnさんが初めてpatchを出したときにはもうKoRoNさんが居たという話から、vim-jpの役割紹介・作った経緯的などが前半の内容でした。

スパルタンVimにKoRoNさん視点でmattnさんとの馴れ初め的な話があったなーと思いながら聞いてました。

後半は機能の追加提案でした。

  • DRCS Sixelをterminalでサポート出来るようにして画像が表示できるようになる
  • ch_listen, BLOB Typeを足してVimでlisten 出来るように
    • デモもありました :WebServerするとVim上でWebサーバが立ち上がってました (すごい

Keynote - Vim: From hjkl to a platform for plugins

Bram MoolenaarさんのKeynote
Bramさん本人からこれまでのVim, そして今後のVimの機能について語られました。最高ですね。

pluginの高速化

  • pluginの読み込み時間を短くするためにマルチスレッドにする
    • 難しいらしい
  • Python等の多言語を利用する
    • Pythonがよく使われているが、Vim script + Pythonが全てのVimで動くわけではない
  • Vim script自体を早くする
    • 中間形式にコンパイルする案
      • かなり時間と努力が必要になる WIP

pluginの依存管理を出来るように

  • dependencies.vim fileをプラグインが持つようにする案

欲しい機能の投票結果 (GitHubのIssueでやってたやつですね 多分)

  • text properties
    • 質問で回答していましたが、Bramさんも一番良いなってpollは text propertiesらしいです
      • これもWIPなので楽しみです
  • Popup window
    • メッセージを指定したポジションで表示できるようになる
      • 色々使いどころがありそうな機能です

Bramさん本人からどういう点を重視しているのか、とか考えていることが聞けて最高でした。

Migration plugins to standard features

daisuzuさんのpluginの機能をVim標準の機能で置き換える方法の話

スパルタンVimを読んでplugin中毒から脱したという話にかなり共感しました。
補完pluginについては何度も消したり入れたりしているのでこの機会に脱pluginで安定させようと思い、セッション中にvimrcから消しました。
(C-x C-l)が何も入力していない状態でああいう動作をすると思っていなかったので個人的に一番の知見でした。
めっちゃベンリでは??

Modes

ujihisaさんのmodeの話

termdebugの説明をしながらVimのソースコードを説明してました。
termdebug凄い便利そう

あと、ujihisaさんのterminal開いた時にxpsって文字列が見えたのでひょっとしてXPS13か??とか考えてました。

A day in the life of (ordinary) Vimmer

OKURA Masafumiさんの平均的なVimmerの一日について

  • VimとNeoVimのアップグレード
  • Vim pluginのアップデート

NeoVimユーザではないのでVimのコンパイルしかしませんが、やっぱみんなやる行動なのかと思いました。

デモもあったのですが、typoによって惜しくもTestが通って無かったです

"This is TDD"って言っていたので想定通り??

本番でのデモは難しそうですね...

Agは導入していなかったので後で入れようと思います。

Modern editor-independent development environment for PHP

USAMI KentaさんのPHPとEmacsとVimの話

PHPStormは便利機能が多数あるらしく、やっぱりJetBrains凄いなーって印象でした
ALEを使うとVimでも色々出来るらしいです。

他にもVeonimっていうneovimをベースにしたIDEのようなものがあるらしいです
GitHub見てみたら完全にIDEだなって感じの見た目してました

Oni - The GUI-fication of Neovim

Akinさんの Oni というNeovimのGUIエディタの話

デモがあったのですが、個人的にブラウザが中で開けるのが色々便利に使えそうで良いなーという 印象を受けました
まぁ今はVSCodeとかいろんなエディタでそういうことが出来るとは思いますが... NeovimにQuick InfoとかPopUp機能などが追加されて最強に見えるって感じだったので使ってみたいです。

日本語入力とかちゃんと動くのかな??

Vim ported to WebAssembly

rhysdさんのVimをWebAssemblyに移植した話(ご本人曰く軽めの話 全く軽くない )

wasmがCでコンパイルする→Vimをコンパイルしたくなる ??
なるほど流石って感じ

スライドが素晴らしく分かりやすく(私の力不足故に理解できない部分はありましたが)、どういうふうに移植していったのかを詳しく解説していました
特にシーケンス図が分かりやすく、概要は分かったような気になりました

質問の中にブラウザでVimプラグインのデモが出来るかという質問があり、 なるほどロマンですね。

LT

LTでも面白い話が聞けて最高でした。

  • Takaaki ISHIKAWAさんのorgmodeの話
    • orgmodeは第2の脳
    • こういう話を見聞きするたびに自分の最高のメモ環境について考えたくなります
  • notomoさんのNeovimからブラウザをコントロールする話
    • 最後ブラウザによるFizzBuzzまで含めて最高でした
  • rattvさんのVimから電話をかける話
    • デモ...時間切れ....
      • 後少しだった
  • ShougoさんのNeovimとVimの違いについて
    • 暗黒美無王 == Uncock Vim Awe(アンコック ヴィム オゥ) 私覚えました
  • Ken Takataさんのvim-historyというVimの過去のソースをgitにまとめたお話
    • 28年前のVim 1.14からソースがあります
      • この頃のソースコードならまだ規模がでかすぎず、読めそうな気がしてきます

懇親会

懇親会ではお酒の力を借りて、多くの人と会話できたかなと思います。
はじめ、たまたま h_eastさんと同じテーブルにいて少しお話出来たのはとても嬉しかったです(h_eastさんは覚えておられないかと思いますが、初めてQiitaに記事書いた時にコメントで"こういう機能ありますよ" っていう助言を頂いてて個人的にめちゃくちゃ嬉しかったので...)

aomoriringoさん(LTのドラお疲れ様でした)にすごく美味しいブランデー飲まさせて頂きました。
美味しすぎて何度かおかわりしてしまったのですが、後で調べたらめっちゃ高いやつですね...。
ご馳走様でした _(._.)_

他にも沢山の方とお話させて頂きました。

初対面の方とでも"Vimの欲しい機能どれに投票しました??"等とホワイトボード見ながら欲しい機能についてワイワイ語れて楽しかったです。

最高 of 最高 of 最高の一日でした。
今年は何かしら出来ればと思い、個人スポンサーチケットを購入したのですが、来年はもっと何か出来ることを増やして参加したいです。

登壇者の方、スタッフの方、参加者の方、スポンサーの方、そしてVimという最高のソフトウェアの開発を始めてくれたBramさん 本当に最高のカンファレンスをありがとうございました。