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
780
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vim にコントリビュートしたい (ダウンロードでリンク有効) / How to contribute to the Vim
m-nishi
June 13, 2019
Other Decks in Technology
See All in Technology
しくみを学んで使いこなそう GitHub Copilot app
torumakabe
2
290
タスクの複雑さでモデルを選ぶ ── Thompson Samplingで動かす“トークン/コスト最適化
satohy0323
0
570
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
3.6k
“それは自分の仕事じゃない"を越えて行け
yuukiyo
1
480
AI時代のYAGNI:「爆速で無駄になった機能」からの学び / 20260720 Naoki Takahashi
shift_evolve
PRO
3
320
「早く出す」より「事業に効く」 ── 顧客の業務サイクルから逆算するAI時代の二重ループ開発と「変化の設計者」 / devsumi2026
rakus_dev
1
400
発表と総括 / Presentations and Summary
ks91
PRO
0
140
kaonavi Tech Night#1
kaonavi
0
110
Compose 新機能総まとめ / What's New in Jetpack Compose
yanzm
0
320
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
2
250
LLMやAIエージェントをソフトウェアに組み込むプラクティス
shibuiwilliam
2
420
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
450
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
810
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
490
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
590
Designing for Timeless Needs
cassininazir
1
370
sira's awesome portfolio website redesign presentation
elsirapls
0
300
Deep Space Network (abreviated)
tonyrice
0
230
Un-Boring Meetings
codingconduct
0
350
The Spectacular Lies of Maps
axbom
PRO
1
860
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!