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
転ばぬ先の杖「vint」
Search
Kuniwak
PRO
November 08, 2014
Technology
5
5.8k
転ばぬ先の杖「vint」
Vim の新しい lint 「vint」を紹介します。
English ver:
https://speakerdeck.com/orgachem/vint-new-vim-script-lint
Kuniwak
PRO
November 08, 2014
Tweet
Share
More Decks by Kuniwak
See All by Kuniwak
テストケースの名前はどうつけるべきか?
orgachem
PRO
1
490
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
21
4.3k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
150
HOME VR
orgachem
PRO
1
800
uGUI の自動操作の考え方と操作方法
orgachem
PRO
1
1.5k
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1.4k
SoftWare Engineer in Test のおしごと / What is SWET
orgachem
PRO
1
1.1k
私と Nature Remo E / Nature Remo E
orgachem
PRO
0
27k
存在しないアセットへの参照と 未公開アセットでのネタバレに どう立ち向かうか / How to prevent missing assets and spoilers by assets
orgachem
PRO
1
1.2k
Other Decks in Technology
See All in Technology
工具人的一生: 開發很多 AI 工具讓我 慵懶過一生
line_developers_tw
PRO
0
110
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
770
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.4k
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
280
新規プロダクト開発、AIでどう変わった? #デザインエンジニアMeetup
bengo4com
0
440
自分を理解するAI時代の準備 〜マイプロフィールMCPの実装〜
edo_m18
0
100
Grafana MCP serverでなんかし隊 / Try Grafana MCP server
kohbis
0
330
データ戦略部門 紹介資料
sansan33
PRO
1
3.2k
活きてなかったデータを活かしてみた話 / Shirokane Kougyou vol 19
sansan_randd
1
230
Kotlinで学ぶ 代数的データ型
ysknsid25
5
1.1k
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
13
1.6k
AIエージェントのフレームワークを見るときの個人的注目ポイント
os1ma
1
520
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
Unsuck your backbone
ammeep
671
58k
How STYLIGHT went responsive
nonsquared
100
5.6k
Raft: Consensus for Rubyists
vanstee
139
7k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
GitHub's CSS Performance
jonrohan
1031
460k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Statistics for Hackers
jakevdp
799
220k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Site-Speed That Sticks
csswizardry
10
630
Transcript
About me
Kuniwak
Today, I talk about…
'PSFXBSOFEJT GPSFBSNFE ʲస͵ઌͷ伺ʳ
Lint tool for Vim script
Story
7JNQMVHJOͭͬͯ͘Δͱ Ṗ·Γଟൃʜ
None
None
ผʹ7JNTDSJQUͦΜͳʹ ͖͡Όͳ͍Μ͚ͩͲʜ
ʗ XFMDPNF ʘ ʘXFMDPNFʗ ʘXFMDPNFʗ
࣮ߦ͢Δ·Ͱͳ͘ ·ΓͲ͜ΖΛճආ͍ͨ͠
'PSFXBSOFEJT GPSFBSNFE ʲస͵ઌͷ伺ʳ
Forewarned is forearmed
None
$ vint .vimrc .vimrc:6:10: Variable is not declared (see :help
E738)
Why vint?
Lint possible story ʲlint ͋Δ͋Δʳ
Stop the World Lint ʲβɾϫʔϧυ lintʳ
Nagging Mom Lint ʲ͓͔Μ lintʳ
Meaning less Lint ʲແ lintʳ
Fastness Customizable Usefulness Kuniwak/ vint A A A syngan/ vim-vimlint
C B A ujihisa/ vimlint B B B dahu/ VimLint B C B dbakker/ vim-lint A C B
How to install
$ pip install vim-vint
None
$ vint .vimrc .vimrc:6:10: Variable is not declared (see :help
E738)
Dive into the Vint
Maintainability
MJOUʹͭͷ࣮ྨܕ͕͋Δɿ w ݕࠪखଓ͖ɾϧʔϧҰମܕ w ݕࠪखଓ͖ɾϧʔϧܕ
この22つの類型を ある指標で 比較してみよう…
「11つのルールを 追加するのに 何行読まないと いけないか」
ݕࠪखଓ͖ɾϧʔϧҰମܕ w KTMJOUϑΝΠϧYMJOFT w KTIJOUϑΝΠϧYMJOFT w WJNWJNMJOUϑΝΠϧYMJOFT w QZqBLFTϑΝΠϧYMJOFT
ݕࠪखଓ͖ɾϧʔϧܕ wߦΠϕϯτυϦϒϯ w QFQؔYMJOFT w WJNMJOUϑΝΠϧYMJOFT w"45ΠϕϯτυϦϒϯʢߴͳνΣοΫ͕Մೳʣ w 1FSM$SJUJDϑΝΠϧYMJOFTʢQFSMͳͷͰهड़ྔ૿͑ͨʣ w
SVCPDPQϑΝΠϧYMJOFT w FTMJOUϑΝΠϧYMJOFT w WJOUϑΝΠϧYMJOFT
ͭ·Γ w ݕࠪखଓ͖ɾϧʔϧશҰମܕ ղಡෆೳ w ݕࠪखଓ͖ɾϧʔϧܕͷ͏ͪɺ "45ΠϕϯτυϦϒϯείʔϓղੳͷ ߴͳνΣοΫ͕Մೳ
How to add new rule
Please ask me
Help us!
Forewarned is forearmed https://github.com/Kuniwak/vint