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.9k
転ばぬ先の杖「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
DeNA での思い出 / Memories at DeNA
orgachem
PRO
6
2.9k
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
18
4.4k
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
4
570
テストケースの名前はどうつけるべきか?
orgachem
PRO
2
670
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
21
4.7k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
200
HOME VR
orgachem
PRO
1
830
uGUI の自動操作の考え方と操作方法
orgachem
PRO
1
1.5k
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1.5k
Other Decks in Technology
See All in Technology
ハッカソンから社内プロダクトへ AIエージェント ko☆shi 開発で学んだ4つの重要要素
leveragestech
0
260
Claude Skillsの テスト業務での活用事例
moritamasami
1
110
日本の AI 開発と世界の潮流 / GenAI Development in Japan
hariby
1
500
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
1
1.9k
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
770
AI駆動開発の実践とその未来
eltociear
2
500
MariaDB Connector/C のcaching_sha2_passwordプラグインの仕様について
boro1234
0
1.1k
Cloud WAN MCP Serverから考える新しいネットワーク運用 / 20251228 Masaki Okuda
shift_evolve
PRO
0
110
Microsoft Agent Frameworkの可観測性
tomokusaba
1
120
意外と知らない状態遷移テストの世界
nihonbuson
PRO
1
280
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
510
Knowledge Work の AI Backend
kworkdev
PRO
0
280
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
13
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
130
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Marketing to machines
jonoalderson
1
4.4k
Designing for Performance
lara
610
69k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
200
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
400
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
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