Open jimthedev opened 9 years ago
Here are the docs for writing IntelliJ plugins but it's going to be an open question whether the plug point that you want is available. [VCS Integration Plugins](VCS Integration Plugins) looks like it is in the ballpark.
I've asked internally and pointed to this ticket. Will need patience, still cleaning up from last week's update-the-universe cycle.
@pauleveritt Thanks and no worries on timing. I am still working on several major changes that would be breaking changes for any IDE plugins. It will still be nice to read up and familiarize myself a bit with the ecosystem. Thanks a bunch.
Just wanted to mention there is an IntelliJ plugin for writing plugins at runtime that can rapidly speed up the development process. https://github.com/dkandalov/live-plugin
VCS Plugin Docs - http://www.jetbrains.org/intellij/sdk/docs/reference_guide/vcs_integration_for_plugins.html
I found a silly IntelliJ plugin that adds a button to the commit dialog to use as a starting point: https://github.com/darekkay/what-the-commit
The hook is in META_INF
:
...
<actions>
<action id="WhatTheCommit.Button" class="com.eclectide.intellij.whatthecommit.WhatTheCommitAction"
text="What The Commit"
description="Load random message" icon="/load.png">
<add-to-group group-id="Vcs.MessageActionGroup" anchor="first"/>
</action>
</actions>
...
For showing a dialog: http://www.jetbrains.org/intellij/sdk/docs/user_interface_components/dialog_wrapper.html?search=dialog
This plugin (https://github.com/jshiell/checkstyle-idea/) adds a checkbox to the "Before Commit" section of the commit dialog. I think this is the best approach because it makes it easy to disable it (good reducing frustration during early adoption in a code base).
Most of the code needed is here: https://github.com/jshiell/checkstyle-idea/blob/e04092ab57bfb0a5ad8a26114faca9ecc4318afd/src/main/java/org/infernus/idea/checkstyle/handlers/ScanFilesBeforeCheckinHandler.java
The checkinHandlerFactory
extension point is what we are looking for:
All the VCS extension points can be found here: https://upsource.jetbrains.com/idea-ce/file/idea-ce-1731d054af4ca27aa827c03929e27eeb0e6a8366/platform/platform-resources/src/META-INF/VcsExtensionPoints.xml
Because of this, I don't think live-plugin
will do, it would need to be a proper plugin.
Turns out live-plugin
does support extension points (https://github.com/dkandalov/live-plugin/issues/61). Should be very easy to make.
Hi! We add the need for an IntelliJ integration at work, so we made this really basic plugin: https://plugins.jetbrains.com/plugin/9861-git-commit-template
Source is here: https://github.com/MobileTribe/commit-template-idea-plugin
Open to suggestions!
Using SourceTree, it is possible to add a custom action that launches git cz
in the current repository's directory in a new terminal window. The custom action can be assigned a keyboard shortcut. This is as close of a GUI integration that is possible at the moment it seems. :)
Code here for anyone interested: https://gist.github.com/motin/5896c5b04d039aac48e6a2985d12171b
Would be great it we could provide a way for git GUIs to inject themselves in the place of inquirer so that they could use their own GUIs to ask users for prompts. This might be a pie in the sky idea but it would be pretty freaking cool.