This is the table of contents for a set of pages that describe how to implement a plugin. You should probably read the Introduction, Package Structure and Getting Started pages first, but the remaining pages can be read when you decide to implement the described functionality.
The following is a list of the pages available in this tutorial.
Introduction - What is a plugin and what can it do?
Package Structure - How the code for a plugin is structured into packages.
Getting Started - How to write a minimal plugin.
Creating Edits - How to compose the edits used in assists, fixes, and refactorings.
Providing Quick Assists - How to provide quick assists.
Providing Quick Fixes - How to provide quick fixes associated with errors.
Providing Code Completions - How to provide code completion suggestions.
Providing Navigation Information - How to provide navigation support.
Providing Occurrences Information - How to provide information for marking occurrences.
Providing Outline Information - How to provide the information to build outline structures.
Providing Folding Information - How to provide support for code folding.
Debugging Plugins - How to debug a plugin.