This is an automated email from the git hooks/post-receive script.

pini pushed a commit to tag upstream/1.1.0_beta1
in repository sikuli.

commit 50d5b54d145b874397f1ae85416097673920225f
Author: Raimund Hocke <[email protected]>
Date:   Fri Feb 21 18:09:03 2014 +0100

    hope it helps ;-)
---
 IDE/src/main/java/org/sikuli/ide/EditorPane.java     |  9 ++++++++-
 .../main/java/org/sikuli/syntaxhighlight/Util.java   | 20 +++++++++-----------
 .../org/sikuli/syntaxhighlight/grammar/Lexer.java    |  3 ++-
 3 files changed, 19 insertions(+), 13 deletions(-)

diff --git a/IDE/src/main/java/org/sikuli/ide/EditorPane.java 
b/IDE/src/main/java/org/sikuli/ide/EditorPane.java
index edce64a..5ce1917 100755
--- a/IDE/src/main/java/org/sikuli/ide/EditorPane.java
+++ b/IDE/src/main/java/org/sikuli/ide/EditorPane.java
@@ -43,6 +43,7 @@ public class EditorPane extends JTextPane implements 
KeyListener, CaretListener
 
        private static final String me = "EditorPane: ";
        private static TransferHandler transferHandler = null;
+       private static Map<String, Lexer> lexers = new HashMap<String, Lexer>();
        private PreferencesUser pref;
        private File _editingFile;
        private String editingType = null;
@@ -350,8 +351,14 @@ public class EditorPane extends JTextPane implements 
KeyListener, CaretListener
        }
 
        private Lexer getLexer(File script) {
+               String scriptType = "python";
+               if (null != lexers.get(scriptType)) {
+                       return lexers.get(scriptType);
+               }
                try {
-                       return Lexer.getByName("python");
+                       Lexer lexer = Lexer.getByName(scriptType);
+                       lexers.put(scriptType, lexer);
+                       return lexer;
                } catch (ResolutionException ex) {
                        return null;
                }
diff --git 
a/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/Util.java 
b/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/Util.java
index 3b3233e..e6683f9 100644
--- a/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/Util.java
+++ b/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/Util.java
@@ -124,31 +124,29 @@ public class Util {
     InputStream stream = null;
     String jsonname = name.replace('.', '/') + extJSON;
     fullname = fullname.replace('.', '/') + extJSON;
-    String filenamePack, filenameRoot;
+    File fileInPack = null;
+               File fileInRoot = null;
     try {
       jarFileURI = csJygments.getLocation().toURI();
     } catch (URISyntaxException ex) {
       System.out.println("Util: getJsonFile: URISyntaxException: " + 
ex.toString());
     }
-    if (jarFileURI != null) {
+    if (jarFileURI != null && !jarFileURI.getPath().contains(".jar")) {
       String jarFilePath = jarFileURI.getPath();
-      filenamePack = filenameRoot = jsonname;
       if (jarFileURI.getScheme().equals("file")) {
         if (!pack.isEmpty()) {
           pack = pack.replace(".", "/");
           if (!sub.isEmpty()) {
             sub = sub.replace(".", "/");
             pack = pack + "/" + sub;
-            filenameRoot = sub + "/" + jsonname;
+            fileInRoot = new File(jarFilePath, sub + "/" + jsonname);
           }
-          filenamePack = pack + "/" + jsonname;
+          fileInPack = new File(jarFilePath, pack + "/" + jsonname);
         }
-        jarFile = new File(jarFilePath, filenamePack);
-        if (!jarFile.exists()) {
-          jarFile = new File(jarFilePath, filenameRoot);
-          if (!jarFile.exists()) {
-            jarFile = null;
-          }
+        if (fileInPack != null && fileInPack.exists()) {
+                                       jarFile = fileInPack;
+                               } else if (fileInRoot != null && 
fileInRoot.exists()) {
+            jarFile = fileInRoot;
         }
         if (jarFile != null) {
           try {
diff --git 
a/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/grammar/Lexer.java 
b/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/grammar/Lexer.java
index 16cd41b..8d3ea34 100644
--- 
a/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/grammar/Lexer.java
+++ 
b/Jygments4SikuliX/src/main/java/org/sikuli/syntaxhighlight/grammar/Lexer.java
@@ -125,8 +125,9 @@ public class Lexer extends Grammar
                                {
                                        // Cache it
                                        Lexer existing = lexers.putIfAbsent( 
fullname, lexer );
-                                       if( existing != null )
+                                       if( existing != null ) {
                                                lexer = existing;
+                                       }
                                }
 
                                return lexer;

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-java/sikuli.git

_______________________________________________
pkg-java-commits mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

Reply via email to