Giter VIP home page Giter VIP logo

intellij-sdk-code-samples-fork's Introduction

IntelliJ Platform SDK Code Samples

official JetBrains project JetBrains IntelliJ Platform SDK Docs Twitter Follow Build Slack

Learn how to build plugins using IntelliJ Platform SDK for the JetBrains products by experimenting with our code samples. These samples show you how features work and help you jumpstart your plugins.

Note To start a new plugin project, consider using IntelliJ Platform Plugin Template which offers a pure boilerplate template to make it easier to create a new plugin project.

The code samples can also be found in the IntelliJ SDK Code Samples mirror repository.

To learn more, browse available Extension Points, explore Extension Point usages in open-source plugins using IntelliJ Platform Explorer and learn how to Explore the IntelliJ Platform API.

Target Platform

All Code Samples target the latest GA platform release. Previous releases are made available via tags.

Structure

Code Samples depend on the IntelliJ Platform SDK and Gradle as a build system.

The main plugin definition file is stored in the plugin.xml file, which is created according to the Plugin Configuration File documentation. It describes definitions of the actions, extensions, or listeners provided by the plugin.

Code Samples

Please see Code Samples topic on how to import and run code samples.

In the following table, you may find all available samples provided in the separated directories as stand-alone projects available for running with the Gradle runIde task.

Code Sample Description
Action Basics Action and Action Group patterns implementation, adds entries to the Tools menu.
Comparing References Inspection Local Inspection Tool, adds entries to Settings/Preferences | Editor | Inspections | Java | Probable Bugs.
Conditional Operator Intention Intention action, suggests converting a ternary operator into an if block and adds entry to Settings/Preferences | Editor | Intentions | SDK Intentions.
Editor Basics Basic Editor APIs example with editor popup menu with extra actions.
Facet Basics Custom Facet pattern, adds SDK Facet to the Project Structure | Project Settings | Facets menu.
Framework Basics Basic SDK Demo Framework support added to the File | New | Project | Java wizard.
Inspection Basics Code Inspection entry added to the Settings/Preferences | Editor | Inspections | SDK | Example Tools.
Kotlin Demo Kotlin example extending the Main Menu with a Greeting menu group.
Live Templates Live templates for Markdown language, adds an entry to the Settings/Preferences | Editor | Live Templates dialog.
Max Opened Projects Application services and listeners, shows warning dialog when more than 3 open projects are opened.
Module SDK Demo Module module type added to the File | New | Project... wizard.
Product Specific - PyCharm Sample Plugin project configuration for the PyCharm IDE.
Project Model Interacts with the project model, adds menu items to Tools and Editor Context menus.
Project View Pane Project View Pane listing only image files.
Project Wizard Project Wizard example with demo steps.
PSI Demo PSI Navigation features presentation.
Run Configuration Run configuration implementation with factory, options and UI.
Settings Custom settings panel, adds a settings panel to the Settings/Preferences panel under Tools.
Simple Language Plugin Custom language support, defines a new Simple language with syntax highlighting, annotations, code completion, and other features.
Theme Basics Sample UI Theme plugin with basic interface modifications.
Tool Window Custom Tool Window example plugin.
Tree Structure Provider Tree Structure Provider showing only plain text files.

intellij-sdk-code-samples-fork's People

Contributors

yanncebron avatar boogiecat avatar hsz avatar dependabot[bot] avatar yole avatar johnhake avatar karollewandowski avatar cheptsov avatar breandan avatar halirutan avatar github-actions[bot] avatar zolotov avatar boukeversteegh avatar olada avatar alexengrig avatar elliterate avatar brownian-motion avatar i582 avatar citizenmatt avatar tasomaniac avatar sjrx avatar dmitvitalii avatar vsch avatar aristotll avatar mongolyy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.