IntelliJ IDEA Community Edition & IntelliJ Platform

Overview

IntelliJ IDEA Community Edition official JetBrains project

These instructions will help you build IntelliJ IDEA Community Edition from source code, which is the basis for IntelliJ Platform development. The following conventions will be used to refer to directories on your machine:

  • <USER_HOME> is your home directory.
  • <IDEA_HOME> is the root directory for the IntelliJ source code.

Getting IntelliJ IDEA Community Edition Source Code

IntelliJ IDEA Community Edition source code is available from github.com/JetBrains/intellij-community by either cloning or downloading a zip file (based on a branch) into <IDEA_HOME>. The default is the master branch.

The master branch contains the source code which will be used to create the next major version of IntelliJ IDEA. The branch names and build numbers for older releases of IntelliJ IDEA can be found on the page of Build Number Ranges.

Speed Tip: If the complete repository history isn't needed then using a shallow clone (git clone --depth 1) will save significant time.

These Git operations can also be done through the IntelliJ IDEA user interface.

IntelliJ IDEA Community Edition requires additional Android modules from separate Git repositories. To clone these repositories, run one of the getPlugins scripts located in the <IDEA_HOME> directory. These scripts clone their respective master branches.

  • getPlugins.sh for Linux or macOS.
  • getPlugins.bat for Windows.

Note: Always git checkout the intellij-community and android Git repositories to the same branches/tags.

Building IntelliJ Community Edition

Version 2020.1 or newer of IntelliJ IDEA Community Edition or IntelliJ IDEA Ultimate Edition is required to build and develop for the IntelliJ Platform.

Opening the IntelliJ Source Code for Build

Using IntelliJ IDEA File | Open, select the <IDEA_HOME> directory.

IntelliJ Build Configuration

  1. Configure a JDK named "corretto-11", pointing to installation of JDK 11. It's recommended to use Amazon Corretto JDK, but other distributions based on OpenJDK should work as well. You may download it directly from Project Structure dialog.

  2. If the Maven Integration plugin is disabled, add the path variable "MAVEN_REPOSITORY" pointing to <USER_HOME>/.m2/repository directory.

  3. Speed Tip: If you have enough RAM on your computer, configure the compiler settings to enable the "Compile independent modules in parallel" option. Also, increase build process heap size:

    • if you use IntelliJ IDEA 2020.3 or newer, set "User-local build process heap size" to 2048.
    • if you use IntelliJ IDEA 2020.2 or older, copy value from "Shared build process VM options" to "User-local build process VM options" and add -Xmx2G to it.

    These changes will greatly reduce compilation time.

Building the IntelliJ Application Source Code

To build IntelliJ IDEA Community Edition from source, choose Build | Build Project from the main menu.

To build installation packages, run the ant command in <IDEA_HOME> directory. See the build.xml file for details.

Running IntelliJ IDEA

To run the IntelliJ IDEA built from source, choose Run | Run from the main menu. This will use the preconfigured run configuration "IDEA".

To run tests on the build, apply these setting to the Run | Edit Configurations... | Templates | JUnit configuration tab:

  • Working dir: <IDEA_HOME>/bin
  • VM options:
    • -ea
    • -Didea.config.path=../test-config
    • -Didea.system.path=../test-system

You can find other helpful information at https://www.jetbrains.com/opensource/idea. The "Contribute Code" section of that site describes how you can contribute to IntelliJ IDEA.

