From: SourceForge.net <no...@so...> - 2008-05-02 09:25:39
|
Plugin Bugs item #1956010, was opened at 2008-05-02 09:25 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Nobody/Anonymous (nobody) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-05 18:42:54
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Nobody/Anonymous (nobody) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-05 19:02:23
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Nobody/Anonymous (nobody) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-05 21:11:18
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Nobody/Anonymous (nobody) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-05 21:28:30
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Settings changed) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) >Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-06 18:00:05
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-06 11:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-06 18:16:43
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 13:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 12:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 16:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-06 18:54:16
|
Plugin Bugs item #1956010, was opened at 2008-05-02 02:25 Message generated for change (Comment added) made by elberry You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Townsfolk (elberry) Date: 2009-10-06 11:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 11:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 10:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 14:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 12:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 11:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-06 20:07:56
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 15:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 13:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 13:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 12:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 16:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-08 05:04:46
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-07 23:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 14:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 12:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 12:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 11:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-09 17:05:13
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None >Status: Closed >Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-09 11:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-07 23:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 14:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 12:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 12:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 11:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-15 18:36:00
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Closed Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 13:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 12:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-08 00:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 15:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 13:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 13:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 12:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 16:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-15 19:10:37
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Closed Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-15 13:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 12:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 11:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-07 23:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 14:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 12:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 12:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 11:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-15 20:51:35
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Closed Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:51 Message: JavaSideKick is 2.6.0 and ProjectViewer is 2.9.1. I haven't updated ProjectViewer manually, but I can grab the latest (dated Sept 30?) from the URL in the comments below. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 14:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 13:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 12:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-08 00:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 15:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 13:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 13:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 12:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 16:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-15 20:59:05
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Closed Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:59 Message: Okay; I just upgraded to the latest that was in the dir at the URL below (Oct 12 for JavaSideKick, Sept 30 for ProjectViewer) and I get the same behavior. Could be an OS issue? I use Kubuntu. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:51 Message: JavaSideKick is 2.6.0 and ProjectViewer is 2.9.1. I haven't updated ProjectViewer manually, but I can grab the latest (dated Sept 30?) from the URL in the comments below. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 14:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 13:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 12:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-08 00:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 15:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 13:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 13:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 12:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 16:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-15 21:14:14
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Settings changed) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None >Status: Open Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-15 15:14 Message: Where can I get a copy of the portlet.jar you're using? I doubt it's an OS issue. Also, what version of the Sidekick plugin are you using? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 14:59 Message: Okay; I just upgraded to the latest that was in the dir at the URL below (Oct 12 for JavaSideKick, Sept 30 for ProjectViewer) and I get the same behavior. Could be an OS issue? I use Kubuntu. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 14:51 Message: JavaSideKick is 2.6.0 and ProjectViewer is 2.9.1. I haven't updated ProjectViewer manually, but I can grab the latest (dated Sept 30?) from the URL in the comments below. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 13:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 12:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 11:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-07 23:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 14:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 12:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 12:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 11:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-15 22:44:34
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 16:43 Message: You can grab it here: http://jcp.org/aboutJava/communityprocess/final/jsr286. Mine is bundled with Liferay Portal (http://www.liferay.com), but it's the same .jar. Sidekick reports itself as 0.8. Thanks! ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 16:14 Message: Where can I get a copy of the portlet.jar you're using? I doubt it's an OS issue. Also, what version of the Sidekick plugin are you using? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:59 Message: Okay; I just upgraded to the latest that was in the dir at the URL below (Oct 12 for JavaSideKick, Sept 30 for ProjectViewer) and I get the same behavior. Could be an OS issue? I use Kubuntu. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:51 Message: JavaSideKick is 2.6.0 and ProjectViewer is 2.9.1. I haven't updated ProjectViewer manually, but I can grab the latest (dated Sept 30?) from the URL in the comments below. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 14:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 13:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 12:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-08 00:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 15:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 13:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 13:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 12:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 16:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-20 05:09:25
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2009-10-19 23:09 Message: Please give the latest a try after the daily build tomorrow. You can get it from here: http://www.tellurianring.com/projects/jedit-daily/index.php I fixed quite a few issues with code completion, it seems to be working really well now. I added a little more to the documentation also, in particular, the fact that the source directories are not used at all for code completion. So for your own classes to be included in code completion, they need to have been compiled already. I have one more thing to fix that I'm not quite sure how to do yet. I used your example "doView" method for testing, and found that javax.servlet.http.Cookie is required for it to actually compile. I can produce a warning that the jar containing the Cookie class is not available, but I need to figure out a good way to display that warning. A popup would be too intrusive, I think, and the ErrorList plugin really isn't suited to showing errors that are not line number based. I'd like to get this fixed before the next release of this plugin. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:43 Message: You can grab it here: http://jcp.org/aboutJava/communityprocess/final/jsr286. Mine is bundled with Liferay Portal (http://www.liferay.com), but it's the same .jar. Sidekick reports itself as 0.8. Thanks! ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 15:14 Message: Where can I get a copy of the portlet.jar you're using? I doubt it's an OS issue. Also, what version of the Sidekick plugin are you using? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 14:59 Message: Okay; I just upgraded to the latest that was in the dir at the URL below (Oct 12 for JavaSideKick, Sept 30 for ProjectViewer) and I get the same behavior. Could be an OS issue? I use Kubuntu. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 14:51 Message: JavaSideKick is 2.6.0 and ProjectViewer is 2.9.1. I haven't updated ProjectViewer manually, but I can grab the latest (dated Sept 30?) from the URL in the comments below. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 13:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 12:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 11:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-07 23:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 14:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 12:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 12:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 11:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2009-10-20 15:07:18
|
Plugin Bugs item #1956010, was opened at 2008-05-02 04:25 Message generated for change (Comment added) made by sez11 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-20 10:07 Message: Will do (the upcoming 10/20/2009 build, right?). Looking forward to testing it! Please let me know if you want the entire project. It's example code for an upcoming book I am writing (in which jEdit is featured in some screen shots). Thanks! ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-20 00:09 Message: Please give the latest a try after the daily build tomorrow. You can get it from here: http://www.tellurianring.com/projects/jedit-daily/index.php I fixed quite a few issues with code completion, it seems to be working really well now. I added a little more to the documentation also, in particular, the fact that the source directories are not used at all for code completion. So for your own classes to be included in code completion, they need to have been compiled already. I have one more thing to fix that I'm not quite sure how to do yet. I used your example "doView" method for testing, and found that javax.servlet.http.Cookie is required for it to actually compile. I can produce a warning that the jar containing the Cookie class is not available, but I need to figure out a good way to display that warning. A popup would be too intrusive, I think, and the ErrorList plugin really isn't suited to showing errors that are not line number based. I'd like to get this fixed before the next release of this plugin. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 16:43 Message: You can grab it here: http://jcp.org/aboutJava/communityprocess/final/jsr286. Mine is bundled with Liferay Portal (http://www.liferay.com), but it's the same .jar. Sidekick reports itself as 0.8. Thanks! ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 16:14 Message: Where can I get a copy of the portlet.jar you're using? I doubt it's an OS issue. Also, what version of the Sidekick plugin are you using? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:59 Message: Okay; I just upgraded to the latest that was in the dir at the URL below (Oct 12 for JavaSideKick, Sept 30 for ProjectViewer) and I get the same behavior. Could be an OS issue? I use Kubuntu. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:51 Message: JavaSideKick is 2.6.0 and ProjectViewer is 2.9.1. I haven't updated ProjectViewer manually, but I can grab the latest (dated Sept 30?) from the URL in the comments below. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 14:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 13:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 12:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-08 00:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 15:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 13:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 13:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 12:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 16:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 16:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 14:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 13:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |
From: SourceForge.net <no...@so...> - 2010-06-17 14:50:23
|
Plugin Bugs item #1956010, was opened at 2008-05-02 03:25 Message generated for change (Comment added) made by daleanson You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None >Status: Closed Resolution: Fixed Priority: 5 Private: No Submitted By: michael michaud (michaudm) Assigned to: Dale Anson (daleanson) Summary: Code completion not working with JavaSidekick Initial Comment: I get code completion for objects from the standard java library, but not for objects from my own library. Tested with jEdit4.3pre14, Sidekick 0.7.4 JavaSidekick 2.3.6 ProjectViewer 2.1.3.7 Windows XP home SP2 Detailed explanations. Let's say I have a project called "MyProject" with ClassA.java ClassB.java I select "MyProject" in the Project Viewer and set its classpath settings as follows : include system classpath = true classpath = the path to my myproject.jar (and dependencies) sourcepath = the directory containing ClassA.java and ClassB.java build path = the build directory Now I edit ClassA.java If I type : Math. I get a popup list with all the static methods If I type : String astring = "anything"; astring. I again get a popup list with all the object methods If I type : ClassB b = new ClassB(); b. I get nothing and can't auto-complete Michael ---------------------------------------------------------------------- >Comment By: Dale Anson (daleanson) Date: 2010-06-17 08:50 Message: This is fixed. Between the fixes I did last year and the work that Damien has done since then, code completion is working very well now. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-20 09:07 Message: Will do (the upcoming 10/20/2009 build, right?). Looking forward to testing it! Please let me know if you want the entire project. It's example code for an upcoming book I am writing (in which jEdit is featured in some screen shots). Thanks! ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-19 23:09 Message: Please give the latest a try after the daily build tomorrow. You can get it from here: http://www.tellurianring.com/projects/jedit-daily/index.php I fixed quite a few issues with code completion, it seems to be working really well now. I added a little more to the documentation also, in particular, the fact that the source directories are not used at all for code completion. So for your own classes to be included in code completion, they need to have been compiled already. I have one more thing to fix that I'm not quite sure how to do yet. I used your example "doView" method for testing, and found that javax.servlet.http.Cookie is required for it to actually compile. I can produce a warning that the jar containing the Cookie class is not available, but I need to figure out a good way to display that warning. A popup would be too intrusive, I think, and the ErrorList plugin really isn't suited to showing errors that are not line number based. I'd like to get this fixed before the next release of this plugin. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 15:43 Message: You can grab it here: http://jcp.org/aboutJava/communityprocess/final/jsr286. Mine is bundled with Liferay Portal (http://www.liferay.com), but it's the same .jar. Sidekick reports itself as 0.8. Thanks! ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 15:14 Message: Where can I get a copy of the portlet.jar you're using? I doubt it's an OS issue. Also, what version of the Sidekick plugin are you using? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 14:59 Message: Okay; I just upgraded to the latest that was in the dir at the URL below (Oct 12 for JavaSideKick, Sept 30 for ProjectViewer) and I get the same behavior. Could be an OS issue? I use Kubuntu. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 14:51 Message: JavaSideKick is 2.6.0 and ProjectViewer is 2.9.1. I haven't updated ProjectViewer manually, but I can grab the latest (dated Sept 30?) from the URL in the comments below. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-15 13:10 Message: It works really well for me. Did you upgrade to the latest release of JavaSideKick? If so, it should have upgraded ProjectViewer also. Would you verify the versions you have and report them here? ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-15 12:35 Message: Hello, This still does not work for me. I can get completion now in methods, but only for JDK classes. It does not seem to be reading the class path from ProjectViewer. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-09 11:05 Message: Code completion seems to be working well with my latest changes. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-07 23:04 Message: Try the latest again after the daily build tomorrow. I've uncovered and fixed a few bugs related to the class path settings. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 14:07 Message: Thank you! I downloaded the .jar, extracted it to my .jedit/jars folder and restarted jEdit. It looks like some method variables work now, but I am seeing what the original ticket poster sees. If I use a class that's in the JDK, such as String, completion works. I have set up my project and dependency .jars in ProjectViewer. One of these dependencies is portlet.jar, which is the JSR-286 portlet API. If I have a method like this: public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { String jsp = (String) renderRequest.getParameter("pg"); I can get completion on the jsp variable, because it's a String. However, I can't get completion on renderRequest, presumably because it's in the portlet.jar on the classpath in the ProjectViewer. So something seems to be wrong with the way JavaSideKick is seeing the classpath. Another interesting thing: I can't generally get any completion on a new variable that I have just typed right away. I have to wait for jEdit to autosave the file first. I don't know if there's any way of getting around that, but I thought I'd mention it. Thanks for your hard work and for being so responsive! ---------------------------------------------------------------------- Comment By: Townsfolk (elberry) Date: 2009-10-06 12:54 Message: I've added JavaSideKick to the daily builds. You can get Dale's fix from here: http://www.tellurianring.com/projects/jedit-daily/index.php?dir=JavaSideKick%2F2009-10-06_11-50-45 Just unzip it in your plugins directory and reload it, or restart jEdit. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-06 12:16 Message: Thank you!! I work on another open source project which has no JavaDocs, so code completion is somewhat essential for me if I don't want to be browsing tons of source files to find out what I can and can't do. This may finally enable me to use jEdit for my Java projects, rather than just as a general purpose editor. I will make an attempt at compiling the plugin to test and I'll report back if I can duplicate the other error--which I haven't been able to do thus far. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-06 11:59 Message: The method variable issue is fixed in revision 16273. The problem was that during code completion, the java file is not completely parsable, which causes the end position for parser nodes to be 0, so the current node (the one containing the caret) was not able to be located correctly. Previously, I was identifying the current node by finding the deepest node that contained the caret location by checking that the caret was between the start and end positions of the node. Now I'm also checking for the case where the end position is 0, and in that case, I'm finding the node whose start position is closest to the caret position. Actually, the code was much nicer than I'd remembered. I also realize now that the method issue mentioned by sez11 is really a different bug than the original problem, so I'm leaving this open for now. ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 15:28 Message: :) I doubt it's a simple fix. That code never did work well. I tend to find code completion gets in my way more than it helps me, so I haven't ever been real motivated to make it work better. I recall that being some ugly code. I'll see if I can find some time to look into it again. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 15:11 Message: I duplicated the settings you suggested and have some very repeatable behavior that is likely a bug. If my class has an instance variable, I can get completion on that. For example, I have a portlet project which declares this variable as part of the class: protected String editJSP; and then later an init() method gives it with a value. I can type editJSP. anywhere in the class and get popups. However, this does not work for any method variables. So if I am in a method and I type: String aString = "Hello"; astring. I get nothing. If I do the same exact thing but make it a class variable, then I can get completion on that variable in any method of my class. So for whatever reason, it looks like completion only works for variables of the class. Hopefully this is a minor, easily fixable issue, since it seems fairly consistent. :-) ---------------------------------------------------------------------- Comment By: Dale Anson (daleanson) Date: 2009-10-05 13:02 Message: Please check that you have these settings. I copied this from the help file for JavaSideKick: SideKick settings for completion: SideKick settings are found in jEdit at: Plugins->Plugin Options->SideKick "Show completion popups where possible" must be checked for the completion to work. "Parse on buffer switch and save" is recommended for JavaSideKick in general. "Parse on keystroke" is recommended for completion to work well. "After last keystroke, wait (second)" should be set somewhat high for the parse on keystroke setting to not be too memory intensive. I recommend at least 2 seconds, you'll want to adjust for your typing speed, machine speed, and coding style. Assuming you've done all that, and it still doesn't work, it's probably a bug. ---------------------------------------------------------------------- Comment By: Rich Sezov (sez11) Date: 2009-10-05 12:42 Message: I am using pre17, JavaSideKick 2.5.0, and ProjectViewer 2.9.1 and cannot get any code completion to work. Here are my steps: 1. Set up the project in ProjectViewer 2. Under Classpath Settings, select Include System Classpath 3. Add the necessary .jars for my project in Classpath section of the dialog box 4. Add my source folders to the Source path section of the dialog box 5. Add a build folder to the build output path of the dialog box 6. Click Apply, Click Ok. 7. Use the Project Viewer to open a source file in my project 8. Try code completion on anything. When the dot key (.) is pressed (i.e., myString.), jEdit appears to access the disk, but no code completion occurs. Can somebody definitively say whether this is broken or if there's some configuration issue? Thanks! ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=1956010&group_id=588 |