Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Vim にコントリビュートしたい (ダウンロードでリンク有効) / How to contri...
Search
m-nishi
June 13, 2019
Technology
4
700
Vim にコントリビュートしたい (ダウンロードでリンク有効) / How to contribute to the Vim
m-nishi
June 13, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
Classmethod AI Talks(CATs) #16 司会進行スライド(2025.02.12) / classmethod-ai-talks-aka-cats_moderator-slides_vol16_2025-02-12
shinyaa31
0
110
Goで作って学ぶWebSocket
ryuichi1208
3
1.5k
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.8k
OpenID Connect for Identity Assurance の概要と翻訳版のご紹介 / 20250219-BizDay17-OIDC4IDA-Intro
oidfj
0
280
The Future of SEO: The Impact of AI on Search
badams
0
200
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
8
1.5k
君も受託系GISエンジニアにならないか
sudataka
2
440
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
370
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.7k
技術的負債解消の取り組みと専門チームのお話 #技術的負債_Findy
bengo4com
1
1.3k
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
410
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.3k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Being A Developer After 40
akosma
89
590k
Site-Speed That Sticks
csswizardry
4
380
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Music & Morning Musume
bryan
46
6.3k
How STYLIGHT went responsive
nonsquared
98
5.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
It's Worth the Effort
3n
184
28k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Transcript
Vim にコントリビュートしたい ゴリラ.vim #5 on 2019/6/13
自己紹介 西畑, m-nishi Vim 歴 1 年半 横浜で組み込み屋をやっています プラグインよりも Vim
本体のほうが好き Twitter mnishz0 GitHub mnishz
概要 ターゲット • Vim が好きで「何かコントリビュートしてみたい」と思っている人 内容 • どんな方法があるのか • 何ができるのかを自分なりに探ってきた道のり
• 取り立てて「〇〇を実装したい!」という明確なモチベーションはなかった • もし Vim のコミットログに名前が載ったら。。という不純な動機も
1 % "ドキュメント編" 2 "実装編"
Lv. 1: 日本語ヘルプの修正 vim-jp 運営のおなじみ日本語 ヘルプ 誤字脱字や誤りを発見してレ ポート オンライン版は常に最新なので、 こちらを参照してみてください
Lv. 1: 日本語ヘルプの修正 やり方(動画) オンライン ヘルプの編集 ボタンから
Lv. 1: 日本語ヘルプの修正 改行等の細かい作法はあるが、とりあえず気にしなくて OK • 「ですます」不統一 • インデントずれ •
等の細かい修正でも 番外編 vim-jp/vimdoc-ja をプラグインのように追加すればローカルで最新の ヘルプを参照することができる
Lv. 2: 本家ヘルプの日本語への翻訳 翻訳作業リポジトリで有志による翻訳作業をやっています https://github.com/vim-jp/vimdoc-ja-working 本家ヘルプが更新されたタイミングで、日本語への翻訳を実施 過去 1 年間では 16
コミット / 月
Lv. 2: 本家ヘルプの日本語への翻訳 やり方 Wiki に詳しい作業手順や手引き が書いてある ファイルの翻訳に着手するとき は #207
で宣言しておくと他の 人と作業が被らなくていいです
Lv. 3: 本家ヘルプの修正 vim/runtime/doc で管理されている本家ヘルプの誤字脱字、誤り の修正 本家に直接 PR を送っても問題はありませんが、vim-jp で内容
をまとめている (#1172) のでそこに送るのがいいと思います 項目の棚卸を行うと、ヘルプの更新に伴って発生した抜け漏れが 見つかることがある
1 "ドキュメント編" 2 % "実装編"
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 チャンネルで尋ねてみるのもいいと思います
Lv. 4: Issue の投稿 問題の切り分けや再現手順が適切にできていれば bug reporter として名前が載る コツ •
いろんな機能をいろんな条件で試してみる • 新機能にはバグが多い • とりあえず毎日 fetch して log を眺めて build してみる
Lv. 5: Bug Fix や機能の実装
Lv. 5: Bug Fix や機能の実装 急にハードル高い そもそもこれができる人は言われなくてもやっている そこで。。
Lv. 4.5:テストを書く Bug Fix や実装はつよい人たちが いるので、ニッチ市場を攻める src ディレクトリで `make test`
を実行 テストに関する解説記事も書いた りしてます
Lv. 4.5:テストを書く テストされていないコードを探 して、テスト用 Vim script を 書く • コマンド
• 組み込み関数 • オプション src/evalfunc.c のテストを書 いて PR 投げました 結果。。 Codecov src/evalfunc.c:f_cindent()
Lv. 4.5:テストを書く 未テストだった 35 行が新たにテストされるように 無事 merge されました!
思ったこと 名前が載ったら嬉しい いろいろやっているだけでも割と楽しい 翻訳やテストによる Vim 基礎力の向上 一朝一夕では難しいが、長く続けていると自分しか気付いていな いことや自分でもできることが見つかる
今後とか Bug fix を 2 件入れることができた 新機能の実装もやってみたい colorscheme プレビュー 「機能を入れたいだけの人」にならないように
みなさんも興味があれば是非やってみてください
:qa!