Writing

IntelliJ plugins 

for fun and profit



@dmitrykandalov



Demo





How it actually works?



Groovy

Script

Engine



AnAction


Threading 

Rules

EDT


Read: whatever

Write: runWriteAction{...}

Other threads


Read: runReadAction{...}

Write: N/A

(i.e. invokeOnEDT{...})


Other 

Editor 

features



PSI



What is next?



Thanks!

Writing IntelliJ plugins for fun and profit

By Dmitry Kandalov