Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??
I've tried out Eclipse 3 with the EPIC plugin as my new editor. After a few days of 'so-so' results, I switched to the test version of EPIC--0.3.9 and now I'm now quite happy with Eclipse as my IDE. I expect the feature set to just keep getting better, too.

Which plugins are installed really makes Eclipse what it is. By default, Eclipse has a whole bunch of Java plugins which are not very useful to the mostly Perl programmer. Finding plugins that are compatible with version 3 is also a little tricky. Here's the list I'm using and the associated update sites. (You need the update site in order to install the plugin in my experience--the old method of extracting into the /plugin directory has not worked for me with 3.0.)

EPIC 0.3.9 http://e-p-i-c.sf.net/updates/testing Perl syntax and interpreter support
Colorer Editor http://colorer.sf.net/eclipsecolorer/ syntax highlighting for 'other' files
Azzuri Clay DB Modelling http://www.azzurri.jp/eclipse/plugins db schema editor (requires additional plugins from eclipse.org)
Subversion support http://subclipse.tigris.org/update (installed but didn't test this one)

There are still more plugins that look promising but I haven't tried yet--(http://people.redhat.com/pmuldoon/ for example.)

My EPIC templates config is in my scratchpad. Templates are like auto-complete, in the editor you type the first character(s) in the template name and press ctrl+space to insert the template if there's an exact match, if not you're prompted for which to use.

In my external programs, I've created entries for module-starter, module-info, and tpage. On windows, these run best if I give cmd.exe as the external command and the batch file as part of the command arguments.

What plugins or configuration tips do other monks using Eclipse 3.0+ for Perl programming have to offer?

Update: Per request, here is my 'EPIC templates' config in the post...

<?xml version="1.0" encoding="UTF-8"?> <templates><template name="for" description="C-style for loop" context +="perl" enabled="true">LABEL: for { my $$${var} = 0 ; $$${var} &lt; m +ax ; $$${var}++ ) {&#13; ${cursor}&#13; }</template><template name="foreach" description="perl-ish for loop" c +ontext="perl" enabled="true">for my $$${var} ( @${array} ) {&#13; ${cursor}&#13; }</template><template name="if" description="if statement" context="pe +rl" enabled="true">if ( ${cursor} ) {&#13; } &#13; </template><template name="if-elsif-else" description="if-elsif-else s +tatement" context="perl" enabled="true">if ( ${cursor} ) {&#13; } &#13; elsif ( ) { &#13; } &#13; else { &#13; }</template><template name="if-else" description="if-else statement" c +ontext="perl" enabled="true">if ( ${cursor} ) {&#13; } &#13; else { &#13; }</template><template name="eval-exception" description="eval exceptio +n-handling template" context="perl" enabled="true">eval { ${cursor} } +;&#13; if ($$@) {&#13; warn $$@;&#13; }</template><template name="sub" description="subroutine template" con +text="perl" enabled="true">sub ${cursor} {&#13; my ( ) = @_;&#13; &#13; }</template><template name="method" description="subroutine as method +template" context="perl" enabled="true">sub ${cursor} {&#13; my $$self = shift;&#13; my ( ) = @_;&#13; &#13; }</template><template name="sub" description="subroutine as method tem +plate" context="perl" enabled="true">sub ${cursor} {&#13; my $$self = shift;&#13; my ( ) = @_;&#13; &#13; }</template><template name="while" description="while each key value p +air" context="perl" enabled="true">while(($$key, $$value) = each(%${c +ursor})) {&#13; &#13; }&#13; </template><template name="while" description="while diamond" context= +"perl" enabled="true">while (&lt;&gt;) {&#13; ${cursor}&#13; }</template><template name="switch" description="switch construction f +rom perlsyn" context="perl" enabled="true">SWITCH: {&#13; (${cursor}) &amp;&amp; do { ; last SWITCH};&#13; // &amp;&amp; do { ; last SWITCH};&#13; }</template><template name="map" description="map" context="perl" enab +led="true">map { ${cursor} } </template><template name="grep" descrip +tion="grep" context="perl" enabled="true">grep { ${cursor} } </templa +te><template name="=head1" description="pod head1" context="perl" ena +bled="true">=head1 ${cursor}&#13; </template><template name="=head2" description="pod head2" context="pe +rl" enabled="true">=head2 ${cursor}&#13; </template><template name="=head3" description="pod head3" context="pe +rl" enabled="true">=head3 ${cursor}&#13; </template><template name="=head4" description="pod head4" context="pe +rl" enabled="true">=head4 ${cursor}&#13; </template><template name="=cut" description="pod cut" context="perl" +enabled="true">=cut&#13; &#13; ${cursor}&#13; </template><template name="=over" description="pod indent" context="pe +rl" enabled="true">=over 4&#13; &#13; =item ${cursor}&#13; &#13; =back&#13; </template><template name="=item" description="pod indent" context="pe +rl" enabled="true">=item ${cursor}</template></templates>

--Solo

--
You said you wanted to be around when I made a mistake; well, this could be it, sweetheart.

In reply to Eclipse 3 + EPIC 0.3.9 by Solo

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2024-04-19 03:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found