Comments
  • Bump minimist from 1.2.5 to 1.2.6 in /plugins/textmate/lib/bundles/ipynb

    Bump minimist from 1.2.5 to 1.2.6 in /plugins/textmate/lib/bundles/ipynb

    Bumps minimist from 1.2.5 to 1.2.6.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    Abandoned dependencies javascript 
    opened by dependabot[bot] 51
  • Bump junit from 4.12 to 4.13.1 in /plugins/lombok/test-manual

    Bump junit from 4.12 to 4.13.1 in /plugins/lombok/test-manual

    Bumps junit from 4.12 to 4.13.1.

    Release notes

    Sourced from junit's releases.

    JUnit 4.13.1

    Please refer to the release notes for details.

    JUnit 4.13

    Please refer to the release notes for details.

    JUnit 4.13 RC 2

    Please refer to the release notes for details.

    JUnit 4.13 RC 1

    Please refer to the release notes for details.

    JUnit 4.13 Beta 3

    Please refer to the release notes for details.

    JUnit 4.13 Beta 2

    Please refer to the release notes for details.

    JUnit 4.13 Beta 1

    Please refer to the release notes for details.

    Commits
    • 1b683f4 [maven-release-plugin] prepare release r4.13.1
    • ce6ce3a Draft 4.13.1 release notes
    • c29dd82 Change version to 4.13.1-SNAPSHOT
    • 1d17486 Add a link to assertThrows in exception testing
    • 543905d Use separate line for annotation in Javadoc
    • 510e906 Add sub headlines to class Javadoc
    • 610155b Merge pull request from GHSA-269g-pwp5-87pp
    • b6cfd1e Explicitly wrap float parameter for consistency (#1671)
    • a5d205c Fix GitHub link in FAQ (#1672)
    • 3a5c6b4 Deprecated since jdk9 replacing constructor instance of Double and Float (#1660)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    Declined dependencies java 
    opened by dependabot[bot] 36
  • Canonicalize paths before sending to file watchers

    Canonicalize paths before sending to file watchers

    Canonicalize paths before sending them to the pluggable FileWatchers and restore paths to their original potentially non-canonical form when they are returned from the file watchers.

    This fixes an issue where the fs notifier binary behaved incorrectly when it was presented with symlinks. The fs notifier has some logic to avoid watching certain mount points, but if a user symlinks into a mount, the fs notifier's logic will be bypassed and the mount points will be watched.

    This change is done in the FileWatcher rather than the native fs notifier because:

    • The filewatcher supports pluggable filewatchers now, so it makes sense to give all of the pluggable file watchers canonical paths rather than making them all canonicalize the paths.
    • The implementation in C for the native fs notifier would be similar to what is needed in Java for the FileWatcher and the java implementation is likely cleaner.

    Change-Id: I61fd3ac4e3bfbb8b06c2d92190e6db36e7ff00c1

    opened by salguarnieri 35
  • Fix test filtering for test parameterized using `TestParameterInjector`.

    Fix test filtering for test parameterized using `TestParameterInjector`.

    Intellij junit plugin allows filtering tests by the method name. In case of parameterized tests, the name includes parameters as well (e.g. test[parameter]). By default, attempt to run a test with a parameter in the name would fail since a method like that cannot be found. We already special case junit.Parameterized to work around the problem.

    Extend logic handling parameterized runners to support TestParameterInjector. Do not fail on tests with arguments (allowed by TestParameterInjector).

    Please note that similar problem exists for other parameterization libraries. There are workarounds in some libraries (e.g. Burst), however one cannot properly filter on parameter values without change on the IDE side.

    For reference: TestParameterInjector issue.

    opened by alexjski 25
  • Use commit template if available

    Use commit template if available

    Added a configuration option to use a VCS commit template if its available. This fixes https://youtrack.jetbrains.com/issue/IDEA-66355 for Git

    Testing: Local Git repo shows the commit template

    Fixed 
    opened by rohitkumbhar 25
  • Bump py from 1.5.4 to 1.10.0 in /python/testData/inspections/PyPackageRequirementsInspection/PipEnvEnvironmentMarkers

    Bump py from 1.5.4 to 1.10.0 in /python/testData/inspections/PyPackageRequirementsInspection/PipEnvEnvironmentMarkers

    Bumps py from 1.5.4 to 1.10.0.

    Changelog

    Sourced from py's changelog.

    1.10.0 (2020-12-12)

    • Fix a regular expression DoS vulnerability in the py.path.svnwc SVN blame functionality (CVE-2020-29651)
    • Update vendored apipkg: 1.4 => 1.5
    • Update vendored iniconfig: 1.0.0 => 1.1.1

    1.9.0 (2020-06-24)

    • Add type annotation stubs for the following modules:

      • py.error
      • py.iniconfig
      • py.path (not including SVN paths)
      • py.io
      • py.xml

      There are no plans to type other modules at this time.

      The type annotations are provided in external .pyi files, not inline in the code, and may therefore contain small errors or omissions. If you use py in conjunction with a type checker, and encounter any type errors you believe should be accepted, please report it in an issue.

    1.8.2 (2020-06-15)

    • On Windows, py.path.locals which differ only in case now have the same Python hash value. Previously, such paths were considered equal but had different hashes, which is not allowed and breaks the assumptions made by dicts, sets and other users of hashes.

    1.8.1 (2019-12-27)

    • Handle FileNotFoundError when trying to import pathlib in path.common on Python 3.4 (#207).

    • py.path.local.samefile now works correctly in Python 3 on Windows when dealing with symlinks.

    1.8.0 (2019-02-21)

    • add "importlib" pyimport mode for python3.5+, allowing unimportable test suites to contain identically named modules.

    • fix LocalPath.as_cwd() not calling os.chdir() with None, when being invoked from a non-existing directory.

    ... (truncated)

    Commits
    • e5ff378 Update CHANGELOG for 1.10.0
    • 94cf44f Update vendored libs
    • 5e8ded5 testing: comment out an assert which fails on Python 3.9 for now
    • afdffcc Rename HOWTORELEASE.rst to RELEASING.rst
    • 2de53a6 Merge pull request #266 from nicoddemus/gh-actions
    • fa1b32e Merge pull request #264 from hugovk/patch-2
    • 887d6b8 Skip test_samefile_symlink on pypy3 on Windows
    • e94e670 Fix test_comments() in test_source
    • fef9a32 Adapt test
    • 4a694b0 Add GitHub Actions badge to README
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies python 
    opened by dependabot[bot] 21
  • Change installer to not show an error when no config file is provided and default to admin mode

    Change installer to not show an error when no config file is provided and default to admin mode

    Resolves the issue with the installer always requiring a config file when installing in silent mode (https://github.com/microsoft/winget-pkgs/pull/179#issuecomment-630247055)

    Merged 
    opened by mimi89999 21
  • Protect shared sourceSet cache from concurrent access

    Protect shared sourceSet cache from concurrent access

    The sourceSet cache initializer can be called from several threads, but Gradle's project model is not thread safe, so we need to make sure only one thread at a time can initialize this.

    This makes parallel model fetch work in the project I'm currently working on.

    FYI @vladsoroka @nskvortsov

    opened by oehme 19
  • IDEA-290742 Gather the Java downgrading inspections

    IDEA-290742 Gather the Java downgrading inspections

    Hi @BasLeijdekkers,

    This PR moves all the Java downgrading inspections into a unique path. Those inspections are used very differently from the others so it would be better to identify them easily. This way, they will be gathered like this (changes into bold):

    • Java
      • Java language level downgrading issues
        • Annotation
        • Annotation class
        • 'assert' statement
        • Auto-boxing
        • Auto-unboxing
        • Diamond can be replaced with explicit type arguments
        • Enhanced 'for' statement
        • Enhanced 'switch'
        • Enumerated class
        • Multi-catch can be split into separate catch blocks
        • Lambda can be replaced with anonymous class
        • Stream API call chain can be replaced with loop
        • 'Optional' can be replaced with sequence of 'if' statements
        • Text block can be replaced with regular string literal
        • Underscores in numeric literal
        • Varargs method
        • Variable type can be explicit

    I have successfully tested it by injecting the code into my IntelliJ 2021.2.1 installation.

    opened by Fabrice-TIERCELIN 17
  • PY-10985/IDEA-104596: Prefix based console history

    PY-10985/IDEA-104596: Prefix based console history

    Some notes:

    • Not sure why old controller is synchronized everywhere as most methods cannot possibly be invoked off the EDT. I made the 'MasterController' class thread safe in case loadHistory is invoked off the EDT. This never happens inside the idea-community codebase but maybe some other IntelliJ based IDEs do it.
    • Not quite sure what the multiline flag is supposed to do. It's not ever set inside this codebase but maybe other IDEs use it. For this reason tried to modify as little of existing code as possible and preserve existing behavior.
    • Added PCollections dependency to be able to efficiently snapshot state. It's a 24KB jar, so hopefully not a big deal
    • The behavior is based on QtConsole, so where it behaves the same it's probably intentional, where not is probably a bug.
    • It may make sense to move some classes from lang-impl to lang-api.
    opened by fitermay 17
  • [IDEA-138776] Maven polyglot support

    [IDEA-138776] Maven polyglot support

    Massive changes to support Maven Polyglot. I was flying blind with this. I hope I've done OK. Currently, only Groovy is supported but it will be easy to add others. Changes:

    • maven32-server-impl is removed
    • maven33-server-impl added
    • Polyglot type added to Maven settings panel
    • Everywhere "pom.xml" is referenced, polyglot methods are used instead
    • maven-polyglot-converter module added which converts on disk format to standard XML for internal use
    opened by Randgalt 17
  • Make SourceSearcher an extension point

    Make SourceSearcher an extension point

    This allows third parties to contribute ways to retrieve sources for possibly non-standard JAR files. Building block for https://github.com/JetBrains/intellij-community/pull/2127

    A question: can we delegate to SourceSearchers the extraction of groupId, artifactId, and version? This is currently done in InternetAttachSourceProvider, but the logic used is not always correct.

    Usage example might be P2SourceSearcher, which finds source JARs in p2 repositories.

    opened by lppedd 0
  • Introduce new heuristic to detect function literal that matches current location

    Introduce new heuristic to detect function literal that matches current location

    Issues that are covered by this pr:

    • https://youtrack.jetbrains.com/issue/KTIJ-23964/Debugger-smart-stepping-inside-inline-lambdas-declared-in-a-local-function-doesnt-work-for-IR-backend
    • https://youtrack.jetbrains.com/issue/KTIJ-23965/Debugger-smart-stepping-into-inline-lambdas-doesnt-work-when-lambdas-are-declared-in-functions-with-the-same-name
    • https://youtrack.jetbrains.com/issue/KTIJ-24090/Debugger-inline-lambda-breakpoints-sometimes-doesnt-work
    • https://youtrack.jetbrains.com/issue/KTIJ-24091/Debugger-smart-stepping-steps-into-a-wrong-inline-lambda-on-the-same-line

    Previously KotlinPositionManager relied on ClassNameCalculator to detect which function literal on a particular line matches the current jdi location. This lead to issues when ClassNameCalculator failed to compute class names correctly. For example, ClassNameCalculator computes class names of local functions according to the old backend naming scheme, which doesn't work for the IR backend. However, fixing ClassNameCalculator will not solve the issue, since there is no way to understand at runtime which backend was used for the compilation. Also, if the compiler naming scheme changes in the future, ClassNameCalculator will have to be updated again and again. This pr introduces a new heuristic to detect which inlined function literal corresponds to the given jdi location. The algorithm is based on inline marker variables borders, and while it doesn't solve the ClassNameCalculator issue completely, it still improves smart stepping and lambda breakpoints in a couple of cases.

    Roughly speaking, the algorithm is based on the following logic:

    Consider the example:

    1.let { it }.let { it + 1 }.let { it + 2 } // Line X
    

    Given a jdi location, we need to understand which inline lambda is the best fit for it. After checking variables that are visible on the location, we will see these marker variables start on line X:

    $i$a-let-...$...$1  // 1 -- { it }
    $i$a-let-...$...$2  // 2 -- { it + 1 }
    $i$a-let-...$...$3  // 3 -- { it + 2 }
    

    Each of these variables has visibility borders, and, for example, if the borders of variable 2 contain the given location, it means that we are in the { it + 1 } lambda.

    This approach relies on inline variables borders instead of relying on ClassNameCalculator entirely. However, it still needs ClassNameCalculator to detect which inlined lambdas are 'visible' in the current context. For example:

    inline fun foo(f: () -> Unit) = f()
    fun bar(f: () -> Unit) = f()
    
    fun main() {
        foo { bar { foo { println() } } } // Line X
    }
    

    In this case we have two inline lambdas on line X, however only one marker variable will be visible in context of main() and bar.invoke() functions. To handle cases like this, the algorithm relies on ClassNameCalculator to detect if we are inside a non-inline lambda or not.

    @madsager

    kotlin 
    opened by nikita-nazarov 0
  • IDEA-308603 Order binary expressions

    IDEA-308603 Order binary expressions

    Hi @amaembo,

    This PR introduces the OrderedBinaryExpression class. I have already written this when I contributed to Eclipse IDE. It reads a PSI binary expression and then you can read it in the order you want, no matter what was the original order. It is very useful. Tell me if there is a better package than com.intellij.psi.util.

    This PR changes the Redundant String operation and String.equals() can be replaced by String.isEmpty() inspections. Tell me if you agree the new labels.

    What steps will reproduce the issue?

    1. Go to FileSettings...EditorInspections
    2. Enable Redundant String operation
    3. Enable Severity: Warning
    4. Add this method in a Java 11 class:
      boolean isBlank(String text) {
        return "".equals(text.strip());
      }
    

    What is the expected result? The inspection Redundant String operation is suggested. What happens instead? The inspection Redundant String operation is not suggested.

    RedundantStringOperationInspection should write:

    text.isBlank()
    

    ...for the following inputs:

    "".equals(text.strip())
    text.strip().equals("")
    text.strip().length() == 0
    0 == text.strip().length()
    text.strip().length() < 1
    

    It should also handle negative forms.

    I have added and successfully run unit tests.

    opened by Fabrice-TIERCELIN 0
  • code stlye: remove maximum right margin

    code stlye: remove maximum right margin

    This option is really annoying, I sometimes have lines that exceed that value (e.g. minified files). I never ever want them to be hard wrapped, this option allows this. If you do not need it, simply set the maximum hard wrap not that high, leave it at the default value (120)

    opened by Bixilon 0
  • Groovy: Fix parenthesizing of ranges in ForToEachIntention

    Groovy: Fix parenthesizing of ranges in ForToEachIntention

    Previously,

    for (i in (0..<10)) {
        println i
    }
    

    was transformed into

    0..<10.each { i ->
        println i
    }
    

    However, this calls the each method on 10 instead of the range. To fix the transformation, the range needs parentheses. It seems like returning the range precedence fixes the issue.

    I didn't find any existing test for the intention, so I created a new file, similar to the EachToForIntentionTest one.

    opened by SirYwell 0
Owner
JetBrains
JetBrains open source projects
JetBrains
Vim emulation plugin for IDEs based on the IntelliJ Platform

IdeaVim IdeaVim is a Vim emulation plugin for IntelliJ Platform-based IDEs. Contact maintainers: Bug tracker @IdeaVim on Twitter Chat on gitter Unoffi

JetBrains 7.1k Jan 5, 2023
IntelliJ Platform A full-featured WYSIWYG editor for markdown

markdown-editor IntelliJ Platform A full-featured WYSIWYG editor for markdown English Document 中文文档 Useful Links Custom Style Features Support three e

null 101 Dec 19, 2022
IntelliJ Platform plugin that shows the file name of the currently open file in the status bar.

IntelliJ Platform plugin that shows the file name of the currently open file in the status bar. Clicking shows a list of recent files.

Christoffer Hammarström 4 May 9, 2022
IDEA 久坐提醒插件

IDEA 久坐提醒插件 前言 对于程序员来说,经常会遇到项目周期短的状况。白天开会讨论需求,晚上加班写代码,熬夜发版本,上线改 Bug。工作日就是:开会、写代码、倒水、上厕所、抽烟、改 Bug,一天最开心的时刻就是带薪拉屎。 好不容易到了周末,有时还会通宵玩游戏,半个月也不运动一次。再好的身体,也会

null 439 Jan 1, 2023
Tiger language plugin for IntelliJ-based IDEs (including CLion)

Tiger IDEA Tiger language plugin for IntelliJ-based IDEs (including CLion). From the marketplace Search "Tiger" in the Preferences => Plugins section

Adrien Navratil 7 Dec 15, 2022
A mod for Fabric that ports Bedrock Edition mechanics to Java Edition. 1.16.x

bedrock-mechanics A mod for Fabric that ports Bedrock Edition mechanics to Java Edition. The controller support should be working on any controller by

Pedro Henrique 6 Oct 24, 2021
Plugin aimed at unifying inventory menus for Java Edition with Bedrock Edition forms, on servers running Geyser.

CrossplatForms A plugin aimed at providing fast, easy, and dynamic creation of Bedrock Edition forms through configurations. Also allows for creation

ProjectG 43 Jan 4, 2023
JITWatch plugin for IntelliJ IDEA

JITWatch Plugin for IntelliJ IDEA The plugin can be used to view and analyze HotSpot JIT compilation logs inside IntelliJ IDEA. It uses JITWatch to lo

Dmitry Jemerov 166 Dec 15, 2022
Markdown language support for IntelliJ IDEA (abandonned).

idea-markdown Markdown language support for IntelliJ IDEA, RubyMine, PhpStorm, WebStorm, PyCharm, AppCode and Android Studio. This plugin is no more m

null 602 Dec 30, 2022
IntelliJ IDEA and JUnit: Writing, Finding, and Running Tests

IntelliJ IDEA and JUnit: Writing, Finding, and Running Tests ?? Webinar https://blog.jetbrains.com/idea/2021/11/live-stream-recording-intellij-idea-an

Christian Stein 11 Jul 23, 2022
A plugin to help you easily edit Swagger and OpenAPI specification files inside IntelliJ IDEA

Swagger Plugin Swagger Plugin makes it easy to edit Swagger and OpenAPI specification files inside IntelliJ IDEA. You can find it on JetBrains' plugin

Zalando SE 1.1k Dec 15, 2022
Spotless-intellij-gradle - An IntelliJ plugin to allow running the Spotless gradle task from within the IDE.

Spotless Intellij Gradle An IntelliJ plugin to allow running the spotless gradle task from within the IDE on the current file selected in the editor.

Ryan Gurney 30 Dec 17, 2022
Hierarchical Temporal Memory implementation in Java - an official Community-Driven Java port of the Numenta Platform for Intelligent Computing (NuPIC).

htm.java Official Java™ version of... Hierarchical Temporal Memory (HTM) Community-supported & ported from the Numenta Platform for Intelligent Comput

Numenta 301 Dec 1, 2022
Vim emulation plugin for IDEs based on the IntelliJ Platform

IdeaVim IdeaVim is a Vim emulation plugin for IntelliJ Platform-based IDEs. Contact maintainers: Bug tracker @IdeaVim on Twitter Chat on gitter Unoffi

JetBrains 7.1k Jan 5, 2023
IntelliJ Platform A full-featured WYSIWYG editor for markdown

markdown-editor IntelliJ Platform A full-featured WYSIWYG editor for markdown English Document 中文文档 Useful Links Custom Style Features Support three e

null 101 Dec 19, 2022
IntelliJ Platform plugin that shows the file name of the currently open file in the status bar.

IntelliJ Platform plugin that shows the file name of the currently open file in the status bar. Clicking shows a list of recent files.

Christoffer Hammarström 4 May 9, 2022
IDEA 久坐提醒插件

IDEA 久坐提醒插件 前言 对于程序员来说,经常会遇到项目周期短的状况。白天开会讨论需求,晚上加班写代码,熬夜发版本,上线改 Bug。工作日就是:开会、写代码、倒水、上厕所、抽烟、改 Bug,一天最开心的时刻就是带薪拉屎。 好不容易到了周末,有时还会通宵玩游戏,半个月也不运动一次。再好的身体,也会

null 439 Jan 1, 2023
An area maximisation game based on the idea of merging convex shapes.

Convex Merger Convex Merger is an area maximisation game based on the idea of merging convex shapes. The goal of the game is to claim as large an area

Roan 10 Dec 15, 2022