Setting up Preferences

EPIC preferences can be accessed via Window > Preferences... from the Eclipse Menu.

General Preferences

Click on Perl EPIC to open the General Preferences page.

General preferences include the location of the Perl interpreter, the option to enable warnings, taint mode and the interval of the source validation.

The validation interval indicates when to start validation after the editor becomes idle.

Apart from the standard interpreter type, the type can be switched to Cygwin. In this case the @INC path is mapped to be Cygwin compliant.

NOTE: On slower systems it might be useful to disable automatic syntax validation. Syntax validation is still possible by using the Shift+F5 function key.

Code Assist

On the Code Assist Preference Page the auto completion trigger characters are defined. Normally it should not be necessary to change these values.

By default the editor suggests a list of already used variables when the characters $ @ % are typed. To switch this feature off, deselect the Inspect Variables check box.

Editor

These options define the appearance of the Perl Editor, the coloring of the Perl source code, and how annotations are displayed.

Smart typing settings allow to switch auto-completion of quotes, paranthesis etc. on or off.

Source Formatter

EPIC uses PerlTidy to format source code. The Source Formatter Preference allows to specify PerlTidy command line parameters. To get a description of available parameters, press the Help key and select PerlTidy options from the popup menu.

NOTE: In order for PerlTidy to work correctly the Perl Interpreter Preferences have to be setup correctly (see above).

Task Tags

In this section, you can specify a list of keywords that act as markers for tasks inside comments in your perl code, i.e. tags that mark the beginning of a task entry.

By default, the words "TODO" and "TASK" mark the beginning of a task.

Check the "Ignore Case" option if you want EPIC to recognize task tags case-insensitively, e.g. # todo my task.

If you select "Allow whitespace", task tags do not need to follow a comment sign ("#") directly, e.g.

# TODO my task

instead of having to write

#TODO my task.

See the entry ToDO markers to see how to use Task Tags in the Perl Editor.

Templates

Templates are a powerful tool to insert pre defined code snippets while working with the  Perl Editor.

How Templates are use is covered in Working with the Perl Editor. The Templates Preference page allows the creation, import and export of Templates.

Exported Templates are stored in XML format.

Associating Files with the Perl editor

Eclipse associates file extensions with editors. If another plug-in is installed, the EPIC Perl Editor might not be used as the default editor when opening *.pl, *.pm or *.cgi files.

To associate these file extensions with the Perl Editor, choose Window > Preferences from the Eclipse menu and select Workbench > File Associations.

If the Perl extensions are missing, they can be created by pressing the Add... button.

Select the Perl Editor from the list and press the Default button.

CVS Setup

By default, Eclipse stores Perl files as binary when they are added to the CVS repository.

To store Perl files as text (ASCII), select Window > Preferences... from the Eclipse menu and modify the Team > File Content settings.

Add your Perl extensions (pl, pm etc.) by pressing the Add... button and specify ASCII in the Contents column.

Setting up the Debugger

Setting up the debugger requires two steps:

  1. Define the Perl interpreter to use

  2. Install the PadWalker Perl module

    NOTE: It is possible to use the debugger without installing PadWalker. But in this case local variables won't be shown.

    Download the PadWalker module from CPAN  (PadWalker 0.10) and install as described in the installation notes or use the installation manager provided with your Perl installation (e.g. PPM for ActiveState installations).

    If you are using ActiveState 5.8.x on a Windows system, you can download a pre-compiled PadWalker module from the EPIC homepage as the version provided by ActiveState doesn't seem to work for Perl 5.8.x (but it does for 5.6.x).