Index: TXM/trunk/org.txm.python.rcp/META-INF/MANIFEST.MF
===================================================================
--- TXM/trunk/org.txm.python.rcp/META-INF/MANIFEST.MF	(revision 3335)
+++ TXM/trunk/org.txm.python.rcp/META-INF/MANIFEST.MF	(revision 3336)
@@ -8,3 +8,4 @@
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.txm.python.core;bundle-version="1.0.0";visibility:=reexport,
  org.txm.rcp;bundle-version="0.8.2"
+Export-Package: org.txm.python.rcp
Index: TXM/trunk/org.txm.perl.feature/feature.xml
===================================================================
--- TXM/trunk/org.txm.perl.feature/feature.xml	(revision 3335)
+++ TXM/trunk/org.txm.perl.feature/feature.xml	(revision 3336)
@@ -2,10 +2,12 @@
 <feature
       id="org.txm.perl.feature"
       label="org.txm.perl.feature"
-      version="1.0.0.qualifier">
+      version="1.0.0.qualifier"
+      license-feature="org.txm.core.feature"
+      license-feature-version="1.0.0.qualifier">
 
    <description url="http://www.example.com/description">
-      [Enter Feature Description here.]
+      Be able to run Perl script from TXM File and Macro views
    </description>
 
    <copyright url="http://www.example.com/copyright">
Index: TXM/trunk/org.txm.perl.rcp/plugin.xml
===================================================================
--- TXM/trunk/org.txm.perl.rcp/plugin.xml	(revision 3335)
+++ TXM/trunk/org.txm.perl.rcp/plugin.xml	(revision 3336)
@@ -6,7 +6,7 @@
       <page
             category="org.txm.rcp.preferences.ScriptPreferencePage"
             class="org.txm.perl.rcp.preferences.PerlPreferencesPage"
-            id="org.txm.perl.rcp.preferences.PerlPreferencesPage"
+            id="s"
             name="Perl">
       </page>
    </extension>
Index: TXM/trunk/org.txm.perl.rcp/META-INF/MANIFEST.MF
===================================================================
--- TXM/trunk/org.txm.perl.rcp/META-INF/MANIFEST.MF	(revision 3335)
+++ TXM/trunk/org.txm.perl.rcp/META-INF/MANIFEST.MF	(revision 3336)
@@ -8,3 +8,4 @@
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.txm.rcp;bundle-version="0.8.2",
  org.txm.perl.core;bundle-version="1.0.0"
+Export-Package: org.txm.perl.rcp.preferences
Index: TXM/trunk/org.txm.perl.rcp/icon/pelr.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: TXM/trunk/org.txm.perl.rcp/icon/perl.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: TXM/trunk/org.txm.perl.rcp/icon/perl.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Index: TXM/trunk/org.txm.perl.core/plugin.xml
===================================================================
--- TXM/trunk/org.txm.perl.core/plugin.xml	(revision 3335)
+++ TXM/trunk/org.txm.perl.core/plugin.xml	(revision 3336)
@@ -4,14 +4,14 @@
    <extension
          point="org.txm.core.engines.ScriptEngine">
       <ScriptEngine
-            class="PerlScriptEngine"
+            class="org.txm.perl.core.PerlScriptEngine"
             name="perl">
       </ScriptEngine>
    </extension>
    <extension
          point="org.eclipse.core.runtime.preferences">
       <initializer
-            class="PerlPreferences">
+            class="org.txm.perl.core.PerlPreferences">
       </initializer>
    </extension>
 
Index: TXM/trunk/org.txm.perl.core/META-INF/MANIFEST.MF
===================================================================
--- TXM/trunk/org.txm.perl.core/META-INF/MANIFEST.MF	(revision 3335)
+++ TXM/trunk/org.txm.perl.core/META-INF/MANIFEST.MF	(revision 3336)
@@ -7,3 +7,4 @@
 Automatic-Module-Name: org.txm.perl.core
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.txm.core;bundle-version="0.8.2";visibility:=reexport
+Export-Package: org.txm.perl.core
Index: TXM/trunk/org.txm.perl.core/src/org/txm/perl/core/PerlScriptEngine.java
===================================================================
--- TXM/trunk/org.txm.perl.core/src/org/txm/perl/core/PerlScriptEngine.java	(revision 3335)
+++ TXM/trunk/org.txm.perl.core/src/org/txm/perl/core/PerlScriptEngine.java	(revision 3336)
@@ -5,6 +5,7 @@
 import java.io.File;
 import java.io.InputStreamReader;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.HashMap;
 
 import org.eclipse.core.runtime.IProgressMonitor;
@@ -43,7 +44,7 @@
 	}
 
 	@Override
-	public IStatus executeScript(File script, HashMap<String, Object> env) {
+	public IStatus executeScript(File script, HashMap<String, Object> env, String stringArgs) {
 		ArrayList<String> cmd = new ArrayList<String>();
 		cmd.add(script.getAbsolutePath());
 
@@ -61,23 +62,32 @@
 			return runPerl(cmd, env);
 		
 	}
+	
+	public boolean canExecute(File script) {
+		
+		File runner = new File(PerlPreferences.getInstance().getString(PerlPreferences.HOME),
+				PerlPreferences.getInstance().getString(PerlPreferences.EXECUTABLE_NAME));
+		
+		return script.isFile() && script.canExecute() && runner.canExecute() && runner.isFile();
+	}
 
 	private static IStatus runPerl(ArrayList<String> cmd, HashMap<String, Object> env) {
 		try {
+			
+			String additionalParametersString = PerlPreferences.getInstance().getString(PerlPreferences.ADDITIONAL_PARAMETERS);
+			String[] additionalParameters = additionalParametersString.split("\t");
+			if (additionalParametersString.length() > 0 && additionalParameters.length > 0) {
+				cmd.addAll(0, Arrays.asList(additionalParameters));
+			}
+			
 			String path = PerlPreferences.getInstance().getString(PerlPreferences.HOME);
-			String execFileName = PerlPreferences.getInstance().getString(PerlPreferences.EXECUTABLE_NAME);
+			String perlRunner = PerlPreferences.getInstance().getString(PerlPreferences.EXECUTABLE_NAME);
 			if (path != null && path.length() > 0) {
-				cmd.add(0, new File(path, execFileName).getAbsolutePath());
+				cmd.add(0, new File(path, perlRunner).getAbsolutePath());
 			} else {
-				cmd.add(0, execFileName);
+				cmd.add(0, perlRunner);
 			}
-			for (String k : env.keySet()) {
-				cmd.add(k);
-				Object v = env.get(k);
-				if (v != null) {
-					cmd.add(v.toString());
-				}
-			}
+			
 			ProcessBuilder pb = new ProcessBuilder(cmd);
 			pb.redirectErrorStream(true);
 
