First I would like to thank you for the efforts that have gone into this project. I am integrating RSyntaxTextArea and the Language support projects into a data integration framework. It uses the Rhino engine for scripting data transformations and other purposes. I have spent the last couple of weeks getting to know the code and would like to offer an update for JavaScript auto complete with useBeanproperties = true. I discovered that it would only auto complete Java variables if they were declared using a fully qualified class name. I tried both importClass and importPackage but an unqualified name is not recognized.

I made the following changes to get the qualified name from the JarManager when a new TypeDeclaration is created:

/** * Gets the fully qualified name for a class if it can be located * in one of the jars on the build path. * @param name the class name to locate. * @return String fully qualified class name or the name if the class * could not be located. */ public static String getQualifiedName(String name) { String lowerCaseText = name.toLowerCase(); for (int i=0; i < classFileSources.size(); i++) { JarReader jar = (JarReader) classFileSources.get(i); List classFiles = jar.getClassesWithNamesStartingWith(lowerCaseText); if (classFiles!=null) { for (Iterator j=classFiles.iterator(); j.hasNext(); ) { ClassFile cf = (ClassFile)j.next(); if (cf.getClassName(false).equals(name)) return cf.getClassName(true); } } } return name;}

The only potential issue I can see with this is the static modifier on classFileSources, which could be an issue if there are multiple instances of the editor running in a VM and they require different jars on the build path. In my case, there can be multiple instances but the same jars are loaded in all cases.

I don't use the JS language support too much, and it is contributed by another user, so you may get better visibility if you post this as an issue on GitHub (or submit a pull request). The author will then get notification of the issue and might respond (I don't think he monitors this forum). I can then also take a look and if they look simple enough I'll commit them if he doesn't.