Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Vim にコントリビュートしたい (ダウンロードでリンク有効) / How to contribute to the Vim

m-nishi
June 13, 2019

Vim にコントリビュートしたい (ダウンロードでリンク有効) / How to contribute to the Vim

m-nishi

June 13, 2019
Tweet

Transcript

  1. Vim にコントリビュートしたい ゴリラ.vim #5 on 2019/6/13

  2. 自己紹介 西畑, m-nishi Vim 歴 1 年半 横浜で組み込み屋をやっています プラグインよりも Vim

    本体のほうが好き Twitter mnishz0 GitHub mnishz
  3. 概要 ターゲット • Vim が好きで「何かコントリビュートしてみたい」と思っている人 内容 • どんな方法があるのか • 何ができるのかを自分なりに探ってきた道のり

    • 取り立てて「〇〇を実装したい!」という明確なモチベーションはなかった • もし Vim のコミットログに名前が載ったら。。という不純な動機も
  4. 1 % "ドキュメント編" 2 "実装編"

  5. Lv. 1: 日本語ヘルプの修正 vim-jp 運営のおなじみ日本語 ヘルプ 誤字脱字や誤りを発見してレ ポート オンライン版は常に最新なので、 こちらを参照してみてください

  6. Lv. 1: 日本語ヘルプの修正 やり方(動画) オンライン ヘルプの編集 ボタンから

  7. Lv. 1: 日本語ヘルプの修正 改行等の細かい作法はあるが、とりあえず気にしなくて OK • 「ですます」不統一 • インデントずれ •

    等の細かい修正でも 番外編 vim-jp/vimdoc-ja をプラグインのように追加すればローカルで最新の ヘルプを参照することができる
  8. Lv. 2: 本家ヘルプの日本語への翻訳 翻訳作業リポジトリで有志による翻訳作業をやっています https://github.com/vim-jp/vimdoc-ja-working 本家ヘルプが更新されたタイミングで、日本語への翻訳を実施 過去 1 年間では 16

    コミット / 月
  9. Lv. 2: 本家ヘルプの日本語への翻訳 やり方 Wiki に詳しい作業手順や手引き が書いてある ファイルの翻訳に着手するとき は #207

    で宣言しておくと他の 人と作業が被らなくていいです
  10. Lv. 3: 本家ヘルプの修正 vim/runtime/doc で管理されている本家ヘルプの誤字脱字、誤り の修正 本家に直接 PR を送っても問題はありませんが、vim-jp で内容

    をまとめている (#1172) のでそこに送るのがいいと思います 項目の棚卸を行うと、ヘルプの更新に伴って発生した抜け漏れが 見つかることがある
  11. 1 "ドキュメント編" 2 % "実装編"

  12. Lv. 4: Issue の投稿 バグの報告や、実装の要望 vim-jp https://github.com/vim-jp/issues/issues vim-dev https://groups.google.com/forum/#!forum/vim_dev https://github.com/vim/vim/issues

    vim-jp の方々はびっくりするくらい優しいので、まずは Slack の question チャンネルで尋ねてみるのもいいと思います
  13. Lv. 4: Issue の投稿 問題の切り分けや再現手順が適切にできていれば bug reporter として名前が載る コツ •

    いろんな機能をいろんな条件で試してみる • 新機能にはバグが多い • とりあえず毎日 fetch して log を眺めて build してみる
  14. Lv. 5: Bug Fix や機能の実装

  15. Lv. 5: Bug Fix や機能の実装 急にハードル高い そもそもこれができる人は言われなくてもやっている そこで。。

  16. Lv. 4.5:テストを書く Bug Fix や実装はつよい人たちが いるので、ニッチ市場を攻める src ディレクトリで `make test`

    を実行 テストに関する解説記事も書いた りしてます
  17. Lv. 4.5:テストを書く テストされていないコードを探 して、テスト用 Vim script を 書く • コマンド

    • 組み込み関数 • オプション src/evalfunc.c のテストを書 いて PR 投げました 結果。。 Codecov src/evalfunc.c:f_cindent()
  18. Lv. 4.5:テストを書く 未テストだった 35 行が新たにテストされるように 無事 merge されました!

  19. 思ったこと 名前が載ったら嬉しい いろいろやっているだけでも割と楽しい 翻訳やテストによる Vim 基礎力の向上 一朝一夕では難しいが、長く続けていると自分しか気付いていな いことや自分でもできることが見つかる

  20. 今後とか Bug fix を 2 件入れることができた 新機能の実装もやってみたい colorscheme プレビュー 「機能を入れたいだけの人」にならないように

    みなさんも興味があれば是非やってみてください
  21. :qa!