[ANN] MacrosPlugin v1.0 NEW

Hello guys,

Here is a new plugin - MacrosPlugin.

You can read what is that here http://www.intellij.org/twiki/bin/view/Main/MacrosPlugin
But basically it's a some kind of light plugin framework :)

You don't have to create and implement all these interfaces if you need to add some simple
functionality to IDEA.

It uses BeanShell as scripting language, so you have access to the whole IDEA API from it.
(In fact this plugin was inspired by BeanShellPlugin)

I added some simple macros to the plugin (actually I developed this plugin because I needed
the functionality this macros provides :)). This macros - "Print Method Parameters" - generates
System.out.println in the beginning of a method where it prints all the method's parameters
with respect to their types. BTW some simple version of ToStringPlugin can be implemented the same way.

Any macros can be changed and executed without exiting IDEA which can be used for example to
quickly check some code or to change some parameters of a macros.

--
Dmitry Skavish
-


Boston, MA, USA
tel. +1 781 910-3810
http://www.jzox.com
http://www.flashgap.com

2 comments
Comment actions Permalink

Nice idea! :)

Unfortunately, I installed it, and got this exception when starting IDEA
(689)

java.lang.NullPointerException
at java.io.File.]]>(Unknown Source)
at
com.jzox.idea.macros.MacroUtil.loadAllMacrosFrom(MacroUtil.java:179)
at
com.jzox.idea.macros.MacroUtil.loadAllMacrosFrom(MacroUtil.java:175)
at
com.jzox.idea.macros.MPluginLoader.projectOpened(MPluginLoader.java:4
8)
at com.intellij.openapi.project.a.c.q(c.java:188)
at com.intellij.openapi.project.a.c.b(c.java:76)
at com.intellij.openapi.project.a.h.projectOpened(h.java:8)
at com.intellij.openapi.project.a.i.projectOpened(i.java:10)
at com.intellij.openapi.project.a.o.e(o.java:105)
at com.intellij.openapi.project.a.o.a(o.java:24)
at com.intellij.ide.b.q.a(q.java:14)
at com.intellij.idea.v.s(v.java:5)
at com.intellij.idea.v.c(v.java:64)
at com.intellij.idea.i.run(i.java:1)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at com.intellij.ide.q.a(q.java:37)
at com.intellij.ide.q.dispatchEvent(q.java:110)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown
Source)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown
Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Dmitry Skavish wrote:

Hello guys,

>

Here is a new plugin - MacrosPlugin.

>

You can read what is that here
http://www.intellij.org/twiki/bin/view/Main/MacrosPlugin But
basically it's a some kind of light plugin framework :)

>

You don't have to create and implement all these interfaces if you
need to add some simple functionality to IDEA.

>

It uses BeanShell as scripting language, so you have access to the
whole IDEA API from it. (In fact this plugin was inspired by
BeanShellPlugin)

>

I added some simple macros to the plugin (actually I developed this
plugin because I needed the functionality this macros provides :)).
This macros - "Print Method Parameters" - generates
System.out.println in the beginning of a method where it prints all
the method's parameters with respect to their types. BTW some simple
version of ToStringPlugin can be implemented the same way.

>

Any macros can be changed and executed without exiting IDEA which can
be used for example to quickly check some code or to change some
parameters of a macros.



0
Comment actions Permalink

Nathan,

Unfortunately, I installed it, and got this exception when starting IDEA
(689)


It's fixed. I also noticed it when installed it on another computer. The problem
was with settings. Anyway it's fixed and also added log tool window which gets
created on demand, i.e. only when needed, so macros can print some messages here
or throw an exceptions :)

--
Dmitry Skavish
-


Boston, MA, USA
tel. +1 781 370-6909
http://www.jzox.com
http://www.flashgap.com

0

Please sign in to leave a comment.