Re: JDEE Wiki?
Yeah, I second the motion of using the Emacs Wiki - that would be the most natural place for it. A lot of things that come up are related to other Emacs packages, so the cross-referencing would be useful. On Oct 18, 2004, at 5:05 PM, Ole Arndt wrote: Hi Nascif, Nascif Abousalh-Neto [EMAIL PROTECTED] writes: Have you considered hosting a Wiki for the JDEE? I think it would cut a lot on basic questions, as it would be a more friendly way for JDEE users to share and organize their knowledge, tips, etc. It would definetely be more effective than browsing the mailing list. Why don't you use the EmacsWiki? [http://emacswiki.org]. Hey, you have a user page there,so you know it. There is already a page for JDEE: http://www.emacswiki.org/cgi-bin/wiki/JavaDevelopmentEnvironment Let's extend it. A Wiki with attachments capabilities (like JSPWiki) would also make it easier for users to post their own patches, plugins, etc. Ok, binaries are not possible on the EmacsWiki, but do we need it? code snippets or pointers to supplementary packages should suffice. -- Ole Arndt http://www.sugarshark.com
Re: Jde Xref problem
I think jde-usages is a perfectly acceptable replacement, and there is really no difference in functionality as far as I know. On Aug 18, 2004, at 4:08 AM, Jens Lautenbacher wrote: Maybe OT, but does anybody know what feature the normal jde-xref has that isn't done faster and without all the db stuff by the jde-usages plugin? While I really think jde-xref is cool, maybe we should think about integrating jde-usages itself... jtl
Re: jde-xref works for some methods, not for others
I'm not sure what to tell you Raul. I haven't seen this behavior. If this is for some publicly available source, you could send me the source and I could try and reproduce it. Otherwise, it sounds like you are missing some data - and i suspect that maybe the superclasses of A and B may have something to do with it. There is an alternative to jde-xref, however, that Suraj Acharya has made as a plugin. It does not require a database, and works pretty well. You could ask him for it, or perhaps he could post it to the list so other people can try it out and give feedback. On Apr 28, 2004, at 1:14 PM, Raul Acevedo wrote: I have a large project (almost 2,000 Java files), and sometimes jde-xref works in finding callers, sometimes it doesn't. It seems to be on a per-class basis; i.e. any method in class A I can list callers, but in class B no callers are found for any methods. Looking at the xrefdb directory, it looks like the database was created correctly... i.e. the appropriate -caller file looks like it has the correct entry for class B, with all its methods. Any ideas what could be going on? Raul
Re: fatal error
Try evaling this, it's what caused my problems on 21.3a: (eval-after-load dired '(define-key dired-mode-map [f3] (lambda () (interactive) (w32-browser (dired-replace-in-string / \\ (dired-get-filename)) Latchezar Dimitrov [EMAIL PROTECTED] writes: Hi, I'm not sure what you were talking about. I unpacked (installed?) 21.3a into a new dir and run it w/o any problems. Latchezar -Original Message- From: Suraj Acharya [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 24, 2004 12:41 PM To: Jason Rumney Cc: Mats Sundqvist; [EMAIL PROTECTED] Subject: Re: fatal error Jason Rumney wrote: Mats Sundqvist wrote: I get the following emacs abort dialog when I try to run Emacs with jde: a fatal error has occurred select abort to ... emacs-21.3 (the emacs for windows) If this was downloaded from ftp.gnu.org, then it is broken. Go back to ftp://ftp.gnu.org/gnu/emacs/windows, and download emacs-21.3a-barebin.tar.gz. Unpack that over the top of your existing installation and you should be OK. Make sure you get 21.3a, not the broken 21.3 that is still there because it needs one of the GNU sysadmins to delete it. For those of you who want to play with these new emacs binaries here's what I found: Trying to do a clean install with emacs-21.3a-fullbin.tar.gz does not work (for me at least) - I get a message about a missing emacs/bin/fns-21.3.1.el file. However if you follow Jason's instructions exactly, and rid of the 21.3a directory, then unpack emacs-21.3-fullbin.tar.gz and then emacs-21.3a-barebin.tar.gz on top of that *then* emacs starts up without any problems. Suraj
Re: fatal error
Sorry, you'd have to eval this as well before the last thing I sent: (defun w32-browser (doc) Browse to a particular file/URL using default web browser (w32-shell-execute 1 doc)) Latchezar Dimitrov [EMAIL PROTECTED] writes: Hi, I'm not sure what you were talking about. I unpacked (installed?) 21.3a into a new dir and run it w/o any problems. Latchezar -Original Message- From: Suraj Acharya [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 24, 2004 12:41 PM To: Jason Rumney Cc: Mats Sundqvist; [EMAIL PROTECTED] Subject: Re: fatal error Jason Rumney wrote: Mats Sundqvist wrote: I get the following emacs abort dialog when I try to run Emacs with jde: a fatal error has occurred select abort to ... emacs-21.3 (the emacs for windows) If this was downloaded from ftp.gnu.org, then it is broken. Go back to ftp://ftp.gnu.org/gnu/emacs/windows, and download emacs-21.3a-barebin.tar.gz. Unpack that over the top of your existing installation and you should be OK. Make sure you get 21.3a, not the broken 21.3 that is still there because it needs one of the GNU sysadmins to delete it. For those of you who want to play with these new emacs binaries here's what I found: Trying to do a clean install with emacs-21.3a-fullbin.tar.gz does not work (for me at least) - I get a message about a missing emacs/bin/fns-21.3.1.el file. However if you follow Jason's instructions exactly, and rid of the 21.3a directory, then unpack emacs-21.3-fullbin.tar.gz and then emacs-21.3a-barebin.tar.gz on top of that *then* emacs starts up without any problems. Suraj
Re: xref help
From where are you doing a C-c C-v a? From inside a function should work. Also, to get useful results, you need classfiles that match up with your sources. So if your classfiles are out of date by a while, you may see some strange things. I haven't heard of problems like you've described, however. When you see the call tree, you should get children grouped by class, where the children are the functions that call the function you are interested in. Clicking on the children should take you right to the caller. I'm not sure if any of this will help. If you think the generated xref db must be wrong, then I can tell you how to manually go in and verify that it is wrong. aaron armstrong [EMAIL PROTECTED] writes: Andrew, Thanks for helping me create the xref db. Now I'm trying to use it and I'm a little confused by the way it works. When I display the call tree I get information about classes that don't actually call the method I'm interested in. Then if I do C-c C-v a (xref-first) it takes me to the beginning of the class rather than the place that actually calls the method. Is this the expected behavior? thanks aaron
Re: xref help
jde-xref-update will only work if you edit all your files in the same instance of emacs, then update. I would advise doing a full rebuild nightly while your machine and emacs is idle (use the emacs timer functions). If the creation of the database is slow, make sure your jde-parse-class.el is byte-compiled into jde-parse-class.elc. I've also noticed that it works faster on a brand-new emacs then one that already has a bunch of stuff in memory. aaron armstrong [EMAIL PROTECTED] writes: Andrew, Thanks - it must be that my xref-db is out of date. Does jde-xref-update update the db or do I need to rebuild it? I a working on a very large code base so is there any way to just update what has changed or just update files/packages i specify? thanks aaron At Thu, 19 Feb 2004 14:42:09 -0800, Andrew Hyatt wrote: From where are you doing a C-c C-v a? From inside a function should work. Also, to get useful results, you need classfiles that match up with your sources. So if your classfiles are out of date by a while, you may see some strange things. I haven't heard of problems like you've described, however. When you see the call tree, you should get children grouped by class, where the children are the functions that call the function you are interested in. Clicking on the children should take you right to the caller. I'm not sure if any of this will help. If you think the generated xref db must be wrong, then I can tell you how to manually go in and verify that it is wrong. aaron armstrong [EMAIL PROTECTED] writes: Andrew, Thanks for helping me create the xref db. Now I'm trying to use it and I'm a little confused by the way it works. When I display the call tree I get information about classes that don't actually call the method I'm interested in. Then if I do C-c C-v a (xref-first) it takes me to the beginning of the class rather than the place that actually calls the method. Is this the expected behavior? thanks aaron
Re: jde-2.3.3 error by jde-bug-evaluate-expression
Does it ask for an expression to evaluate first? Harald Maier [EMAIL PROTECTED] writes: Hello all, I installed jde-2.3.3 with eieio-0.17 elib-1.0 semantic-1.4.4 speedbar-0.14beta4 When I evaluate 'jde-bug-evaluate-expression' in a JDEbug session I get the following error: , | Error: cannot get object 269. | Reason: Exception during command execution: jde.debugger.JDEException: No such object exists. | eieio-oref: Wrong type argument: (or object-p class-p), nil ` jde-2.3.2 works fine on this operation. Is this a known bug or it it related to a configuration problem? Harald
Re: jde-2.3.3 error by jde-bug-evaluate-expression
What sort of thing are you trying to evaluate? Perhaps the bug is that the evaluation returns null (legitimately, perhaps) and throws an error incorrectly? Or perhaps a variable has gone out of scope and you are trying to evaluate it? Harald Maier [EMAIL PROTECTED] writes: Andrew Hyatt [EMAIL PROTECTED] writes: Does it ask for an expression to evaluate first? Yes, it asks for an expression and afterwards the above error is signaled. When I evaluate 'jde-bug-evaluate-expression' in a JDEbug session I get the following error: , | Error: cannot get object 269. | Reason: Exception during command execution: jde.debugger.JDEException: No such object exists. | eieio-oref: Wrong type argument: (or object-p class-p), nil ` Harald
Re: occasional error compiling due to jde-xref-compile-hook
In that case, I better take it out. Sorry for the confusion. Raul Acevedo [EMAIL PROTECTED] writes: Andrew Hyatt wrote: Thanks, this looks like a bug. For the time being, substitute with this line: (add-hook 'jde-compile-finish-hook 'jde-xref-update-caller-table) That isn't defined either and eventually gives me the same undefined error. [1462] /usr/share/emacs/site-lisp/jde/lisp]# grep jde-xref-update-caller-table *.el jde-xref.el: (add-hook 'jde-compile-finish-hook 'jde-xref-update-caller-table) Raul
Re: JDEBug - Invalid stack frame
Try using 1.4.1, if you aren't already. At about that time, Sun started just decompiling the code needed for debugging, previously it decompiled everything. Henrik Kjr [EMAIL PROTECTED] writes: Yes, the invalid stack frame message disappears automatically after a while, so everything is okay there. Now I just got the problem that JDEBug is SLOW, so if anyone got any idea how I can speed it up, I would be grateful. I have a client application which communicates with a J2EE server and a mom broker, it normally takes about 10 sekunds to start up, but when I start it up in debug mode it can take anything between 5 and 15 minuttes! I can from my task manager see that emacs constantly uses anything between 70 and 90 pct. cpu and about 35 mb ram, java uses 2 or 3 pct cpu and about 25 mb ram. Any help or tips would be much appreciated Henrik - Original Message - From: Henrik Kjr [EMAIL PROTECTED] To: [EMAIL PROTECTED]; Troy Daniels [EMAIL PROTECTED] Sent: Tuesday, November 04, 2003 9:20 PM Subject: Re: JDEBug - Invalid stack frame Thanx Trey. For some reason JDEBug breaks at my first breakpoint, but the line did not get read and nothing get in my JDEBug window except the exception!? Anyway, I just set another breakpoint in the next line and C-c C-z C-c (continue) and then I get something in my window - nice :-) Henrik - Original Message - From: Troy Daniels [EMAIL PROTECTED] To: Henrik Kjr [EMAIL PROTECTED]; [EMAIL PROTECTED] Sent: Tuesday, November 04, 2003 9:00 PM Subject: Re: JDEBug - Invalid stack frame At 08:47 PM 11/4/2003 +0100, Henrik Kjr wrote: I am trying to use JDEBug for debugging, but I am not having much success. When I start debugging my JDEBug opens nicely, but displays an Invalid stack frame message with red in the buttom of the window, and the window has no content at all. Any idea!? That's actually normal operation. The window is part of a rudimentary GUI, that is a recent addition. It currently only shows the value of local variables. The error message is because, when the debugger starts, it sometimes tries to update the local variable display when the process isn't suspended. That causes an exception, which is reported in red. In my environment, the message usually goes away quickly. Try setting a breakpoint (C-c C-z C-b) in your program on a line after local variables are defined. The line should be green after you set the breakpoint and turn red after you start the JDEbug. When the program gets to that line, the error message should disappear, and the window should show the local variables in a tree view. Troy
Re: occasional error compiling due to jde-xref-compile-hook
Thanks, this looks like a bug. For the time being, substitute with this line: (add-hook 'jde-compile-finish-hook 'jde-xref-update-caller-table) Raul Acevedo [EMAIL PROTECTED] writes: I occasionally get the following error when I compile a Java file: error in process filter: Symbol's function definition is void: jde-xref-compile-hook. If I grep for jde-xref-compile-hook in the JDE sources, I find only one reference in jde-xref.el: (add-hook 'jde-compile-finish-hook 'jde-xref-compile-hook) But I don't see the definition of the function jde-xref-compile-hook. What's going on? Raul
Re: unusual symbol lookup feature
I just noticed the same thing yesterday. Also, it imported a class (the same class, in you instance it would be class A) as well. I don't know what that was about. I figured I just hit a wrong key combination, but maybe not.. [EMAIL PROTECTED] writes: Hi, I find C-c C-v C-y excellent and find myself using it more and more, but occasionally have this odd behavoir: Point is in class A like so: public class A { ... new X().--|--someMethod() ... } and I hit C-c C-v C-y. I get the dialog: === Which class? (*) java.lang.Object ( ) org.omg.CORBA.Object ( ) com.inprise.vbroker.CORBA.Object ( ) org.omg.CORBA.Object [Ok] [Cancel] === At the same time JDE loads class X in the other window. If I select Ok or Cancel we stop there and the cursor rests at: public class X--|-- extends Y { ... Actually class Y, which as you can see is the super of X, implements the method. And if I then go back to the original point and redo C-c C-v C-y the screen splits and in one I have class X (again!) and in the other class Y with point correctly placed after the method name. IMHO class X is a red herring and should not be loaded at all! Also, I can repeat this double-attempt sequence over and over with the same result, so JDE apparently does not learn where the method is defined. Does anybody else also have this? Thanks, Maurice Maurice Nicholson Senior Analyst Programmer SITA Advanced Travel Solutions Tel: +44 (0) 1483 414411 Fax: +44 (0) 1483 414122 Direct: +44 (0) 1483 521294 Email: [EMAIL PROTECTED] This e-mail and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you are not the intended recipient, please notify us immediately and delete it from your system. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. The views and opinions expressed in this e-mail message are the author's own and may not reflect the views and opinions of SITA.
RE: integrating the eclipse compiler with jde
I think I've tried it, but the eclipse plug-in you have to install is out of date, and does not work with the current version of Eclipse. It's been a while since I've look at it, but that's what I remember. -Original Message- From: Molitor, Stephen L [mailto:[EMAIL PROTECTED] Sent: Thursday, October 16, 2003 8:48 AM To: Heinz-Dieter Conradi; JDE Mailing List (E-Mail) Subject: RE: integrating the eclipse compiler with jde Check out jde-eclipse.el: http://www.raffael.ch/index.jsp?content=page/FTP/RemoteEclipse I haven't tried it (but I plan to); apparently it uses the bean shell to have Emacs talk to Eclispe. So when you save a file in Emacs, it compiles in Eclipse, and pipes the error messages back to Emacs. Steve -Original Message- From: Heinz-Dieter Conradi [mailto:[EMAIL PROTECTED] Sent: Thursday, October 16, 2003 3:25 AM To: JDE Mailing List (E-Mail) Subject: integrating the eclipse compiler with jde hi all, i am a happy jde user. however, occasionally i like to work with eclipse. this is not only due to the refactoring possibilities offered by eclipse. another reason is the eclipse compiler, which offers a lot of helpfull warning about e.g. meaningless assignments (ala x = x). the eclipse compiler can be used standalone: java -classpath $eclipse_home/plugins/org.eclipse.jdt.core_3.0.0/jdtcore.jar org/eclipse/jdt/internal/compiler/batch/Main options files i would really like to use it within the jde. if possible as replacement for the javac server. is this possible? has anybody tried to do this? tia, heinz-dieter conradi
Re: Reference card for JDEE
This is nice! It's actually a good overview to show what things could be easier. For example, one of things I want to do after the current release goes out is to make debugging it's own mode, so simple edebug-like keybindings will be in effect... Charles Sutton [EMAIL PROTECTED] writes: Hello all, I have written a draft reference card for JDEE, along the lines of (well, actually, using the TeX source of) the GNU Emacs reference card. The JDEE card is available at http://eksl.cs.umass.edu/~casutton/jde/ I will happily accept comments or patches! Cheers, Charles -- Charles Sutton University of Massachusetts, Amherst [EMAIL PROTECTED] URL: http://www.cs.umass.edu/~casutton/
Re: Debug JSP/servlet stuff with JDEE?
[EMAIL PROTECTED] (Kai Grojohann) writes: My coworker was so happy to tell me today that he can debug JSP/servlet applications with hit NetBeans thingy and that it is so easy. I guess that this must also be possible with JDEE. I am used to doing a lot of debugging using print statements, but from time to time it's nice to see a stacktrace and the values of some local variables. So I think it would be nice if it was possible to debug a web application (running in Tomcat 4.x). How to do that? Sure, just run the tomcat process adding -Xdebug -Xrunjdwp\:transport\=dt_socket,server\=y,suspend\=n,address\=9000 to the java command Tomcat uses. Then you can attach. You attach using jdb or JDebug. We also have some packages which live as *.jar files in WEB-INF/lib but where we also have access to the source code. Is it possible to tell JDEE about the directories for these packages, even if the running code comes from the *.jar files? Yes, it's possible. I do this all the time. You don't even need to specify those things in your JDE settings, all you need to do is to set the sourcepatth so that JDE can match up source classes with classes it finds while debugging. -- Two cafe au lait please, but without milk.
Re: Refactoring with JDE?
Paul Kinnucan [EMAIL PROTECTED] writes: Hi Andy, Yes, the current version of semantic has the ability to parse local variables. The upcoming Semantic 2.0 will have a full-blown, yacc-style parser generator, developed by David Ponce, that should support any feature the JDEE needs. Indeed, it should have a revolutionary impact on other Emacs applications, allowing much faster and more accurate parsing that is possible with the regular-expression based parsers used, e.g., for syntax coloring and indentation. I am eagerly awaiting the release of Semantic 2.0. - Paul Thanks for the info. Is an early version of 2.0 ready to play with? If not, any idea when it would be ready?
Re: Refactoring with JDE?
On Wednesday, September 3, 2003, at 07:19 PM, Nascif Abousalh-Neto wrote: Good point. What do you think should be the way to go with support for refactorings in JDE? I can see three major directions: 1) Expanding on the jde-xref functionality 2) Using the new semantic 2.0 - assuming it has all the necessary functionality 3) Use a Java-based backend or C-based, like Transmogrify or xrefactory. I think that using an approach similar to the JDE compile server, which keeps an instance of the java compiler running at all times, the Java approach may be feasible in terms of performance. Then again I don't know how Lisp-based grammars compare in terms of speed and memory usage with Java-based ones. I would think using semantic 2.0 is what we would want. From Paul's earlier email, I think he also is waiting on this. If semantic does not replicate the jde-xref functionality, we can change jde-xref to work on source files rather than class files by using semantic 2.0 to do the parsing. I'm certain it will be slower than what we have now, but it might be worth it. If we don't want to wait for semantic 2.0 we can implement some simple refactorings that use that functionality such as rename method with jde-xref. I had previously worked on such a system for doing refactorings, but ran up against a problem where I wasn't sure whether we should update the xref db based on the new refactoring or not. It's one of the strange issues that arise from us parsing class files instead of source file. Using a third party Java-based backend might be easiest, but I'm afraid that such a loose integration wouldn't give us many of the cool features we would want. My personal view, that is not shared by many I fear, is that we should do as much as humanly possible in elisp. The more we do in elisp, the faster and better integrated it will be.
Re: Completion for jde-open-class-source
This is nice. I don't believe there is a way to get a list of class names through reflection (doing so might be considered a security violation by the Java designers). So either we get the list through a recursive descent of the jde-sourcepaths or we do what you have done. Personally, I just use TAGS. JDE includes a tagsfile builder shell script in the scripts directory. The downside is it won't be as accurate as doing a JDE-centric command, as you have done. But I'm very happy other people are beginning to use the macros in jde-class.el! Suraj Acharya [EMAIL PROTECTED] writes: Here is my not so good way of getting class name completion for C-c C-v C-y. (defvar jde-all-built-classes '()) (with-all-class-files (name) (let* ((start-pos (string-match /\\([a-zA-Z0-9]*\\)\\.class name)) (end-pos (match-end 1))) (when (and start-pos end-pos) (setq classes (cons (list (substring name (+ 1 start-pos) end-pos)) jde-all-built-classes) (defun jde-open-class-source-new () (interactive) (if jde-all-built-classes (jde-open-class-source (completing-read Class: jde-all-built-classes)) (jde-open-class-source))) And then bind C-c C-v C-y to jde-open-class-source-new instead of jde-open-class-source. The extra check for nullness of jde-all-built-classes is because I don't run the (with-all-class-files ... bit on start-up, but rather by hand, since it takes a bit of time to complete. I'm looking into integrating this with jde-xref so the class names get cached across jde sessions. Does anyone have any ideas or suggestions for better ways of doing this? Suraj Acharya
Yank and indent
I was think it would be nice if yanks would indent properly. I wrote the following code to do that. Enjoy... (defadvice yank (after jde-indent-after-yank activate) Do an indent after a yank (let ((transient-mark-mode nil)) (indent-region (region-beginning) (region-end) nil)))
Re: Useful helper functions - region based jde-gen-try
Chitale, Sandip V [EMAIL PROTECTED] writes: My original question was can I avoid M-x jde-gen-try RET Throwable RET and simply type t r y SPC with region around - x = x/0; and get the same behaviour as above. Any thoughts? sandip I'm guessing that hard to do without intercepting every keystroke. For the reason you stated, once you start typing, the region will be deactivated. I'd say it's possible with emacs, but we'd have to implement a previous-region variable, and if a user types a non-command key then if there is a region, it stores it in the previous-region variable. And once a completion fails (a user types in a non-keyword), we'd have to clear that previous region function. So, possible, but difficult. Unless a facility for storing previous regions exists already, but I was unable to find it.
Re: JDE-CVS-Commit
Paul Kinnucan [EMAIL PROTECTED] writes: [EMAIL PROTECTED] writes: Update of /pack/anoncvs/jde/lisp In directory sunsite.dk:/tmp/cvs-serv11659 Modified Files: jde-xref.el Log Message: Made jde-xref-store-prefixes non-optional. I think if we didn't do this, most people would leave it blank, therefore significantly impacting both size of the database and the time and memory it takes to make it. Hi Andy, How about making nil default to the package of the class in the current source buffer? I'm not sure I want to make any assumptions. Typically, people would want their database to encompass more than one package. Plus, I anticipate that this will not always be invoked from a Java buffer. For instance, you could rebuild the database every night, and in that case you wouldn't be in a buffer. Also, I'd like to suggest renaming jde-xref-store-prefixes to jde-xref-packages as that more clearly indicates the variables purpose. Let me think about this one. The thing is, the variable doesn't contain package names, it contains package prefixes. But the name is a bit confusing, I agree. - Paul
Re: JDE-CVS-Commit
Paul Kinnucan [EMAIL PROTECTED] writes: I think it's nice to have all the jde-xref variables to have defaults that allow a new user to try it out quickly without having to do any preliminary setup, which is now required with your latest change. Previously, the default for this variable was to cross-ref the universe by default. I'm suggesting that we change it to cross-ref the current package. Is this what the user is likely to want ultimately? No, but it's a good starting point. The new user should quickly notice that the xrefing is limited and this should lead them to the doc to find out why. Xref already requires the user to set up the jde-xref-db-base-directory as well as the jde-built-class-path. There may be a way to automatically guess these things, but I couldn't see how with the jde variables already there. The base directory should usually correspond to something in the sourcepath, but we don't know which entry. And the jde-built-class-path cannot be figured out from the classpath, it's actually a subset of the classpath, but again we don't know what subset. So we need the user to fill out two things, with my latest change, it's now three things. I would rather force the user to fill out a reasonable value. I think not doing so will confuse users, and they may assume it doesn't work right.We could try to guess this one, but I think it would be an error prone process.I would like to minimize confusion and potential bugs, that's why I like the user to fill this one out. Let me think about this one. The thing is, the variable doesn't contain package names, it contains package prefixes. What's the difference? Well, it's that package (in the sense that something like com or org is a package), and all children of that package. To be specific, it's just whatever packages match that any of the prefixes in this variable, so the prefix co would match com.foo.bar. But the name is a bit confusing, I agree. I think this variable, whatever its name, should allow the user to specify the packages that the user wants to xref, including specifying that all subpackages of a package be xrefed, e.g., if I have a package structure like this: pkgA pkgAa pkgAb I should be able to specify pkgA and have everything in pkgA, including pkgAa and pkgAb, xrefed. On the other hand, if I specified pkgA.pkgAb, I'd expect only pkgAb to be xrefed. This is the way it works now. - Paul
Re: JDE-CVS-Commit
Paul Kinnucan [EMAIL PROTECTED] writes: In my ideal world, no setup would be required. If you did nothing, the JDEE would xref the code in the current package (or perhaps prompt you to enter a list of packages with the default being the current package) and store the result in the root of the project directory (i.e., where the prj.el file is stored). Further, you would not need to specify a classpath in addition to jde-global-classpath. The JDEE would be smart enough to process only those portions of jde-global-classpath where the packages that you specify live. Further, you would not even need to build the xref db. If there is no xref db in the db directory, the JDEE would build it the first time you executed jde-xref-first-caller. This would work great for the project I am currently working on here at the Mathworks. There are a lot of classes but they all live in the same root package. If the JDEE were set up the way I described, I'd just have to call jde-xref-first-caller to get started. No tedious setup. - Paul Your suggestions are interesting, and they are doable, I think. And I agree that having a no-setup solution is desirable. My problem would be that they do require some guesswork, and that guesswork may go awry, causing problems. Let me see if I can code something up that does what you suggest.
Re: jde-xref-store-prefixes queston
This probably is a bug. I recommend you keep this variable populated, though, but in the meantime I'll look into it. Schmitt, Christian (ext.) [EMAIL PROTECTED] writes: Hi, I've been trying to get the new xref stuff in JDEE to work. When looking at the doc string for the variable jde-xref-store-prefixes it says: Documentation: A list of what prefixes to put in the database. A value of NIL indicates that to store everything (this will include which functions call java functions like println, etc.) Otherwise, it is a list of prefixes such as: '(org jde), to keep track of all references to classes that start with org or jde. So I thought I'll leave the variable set to NIL and all should be OK. But (so far) I've only got results from (e.g.) jde-xref-display-call-tree when jde-xref-store-prefixes is not NIL but set to the top level directory in my package tree. Is this a bug in the xref code or only in the doc string? Thanks, Christian Schmitt
Re: jde-xref-store-prefixes queston
OK, you can now get around this bug by evaluating this. I don't think I'll check it in, however. I think I'll just enforce the fact that jde-xref-store-prefixes must be populated.If I don't, people may not even use it, and then they might complain the making the xref db is taking long or using a lot of memory. (defun jde-xref-find-or-create-package-in-cache (package) (unless jde-xref-db-base-directory (error The variable `jde-xref-db-base-directory' must be specified to load the xref db)) (if (file-exists-p (jde-xref-get-caller-file package)) (or (jde-xref-find-package-in-cache package jde-xref-cache) ;; Or we need to get the new package and put it in the cache (let ((data (jde-xref-load-package-hashes package))) (setq jde-xref-cache (cons (cons package data) (if ( (length jde-xref-cache) jde-xref-cache-size) (cdr jde-xref-cache) jde-xref-cache))) data)) (jde-xref-create-package-hashes t))) Andrew Hyatt [EMAIL PROTECTED] writes: This probably is a bug. I recommend you keep this variable populated, though, but in the meantime I'll look into it. Schmitt, Christian (ext.) [EMAIL PROTECTED] writes: Hi, I've been trying to get the new xref stuff in JDEE to work. When looking at the doc string for the variable jde-xref-store-prefixes it says: Documentation: A list of what prefixes to put in the database. A value of NIL indicates that to store everything (this will include which functions call java functions like println, etc.) Otherwise, it is a list of prefixes such as: '(org jde), to keep track of all references to classes that start with org or jde. So I thought I'll leave the variable set to NIL and all should be OK. But (so far) I've only got results from (e.g.) jde-xref-display-call-tree when jde-xref-store-prefixes is not NIL but set to the top level directory in my package tree. Is this a bug in the xref code or only in the doc string? Thanks, Christian Schmitt
Re: Trouble Customizing Variable
Your error usually indicates your .emacs file was messed up - perhaps it was missing a parenthesis somewhere, so when it came time to parse your .emacs file to find the location to insert the customization, it failed. Aaron Davies [EMAIL PROTECTED] writes: On Sunday, July 6, 2003, at 08:25 AM, Paul Kinnucan wrote: Aaron Davies writes: On Saturday, July 5, 2003, at 08:34 AM, Paul Kinnucan wrote: Aaron Davies writes: On Wednesday, June 25, 2003, at 02:01 AM, Aaron Davies wrote: I'm having trouble customizing a variable, specifically jde-javadoc-author-tag-template. When I type a new value in the customization buffer and hit set or save, Emacs beeps at me and the minibuffer says End of file during parsing. What's wrong? I cannot reproduce this problem on my system: Windows Millenium, Emacs 21.3.1, JDEE 2.3.3beta4. For example, I changed the default tag to * @author Paul Kinnucan without any problem. Perhaps the problem is with the particular template string you are trying to enter. If you send me the exact template string that you are trying to enter (preferably copied from the customization buffer and pasted into your email), I will investigate further. Well, it seems to work fine now. I have no idea what changed. sigh Sorry to bother you. -- ____ / ) / ) /--/ __. __ / / __. , __o _ _ / (_(_/|_/ (_(_) / / _ /__/_(_/|_\/ __/_/_)_
Re: ecb question
I don't use ECB, but if anyone from that project is interested in doing what Paul suggests, please email me with any questions you might have about jde-xref. Paul Kinnucan [EMAIL PROTECTED] writes: Paul Kinnucan writes: Berndl, Klaus writes: [snip] But: IMHO the best would be to integrate JDEE for that. This could be done like: 1. You select via popup-menu of the ECB-methods-buffer a method for being search for occurences in current source-path/project 2. Then ECB jumps to this method in the source-buffer 3. Then JDEE should have a function jde-find-call-occurences-of-method-under-point which does the search for the occurences with appropriate mechanisms - e.g. with delegating this task to the beanshell - do not know if JDEE has already such a feature or when not how exactly this one could be implemented. 4. ECB would then only call this jde-find-call-occurences-of-method-under-point. Question to Paul: Has JDEE already such a feature? As of JDEE 2.3.3, for which a very stable beta is available at the JDEE web site, yes, thanks to the efforts of Andy Hyatt. See the Cross-Referencing Classes section of the Searching Source Code chapter of the JDEE User's Guide for information on how to build and use a method call cross-reference database for a Java project. Hi Klaus, Some more information about jde-xref. It builds a cross-reference database by parsing Java class files. It includes three functions for navigating the database: * jde-xref-first-caller (C-c C-v a) builds a list of callers of the method at point in the current buffer and displays the first caller. * jde-xref-next-caller (C-c C-v n) displays the next caller on the list built by jde-xref-first-caller. * jde-xref-display-call-tree displays a buffer containing a mouse-sensitive list of the callers of the method at point. Clicking any caller displays the source for that caller. It would be nice to integrate these functions with ECB, e.g., first-caller and next-caller should work for the method selected in the ECB's class window. Also, it would be nice to be able (optionally?) to add a call-tree window to the set of windows that makes up the ECB desktop. That way, a user could 1. Select a method in the class window. 2. Select a Show Callers command from the ECB menu. A Callers window would appear in the ECB desktop. 3. Click a caller in the Callers window. Emacs displays the source of the call. - Paul
Re: [ANNOUNCEMENT] JDEE 2.3.3beta1 available at ...
I think he means the local user's guide, not the website's user's guide. On Thursday, June 19, 2003, at 11:04 AM, Nic Pottier wrote: I can't find any reference to this in the users guide. Can you give us another clue? Maybe the name of the command? -Nic * This release introduces a cross-referencing tool that enables you to find all callers of a specified method in a specified classpath. This can be useful, for example, if you need to change the name of a method. See Cross-Referencing Classes in the JDEE User's Guide. Thanks to Andy Hyatt for contributing this tool to the JDEE.
Re: Bug Report JDE2.3.3beta1
Well, let me see if I can get around this problem. I could perhaps make it so that it will work on Xemacs on Windows, unless your variable/method/class etc names are non-ascii. I'll try and check in a fix today. Jeba Bhaskaran [EMAIL PROTECTED] writes: So would I be wrong in saying cross-refrencer will not work in Xemacs on Windows? Jeba --- Andy Piper [EMAIL PROTECTED] wrote: Its probably a mule issue. Did you build your linux version with mule? There is no mule support for XEmacs on windows currently, I think this will be fixed in 22.0. But even so relying on mule features is highly backwardsly incompatible. I suspect that this only works on the very latest Emacsen also. My guess is that this is a limitation of xemacs on Windows. I can use utf-8 as an encoding system on xemacs on Linux. Perhaps on the mailing list that knows a bit more about xemacs can help? andy __ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com
Re: Bug Report JDE2.3.3beta1
Jeba Bhaskaran [EMAIL PROTECTED] writes: Please enter the details of your bug report here: 1. After installing the beta jde 2.3.3, I have lost syntax highlighting. I installed overlay-fix and stil the syntax highlighting is not working. 2. I am not able to see the jde-xref-... options. I tried M-x jde-xref-customize funtion. When I typed M-x jde-x I only get jde-xemacs-.. completion and do not get any jde-xref-.. completion. I don't know why you are not seeing jde-xref options. Just to be sure, have you restarted emacs after installing the new JDE? Also, try putting this in your .emacs file, and see if it helps: (require 'jde-xref)
Re: Bug Report JDE2.3.3beta1
My guess is that this is a limitation of xemacs on Windows. I can use utf-8 as an encoding system on xemacs on Linux. Perhaps on the mailing list that knows a bit more about xemacs can help? Jeba Bhaskaran [EMAIL PROTECTED] writes: --- Andrew Hyatt [EMAIL PROTECTED] wrote: Jeba Bhaskaran [EMAIL PROTECTED] writes: Please enter the details of your bug report here: 1. After installing the beta jde 2.3.3, I have lost syntax highlighting. I installed overlay-fix and stil the syntax highlighting is not working. 2. I am not able to see the jde-xref-... options. I tried M-x jde-xref-customize funtion. When I typed M-x jde-x I only get jde-xemacs-.. completion and do not get any jde-xref-.. completion. I don't know why you are not seeing jde-xref options. Just to be sure, have you restarted emacs after installing the new JDE? Also, try putting this in your .emacs file, and see if it helps: (require 'jde-xref) OK I added (require 'jde-xref) and I can set the xref options. I get a backtrace when I try to run jde-xref-make-.. function. Trace follows: Signaling: (error No such coding system utf-8) encode-coding-region(1 8 utf-8) encode-coding-string(m_homes utf-8) (let* ((len ...) (result ...)) (goto-char (+ len ...)) result) jde-parse-class-get-utf8-constant() (list (quote utf8) (jde-parse-class-get-utf8-constant)) (backquote (utf8 (\, ...))) (cond ((eq const-type 7) (backquote ...)) ((eq const-type 9) (backquote ...)) ((eq const-type 10) (backquote ...)) ((eq const-type 11) (backquote ...)) ((eq const-type 8) (backquote ...)) ((eq const-type 3) (backquote ...)) ((eq const-type 4) (backquote ...)) ((eq const-type 5) (backquote ...)) ((eq const-type 6) (backquote ...)) ((eq const-type 12) (backquote ...)) ((eq const-type 1) (backquote ...))) (let ((const-type ...)) (forward-char) (cond (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...))) jde-parse-class-get-next-constant() (let ((const ...)) (aset const-vec i const) (when (or ... ...) (aset const-vec ... nil) (setq i ...))) (while ( i --dotimes-temp--83104) (let (...) (aset const-vec i const) (when ... ... ...)) (incf i)) (let ((--dotimes-temp--83104 count) (i 0)) (while ( i --dotimes-temp--83104) (let ... ... ...) (incf i)) const-vec) (catch (quote --cl-block-nil--) (let (... ...) (while ... ... ...) const-vec)) (cl-block-wrapper (catch (quote --cl-block-nil--) (let ... ... const-vec))) (block nil (let (... ...) (while ... ... ...) const-vec)) (dotimes (i count const-vec) (let (...) (aset const-vec i const) (when ... ... ...))) (let* ((count ...) (const-vec ...)) (setq i 0) (goto-char 11) (dotimes (i count const-vec) (let ... ... ...))) jde-parse-class-get-constants() (let* ((constants ...) (version ...) (access ...) (this-class ...) (superclass ...) (interfaces ...) (fields ...) (methods ...) (attributes ...)) (kill-buffer buf) (backquote (... ... ... ... ... ... ... ...))) (let ((buf ...)) (set-buffer buf) (let* (... ... ... ... ... ... ... ... ...) (kill-buffer buf) (backquote ...))) jde-parse-class(c:\\webservices\\classes\\org\\aarp\\common\\ejb\\EJBHelper.class) (let ((info ...)) (jde-xref-add-class-info-to-db info package-data subclasses) (add-to-list (quote --with-all-class-infos-pclasses83065) (jde-parse-class-extract-classname info))) (if (and (not ...) (funcall ... --with-all-class-infos-cfile83066)) (let (...) (jde-xref-add-class-info-to-db info package-data subclasses) (add-to-list ... ...))) (if (string-match .[Cc][Ll][Aa][Ss][Ss]$ --with-all-class-infos-cfile83066) (if (and ... ...) (let ... ... ...))) (lambda (--with-all-class-infos-cfile83066) \nCommon Lisp lambda list:\n (cl-none --WITH-ALL-CLASS-INFOS-CFILE83066)\n\n (if (string-match .[Cc][Ll][Aa][Ss][Ss]$ --with-all-class-infos-cfile83066) (if ... ...)))(c:\\webservices\\classes\\org\\aarp\\common\\ejb\\EJBHelper.class) funcall((lambda (--with-all-class-infos-cfile83066) \nCommon Lisp lambda list:\n (cl-none --WITH-ALL-CLASS-INFOS-CFILE83066)\n\n (if (string-match .[Cc][Ll][Aa][Ss][Ss]$ --with-all-class-infos-cfile83066) (if ... ...))) c:\\webservices\\classes\\org\\aarp\\common\\ejb\\EJBHelper.class) (if (file-directory-p --with-all-class-files-dir2-sym83070) (cl-block-wrapper (catch ... ...)) (funcall (symbol-value G83084) --with-all-class-files-dir2-sym83070)) (lambda (G83084 G83085 G83086 --with-all-class-files-dir2-sym83070) (if (file-directory-p --with-all-class-files-dir2-sym83070) (cl-block-wrapper ...) (funcall ... --with-all-class-files-dir2-sym83070)))(--G83077-- --G83078-- --G83079-- c:\\webservices\\classes\\org\\aarp\\common\\ejb\\EJBHelper.class) apply((lambda (G83084 G83085 G83086 --with-all-class-files-dir2-sym83070) (if (file-directory-p --with-all-class-files-dir2-sym83070) (cl-block-wrapper ...) (funcall
Re: [PATCH] smart complete?
otisg - What new packages on xemacs.org are you referring to? andy - I'm not sure I would like tab to complete. Completion sometimes is very, very slow. I once narrowed down the slowness to the part where we have to go through the import list and try to fully qualify the class getting imported. Plus, completion is sometimes flaky, and there are situations where it doesn't work at all. At any rate, until completion works better, I would vote to hold off on that change. Or check in it, with a default of off. otisg [EMAIL PROTECTED] writes: Sounds yummy as long as it can be turned on/off (like jde-abbrev stuff). I can't wait for the new packages on xemacs.org... Otis On Tue, 1 Apr 2003, Andy Piper ([EMAIL PROTECTED]) wrote: I haven't submitted this, but I like this idea. This basically rebinds indent key (TAB usually) to indent and then try completion if indentation does nothing. What do people think? andy 2003-04-01 Andy Piper [EMAIL PROTECTED] * jde.el (jde-mode): bind TAB to jde-indent-or-complete. * jde-complete.el (jde-indent-or-complete): new function. run c-indent-command and then completion if no indentation occurred. ATTACHMENT 1: application/octet-stream; name=compl.patch DISPOSITION: attachment; filename=compl.patch Get your own 800 number Voicemail, fax, email, and a lot more http://www.ureach.com/reg/tag
Re: Mac OS X....again
what is the value you have set for jde-jdk, and for jde-jdk-registry? Tor Olaussen [EMAIL PROTECTED] writes: Hi, I'm new to the list and trying to get jde up and running on my Mac OS X 10.2.4... I've downloaded and installed jde-2.3.2 with necessary support packages. Everything seems to be working fine, except when trying to compile: the dreaded: see jde-get-jdk-dir... I've searched the archives, and found one or two patches, plus usefull information about how Apple has repacked the jdk on Mac OS X. Can someone point me to the most straightforward and accepted way of installing jde on Mac OS X? BTW, i'm using the enhanced carbon emacs v.2.1 found at: http://www.cs.man.ac.uk/~franconi/mac-emacs/ Thanks for any help! --tor
Re: tags?
Yes, using tags gives you access to functionality that JDE doesn't have. Like a quick take-me-to-class functionality. JDE has several take-me-to-class-at-point functionality, but that's not quite the same. Plus, JDE often makes you choose between classes of the same name in different packages, while tags lets you cycle through. I prefer to cycle through. Also, you can do nifty things like tags-query-replace, to replace one regexp with some text everywhere in your source. Very nice. Le Wang [EMAIL PROTECTED] writes: Hi, Does anyone use tags with jdee? I fail to see the point of them. And it seems to add an extra layer of complexity, i.e. constantly updating the tags table. Or is it that I just don't get the tags concept? -- Le __ Post your free ad now! http://personals.yahoo.ca
Re: tags?
I believe you need to make sure emacs's etags get called, not the cygwin etags. Delete or rename the cygwin etags and try it again. Jayakrishnan Nair [EMAIL PROTECTED] writes: After reading this thread, I thought I would try jtags. This is what happens. I think I am using a version of etags which does not support --regex option. The JDEE users guide does not mention anything about this. Any pointers ? I am using Cygwin on Win2K and etags came with that. [/tmp]jtags Tagging classes and constructors etags: Unknown option: --regex Tagging methods etags: Unknown option: --regex Tagging variables etags: Unknown option: --regex [/tmp]type -all jtags jtags is /cygdrive/c/Applications/Editor/emacs-lib/jde-2.3.2/lisp/jtags [/tmp]type -all etags etags is /usr/bin/etags [/tmp]etags --version Exuberant Ctags 5.2, Copyright (C) 1996-2001 Darren Hiebert Compiled: Dec 25 2001, 23:40:03 Addresses: [EMAIL PROTECTED], http://ctags.sourceforge.net [/tmp] -Original Message- From: Andrew Hyatt [mailto:[EMAIL PROTECTED] Sent: Friday, February 28, 2003 9:09 AM To: Le Wang Cc: [EMAIL PROTECTED] Subject: Re: tags? Yes, using tags gives you access to functionality that JDE doesn't have. Like a quick take-me-to-class functionality. JDE has several take-me-to-class-at-point functionality, but that's not quite the same. Plus, JDE often makes you choose between classes of the same name in different packages, while tags lets you cycle through. I prefer to cycle through. Also, you can do nifty things like tags-query-replace, to replace one regexp with some text everywhere in your source. Very nice. Le Wang [EMAIL PROTECTED] writes: Hi, Does anyone use tags with jdee? I fail to see the point of them. And it seems to add an extra layer of complexity, i.e. constantly updating the tags table. Or is it that I just don't get the tags concept? -- Le __ Post your free ad now! http://personals.yahoo.ca
Re: tags?
Le Wang [EMAIL PROTECTED] writes: --- Andrew Hyatt [EMAIL PROTECTED] wrote: Yes, using tags gives you access to functionality that JDE doesn't have. Like a quick take-me-to-class functionality. JDE has several take-me-to-class-at-point functionality, but that's not quite the same. Plus, JDE often makes you choose between classes of the same name in different packages, while tags lets you cycle through. I prefer to cycle through. Also, you can do nifty things like tags-query-replace, to replace one regexp with some text everywhere in your source. Very nice. How do you keep your tags table up to date? This is the scary part for me. From what I've read this is not done via any hooks from within Emacs, but from a shell. Any tips for managing a tags tablefor a large sourcebase? Well, you can call the shell from emacs (shell-command), and you an schedule events to occur in emacs, so that gives you all you need to keep it up to date. But I find I rarely need to keep it up to date, since my java files are not moving around too much, so no update is really needed. -- Le __ Post your free ad now! http://personals.yahoo.ca
Re: Why the JDEE?
I had thought of this as well. Perhaps the JSwat maintainer would be interested in working on it. If you download the JSwat CVS code, you see they arleady use JDEE. See: http://home.nc.rr.com/nascifandelaine/jswat.el Paul Kinnucan [EMAIL PROTECTED] writes: Ralph Jorre writes: I don't often use a debugger but I have found JSwat very good and I just wonder if it wouldn't be more efficient to just include some hooks so as to be able to incorporate it efficiently. Maybe this would be easier to maintain than rewriting the debug. I plan to look into this. The problem is that the task of writing an Emacs front-end to JSwat may outway the advantage of replacing JDEbug with JSwat as the backend. In other words, there already exists a Lisp frontend to JDEbug. So it comes down to whether it makes more sense for me to spend my time on creating a frontend for JSwat or fixing the problems with JDEbug. Complicating the decision is the fact that I have created a generalized object-oriented debugger frontend, based on eieio. I decided to do this because jdb and the JDEbug frontends have a lot in common, e.g., essentially the same code for stepping and setting, recording, and displaying breakpoints. The generalized frontend allows both backends to inherit any improvements to the front end. I have already ported jdb to use the generalized frontend and am in the process of porting the JDEbug frontend to the generalized front end. It is conceivable that the generalized JDEE frontend could ultimately support three backends: jdb JDEbug JSwat In fact, I would prefer this as I believe there is value in having a backend that is tuned to the JDEE plus support for alternative backends as backups or to cater to user preferences for those backends. My preference would be for somebody other than myself to take on the task of creating a JDEE frontend to JSwat's console mode. This would free me to concentrate on the generalized frontend and on fixing the JDEbug backend. Developing a JSwat frontend basically entails subclassing the JDEE's generalized debugger frontend (see jde-db-debugger class) to support JSwat's console commands. This should be a fairly straightforward task. I'd be glad to serve as a consultant to anyone who wants to undertake this project. - Paul
Re: Why the JDEE?
I could not agree more. We love JDEE because we love emacs. Emacs will always be a better editor than any other IDE, therefore JDEE will always be better for editing then any other IDE. Throw in the compiling and debugging tools already there, and it's already an excellent tool. Hopefully people can add advanced functionality as needed, including plug-ins. I agree that debugging needs the most work, and I intend to help with that effort. Paul Kinnucan [EMAIL PROTECTED] writes: Dear JDEE Users, A number of recent threads have alluded to the need for the JDEE to keep pace, featurewise, with the competition, e.g., Eclipse and JBuilder. I'd like to present my perspective on this issue as the JDEE's lead developer and maintainer. It is hopeless for the JDEE to try to compete feature-for-feature with dedicated Java IDE's, especially commercial IDE's. The reason is that the pure Java IDEs do not face the difficult skills and architectural constraints than the JDEE development team faces, e.g., JDEE development requires both Emacs Lisp and Java skills and is constrained to standard I/O for interprocess communications. Why then bother with the JDEE? Because it allows Emacs users to use Emacs to develop Java code. Put another way, the reason for choosing the JDEE will always be Emacs and not the other way around. The JDEE allows Emacs users to make the transition to Java development without having to learn another environment. It also allows users who are, like myself, working in a multilanguage environment (e.g., C/C++/Java) to use a single environment for all their work. Where then should the JDEE development team focus its efforts. The focus should be on those features that best ensure that a decision to use Emacs for Java development does not entail a loss of productivity compared to what other environments afford. In my view, the JDEE's greatest deficiency in this regard is in debugging support. Therefore, it is my intention to focus my efforts personally in this area with the goal of providing the JDEE ASAP, not with the best debugger available, but at least one that does the basics well and reliably. Until then, other features that have been mentioned recently, such as a plugin architecture and syntax errors on the fly, will move forward only in so far as others work on them. Regards, Paul
Re: Questions from a newguy
I think groups.google.com can answer most of these questions. If not, try http://www.emacswiki.org/cgi-bin/wiki.pl For example, I know people have implemented Ctrl-Tab for emacs. Tab questions are puzzling for emacs newbies and are asked a lot on usenet, so groups.google.com will help there as well. Good luck, if you really are stuck on something, I'm sure either here (if it relates to JDE) or the emacs newsgroups (for general emacs questions) can help. Chris [EMAIL PROTECTED] writes: Hi all, I'm a Java et al coder who'd like to give emacs a shot. After 10+ years if never really loving my development environment, I finally grasp what's possible with emacs, and it seems that if I commit to it my IDE can be as good as I feel like making it. I have 3 main goals in the immediate future: 1) To make emacs a little friendlier for Java, C++, text, PHP, etc. In many cases this means making it more like Textpad, which is my current choice and is quite good off the shelf but of course isn't as flexible 2) To get my cash-strapped software team off of Textpad and using emacs (this is quite related to 1), and then extending it for our needs (JBoss/EJBs mostly) 3) To get good at this stuff and help out with the effort. Right now, there are a couple of things preventing me from comfortably coding in Java with emacs. One is file navigation; the other is control of whitespace. For file navigation, I really miss good ol' Ctrl-Tab. KDE seems to eat Ctrl-Tab, but if had some idea on how to make something similar happen I'd be pleased. I seem to remember some help on this previously (maybe on this list!), and as I recall some clever manipulation of the buffer list is necessary for satisfactory results. My problems with whitespace are that 1) I have no control over it -- I don't ever want to hit Tab and have nothing happen, 2) I don't know how to customize it, and 3) it looks like Emacs is not saving tabs as tabs (even though I thought I told it to), so that I can't pleasantly edit files that have been touched by Emacs. I'm not looking for quick fixes / code samples here; I'm willing to do some work, but I'm having a hard time getting started. By the way, Gnu sells a Introduction to Emacs Lisp Programming (I think), that's only available online. I can get by in Lisp, and I've read the online reference manual, but it's a little dry. Thanks all! These aren't JDE questions in some cases, but frankly in the months I've been lurking, I've just been very impressed with the list. Keep up the good work! - C
Re: Introspection based Java class browser....also demonstrates alittle bit of java and lisp integration...
This is interesting. I know you've mentioned it before. If this would help the JDE project, I could do this fairly easily. We have the class parsing code already, we just have to tie it into semantic. But since we are not using the latest Semantic, and as far as I know we have no immediate need to change the way we do introspection, for the time being, I will hold off on doing this. Eric M. Ludlam [EMAIL PROTECTED] writes: Hi Klaus, Your last point here about semantic not being able to look into a .class file is valid, however the CVS version semantic 2.0 semanticdb subsystem was recently enhanced to be extensible beyond just typical language parsers. The idea was Paul's originally, and I expanded on that. The basic premise is to sub-class a semanticdb class, and implement all the search methods. Your search methods can then call external programs, or whatever you like before returning a results table. There is an example that will search all Emacs Lisp symbols inside Emacs, regardless of having the sources available. The only part that needs to be done to make your new program support .class files is to extend the database. I can provide you with more details and perhaps start the process if you would like to try extending semanticdb. Have fun Eric -- Eric Ludlam: [EMAIL PROTECTED], [EMAIL PROTECTED] Home: http://www.ludlam.netSiege: www.siege-engine.com Emacs: http://cedet.sourceforge.net GNU: www.gnu.org
Re: JDEE plugins
I wonder if there's a place in here for kawa (http://www.gnu.org/software/kawa/). It would be ideal for java-elisp communication, since it's a scheme environment that runs in Java. It even has an elisp mode! Galen Boyer [EMAIL PROTECTED] writes: On Tue, 18 Feb 2003, [EMAIL PROTECTED] wrote: Sounds like a great idea! I would volunteer to re-write the Jalopy (http://jalopy.sourceforge.net/) integration package I put together. I could also take a stab at a re-write for the integration package for PMD (http://pmd.sourceforge.net/). Those Elisp-Java packages have an awful lot of code in common, and it would be really nice to create a standard way to create them - specially the bit about a standard way to integrate with the BeanShell. I would like to suggest also a standard way for those packages to present their output. A lot of them generate warnings or errors that go very well in a compilation mode buffer. I think this behavior can be abstracted as well. Maybe the beanshell could be viewed as an application server. Let me work through my thoughts. Would it make sense that java code that is executed through the beanshell not have to println(someElispString); but instead, any java code that is to be executed by the beanshell and subsequently eval'd into elisp, return a java datatypes transformable to elisp set of objects, like hashmap, array, ... Then, the beanshell could offer a set of classes which take these particular return objects and transform them into println's of elisp strings to be eval'd by elisp. The only part that doesn't seem clear to me is how to have elisp not have to understand the java code, its structure and exact names as well as its exact syntax. I'm thinking, first an eieio interface to elisp be required to be implemented by the elisp code of the package. A mapping layer, maybe xml, or just elisp list, be used to wire elisp class/method names to java class/methods. Then, the elisp package integrates with a particular elisp interface and the java code integrates with a particular java interface and the elisp to java is the black box that none of the two sides of code knows about, taken care of by the beanshell's black box. This would also allow java requirements for some particular need of the JDEE to be given to a willing java coder and the elisp requirements given to a willing elisp coder and the two sides actually code in their respective VMs without having to hook the two, fairly incompatible VMs up during development. Of course, what I'm thinking is that a JDE user could integrate some jakarta package by working with Paul on the java interface needing to be implemented. Paul or another of the elisp studs, then codes up the elisp side of the house waiting for the java coder to finish his work. Then, elisp becomes a client and the java code becomes the middleware implementing interfaces the beanshell application server will be executing. -- Galen Boyer
Re: JDEbug - Show debug frame on XEmacs
Your problem sounds unsurprising. Like a lot of brand new jde code, it is not tested on xemacs. Thanks for bringing this to my attention, I'll see if there is a good workaround (those more familiar with xemacs please let me know if you know this), else I'll use something like your workaround. Schmitt, Christian (ext.) [EMAIL PROTECTED] writes: Hi, today I used JDEbug for the first time. I clicked on Show debug frame in the JDEbug menu which didn't work on XEmacs 21.4.11 [Win32 native] (JDE 2.3.2) with an error, that 'make-fram-names-alist function definition is void. Now I don't know if there's an XEmacs equivalent to this function. Right now I work around it by putting this in my .emacs: ; ; XEmacs does not have 'make-fram-names-alist ; so we define it when it's not there. ; Source is taken from GNU Emacs' frame.el where ; function 'frame-parameter (in GNU Emacs) hase been ; replaced by 'frame-property ; (if (not (fboundp 'make-frame-names-alist)) (defun make-frame-names-alist () (let* ((current-frame (selected-frame)) (falist (cons (cons (frame-property current-frame 'name) current-frame) nil)) (frame (next-frame nil t))) (while (not (eq frame current-frame)) (progn (setq falist (cons (cons (frame-property frame 'name) frame) falist)) (setq frame (next-frame frame t falist)) ) Cheers, Christian Schmitt
Re: JDEbug - Show debug frame on XEmacs
Sorry, I don't meet to imply that your workaround isn't good. But maybe there's an xemacs make-frame-names-alist equivalent, so it could be a one line change. Andrew Hyatt [EMAIL PROTECTED] writes: Your problem sounds unsurprising. Like a lot of brand new jde code, it is not tested on xemacs. Thanks for bringing this to my attention, I'll see if there is a good workaround (those more familiar with xemacs please let me know if you know this), else I'll use something like your workaround. Schmitt, Christian (ext.) [EMAIL PROTECTED] writes: Hi, today I used JDEbug for the first time. I clicked on Show debug frame in the JDEbug menu which didn't work on XEmacs 21.4.11 [Win32 native] (JDE 2.3.2) with an error, that 'make-fram-names-alist function definition is void. Now I don't know if there's an XEmacs equivalent to this function. Right now I work around it by putting this in my .emacs: ; ; XEmacs does not have 'make-fram-names-alist ; so we define it when it's not there. ; Source is taken from GNU Emacs' frame.el where ; function 'frame-parameter (in GNU Emacs) hase been ; replaced by 'frame-property ; (if (not (fboundp 'make-frame-names-alist)) (defun make-frame-names-alist () (let* ((current-frame (selected-frame)) (falist (cons (cons (frame-property current-frame 'name) current-frame) nil)) (frame (next-frame nil t))) (while (not (eq frame current-frame)) (progn (setq falist (cons (cons (frame-property frame 'name) frame) falist)) (setq frame (next-frame frame t falist)) ) Cheers, Christian Schmitt
Re: Problem setting breakpoint with JDEbug
Very odd. This should work. To double check, perhaps you can execute these lines: (if (not (fboundp 'line-beginning-position)) (defsubst jde-line-beginning-position (optional N) (save-excursion (beginning-of-line N) (point))) (defalias 'jde-line-beginning-position 'line-beginning-position)) (if (not (fboundp 'line-end-position)) (defsubst jde-line-end-position (optional N) (save-excursion (end-of-line N) (point))) (defalias 'jde-line-end-position 'line-end-position)) Execute them by marking them as a region (using ctrl-space at the beginning and then moving to the end of the region) and then doing M-x eval-region. Does it still happen after you do that? These lines are from jde-db.el, and should insure that line-beginning-position is defined no matter what your system is. Perhaps you do not have these lines, or for some reason they are not executing. To be safe, you really should have a .emacs file. See the JDE manual on how to configure it to use JDE. It may help in this instance, although right now I can't think of a reason why. Tetzlaff, Ralf [EMAIL PROTECTED] writes: Hi, I am new to XEmacs AND to JDE so be indulgent if I am making ridiculous things. I have a problem setting a breakpoint with JDEbug. I started the debugger, launched a process and then tried to set a breakpoint. But nothing happens except an Error Warning: Symbol`s function definition is void: line-beginning-position. Can anyone help me with this? I used the JDE-Help-Submit problem report function and posted the result below. Thanks, Ralf
Re: Newbie has been stuck for weeks tryig to get stop on breakpoint.
You do not need to start the program from JDE to debug it. You can start it any way you want (as long as it has those -Xdebug etc java params) and attach to it. This seems to be working for you. First of all, don't do Display-Variable. Just ignore the whole Display menu. At any rate, you can't display anything until you hit a breakpoint. It looks like your breakpoint is set, and is getting resolved. It must be valid. Either your program simply isn't running into it (this would happen if you set it on statup code, since you have suspend=n. ) or somethng else is happening. Everything you included looks good, so I'm guessing you probably simply aren't running into it. If you are getting any error in attaching or setting the breakpoint, go to the Options menu and set it to debug on error. Then try again, and send the stack trace. Christopher Mark Balz [EMAIL PROTECTED] writes: I've been posting once every 10 days for weeks, and hope someone can point me in the right direction. Problem: --- Not able to get any use out of jdebug yet. With What: - Windows 2000 Service Pack 3, Java 1.4 SDK, Tomcat 3.3 Servlet Engine, GNU Emacs 21.2.1, JDE 2.2.8, a web application that I'm trying to debug, compiled with -g option, running Tomcat from startup.bat with normal successful operation, have TOMCAT_OPTS set to: -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=6001,server=y,suspend=n Description: --- I've gotten as far as successfully attaching to the Tomcat (v3.3) Server process. See below for output. The web application that I am trying to debug does not seem to stop at the breakpoint I set. When I try to Display-Variable, I get an obscure error message referring to an 'unbound slot'. Other Stuff that May Matter: --- On the JDE FAQ page, I noticed that it recommended starting the web server from the JDE. Since tomcat.bat and tomcat.sh are a few hundred lines long, I don't know if this is the best option. Is it necessary? I found the simplified Tomcat startup commands in startup.sh, created a project file, and set the variables indicated in the FAQ entry. But then on JDE-Run App, it used javaw (?I am not using AWT) and the -v option, which crashed the starting of the vm. Any comments? Thank You in Advance! Debugger Output --- *** Debugger Output for Process 6001(1) *** Attached to process on port 6001 of local host. Attached VM (socket) Java Debug Interface (Reference Implementation) version 1.4 Java Debug Wire Protocol (Reference Implementation) version 1.4 JVM Debug Interface version 1.2 JVM version 1.4.0 (Java HotSpot(TM) Client VM, mixed mode) Running 6001. Setting breakpoint at line 390 in QueryOutput.java. Resolved breakpoint set in QueryOutput.java at line 390. Cleared breakpoint at line 390 in file QueryOutput.java Setting breakpoint at line 390 in QueryOutput.java. Resolved breakpoint set in QueryOutput.java at line 390. -- . . . / This Cabinet is formd of Gold / And Pearl Crystal shining bright And within it opens into a World / . . . Another England there I saw / Another London with its Tower Another Thames other Hills / And another pleasant Surrey Bower . . . - from The Crystal Cabinet, a poem by William Blake. -- . . . / This Cabinet is formd of Gold / And Pearl Crystal shining bright And within it opens into a World / . . . Another England there I saw / Another London with its Tower Another Thames other Hills / And another pleasant Surrey Bower . . . - from The Crystal Cabinet, a poem by William Blake.
Re: JDEE installer?
Althought we're getting off the topics of installers, I say I agree, but that doesn't mean GUI's. If emacs people like GUI's they wouldn't be emacs people. But we need better UI for jde in general. For example, what's with the C-c C-v keybindings? This is only one key off from the C-x C-c binding which exits emacs. Not good. And in the debugger, is there anyone who has not rebound jde-bug-step-over? No way anyone is typing C-c C-z n just to go to the next line! When debugging, things should work like in edebug - editing is disabled, n for next, c for continue, e for eval. This would help a lot. Daniel Hegyi [EMAIL PROTECTED] writes: I think that a user-friendly install-shield-like GUI wizard for the Windows folks would be very nice. You know, with check-boxes and Next buttons. :) Heh, feel free to create such one. I am the one who hates GUI wizards. If I would love them you can be sure I would prefer to use JBuilder like whole company where I work, instead of emacs+JDEE. My personal opinion is that Emacs should become a little more user-friendly, otherwise IDEs like JBuilder and WebSphere Studio Enterprise Developer WILL take over, and Emacs will become a notepad on steroids. I don't know about you, but I have a tough time remembering just a few function names, not to mention the several hundred that JDEE/Emacs offer. GUI isn't such a bad thing. Let's face it, we're living in the 21st Century. Daniel _ Tired of spam? Get advanced junk mail protection with MSN 8. http://join.msn.com/?page=features/junkmail
Re: JDEE installer?
Gee, I really think you are being unreasonable here. I think JDE could improve in user friendliness. A lot of things in emacs-land can. That doesn't mean to switch to GUI's or anything. But JDE SHOULD be user-friendly. You can have user-friendly emacs programs, look at BBDB. It's usually not significantly more difficult to make things easier than it is to make them harder. It just takes a willingness to listen to user feedback, and a perception of what interactions seem to be pain points. If JDE was not friendly, people wouldn't use it, they would use Java-mode instead. Some people at my company do exactly this. I'm not saying JDE's UI is very bad, I actually think it's one of the better UI's in emacs-land. However, I think there is room for improvement. An example of a ui problem: I was showing my boss how to use JDE. I showed him how to attach to a running Java process and step through the program. When he asked how to see local variables, I paused for a second. I do this all the time, but I made my own keybinding for it. So I looked through the menu and found JDebug-Display-Local Variables. When we did this, though, it wasn't what I wanted, and he wasn't very impressed. I had to assure him that there was a very nice way to view local variables, I just could't find it at the moment. I later found it was at JDebug-Show Buffer-Locals. I think things that cause confusion like this are a real problem. If I can't find the command, it's as much a problem as if the command doesn't work. To me, there would be no difference. For this case, perhaps that Display menu item should be renamed something else, although I don't use it enough to know what would be more appropriate. Artur Hefczyc [EMAIL PROTECTED] writes: My personal opinion is that Emacs should become a little more user-friendly, otherwise IDEs like JBuilder and WebSphere Studio Enterprise Developer WILL take over, and Emacs will become a notepad on steroids. I don't know about you, but I have a tough time remembering just a few function names, not to mention the several hundred that JDEE/Emacs offer. GUI isn't such a bad thing. Let's face it, we're living in the 21st Century. Maybe I am too old for modern 21st century apps. Maybe not. I even used Linux with kernel version below 1.0.0, don't exactly remember which one. During my development career I used many advanced IDEs: Borland Pascal, Delphi, Borland C++ builder, JBuilder and some other. At last I fallen in love to emacs and after starting programming in Java to JDEE for emacs. Look, Emacs shouldn't be user friendly because it isn't for users. Emacs is for developers so it should be developers friendly. And it is! I assume you are Java programmer. If you have troubles with remembering just few function names how can you be good Java programmer? Java has much more classes and methods. And each new JDK release offers next sets of packages with classes. Development is all about learning. If just don't like learning change your duty. Actually I am not going to force you use emacs+jdee or other IDEs or change your programming habits. Emacs+JDEE is for java developers as well as other Java Builders. They are simply for different kind of developers. Don't change emacs! I love it as is. If you don't like it switch to different IDE. PS. Please, please don't send copy of your e-mails to my address. I read jdee mailing list regularly so I don't need copies of each mail. regards Artur Hefczyc -- Artur Hefczyc [EMAIL PROTECTED] http://wttools.sourceforge.net/ http://geotools.sourceforge.net/
Re: keybindings (was Re: JDEE installer?)
Peter Dobratz [EMAIL PROTECTED] writes: Andrew Hyatt writes: For example, what's with the C-c C-v keybindings? This is only one key off from the C-x C-c binding which exits emacs. Not good. I think the point of these keybindings is that they are easy to type. In any case, you are right about C-x C-c being easy to inadvertantly type. It is quite easy to hit the c and x and the same time when doing any number of commands that start with either C-x or C-c (which most emacs modes make heavy use of). One way to fix the problem of inadvertently exiting emacs is to add set the variable confirm-kill-emacs to something like y-or-n-p so that it always asks you before exiting. Yes, I see you are correct. This is not a unique problem with JDE. I have in fact turned on that C-x C-c keybinding because of this. I do still think that shorter keybindings might be nicer, though. And for debugging they are essential - they should be just keys (I have mine bound to f10, f11, etc) --Peter
Re: Refactoring Wish List
It's there now, but the code is pretty alpha in my opinion. I think it should stabilize in the next few weeks. Sebastian Hauer [EMAIL PROTECTED] writes: Not exactly refactoring but unbelievably useful. Find the usage of a variable or method name. If JDEE or some other free emacs mode is able to provide this feature please let me know. Regards, Sebastian -Original Message- From: Nascif Abousalh-Neto [mailto:[EMAIL PROTECTED]] Sent: Monday, December 02, 2002 6:23 PM To: [EMAIL PROTECTED] Subject: Refactoring Wish List So far we have: 1. Changing class name (and all references). 2. Changing names of any choosen class member - field, method (and all references) 3. Changing package for one or more classes with 'one click' (and all references) 4. Moving class to different package 5. Create factory method in place of constructor 6. Extract method from selected piece of code 7. Extract super class or interface for selected piece of code and set of fields 8. Deleting classes/methods/attributes 9. Copying classes into other packages 10.Copying methods/attributes into other classes I would like to see some features from Transmogrify, which may not be necessarily refactorings but are easy to implement once you have a refactoring framework (which requires the complete syntax trees plus reference resolution) in place: 11. Wrapping a block of code in a try/catch (exceptions needed extracted from the signatures of the methods in the block) 12. Finding out unsused variables/methods/classes 13. Finding out shadowed variables/methods Maybe we should have a page somewhere and vote? A system like bugzilla to track requirements/bugs and get user input on the most desirable ones would be nice. For a comprehensive list of Refactorings as documented by Martin Fowler, check http://www.refactoring.com/catalog/index.html http://www.refactoring.com/catalog/index.html Regards, Nascif
Re: prj.el under source control
Nascif Abousalh-Neto [EMAIL PROTECTED] writes: PS: Still no comments on my previous question on how to have subprojects appending to paths defined on parent projects, instead of just overriding then... I haven't looked at the code to do this, but I imagine this would be a fairly easy fix. And I think it's a good suggestion. I'll see if I can produce a patch soon.
Re: prj.el under source control
Actually, I think I misread your question. I thought you were asking if multiple prj.el files could be in affect at once - so that on going to a file, we would walk from the root directory to the current directory, executing each prj.el in between. If we do this (who knows, JDE may do it already), then you could easily do what you want, just put in your prj.el (add-to-list 'jde-global-classpath this/project/dir), etc. I think this may be frowned upon, since all setting of variables should come through customizations, but it should work. IMHO, we shouldn't have this policy where things have to be customized instead of just set, it seems against the free-wheeling nature of elisp. Nascif Abousalh-Neto [EMAIL PROTECTED] writes: Thanks, appreciated. Maybe a special symbol meaning the contents of the same variable as defined in a parent (or default) prj.el would do the trick... So you could have jde-global-classpath = ($BASE_VALUE this/project/dir) -Original Message- From: Andrew Hyatt [ mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] ] Sent: Tuesday, November 19, 2002 4:56 PM To: Abousalh-Neto, Nascif [NCRTP:3X50:EXCH] Cc: [EMAIL PROTECTED] Subject: Re: prj.el under source control Nascif Abousalh-Neto [EMAIL PROTECTED] writes: PS: Still no comments on my previous question on how to have subprojects appending to paths defined on parent projects, instead of just overriding then... I haven't looked at the code to do this, but I imagine this would be a fairly easy fix. And I think it's a good suggestion. I'll see if I can produce a patch soon.
Re: JDEE on Mac OS X (was: JDEE Home Page)
I submitted a patch a few weeks ago to get JDE to work with Mac OS X's strange Java directory structure. Hopefully it will appear in the next version of JDE. Dwight Shih [EMAIL PROTECTED] writes: When you say that it doesn't work, what exactly isn't working? I'm a recent switcher on Mac OS X 10.2, and the first thing that I had to do was to twiddle the JDK installation. The JDEE uses the beanshell extensively and needs to be able to find tools.jar from the JDK. However, Apple has repackaged the contents of tools.jar in classes.jar. I don't think that it makes sense to patch JDEE to chase Apple's JDK, so I built an alternate structure with a more standard format. Here's what it looks like: CurrentJDK/Sun-Repro 160 $ pwd /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Sun- Repro CurrentJDK/Sun-Repro 161 $ ls -l total 8 lrwxr-xr-x 1 root wheel 11 Oct 30 11:13 bin - ../Commands drwxr-xr-x 3 root wheel 102 Oct 30 11:14 lib CurrentJDK/Sun-Repro 162 $ ls ../Commands appletviewer jarsignerjavadoc keytool policytool serialver extcheck java javahnative2ascii rmic tnameserv idlj java-rmi.cgi javapoldjava rmid jar javacjdb oldjavac rmiregistry CurrentJDK/Sun-Repro 163 $ ls -l lib total 8 lrwxr-xr-x 1 root wheel 25 Oct 30 11:14 tools.jar - ../../Classes/classes.jar Since everything is internally consistent I don't need to set JAVA_HOME for the command line, so I just set JAVA_HOME for JDEE by adding: (setenv JAVA_HOME /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Sun- Repro) to my initialization file (~/emacs/my-osx.el in my case which I load from my .emacs). As far as emacs itself goes, I wanted a current native version, so I had to build it myself. http://members.shaw.ca/akochoi-emacs/ YMMV Dwight On Wednesday, October 30, 2002, at 08:22 AM, mike hakata wrote: I am running Mac OS X 10.1.5 and am trying to run the JDEE with emacs. Unfortunately emacs works fine, but the JDEE doesn't seem to run at all. I'm sure it's the way I have it configured! Of course! Firstly, I have my .emacs file in my ~/ directory. (although my emacs application runs from /usr/emacs/20.7) - 20.7 being the Darwin version. The .emacs file reads: (setq default-major-mode 'text-mode) (add-hook 'text-mode-hook 'turn-on-auto-fill) (global-font-lock-mode t) (setq gnus-button-url 'browse-url-generic browse-url-generic-program InternetExplorer browse-url-browser-function gnus-button-url) (global-set-key [(control tab)] 'bury-buffer) (iswitchb-default-keybindings) ;;JDEE setup. (setq debug-on-error t) (autoload 'speedbar-frame-mode speedbar Popup a speedbar frame t) (autoload 'speedbar-get-focus speedbar Jump to speedbar frame t) (add-to-list 'load-path (expand-file-name ~/emacs/site/jde-2.2.8/lisp)) (add-to-list 'load-path (expand-file-name ~ /emacs/site/semantic)) (add-to-list 'load-path (expand-file-name ~/emacs/site/speedbar)) (add-to-list 'load-path (expand-file-name ~/emacs/site/elib)) (add-to-list 'load-path (expand-file-name ~/emacs/site/eieio)) (require 'jde) (defun my-jde-mode-hook () (setq c-basic-offset 2)) (add-hook 'jde-mode-hook 'my-jde-mode-hook) Any help as to why this isn't working would be great. And also why it won't accept the browser, saying it cannot be found. Thanks in advance Mike
Re: [JDEE] Mailing list feature request
Couldn't you just filter on the jde address, such as this (for reading mail with gnus's nnimap): (setq nnimap-split-rule '((INBOX/JDE ^[Tc][oc].*jde))) Ralph Jocham [EMAIL PROTECTED] writes: Hi, I am on a couple of mailing lists. That means I get tons of mails a day. Some mailing lists add a prefix indicating to which mailing list it belongs in the subject before forwarding. (i.e. Subj.: [CruiseControl] blah-foo). This makes skimming through the mails much faster. Would it be possible to install the same for JDEE. A [JDEE] prefix for example. (see the subject of this mail- done manually) Just the thought from a big JDEE fan ... Thanks, Ralph __ Do you Yahoo!? Faith Hill - Exclusive Performances, Videos More http://faith.yahoo.com
Re: C-c Cv C-b build with Ant does not work
I've found that for these types of errors, the best thing to do is to turn on Enter Debugger on Error (in the Emacs Options menu). That will give you a nice stack trace you could send over. Be sure and exit from the debugger (press q in the backtrace window), then turn the option off when you are done, it could be annoying if left on. Ralph Jocham [EMAIL PROTECTED] writes: Thanks for the help, but the same error is still being shown. Here my latest prj.el: (jde-project-file-version 1.0) (jde-set-variables '(jde-jdk-registry (quote ((1.3.1 . c:/jdk1.3.1_04/ '(jde-mode-line-format (quote (- mode-line-mule-info mode-line-modified mode-line-frame-identification mode-line-buffer-identification global-mode-string %[( mode-name mode-line-process minor-mode-alist %n )%] (line-number-mode L%l-) (column-number-mode C%c-) (-3 . %p) (jde-which-method-mode (- jde-which-method-format -)) -%-))) '(jde-ant-enable-find t) '(jde-ant-complete-target nil) '(jde-enable-abbrev-mode t) '(jde-global-classpath (quote (c:/cygwin/home/jcsc/build/ c:/cygwin/home/jcsc/lib/gnu-regexp.jar))) '(jde-gen-comments nil) '(jde-ant-home ) '(jde-ant-read-buildfile nil) '(jde-build-function (quote (jde-ant-build))) '(jde-debugger (quote (JDEbug))) '(jde-compile-option-deprecation t) '(jde-gen-kr nil) '(jde-ant-program ) '(jde-sourcepath (quote (e:/JDK1.3.1-Source/j2sdk1.3.1/src/share/classes/ c:/cygwin/home/jcsc/src/))) '(jde-compile-option-target (quote (1.3))) '(jde-ant-buildfile ) '(jde-ant-invocation-method (quote (Script))) '(jde-compile-option-optimize t)) --- Andrew Hyatt [EMAIL PROTECTED] wrote: Ralph Jocham [EMAIL PROTECTED] writes: Hi, I setup JDE to use my ant script. But when typing the c-c c-v c-b for starting the build I get the following error messsage. Wrong type argument: arrayp, nil What does this mean Wnat is the recommended way to invoke ant (Script, Java, or Ant Server) You probably need need to setup your jde-jdk-registry, otherwise JDE won't know how to which java to compile Ant with. Do a Ctrl-H v jde-jdk-registry to read about that variable, and to customize it. My system: Win2k Emacs 21.2.1 Jde 2.2.9beta12 jdk1.3.1_04 cygwin/bash ANT_HOME points to the ant folder PATH points to ANT_HOME/bin My prj.el file: (jde-project-file-version 1.0) (jde-set-variables '(jde-mode-line-format (quote (- mode-line-mule-info mode-line-modified mode-line-frame-identification mode-line-buffer-identification global-mode-string %[( mode-name mode-line-process minor-mode-alist %n )%] (line-number-mode L%l-) (column-number-mode C%c-) (-3 . %p) (jde-which-method-mode (- jde-which-method-format -)) -%-))) '(jde-ant-enable-find t) '(jde-enable-abbrev-mode t) '(jde-global-classpath (quote (c:/cygwin/home/jcsc/build/ c:/cygwin/home/jcsc/lib/gnu-regexp.jar))) '(jde-gen-comments nil) '(jde-ant-home e:/jakarta-ant-1.5/) '(jde-build-function (quote (jde-ant-build))) '(jde-debugger (quote (JDEbug))) '(jde-gen-kr nil) '(jde-sourcepath (quote (e:/JDK1.3.1-Source/j2sdk1.3.1/src/share/classes/ c:/cygwin/home/jcsc/src/ My .emacs file: ;; --- ;; Set the load paths ;; --- (setq load-path (nconc '( ;; on Windows (Mickeysoft) E:/emacs/lisp/speedbar-0.14beta4/ E:/emacs/lisp/semantic-1.4/ E:/emacs/lisp/eieio-0.17/ E:/emacs/lisp/elib-1.0/ E:/emacs/lisp/ecb-1.80/ E:/emacs/lisp/jde-2.2.9beta12/lisp/ E:/emacs/lisp/ C:/emacs/emacs-21.2/lisp/ ;; on UNIX (Linux box) ;;~/emacs/lisp/jde-2.2.6/lisp/ ;;~/emacs/lisp/speedbar-0.13a/ ;;~/emacs/lisp/semantic-1.4/ ;;~/emacs/lisp/eieio-0.17/ ;;~/emacs/lisp/elib-1.0/ ;;~/emacs/lisp/ ) load-path )) ;; tmp fix for complete at point (require 'eldoc) ;; --- ;; Sams teach yourself Emacs in 24 hours' book package - quite usefull ;; --- (require 'sams-lib) ;; --- ;; Some usefull functions written by me ;) ;; --- (require 'rj-lib) ;; --- ;; Emacs Code Browser ;; --- (require 'ecb