Basic support IntelliJ IDEA as a Che editor
See original GitHub issueIs your enhancement related to a problem? Please describe.
Che-theia is the default editor. We support alternative editors such as dirigible, desktop eclipse and code-server. But not IntelliJ.
Describe the solution you’d like
Add support for IntelliJ as an editor. IntelliJ would run in the browser. IntelliJ community edition should be used. These are the subtasks:
- publish the sidecar image of the intellij community + vnc
- publish a Red Hat based sidecar(fedora) image of the intellij community + vnc
- UBI-based Dockerfile for IntelliJ IDEA Che editor
- initial investigation https://github.com/eclipse/che/issues/18031
- CRW-compatible image CRW#1239
- add the editor in the plugin registry https://github.com/eclipse/che/issues/17979
- document how to use it and extend it: RHDEVDOCS#2161
- How to create a workspace that uses intellij as editor
- How to customize it:
- Inject a license key
- Configure a Floating License Server using
JETBRAINS_LICENSE_SERVER
env variable - Use a different version of intelliJ
- Current limitations
- persistent settings across workspace restart https://github.com/eclipse/che/issues/17968
- idle timeout che/intellij plug-in (to avoid it gets idled, no need to track activity) https://github.com/eclipse/che/issues/17953
- clone projects on boot https://github.com/eclipse/che/issues/15973
- implement and run an end to end test https://github.com/eclipse/che/issues/18035
- handling
Enter
key in built-in terminal (solution provided in https://github.com/eclipse/che/issues/17790#issuecomment-698854133) or have preliminary preference set up on workspace startup https://github.com/eclipse/che/issues/17986
What is NOT included in this issue
A fully supported editor should also:
- describe the IDE configuration in a devfile (commands, plugins, runtime services)
- automatically inject users configs in the IDE (such as proxy, git, kubernetes settings)
- airgap support
But these features are not in this issue scope. We will create dedicated issues for that.
Describe alternatives you’ve considered
- [CURRENT CHOICE] Running a VNC client in the browser (such as novnc)
- Using https://www.webswing.org/
- Running an X11 client in the browser (such as xpra-htlm5)
Additional context
This is a feature provided by coder enterprise (this is the dockerfile).
@benoitf has provided PoC that uses webswing and that can be tried out with the following devfile or using docker locally docker run --rm -it -p 8080:8080 quay.io/fbenoit/webswing-intellij:20200904
.
Issue Analytics
- State:
- Created 3 years ago
- Reactions:4
- Comments:25 (22 by maintainers)
Top Results From Across the Web
IntelliJ IDEA – the Leading Java and Kotlin IDE - JetBrains
IntelliJ IDEA is undoubtedly the top-choice IDE for software developers. It makes Java and Kotlin development a more productive and enjoyable experience.
Read more >Editor basics | IntelliJ IDEA Documentation - JetBrains
The IntelliJ IDEA editor is the main part of the IDE that you use to create, read and modify code. tip. For information...
Read more >intellij-idea-help.pdf - JetBrains
The parts Tool Windows and IntelliJ IDEA Editor tell you everything you need ... important basic tasks with IntelliJ IDEA - create and...
Read more >What's New in IntelliJ IDEA - 2022.3 - JetBrains
In IntelliJ IDEA Ultimate 2022.3, we've implemented long-awaited support for ... tool windows out of the main window and dock them to floating...
Read more >Improved IDE Performance, New Editor Inline Hints, and More ...
Improved IDE Performance, New Editor Inline Hints, and More for Kotlin in the Latest IntelliJ IDEA ... Enjoy a better debugging experience, ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
I think, we can add additional item into description, to have a preliminary IDE configuration and set up specific options like https://github.com/eclipse/che/issues/17790#issuecomment-698854133. Because when workspace opens at first time, user has to configure this option to operate with terminal. //upd: updated the last item in the list
source code of POC are there
(with VNC I was able to use browser resizing and maximize widgets using a lightweight wm (here it’s fluxbox) where I can hide toolbar/workspaces, etc by default)