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
Making a Vim Plugin is not afraid
Search
po3rin
December 17, 2019
Programming
2
460
Making a Vim Plugin is not afraid
po3rin
December 17, 2019
Tweet
Share
More Decks by po3rin
See All by po3rin
M3におけるCI/CDパイプラインを新鮮に保つ仕組み
po3rin
0
360
Go Templateを使った フロントエンド開発を採用した 経緯と所感
po3rin
1
340
検索基盤移行時の思考
po3rin
0
4.3k
Go1.19で採用された Pattern-defeating Quicksort の紹介
po3rin
7
6.1k
Elasticsearchを負荷から守るesguard
po3rin
0
300
Sudachi×Elasticsearchへの移行と医療検索システム精度改善
po3rin
1
920
eskeeperを使ったファイル定義によるindex管理
po3rin
2
510
M3 情報検索/推薦論文輪読会 ~SIGIR祭~ (SIGIR2021: Session 6D – IR Models)
po3rin
0
130
Handling Temporal Query for Health Search with ja-timex
po3rin
3
350
Other Decks in Programming
See All in Programming
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.4k
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
140
ニーリーにおけるプロダクトエンジニア
nealle
0
640
Goで作る、開発・CI環境
sin392
0
170
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
810
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
260
A2A プロトコルを試してみる
azukiazusa1
2
1.2k
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
410
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
210
ふつうの技術スタックでアート作品を作ってみる
akira888
0
200
GoのGenericsによるslice操作との付き合い方
syumai
3
690
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
0
130
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
694
190k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Music & Morning Musume
bryan
46
6.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Designing for Performance
lara
609
69k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Building Adaptive Systems
keathley
43
2.6k
Navigating Team Friction
lara
187
15k
Transcript
Making a Vim Plugin is not afraid Gorilla Vim #11
Dec 17, 2019 @ po3rin
pon ( @po3rin ) Software Engineer ( Go / Python
/ Rust ) in Tokyo. Interested in NLP & Image Processing . Graduated Nagoya Univ (Physics).
Introduction \
Έͳ͞ΜΞυϕϯτΧϨϯμʔࢀՃ͠·͔͢ʁ
3&"%.&NEॻ͖·͔͢ʁ
ͨͪͷੜ׆͔ΒͬͯΓͤͳ͍.BSLEPXOɻɻ
(PʹHPGNUͱ͍͏ίʔυΛϑΥʔϚοτͯ͘͠ΕΔศ རͳػೳ͕ඪ४ͰඋΘ͍ͬͯ·͢ɻ
͔͠͠.BSLEPXOզΒ͕૬ͷHPGNU͕ޮ͔ͳ͍ʂʂ Թ͔Έͷ͋ΔखಈHPGNU
ͦ͜Ͱ.BSLEPXOͷ(PͷίʔυΛݕͯ͠ HPGNUΛ͔͚ΔπʔϧHPGNUNEΛ࡞ͬͨ
͜ΕͰϒϩάલͷԼॻ͖ɺ3&"%.&NEͷखಈHPGNU ΛຣফͰ͖Δʂʂ
HPGNUNE$-*πʔϧ͚ͩͲɺ7JN1MVHJO൛ ࡞ͬͯอଘ࣌ʹ࣮ߦͰ͖ΔΑ͏ʹ͍ͨ͠ʂͱࢥ ͍ɺ7JNTDSJQUࣝθϩ͔ΒͰ7JN1MVHJO Λ࡞ͬͨɻ
Gofmt \
.BSLEPXOΛύʔε .BSLEPXOͷϊʔυΛτϥόʔε (PͷίʔυΛݕ HPGNUΛ͔͚ΔؔΛDBMM .BSLEPXOͷίʔυΛॻ͖͑ \
͠(PʹΑΔ࣮ΛΓ ͍ͨํͪ͜ΒͷهࣄΛ ಡΜͰ͍ͩ͘͞ IUUQTRJJUBDPNQPSJOJUFNTCBGEBB
7JN1MVHJO͔ΒHPGNUNEίϚϯυΛ࣮ߦ͍ͯ͠Δ
Gofmt \
ͱΓ͋͑ͣ7JN1MVHJO ͷϋϩʔϫʔϧυΛ͢Δ ͜ͱ͕ॏཁʂ࠷ॳʹΔ ͖7JN1MVHJOͷ࡞๏͔ ΒσΟϨΫτϦߏ·Ͱ આ໌͕͋Δ https://qiita.com/bonjin6770@github/items/31e60707ecf2ad6c4496
࣮)FMMP8PSMEͨ͠ޙԿ࡞Δͷ
Ὂطଘ$-*Λ7JN1MVHJOԽ͕ॳ৺ऀʹΦεεϝ ɾ͍͠ࣄͤͣʹ7JN͔Β$-*ΛDBMM͢Δ͚ͩ ɾͦͷׂʹࠓޙͷ7JN1MVHJO։ൃͰجૅʹͳΔ͜ͱֶ͕Δ
Addbance \
Ὂ͍͔ͭ͘τϐοΫΛհ͠·͢ ɾ7JN4DSJQUҙ֎ʹͳΜͰͰ͖Δ ɾΦϓγϣϯͷΓग़͠ ɾ/FP7JNରԠ ɾ$*ςετ
͕ࣗࢥ͍ͬͯͨҎ্ʹ7JN4DSJQU͕ଟ࠼ͳؔΛఏڙ͍ͯͨ͠ɻ ྫ͑.BSLEPXO͔Ͳ͏͔ɺࠓ͔Β࣮ߦ͢ΔίϚϯυ͕࣮ߦͰ͖Δ͔Ͳ͏͔ ΛνΣοΫ͍ͯ͠Δɻ
"TTFSUJPOܥͷؔ·Ͱ৭ʑ͋ΔɻͷͰςεταΫοͱ͔͚Δɻ ԼهϑΝΠϧͷத͕Ұக͢Δ͔ͷςετ
อଘ࣌ͷࣗಈ࣮ߦڧྗͳͷͰΦϓγϣϯͱͯ͠Γग़͢ɻ ͪ͜Βͷํ͕7JN1MVHJOͬΆ͘ͳΔ
7JNͰ͑ΔؔͰ /FP7JNʹͳ͔ͬͨΓ͢ ΔɻͦͷͨΊӈͷΑ͏ʹର Ԡͨ͠ɻ/FP7JNޓͷ͋Δ ؔϥΠϒϥϦ͋ΔΈͨ ͍͚ͩͲɺΧॴ͚ͩͩͬ ͨͷͰͪ͜ΒͰରԠͨ͠ɻ
7JN/FP7JNςετΛΒ ͍ͤͨͷͰɺ͜Μͳײ͡ͰKPC Λ̎ͭఆٛ͢Δͱྑ͍ ϩʔΧϧͷςετDJSDMFDJί ϚϯυͰճ͠Δ ɻ
Conclusion \
7JN4DSJQUͷࣝθϩͷॳ৺ऀͰ7*N1MVHJO͕࡞ΕͨɻͳΜͳΒ 7JN4DSJQU7JN1MVHJOΛ࡞Γͳ͕ΒֶͿͰྑ͍͔ 7JN1MVHJOΛ࡞ͬͨΒΑ͘Θ͔ΒͣίϐϖͰ࡞͍ͬͯͨWJNSDͷҙຯ ͕ཧղͰ͖ΔΑ͏ʹͳͬͨʂ Ͱ͢ΒͰग़དྷͨͷͰ(PSJMMB7JNʹདྷ͍ͯΔਓ͙͢Ͱ͖Δ
Making a Vim Plugin is not afraid Gorilla Vim #11
Dec 17, 2019 @ po3rin