Comments (86)
Still some kinks to be ironed out, but....
from fig.
IntelliJ IDEA, please!
from fig.
You no longer need to be on a beta version of Fig to get access to autocomplete inside of Jetbrain's IDEs. However, currently the integration is a bit tricky to setup which is why it is hidden by default.
Instructions for those who are brave enough to attempt it:
- Run
fig settings integrations.experimental true
and then restart the Fig app - Click the Fig menubar icon > Integrations > $YOUR_JETBRAINS_IDE > "Attempt to Install"
- Go to a terminal and run
fig debug ime enable
. A System Preferences window will appear and prompt you to install a third party Input Method. - Run
fig debug ime select
- Restart the IDE and autocomplete should appearπ€
PS. If your favorite Jebrains IDE doesn't appear in the list of integrations, please send me it's bundle identifier and I can add it.
Edit: it seems like there are intermittent issues when installing using JetBrains ToolBox. Sometimes it works and sometimes it doesn't.
from fig.
@marggx this is one of our goals for the month!
from fig.
@marggx not yet!
@etcook it is coming - I promise!
from fig.
Just updated the list to include GoLand, AppCode, RubyMine and RiderIDE!
We've made some good progress on Terminal integrations in the last sprint and I'm pretty optimistic that we'll be able to get Fig working in JetBrains IDEs soon!
from fig.
Sorry for the delay on this. We launched decided to focus on stability after the public launch.
The core technical difficulties of integrating with JetBrains IDEs have been figured out -- it is definitely possible! -- but we still need to write the actual integration.
from fig.
Thanks for creating the issue! We definitely want to add support for for Jetbrains IDEs.
Whether this is possible comes down to how much they expose with their extension API + to the macOS accessibility API.
In order to build out the integration, we need to...
- Locate bounding rect of cursor
- Determine when user is typing into a terminal versus the editor
- If the IDE allows multiple terminal windows/tabs to be created, determine when the user changes keyboard focus between them
Let me know if you have any thoughts :)
from fig.
And we just announced this onTwitter!
If youβre enjoying Fig + JetBrains, please share it with your friends :)
from fig.
Hi, I have done multiple plugins for IntelliJ, and just so everyone are aware, by them creating a plugin it will work for all IntelliJ products, including Android Studio.
@mschrage What specifically is it you guys are looking for in the API? Like what do you need to build an integration?
from fig.
Just updated the list to include GoLand, AppCode, RubyMine and RiderIDE!
We've made some good progress on Terminal integrations in the last sprint and I'm pretty optimistic that we'll be able to get Fig working in JetBrains IDEs soon!
That's great news, I'm so excited with new release which is support JetBrains IDEs.
from fig.
Note that the output is different when the app was installed using Jetbrains Toolbox:
Android Studio: com.jetbrains.toolbox.linkapp.pcom.jetbrains.toolbox__ndroid_tudio_rctic_ox_2020_3_1_atch_4
GoLand: com.jetbrains.toolbox.linkapp.pcom.jetbrains.toolbox__o_and_2021_3_1
PhpStorm: com.jetbrains.toolbox.linkapp.pcom.jetbrains.toolbox__hp_torm_2021_3
RubyMine: com.jetbrains.toolbox.linkapp.pcom.jetbrains.toolbox__uby_ine_2021_3
from fig.
Would love to see IntelliJ support
from fig.
However after 2) I got a popup with an error, about "Input method" before I even did 3).
The "learn more" link points to https://fig.io/docs/support/enabling-input-method, I just point it out to make sure you don't forget this part of the documentation :)
Thanks a lot
from fig.
I just got this working on PhpStorm and...
from fig.
Hey @mattschrage I am not a java developer, worked with almost every other language except java.
However this could be an interesting plugin for us to understand how to interact with the built in terminal? https://github.com/anthraxx/intellij-awesome-console (At least it doesn't look as complicated as objective-c π)
from fig.
Please add JetBrains GoLand to this list.
There is always multiple terminals open near a Go project.
from fig.
Plugins can be automatically installed by moving them to the plugins
folder of IDE. See: https://intellij-support.jetbrains.com/hc/en-us/articles/206544519
from fig.
Can confirm it works on Pycharm CE 2021.3.2.
from fig.
Yeah, seems to be an issue with toolbox setups cuz is not working for me :(
Edit: I've reinstalled my IDEs without toolbox and after following these steps I got it working on PhpStorm!!
from fig.
Not sure if i've missed a step, IDEA is not showing for me yet
I don't know if you're still not seeing IntelliJ, but maybe you could run
fig update
andfig doctor
, before I opened the terminal to test in IntelliJ, fig was auto updated and then I could use Fig :p
My intellij was definitely not really out of date π
It's working now, thanks! π
from fig.
In the latest version of Fig, support for JetBrain IDEs is turned on by default! π
Just run fig install --input-method
from fig.
@mschrage Thanks a lot for covering our IDEs π It seems the Fig IntelliJ plugin is installed into the application path itself instead of the "additional plugins" path, could you please check and change it? See https://intellij-support.jetbrains.com/hc/en-us/articles/206544519-Directories-used-by-the-IDE-to-store-settings-caches-plugins-and-logs. Otherwise, it is currently detected as "bundled" plugin which is misleading. Thanks!
from fig.
To work with any Jetbrains IDE, we need to somehow get notifications when:
- The embedded terminal is opened / closed
- A new terminal tab is opened
- A user switches terminal tabs / some unique identifier for knowing which terminal tab is currently open
- The embedded terminal becomes focused
- The embedded terminal loses focus
@olivernybroe did some research into this:
Yeah the IntelliJ API is massive and can be pretty overwhelming. So the terminal which you guys wanna build into is actually a plugin on IntelliJ. https://github.com/JetBrains/intellij-community/tree/master/plugins/terminalSo the terminal plugin registers 3 first-party extension points.
- https://github.com/JetBrains/intellij-community/blob/master/plugins/terminal/src/org/jetbrains/plugins/terminal/LocalTerminalCustomizer.java
- https://github.com/JetBrains/intellij-community/blob/master/platform/execution-impl/src/com/intellij/terminal/TerminalShellCommandHandler.kt
- https://github.com/JetBrains/intellij-community/blob/master/plugins/terminal/src/org/jetbrains/plugins/terminal/ui/OpenPredefinedTerminalActionProvider.kt
However looking at these 3 extension points, they don't really give you the information you need.By looking into the class, what it seems like you would need is to get the TerminalView from the project services, run TerminalView#getWidgets and on each of them you can add a listener of the type JBTerminalWidgetListener
https://github.com/JetBrains/intellij-community/blob/master/plugins/terminal/src/org/jetbrains/plugins/terminal/TerminalView.java
https://github.com/JetBrains/intellij-community/blob/master/platform/execution-impl/src/com/intellij/terminal/JBTerminalWidgetListener.javaIf you take a look at the JBTerminalWidgetListener it has a lot of the information you need.
from fig.
Yes, I'll second GoLand as well. I use this daily, as well as WebStorm.
from fig.
That's great π
from fig.
Yay!! Here's the output for a few JetBrains IDEs:
WebStorm: com.jetbrains.WebStorm
GoLand: com.jetbrains.goland
(notice the capitalization scheme varies!)
PhpStorm: com.jetbrains.PhpStorm
PyCharm: com.jetbrains.pycharm
Thanks in advance for all your hard work - I can't wait to see it in action!
from fig.
Can confirm it works with WebStorm 2021.3.1.
Thanks!
from fig.
If the IDE you use isn't showing up, please determine the bundle identifier of the application and share it here!
Also let me know if you installed it using JetBrains toolbox or directly!
com.jetbrains.intellij
toolbox
2021.3.2 (213.6777.52)
from fig.
Confirmed working on WebStorm 2021.3.2.
from fig.
Hi,
Since I install Fig plugin for Jetbrain I receive this error each time I open a terminal, anyone has a fix for it?
Also, Fig app say that I need to install the plugin but I already have it.
Thanks!
from fig.
can confirm this is now working for me!
toolbox installations of goland, webstorm and phpstorm
from fig.
Thanks @etcook - I've just added Rider + CLion. They might have missed the cutoff for the release today but should be included shortly.
from fig.
Hi, I got the same issue with #49 (comment). Running step 3 does not open the System Preferences window. Note that I did make it work before, but since updating to the
v1.0.56 (B405)
I have to redo all the steps and stuck at step 3 still then.
Update to the latest version and this issue no longer appears π
from fig.
Support for PyCharm CE and Android Studio is coming in the next release!
- fixes for some issues that have popped up with conflicts between Fig and JetBrain's shell integrations.
from fig.
In the latest version of Fig, support for JetBrain IDEs is turned on by default! π
Just run
fig install --input-method
@mschrage great work!
from fig.
In the latest version of Fig, support for JetBrain IDEs is turned on by default! π
Just run
fig install --input-method
@mschrage thanks for effort and great work π
from fig.
Thanks for the suggestion @adam-code-labx! I've looked into the extensions API and it's not clear that it provides the information we need. I plan on investigating further soon!
from fig.
I wanna say Android Studio as well. But since Android Studio is loosely based on JetBrains' IntelliJ IDEA software, I suppose starting with JetBrains' products first makes sense to me. Would love to discuss more!
from fig.
Thanks for this issue, also it would be great to support JetBrains Rider IDE terminal
from fig.
RubyMine and AppCode as well would be divine
from fig.
Any news on this ?
from fig.
Looking forward to have this π
from fig.
@mschrage thanks for the hard work, looking forward PhpStorm support
from fig.
It would be great to have this in GoLand as well. Thank you!
from fig.
I think we may need to consider treating Android Studio requests as a part of this ticket as it uses the same engine.
from fig.
Sorry for the delay on this. We launched decided to focus on stability after the public launch.
The core technical difficulties of integrating with JetBrains IDEs have been figured out -- it is definitely possible! -- but we still need to write the actual integration.
Great news, JetBrains IDE support coming soon, I can't wait π
from fig.
Seeing this comment last night got me hopeful that this is almost ready... π
from fig.
JediTerm runs a shells with custom rc files before sourcing the user's. See https://github.com/JetBrains/intellij-community/tree/master/plugins/terminal/resources
from fig.
If you are interested in getting Fig to work in your favorite JetBrains IDE, would you please run osascript -e 'id of app "NAME OF IDE"
and share the output here?
There is a special Christmas present in the works! ππ
from fig.
PHPStorm: com.jetbrains.PhpStorm
DataGrip: com.jetbrains.datagrip
For DataGrip, Terminal plugin is not install by default but I'm pretty sure some users install it.
from fig.
Is there a build for phpstorm i can test out?
from fig.
Hi. Is normal, if combination of Webstorm + ZSH shell not work together?
from fig.
@pronovaso yes, currently Webstorm is not yet supported.
from fig.
Looking forward for phpStorm support! π₯
from fig.
@mschrage would love to test the pre-release version to get the kinks out!
@pronovaso Fig doesn't work the same as 'normal' Zsh plugins (by adding them in your .zshrc
).
It only adds environment variables in .zshrc
.
This has the advantage of not slowing down your terminal (as much?) and by using OS accessibility permissions for extra functionality but the disadvantage that it doesn't work 'out-of-the-box' in any app running Zsh.
from fig.
What do I have to do to give the Rider integration a try?
from fig.
Doesn't seem to work for me, nothing related to Intellij IDEA in integrations
β― osascript -e 'id of app "IntelliJ IDEA"'
com.jetbrains.intellij
(installed with JetBrains Toolbox)
from fig.
I installed PyCharm through JetBrains Toolbox, so I don't think it's a problem with that, since it's working for me.
from fig.
I installed php storm from toolbox, but it's also working. Thanks!
from fig.
Not working for me - IntelliJ IDEA Toolbox install
from fig.
Is anyone try with JetBrain's Rider IDE ?, I was testing but, after step 1, step 2 does not available like below
from fig.
How did you get this in IDEA? Mines only showing WebStorm under integrations, not IDEA π
from fig.
PHPStorm installed from toolbox works fine π
from fig.
How did you get this in IDEA? Mines only showing WebStorm under integrations, not IDEA π
Idk if I'm allowed to do this, but I wanted to have it in IDEA so I went to the Fig.app/Contents/Resources and manually unzipped the jet brains-extension-2.0.0.zip file and tried to manually install the fig extension but got this message:
Maybe you need an older version?
from fig.
I have 213.* version of IDEA -- 2021.3.2 U to be exact. That probably explains why it doesn't work for me...
from fig.
If the IDE you use isn't showing up, please determine the bundle identifier of the application and share it here!
Also let me know if you installed it using JetBrains toolbox or directly!
from fig.
Android Studio (manual install): com.google.android.studio
Using toolbox, all the bundle IDs start with com.jetbrains.toolbox.linkapp.pcom.jetbrains.toolbox
, would we be able to match based on something like this too?
bundleIdentifier.starts(with: "com.jetbrains.toolbox.linkapp.pcom.jetbrains.toolbox")
from fig.
I too am on .213 versions of my IDEs, so nothing is showing up for me in "Integrations"
toolbox for installation
com.jetbrains.goland, com.jetbrains.WebStorm, com.jetbrains.PhpStorm
from fig.
I'm not sure if this is related, but the Search Everywhere (Double-tap Shift) feature no longer works after installation of the WebStorm Fig plugin.
Has anyone else had this problem?
from fig.
@R-Bower Can't reproduce on IntelliJ IDEA or PyCharm CE, the Fig extension is the exact same, and it's basically the same app running. I don't think this is related to the extension but I might be wrong.
Just to understand a bit better - is it not popping up for you? Is it showing wrong results?
from fig.
@R-Bower Can't reproduce on IntelliJ IDEA or PyCharm CE, the Fig extension is the exact same, and it's basically the same app running. I don't think this is related to the extension but I might be wrong.
Just to understand a bit better - is it not popping up for you? Is it showing wrong results?
It's not showing up. I tried activating it from the Navigate tool menu and it's the same result. Nothing happens. As I said, it may be unrelated to the plugin. Ty for investigating! I'll do some more digging.
from fig.
Looks like it was an issue with my 2021.3.2 installation. All good now, thanks!
from fig.
Forgive me if I'm just being dense, but is there currently a way to get it to "see" the installation if it's not showing up? I added my version + installation method above.
com.jetbrains.intellij
toolbox
2021.3.2 (213.6777.52)
from fig.
Forgive me if I'm just being dense, but is there currently a way to get it to "see" the installation if it's not showing up? I added my version + installation method above.
com.jetbrains.intellij
toolbox
2021.3.2 (213.6777.52)
As mentioned in earlier posts, toolbox installations are spotty. If you still want to use toolbox, you can try the following:
- Remove jetbrains-extension-2.0.0 from your plugins folder if it exists (default location for toolbox installs is
~/Library/Application Support/JetBrains/WebStorm2021.3/plugins/jetbrains-extension-2.0.0
) - uninstall WebStorm from jetbrains toolbox.
- Install WebStorm manually.
- Follow all of the steps explained here #49 (comment)
- Once you've verified that Fig is working, uninstall the manual WebStorm installation and reinstall via toolbox.
This is how I managed to get the plugin working on the latest (2021.3.2) version from toolbox.
from fig.
Has anyone managed to enable the integration in Android Studio?
from fig.
@RodrigoTomeES you need to do steps 3 and 4 in this comment: #49 (comment)
from fig.
As mentioned in earlier posts, toolbox installations are spotty. If you still want to use toolbox, you can try the following:
I've tried these steps multiple times, but IntelliJ never shows up as an option. Based on the responses here, it looks like Webstorm, PHPStorm, etc are supported, but IDEA might not be.
from fig.
@kylegrieder yes, I solved it redoing the steps 3 and 4, it worked well until I receive an update of Fig, maybe the step 3 and 4 should be done with every update.
from fig.
If the IDE you use isn't showing up, please determine the bundle identifier of the application and share it here!
Also let me know if you installed it using JetBrains toolbox or directly!
> osascript -e 'id of app "IntelliJ IDEA"'
com.jetbrains.intellij
I can confirm the plugin works with toolbox setups, what I did was: Uninstall the IDE from toolbox, install manually, setup fig, uninstall the IDE using toolbox and then reinstalling with toolbox. Can confirm this currently works with PhpStorm in toolbox π
from fig.
@Im-Fran @etcook + anyone else interested in Intellij - support will be added in ~2 hours when the next build is released.
I was testing in the community addition and forgot to add the bundle identifier for the paid version. π
I think I can add support for Rider/CLion immediately if anyone can share their bundle id. Android Studio will require additional work to support, but should be coming soon as well.
from fig.
I think I can add support for Rider/CLion immediately if anyone can share their bundle id. Android Studio will require additional work to support, but should be coming soon as well.
I installed both to get the identifiers for you.
com.jetbrains.rider
com.jetbrains.CLion
anyone else interested in Intellij - support will be added in ~2 hours when the next build is released.
Wonderful!
from fig.
Hi, I got the same issue with #49 (comment). Running step 3 does not open the System Preferences window. Note that I did make it work before, but since updating to the v1.0.56 (B405)
I have to redo all the steps and stuck at step 3 still then.
from fig.
Not sure if i've missed a step, IDEA is not showing for me yet
from fig.
Thanks Matt! I can confirm it now works with IntelliJ!
from fig.
Not sure if i've missed a step, IDEA is not showing for me yet
I don't know if you're still not seeing IntelliJ, but maybe you could run fig update
and fig doctor
, before I opened the terminal to test in IntelliJ, fig was auto updated and then I could use Fig :p
from fig.
Related Issues (20)
- [email protected] HOT 1
- macos 14.2.1
- bug: fig daemon spamming logs resulting in high disk usage in /var/log/daemon.log
- Sunset HOT 22
- Do I need an aws login to use codewhisperer or can i use my old fig account HOT 2
- Fig Scripts Replacement HOT 4
- Why Not Fork The Fig? HOT 3
- Just migrated to CodeWhisperer and it doesn't work HOT 6
- bug: $USER env var value can be empty HOT 1
- CodeWhisperer not work with intel chip (Sonoma 14.1.1) HOT 3
- Missing Features CodeWhisperer HOT 3
- fig export error HOT 1
- Terminal support: Unsupported terminal, if you believe this is a mistake or would like to see support for your terminal, run `fig issue` HOT 1
- IBus Env Check: IBus environment variable is not set HOT 2
- zsh /home/aliali/.zshrc integration check: /home/aliali/.zshrc does not source post integration last HOT 2
- MallocStackLogging error message keeps writing on command line
- installing fig HOT 1
- Fig never works after system starts. HOT 2
- bug: fig-daemon.service restarts indefinitely HOT 7
- bug: Goland plugin unisntall keeps coming back
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fig.