Paul,

I find that the project switching mechanism doesn't seem to work if you
switch from/to a buffer which has no prj.el associated with it, and I have
to manually reload my project file when switching back to the buffer which
has the project file associated. 

While I'm here, is it possible to set common VM properties and args for run
and debug. I seem to have to duplicate the jde-run-option-vm-args in the
jde-db-option-vm-args, and the same for the properties.

Otherwise, many thanks for a fine project.


Emacs  : GNU Emacs 20.6.1 (i386-*-nt4.0.1381)
 of Tue Feb 29 2000 on buffy
Package: JDE version 2.2.2

current state:
==============
(setq
 jde-gen-session-bean-template '("(jde-wiz-insert-imports-into-buffer (list
\"javax.ejb.*\"\n\"java.rmi.RemoteException\"))"
"(jde-wiz-update-implements-clause \"SessionBean\")" "'> \"public void
ejbActivate() throws RemoteException {\"'n> \"}\"'n\n'n" "'> \"public void
ejbPassivate() throws RemoteException {\"'n> \"}\"'n\n'n" "'> \"public void
ejbRemove() throws RemoteException {\"'n> \"}\"'n 'n" "'> \"public void
setSessionContext(SessionContext ctx) throws\nRemoteException {\"" "'n>
\"}\"'n 'n" "'> \"public void unsetSessionContext() throws RemoteException
{\"'n>\n\"}\"'n 'n")
 jde-gen-beep '("(end-of-line) '&"
                "\"Toolkit.getDefaultToolkit().beep();\"'>'n'>")
 jde-run-classic-mode-vm nil
 jde-javadoc-gen-nodeprecatedlist nil
 jde-imenu-include-classdef t
 jde-javadoc-gen-link-online nil
 jde-gen-code-templates '(("Get Set Pair" . jde-gen-get-set)
                          ("toString method" . jde-gen-to-string-method)
                          ("Action Listener" . jde-gen-action-listener)
                          ("Window Listener" . jde-gen-window-listener)
                          ("Mouse Listener" . jde-gen-mouse-listener)
                          ("Mouse Motion Listener" .
                           jde-gen-mouse-motion-listener)
                          ("Inner Class" . jde-gen-inner-class)
                          ("println" . jde-gen-println)
                          ("Public Method" . tempo-template-addmethod))
 jde-gen-cflow-else '("(if (jde-parse-comment-or-quoted-p)" "'(l \"else\")"
                      "'(l > \"else \"" "\"{\" > n> r n"
                      "\"} // end of else\" > n>)" ")")
 jde-make-args ""
 jde-javadoc-gen-destination-directory "JavaDoc"
 jde-mode-abbreviations '(("ab" . "abstract") ("bo" . "boolean")
                          ("br" . "break") ("by" . "byte") ("byv" .
"byvalue")
                          ("cas" . "cast") ("ca" . "catch") ("ch" . "char")
                          ("cl" . "class") ("co" . "const")
                          ("con" . "continue") ("de" . "default")
                          ("dou" . "double") ("el" . "else")
                          ("ex" . "extends") ("fa" . "false") ("fi" .
"final")
                          ("fin" . "finally") ("fl" . "float") ("fo" .
"for")
                          ("fu" . "future") ("ge" . "generic") ("go" .
"goto")
                          ("impl" . "implements") ("impo" . "import")
                          ("ins" . "instanceof") ("in" . "int")
                          ("inte" . "interface") ("lo" . "long")
                          ("na" . "native") ("ne" . "new") ("nu" . "null")
                          ("pa" . "package") ("pri" . "private")
                          ("pro" . "protected") ("pu" . "public")
                          ("re" . "return") ("sh" . "short") ("st" .
"static")
                          ("su" . "super") ("sw" . "switch")
                          ("sy" . "synchronized") ("th" . "this")
                          ("thr" . "throw") ("throw" . "throws")
                          ("tra" . "transient") ("tr" . "true")
                          ("vo" . "void") ("vol" . "volatile")
                          ("wh" . "while"))
 jde-imenu-enable t
 jde-compile-option-verbose nil
 jde-db-option-heap-size '((1 . "megabytes") (16 . "megabytes"))
 jde-bug-debugger-host-address ""
 jde-make-working-directory ""
 jde-bug-breakpoint-marker-colors '("red" . "yellow")
 jde-javadoc-gen-use nil
 jde-bug-raise-frame-p t
 jde-db-option-application-args nil
 jde-javadoc-gen-nonavbar nil
 jde-javadoc-gen-nohelp nil
 jde-bug-vm-includes-jpda-p nil
 jde-gen-jfc-app-buffer-template '("(funcall jde-gen-boilerplate-function)
'n"
                                   "\"import java.awt.Dimension;\" 'n"
                                   "\"import java.awt.Graphics;\" 'n"
                                   "\"import java.awt.Graphics2D;\" 'n"
                                   "\"import java.awt.Color;\" 'n"
                                   "\"import java.awt.geom.Ellipse2D;\" 'n"
                                   "\"import java.awt.event.WindowAdapter;\"
'n" "\"import java.awt.event.WindowEvent;\" 'n" "\"import
javax.swing.JFrame;\" 'n" "\"import javax.swing.JPanel;\" 'n" "\"import
javax.swing.JScrollPane;\" 'n" "\"import javax.swing.JMenuBar;\" 'n"
"\"import javax.swing.JMenu;\" 'n" "\"import java.awt.event.ActionEvent;\"
'n" "\"import javax.swing.AbstractAction;\" 'n 'n" "\"/**\" 'n" "\" * \""
"(file-name-nondirectory buffer-file-name) 'n" "\" *\" 'n" "\" *\" 'n" "\" *
Created: \" (current-time-string) 'n" "\" *\" 'n" "\" * @author \"
(user-full-name) 'n" "\" * @version\" 'n" "\" */\" 'n>" "'n>" "\"public
class \"" "(file-name-sans-extension (file-name-nondirectory
buffer-file-name))" "\" extends JFrame\"" "\" {\"  'n>" "" "\"class Canvas
extends JPanel\"" "\" {\"  'n>" "" "\"public Canvas () \"" "\" {\"  'n>" ""
"\"setSize(getPreferredSize());\" 'n>"
"\"Canvas.this.setBackground(Color.white);\" 'n>" "\"}\" 'n> 'n>" "\"public
Dimension getPreferredSize() \"" "\" {\"  'n>" "" "\"return new
Dimension(600, 600);\" 'n>" "\"}\" 'n> 'n>" "\"public void
paintComponent(Graphics g) \"" "\" {\"  'n>" ""
"\"super.paintComponent(g);\" 'n>" "\"Graphics2D g2d = (Graphics2D) g;\"
'n>" "\"Ellipse2D circle = new Ellipse2D.Double(0d, 0d, 100d, 100d);\" 'n>"
"\"g2d.setColor(Color.red);\" 'n>" "\"g2d.translate(10, 10);\" 'n>"
"\"g2d.draw(circle);\" 'n>" "\"g2d.fill(circle);\" 'n>" "\"}\" 'n> 'n>"
"\"}\" 'n> 'n>" "\"public \"" "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "\"()\"" "\" {\"  'n>" ""
"\"super(\\\"\" (P \"Enter app title: \") \"\\\");\" 'n>" "\"setSize(300,
300);\" 'n>" "\"addWindowListener(new WindowAdapter() \"" "\" {\"  'n>" ""
"\"public void windowClosing(WindowEvent e) {System.exit(0);}\" 'n>"
"\"public void windowOpened(WindowEvent e) {}\" 'n>" "\"});\" 'n>"
"\"setJMenuBar(createMenu());\" 'n>" "\"getContentPane().add(new
JScrollPane(new Canvas()));\" 'n>" "\"}\" 'n>" "'n>" "\"public static void
main(String[] args) \"" "\" {\"  'n>" "" "'n>" "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "\" f = new \""
"(file-name-sans-extension (file-name-nondirectory buffer-file-name))"
"\"();\" 'n>" "\"f.show();\" 'n>" "'p 'n>" "\"}\" 'n> 'n>" "\"protected
JMenuBar createMenu() \"" "\" {\"  'n>" "" "\"JMenuBar mb = new
JMenuBar();\" 'n>" "\"JMenu menu = new JMenu(\\\"File\\\");\" 'n>"
"\"menu.add(new AbstractAction(\\\"Exit\\\") \"" "\" {\"  'n>" "" "\"public
void actionPerformed(ActionEvent e) \"" "\" {\"  'n>" ""
"\"System.exit(0);\" 'n>" "\"}\" 'n>" "\"});\" 'n>" "\"mb.add(menu);\" 'n>"
"\"return mb;\" 'n>" "\"}\" 'n> 'n>" "\"} // \"" "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "'n>")
 jde-bug-key-bindings '(("[? ? ?]" . jde-bug-step-over)
                        ("[? ? ?]" . jde-bug-step-into)
                        ("[? ? ?]" . jde-bug-step-out)
                        ("[? ? ?]" . jde-bug-continue)
                        ("[? ? ?]" . jde-bug-set-breakpoint))
 jde-compile-finish-hook nil
 jde-compile-option-nowarn nil
 jde-setnu-mode-threshold 20000
 jde-run-java-vm-w "javaw"
 jde-compile-option-encoding nil
 jde-run-option-java-profile '(nil . "./java.prof")
 bsh-startup-timeout 10
 jde-bug-jpda-directory "d:/jdk1.2.2"
 jde-read-compile-args nil
 jde-run-java-vm "java"
 jde-db-option-verbose '(nil nil nil)
 jde-db-read-app-args nil
 jde-javadoc-gen-nodeprecated nil
 jde-run-option-heap-profile '(nil "./java.hprof" 5 20 "Allocation objects")
 jde-gen-println '("'&"
                   "\"System.out.println(\" (P \"Print out: \") \");\" 'n>")
 jde-enable-abbrev-mode t
 bsh-vm-args nil
 jde-gen-cflow-main '("(if (jde-parse-comment-or-quoted-p)" "'(l \"main\")"
                      "'(l > \"public static void main (String[] args) \""
                      "\"{\" > n> r n" "\"} // end of main ()\" > n>)" ")")
 jde-javadoc-exception-tag-template '("* @exception " type
                                      " if an error occurs")
 jde-gen-window-listener-template '("'& (P \"Window name: \")"
                                    "\".addWindowListener(new
WindowAdapter() {\" 'n>" "\"public void windowActivated(WindowEvent e) {}\"
'n>" "\"public void windowClosed(WindowEvent e) {}\" 'n>" "\"public void
windowClosing(WindowEvent e) {System.exit(0);}\" 'n>" "\"public void
windowDeactivated(WindowEvent e) {}\" 'n>" "\"public void
windowDeiconified(WindowEvent e) {}\" 'n>" "\"public void
windowIconified(WindowEvent e) {}\" 'n>" "\"public void
windowOpened(WindowEvent e) {}});\" 'n>")
 jde-run-working-directory
"d:/ccm_wa/PMA/Amex_Software_Components~youngm/Amex_Software_Components"
 jde-gen-property-change-support '("'&"
                                   "\"protected PropertyChangeSupport pcs =
new PropertyChangeSupport(this);\" 'n>" "\"/**\" 'n>\"* Adds a
PropertyChangeListener to the listener list.\" 'n>" "\"* The listener is
registered for all properties.\" 'n>" "\"*\" 'n> \"* @param listener The
PropertyChangeListener to be added\" 'n> \"*/\" 'n>" "\"public void
addPropertyChangeListener(PropertyChangeListener listener) {\" 'n>"
"\"pcs.addPropertyChangeListener(listener);\" 'n> \"}\" 'n> 'n>" "\"/**\"
'n>\"* Removes a PropertyChangeListener from the listener list.\" 'n>" "\"*
This removes a PropertyChangeListener that was registered for all
properties.\" 'n>" "\"*\" 'n> \"* @param listener The PropertyChangeListener
to be removed\" 'n> \"*/\" 'n>" "\"public void
removePropertyChangeListener(PropertyChangeListener listener) {\" 'n>"
"\"pcs.removePropertyChangeListener(listener);\" 'n> \"}\" 'n> 'n>" "\"/**\"
'n>\"* Adds a PropertyChangeListener for a specific property.\" 'n>" "\"*
The listener will be invoked only when a call on firePropertyChange\" 'n>"
"\"* names that specific property.\" 'n>" "\"*\" 'n> \"* @param propertyName
The name of the property to listen on\" 'n>" "\"* @param listener The
PropertyChangeListener to be added\" 'n> \"*/\" 'n>" "\"public void
addPropertyChangeListener(String propertyName,\" 'n>"
"\"PropertyChangeListener listener) {\" 'n>"
"\"pcs.addPropertyChangeListener(propertyName, listener);\" 'n> \"}\" 'n>
'n>" "\"/**\" 'n>\"* Removes a PropertyChangeListener for a specific
property.\" 'n>" "\"*\" 'n> \"* @param propertyName The name of the property
that was listened on\" 'n>" "\"* @param listener The PropertyChangeListener
to be removed\" 'n> \"*/\" 'n>" "\"public void
removePropertyChangeListener(String propertyName,\" 'n>"
"\"PropertyChangeListener listener) {\"  'n>"
"\"pcs.removePropertyChangeListener(propertyName, listener);\" 'n> \"}\" 'n>
'n>" "\"/**\" 'n>\"* Reports a bound property update to any registered
listeners. \" 'n>" "\"* No event is fired if old and new are equal and
non-null.\" 'n>" "\"*\" 'n> \"* @param propertyName The programmatic name of
the property that was changed\" 'n>" "\"* @param oldValue The old value of
the property\" 'n>" "\"* @param newValue The new value of the property.\"
'n> \"*/\" 'n>" "\"public void firePropertyChange(String propertyName,
Object oldValue, Object newValue) {\" 'n>"
"\"pcs.firePropertyChange(propertyName, oldValue, newValue);\" 'n> \"}\" 'n>
'n>" "\"/**\" 'n>\"* Reports a bound property update to any registered
listeners. \" 'n>" "\"* No event is fired if old and new are equal and
non-null.\" 'n>" "\"* This is merely a convenience wrapper around the more
general\" 'n>" "\"* firePropertyChange method that takes Object values.\"
'n>" "\"* No event is fired if old and new are equal and non-null.\" 'n>"
"\"*\" 'n> \"* @param propertyName The programmatic name of the property
that was changed\" 'n>" "\"* @param oldValue The old value of the property\"
'n>" "\"* @param newValue The new value of the property.\" 'n> \"*/\" 'n>"
"\"public void firePropertyChange(String propertyName, int oldValue, int
newValue) {\" 'n>" "\"pcs.firePropertyChange(propertyName, oldValue,
newValue);\" 'n> \"}\" 'n> 'n>" "\"/**\" 'n>\"* Reports a bound property
update to any registered listeners. \" 'n>" "\"* No event is fired if old
and new are equal and non-null.\" 'n>" "\"* This is merely a convenience
wrapper around the more general\" 'n>" "\"* firePropertyChange method that
takes Object values.\" 'n>" "\"* No event is fired if old and new are equal
and non-null.\" 'n>" "\"*\" 'n> \"* @param propertyName The programmatic
name of the property that was changed\" 'n>" "\"* @param oldValue The old
value of the property\" 'n>" "\"* @param newValue The new value of the
property.\" 'n> \"*/\" 'n>" "\"public void firePropertyChange(String
propertyName, boolean oldValue, boolean newValue) {\" 'n>"
"\"pcs.firePropertyChange(propertyName, oldValue, newValue);\" 'n> \"}\" 'n>
'n>" "\"/**\" 'n>\"* Fires an existing PropertyChangeEvent to any registered
listeners.\" 'n>" "\"* No event is fired if the given event's old and new
values are equal and non-null. \" 'n>" "\"*\" 'n> \"* @param evt The
PropertyChangeEvent object.\" 'n>\"*/\" 'n>" "\"public void
firePropertyChange(PropertyChangeEvent evt) {\" 'n>"
"\"pcs.firePropertyChange(evt);\" 'n> \"}\" 'n> 'n>" "\"/**\" 'n>\"* Checks
if there are any listeners for a specific property.\" 'n>" "\"*\" 'n> \"*
@param evt The PropertyChangeEvent object.\" 'n>" "\"* @return
<code>true</code>if there are one or more listeners for the given property\"
'n>" "\"*/\" 'n>" "\"public boolean hasListeners(String propertyName) {\"
'n>" "\"return pcs.hasListeners(propertyName);\" 'n> \"}\" 'n> 'n>")
 jde-javadoc-describe-interface-template '("* Describe interface "
                                           (jde-javadoc-code name) " here.")
 jde-javadoc-see-tag-template '("* @see " ref)
 jde-imenu-include-signature t
 jde-db-marker-regexp "^Breakpoint hit: .*(\\([^$]*\\).*:\\([0-9]*\\))"
 jde-gen-mouse-motion-listener-template '("'& (P \"Component name: \")"
                                          "\".addMouseMotionListener(new
MouseMotionAdapter() {\" 'n>" "\"public void mouseDragged(MouseEvent e) {}\"
'n>" "\"public void mouseMoved(MouseEvent e) {}});\" 'n>")
 jde-key-bindings '(("[? ? ?]" . jde-run-menu-run-applet)
                    ("[? ? ?]" . jde-build)
                    ("[? ? ?]" . jde-compile)
                    ("[? ? ?]" . jde-debug)
                    ("[? ? ?]" . jde-wiz-implement-interface)
                    ("[? ? ?j]" . jde-javadoc-generate-javadoc-template)
                    ("[? ? ?
]" . bsh)
                    ("[? ? ?\f]" . jde-gen-println)
                    ("[? ? ?]" . jde-browse-jdk-doc)
                    ("[? ? ?]" . jde-save-project)
                    ("[? ? ?]" . jde-wiz-update-class-list)
                    ("[? ? ?]" . jde-run)
                    ("[? ? ?]" . speedbar-frame-mode)
                    ("[? ? ?]" . jde-db-menu-debug-applet)
                    ("[? ? ?]" . jde-help-symbol)
                    ("[? ? ?]" . jde-show-class-source)
                    ("[? ? ?]" . jde-wiz-find-and-import)
                    ("[(control c) (control v) (control ?.)]" .
                     jde-complete-at-point-menu)
                    ("[(control c) (control v) ?.]" .
jde-complete-at-point))
 jde-gen-cflow-for-i '("(if (jde-parse-comment-or-quoted-p)" "'(l \"fori\")"
                       "'(l > \"for (int \" (p \"variable: \" var) \" = 0;
\""
                       "(s var)"
                       "\" < \"(p \"upper bound: \" ub)\"; \" (s var) \"++)
\"" "\"{\" > n> r n" "\"} // end of for (int \" (s var) \" = 0; \"" "(s var)
\" < \" (s ub) \"; \" (s var) \"++)\" > n>)" ")")
 jde-run-option-classpath nil
 jde-javadoc-gen-detail-switch '("-protected")
 jde-javadoc-param-tag-template '("* @param " name " " (jde-javadoc-a type)
                                  " " (jde-javadoc-code type) " value")
 jde-compile-option-verbose-path nil
 jde-db-debugger '("JDEbug" "jdb" . "Executable")
 jde-jdk-doc-url "http://www.javasoft.com/products/jdk/1.1/docs/index.html"
 jde-compiler "c:/JBuilder35/jdk1.2.2/bin/javac"
 jde-javadoc-gen-verbose nil
 jde-javadoc-describe-method-template '("* Describe " (jde-javadoc-code
name)
                                        " method here.")
 jde-gen-class-buffer-template '("(funcall jde-gen-boilerplate-function) 'n"
                                 "\"/**\" 'n" "\" *\" 'n"
                                 "\" * @author \" (user-full-name) 'n"
                                 "\" * @version %version: %\" 'n"
                                 "\" * @see\" 'n"
                                 "\" * @since [JDK 1.1.3]\" 'n" "\" */\"
'n>"
                                 "'n>" "\"public class \""
                                 "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "\" \" (jde-gen-get-super-class)
\" {\" 'n> 'n>" "\"public \"" "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "\"() {\" 'n>" "'p 'n>" "\"}\"
'n>" "'n>" "\"} // \"" "(file-name-sans-extension (file-name-nondirectory
buffer-file-name))" "'n>")
 jde-appletviewer-option-vm-args nil
 jde-run-executable-args nil
 jde-db-option-garbage-collection '(t t)
 jde-javadoc-gen-stylesheetfile ""
 jde-use-font-lock t
 jde-compile-option-bootclasspath nil
 jde-make-program "make"
 jde-javadoc-gen-group nil
 jde-javadoc-gen-link-offline nil
 jde-javadoc-gen-doc-title ""
 jde-javadoc-gen-header ""
 jde-javadoc-gen-window-title ""
 jde-compile-option-directory ""
 jde-gen-console-buffer-template '("(funcall jde-gen-boilerplate-function)
'n"
                                   "\"/**\" 'n" "\" * \""
                                   "(file-name-nondirectory
buffer-file-name) 'n" "\" *\" 'n" "\" *\" 'n" "\" * Created: \"
(current-time-string) 'n" "\" *\" 'n" "\" * @author \" (user-full-name) 'n"
"\" * @version\" 'n" "\" */\" 'n>" "'n>" "\"public class \""
"(file-name-sans-extension (file-name-nondirectory buffer-file-name))" "\"
{\"  'n>" "" "\"public \"" "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "\" ()\"" "\" {\"  'n>" "" "'n>"
"\"}\" 'n>" "'n>" "\"public static void main(String[] args)\"" "\" {\"  'n>"
"" "'p 'n>" "\"}\" 'n> 'n>" "\"} // \"" "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "'n>")
 jde-read-make-args nil
 jde-javadoc-gen-noindex nil
 jde-gen-mouse-listener-template '("'& (P \"Component name: \")"
                                   "\".addMouseListener(new MouseAdapter()
{\" 'n>" "\"public void mouseClicked(MouseEvent e) {}\" 'n>" "\"public void
mouseEntered(MouseEvent e) {}\" 'n>" "\"public void mouseExited(MouseEvent
e) {}\" 'n>" "\"public void mousePressed(MouseEvent e) {}\" 'n>" "\"public
void mouseReleased(MouseEvent e) {}});\" 'n>")
 jde-run-option-application-args nil
 jde-bug-vm-executable '("javaw")
 jde-db-set-initial-breakpoint t
 jde-bug-debugger-command-timeout 10
 jde-db-option-stack-size '((128 . "kilobytes") (400 . "kilobytes"))
 jde-run-read-app-args t
 jde-gen-to-string-method-template '("'&" "\"public String toString() {\"
'n>"
                                     "\"return super.toString();\" 'n>"
                                     "\"}\" 'n>")
 jde-quote-classpath t
 jde-bug-window-message nil
 jde-build-use-make nil
 jde-javadoc-author-tag-template '("* @author <a href=\"mailto:"
                                   user-mail-address "\">" user-full-name
                                   "</a>")
 jde-javadoc-describe-field-template '("* Describe "
                                       (jde-javadoc-field-type modifiers) "
"
                                       (jde-javadoc-code name) " here.")
 jde-javadoc-gen-link-URL nil
 jde-compile-option-classpath nil
 jde-bug-jdk-directory "d:/jdk1.2.2"
 jde-gen-boilerplate-function 'jde-gen-create-buffer-boilerplate
 jde-gen-entity-bean-template '("(jde-wiz-insert-imports-into-buffer (list
\"javax.ejb.*\"\n\"java.rmi.RemoteException\"))"
"(jde-wiz-update-implements-clause \"EntityBean\")" "'> \"public void
ejbActivate() throws RemoteException {\"'n> \"}\"'n\n'n" "'> \"public void
ejbPassivate() throws RemoteException {\"'n> \"}\"'n\n'n" "'> \"public void
ejbLoad() throws RemoteException {\"'n>\"}\"'n 'n" "'> \"public void
ejbStore() throws RemoteException {\"'n>\"}\"'n 'n" "'> \"public void
ejbRemove() throws RemoteException {\"'n>\"}\"'n 'n" "'> \"public void
setEntityContext(EntityContext ctx) throws\nRemoteException {\"" "'n>\"}\"'n
'n" "'> \"public void unsetEntityContext() throws RemoteException
{\"'n>\n\"}\"'n> 'n")
 jde-javadoc-version-tag-template '("* @version 1.0")
 jde-javadoc-describe-constructor-template '("* Creates a new "
                                             (jde-javadoc-code name)
                                             " instance.")
 jde-bug-server-shmem-name '(t . "JDEbug")
 jde-db-startup-commands nil
 jde-javadoc-gen-docletpath nil
 jde-javadoc-gen-split-index nil
 jde-compile-option-deprecation nil
 jde-gen-k&r t
 jde-javadoc-gen-bottom ""
 jde-javadoc-gen-footer ""
 jde-db-option-classpath nil
 jde-gen-cflow-for '("(if (jde-parse-comment-or-quoted-p)" "'(l \"for\")"
                     "'(l > \"for (\" (p \"for-clause: \" clause) \") \""
                     "\"{\" > n> r n"
                     "\"} // end of for (\" (s clause) \")\" > n>)" ")")
 jde-run-mode-hook nil
 jde-db-option-verify '(nil t)
 jde-compile-option-extdirs nil
 jde-imenu-sort nil
 jde-gen-get-set-var-template '("'n>" "(P \"Variable type: \" type) \" \""
                                "(P \"Variable name: \" name) \";\" 'n> 'n>"
                                "\"/**\" 'n>"
                                "\"* Get the value of \" (s name) \".\" 'n>"
                                "\"* @return Value of \" (s name) \".\" 'n>"
                                "\"*/\" 'n>"
                                "\"public \" (s type) \" get\"
(jde-gen-init-cap (jde-gen-lookup-named 'name))" "\"() {return \" (s name)
\";}\" 'n> 'n>" "\"/**\" 'n>" "\"* Set the value of \" (s name) \".\" 'n>"
"\"* @param v  Value to assign to \" (s name) \".\" 'n>" "\"*/\" 'n>"
"\"public void set\" (jde-gen-init-cap (jde-gen-lookup-named 'name))" "\"(\"
(s type) \"  v) {this.\" (s name) \" = v;}\" 'n>")
 jde-bug-saved-breakpoints nil
 jde-gen-cflow-if '("(if (jde-parse-comment-or-quoted-p)" "'(l \"if\")"
                    "'(l > \"if (\" (p \"if-clause: \" clause) \") \""
                    "\"{\" > n> r n"
                    "\"} // end of if (\" (s clause) \")\" > n>)" ")")
 jde-db-option-java-profile '(nil . "./java.prof")
 jde-javadoc-gen-author t
 jde-compile-option-depend-switch '("-Xdepend")
 jde-setnu-mode-enable nil
 jde-run-applet-doc ""
 jde-compile-option-vm-args nil
 jde-javadoc-gen-overview ""
 jde-javadoc-gen-notree nil
 jde-run-option-garbage-collection '(t t)
 jde-db-mode-hook nil
 jde-db-option-heap-profile '(nil "./java.hprof" 5 20 "Allocation objects")
 bsh-eval-timeout 20
 jde-db-read-vm-args nil
 jde-bug-debug nil
 jde-javadoc-end-block-template nil
 jde-javadoc-gen-packages nil
 jde-gen-cflow-if-else '("(if (jde-parse-comment-or-quoted-p)" "'(l
\"ife\")"
                         "'(l > \"if (\" (p \"if-clause: \" clause) \") \""
                         "\"{\" > n> r n"
                         "\"} // end of if (\" (s clause) \")\" > n>"
                         "> \"else \"" "\"{\" > n> r n"
                         "\"} // end of if (\" (s clause) \")else\" > n>)"
")")
 jde-gen-cflow-while '("(if (jde-parse-comment-or-quoted-p)" "'(l
\"while\")"
                       "'(l > \"while (\" (p \"while-clause: \" clause) \")
\"" "\"{\" > n> r n" "\"} // end of while (\" (s clause) \")\" > n>)" ")")
 jde-bug-server-socket '(t . "2112")
 jde-appletviewer-option-encoding ""
 jde-bug-breakpoint-cursor-colors '("cyan" . "brown")
 jde-compile-option-target '("1.1")
 jde-run-executable ""
 jde-run-option-heap-size '((1 . "megabytes") (16 . "megabytes"))
 jde-gen-cflow-switch '("(if (jde-parse-comment-or-quoted-p)"
                        "'(l \"switch\")"
                        "'(l > \"switch (\" (p \"switch-condition: \"
clause) \") \"" "\"{\" > n" "\"case \" (p \"first value: \") \":\" > n> p n"
"\"break;\" > n> p n" "\"default:\" > n> p n" "\"break;\" > n" "\"} // end
of switch (\" (s clause) \")\" > n>)" ")")
 jde-run-application-class ""
 jde-javadoc-gen-doclet ""
 jde-run-option-verbose '(nil nil nil)
 jde-project-file-name "prj.el"
 jde-wiz-import-excluded-packages '("bsh.*")
 jde-compile-option-debug '("selected" (t nil nil))
 jde-bug-jre-home ""
 jde-run-applet-viewer ""
 jde-entering-java-buffer-hooks '(jde-reload-project-file)
 jde-javadoc-return-tag-template '("* @return " (jde-javadoc-a type) " "
                                   (jde-javadoc-code type) " value")
 jde-javadoc-gen-version t
 jde-javadoc-gen-helpfile ""
 jde-run-read-vm-args nil
 jde-help-docsets nil
 jde-javadoc-since-tag-template '("* @since 1.0")
 jde-gen-inner-class-template '("'& \"class \" (P \"Class name: \" class)"
                                "(P \"Superclass: \" super t)"
                                "(let ((parent (jde-gen-lookup-named
'super)))" "(if (not (string= parent \"\"))" "(concat \" extends \"
parent))) \" {\" 'n>" "\"public \" (s class) \"() {\" 'n> \"}\" 'n> \"}\"
'n>")
 jde-run-option-verify '(nil t)
 jde-compile-option-optimize nil
 jde-gen-cflow-case '("(if (jde-parse-comment-or-quoted-p)" "'(l \"case\")"
                      "'(l n \"case \" (p \"value: \") \":\" > n> p n"
                      "\"break;\" > n> p)" ")")
 jde-compile-option-depend nil
 jde-javadoc-describe-class-template '("* Describe class "
                                       (jde-javadoc-code name) " here.")
 jde-javadoc-gen-serialwarn nil
 jde-gen-action-listener-template '("'& (P \"Component name: \")"
                                    "\".addActionListener(new
ActionListener() {\" 'n>" "\"public void actionPerformed(ActionEvent e) {\"
'n>" "\"}});\" 'n>")
 jde-compile-option-command-line-args "-g -d
D:/ccm_wa/PMA/Amex_Software_Components~youngm/Amex_Software_Components/class
es"
 jde-gen-buffer-templates '(("Class" . jde-gen-class)
                            ("Console" . jde-gen-console)
                            ("Swing App" . jde-gen-jfc-app))
 jde-project-context-switching-enabled-p t
 jde-javadoc-gen-args nil
 jde-run-option-stack-size '((128 . "kilobytes") (400 . "kilobytes"))
 jde-run-option-properties '(("DataFile" .
 
"D:\\ccm_wa\\PMA\\Amex_Software_Components~youngm\\Amex_Software_Components\
\com\\platform7\\pmatest\\pma\\BlueApplication.txt")
                             )
 )



There was no *JDEBug* buffer


There is no CLI buffer


There is no locals buffer


There was no *Backtrace* buffer


The contents of the *Messages* buffer were

Region 46 in buffer A is empty

Region 46 in buffer A is empty [2 times]
Region 47 in buffer A is empty

Region 47 in buffer A is empty [2 times]
Refining difference region 48 ...
 [2 times]
Refining difference region 49 ...
 [2 times]
Refining difference region 50 ...

Only white-space differences in region 50

Only white-space differences in region 50  [2 times]
Refining difference region 51 ...
 [2 times]
Refining difference region 52 ...

Only white-space differences in region 52

Only white-space differences in region 52  [2 times]
Refining difference region 53 ...
 [2 times]
Region 54 in buffer A is empty

Region 54 in buffer A is empty [2 times]
Refining difference region 55 ...
 [5 times]
When done with a buffer, type C-x #.
Loading
d:/ccm_wa/PMA/Amex_Software_Components~youngm/Amex_Software_Components/prj.e
l (source)...
Loading
d:/ccm_wa/PMA/Amex_Software_Components~youngm/Amex_Software_Components/prj.e
l (source)...done
Fontifying BasicDataSource.java...
Fontifying BasicDataSource.java... (regexps.............)
Loading
d:/ccm_wa/PMA/Amex_Software_Components~youngm/Amex_Software_Components/prj.e
l (source)...done
Fontifying T_CAAANH.TMP...
Fontifying T_CAAANH.TMP... (regexps.............)
Computing differences between T_CAAANH.TMP144Zvk and BasicDataSource.java
...

Buffer A: Processing difference region 0 of 1
Buffer B: Processing difference region 0 of 1
Processing difference regions ... done
Refining difference region 1 ...
 [2 times]
Preparing problem report...
Loading sendmail...
Loading sendmail...done
Formatting bug report buffer...
Formatting bug report
buffer.........................................................
Mark set



End Insert *Messages* buffer


Process environment: 

TERM=cmd
EMACSDOC=C:/emacs/etc
EMACSLOCKDIR=C:/emacs/lock
EMACSPATH=C:/emacs/bin
EMACSDATA=C:/emacs/etc
SHELL=bash
EMACSLOADPATH=C:/emacs/site-lisp;C:/emacs/lisp;C:/emacs/leim
TMPDIR=C:\TEMP
windir=C:\WINNT
VBROKER_ADM=f:\visigenic\vbroker\adm
USERPROFILE=C:\WINNT\Profiles\youngm
USERNAME=youngm
USERDOMAIN=NWDT1
TMP=C:\TEMP
TEMP=C:\TEMP
SystemRoot=C:\WINNT
SystemDrive=C:
PROCESSOR_REVISION=0803
PROCESSOR_LEVEL=6
PROCESSOR_IDENTIFIER=x86 Family 6 Model 8 Stepping 3, GenuineIntel
PROCESSOR_ARCHITECTURE=x86
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
PATH=C:\temp\pma\bin;C:\ccm45\bin\util;C:\ccm45\bin;d:\Inprise\AppServer\bin
;C:\WINNT\system32;C:\WINNT;c:\win32app\toolkit;C:\MSSQL7\BINN;C:\Program
Files\Rational\common;c:\jbuilder35\jdk1.2.2\bin;c:\ccm45\bin;C:\cygnus\cygw
in-b20\H-i586-cygwin32\bin;C:\utils\bin;C:\emacs\bin;C:\Program
Files\Microsoft
Office\Office;D:\ccm_wa\PMA\Amex_Software_Components~youngm\Amex_Software_Co
mponents;/usr/sccs;/usr/ccs/bin
Os2LibPath=C:\WINNT\system32\os2\dll;
OS=Windows_NT
NUMBER_OF_PROCESSORS=2
MSDevDir=C:\Program Files\DevStudio\SharedIDE
LOGONSERVER=\\P7_DC1
lib=c:\program files\devstudio\vc\lib;c:\program
files\devstudio\vc\mfc\lib;c:\program files\microsoft visual
studio\vc98\lib;%lib%
JAVA_COMPCMD=STA
include=c:\program files\devstudio\vc\include;c:\program
files\devstudio\vc\atl\include;c:\program
files\devstudio\vc\mfc\include;c:\program files\microsoft visual
studio\vc98\include;%include%
HOMEPATH=\
HOMEDRIVE=C:
HOME=C:/WINNT/Profiles/youngm
emacs_dir=C:/emacs
COMSPEC=C:\WINNT\system32\cmd.exe
COMPUTERNAME=P7_094
CCM_PREF_FILE=C:\WINNT\ccm.ini
ccm_home=C:\ccm45
CCM_DBPATH=C:\temp\pma


The contents of the .emacs file was



(setq load-path 
                  (nconc '( 
                        "~/lisp",
                        "~/lisp/jde-2.2.2/lisp",
                        "~/lisp/semantic-1.2.1",
                        "~/lisp/speedbar-0.12",
                           ) 
                           load-path))

(require 'jde)

(define-key jde-mode-map [f4] 'jcb-update-packages)

(require 'gnuserv)
(gnuserv-start)

(setq shell-file-name "bash") ;; or sh if you rename your bash executable to
sh. 
          (setenv "SHELL" shell-file-name) 
          (setq explicit-shell-file-name shell-file-name) 
          (setq explicit-sh-args '("-login" "-i")) 
          (setq shell-command-switch "-c") 
          (setq w32-quote-process-args t)


(defun my-jde-mode-hook () 
  (global-set-key [f4] 'gud-step)
  (global-set-key [S-f4] 'gud-next)
  (global-set-key [f9] 'compile)
  (global-set-key [f10] 'next-error)
  ;; Set auto-newline and hungry delete
  (c-toggle-auto-hungry-state 1)
  ;; Set offset to 2
  (c-add-style "my-java" '("java" (c-basic-offset . 2)))
  (c-set-style "my-java")
  (setq indent-tabs-mode nil)
)

(add-hook 'jde-mode-hook 'my-jde-mode-hook)

;; Add symantec sj error output.
;;(setq compilation-error-regexp-alist
;;       (cons '("\\(Error\\|Warning\\):
\\(\\([a-zA-Z]:\\)?[^:(\t\n]+\\)(\\([0-9]+\\)):" 2 4)
;;           compilation-error-regexp-alist))


(tempo-define-template 
 "addmethod"                           ;; template name 
 '("/**" '>                             ;; Javadoc comment
   'n>                              ;; insert new line
   "* "
   (P "Enter method description: ")    ;; Prompts for method description.
   'n>
   "*" 'n>                              ;; insert new line plus indent 
   "* @param " 'n>
   "* @return " 'n>
   "*/" 'n>
   (P "Enter Method name: " NAME NOINSERT)
   "public " (P "Enter return type: ") " " (s NAME) "(args)" 'n>
   "{" 'n> 
   "}" '> ) 
 "add"                               ;; abbreviation 
 "Inserts a public method skeleton")  ;; template documentation 



(custom-set-variables
 '(c-default-style "BSD")
 '(jde-compile-option-command-line-args "-g")
 '(tab-width 8)
 '(c-basic-offset 2)
 '(jde-bug-jdk-directory "d:/jdk1.2.2/")
 '(mouse-yank-at-point t)
 '(jde-gen-class-buffer-template (quote ("(funcall
jde-gen-boilerplate-function) 'n" "\"/**\" 'n" "\" *\" 'n" "\" * @author \"
(user-full-name) 'n" "\" * @version %version: %\" 'n" "\" * @see\" 'n" "\" *
@since [JDK 1.1.3]\" 'n" "\" */\" 'n>" "'n>" "\"public class \""
"(file-name-sans-extension (file-name-nondirectory buffer-file-name))" "\"
\" (jde-gen-get-super-class) \" {\" 'n> 'n>" "\"public \""
"(file-name-sans-extension (file-name-nondirectory buffer-file-name))" "\"()
{\" 'n>" "'p 'n>" "\"}\" 'n>" "'n>" "\"} // \"" "(file-name-sans-extension
(file-name-nondirectory buffer-file-name))" "'n>")))
 '(jde-compiler "d:/jdk1.2.2/bin/javac")
 '(jde-jdk-doc-url "file://d:/jdk1.2.2/docs/index.html")
 '(jde-db-debugger (quote ("JDEbug" "jdb" . "Executable")))
 '(jde-global-classpath (quote (".")))
 '(indent-tabs-mode nil)
 '(jde-bug-jpda-directory "d:/jdk1.2.2")
 '(jde-bug-vm-includes-jpda-p nil)
 '(jde-gen-code-templates (quote (("Get Set Pair" . jde-gen-get-set)
("toString method" . jde-gen-to-string-method) ("Action Listener" .
jde-gen-action-listener) ("Window Listener" . jde-gen-window-listener)
("Mouse Listener" . jde-gen-mouse-listener) ("Mouse Motion Listener" .
jde-gen-mouse-motion-listener) ("Inner Class" . jde-gen-inner-class)
("println" . jde-gen-println) ("Public Method" .
tempo-template-addmethod))))
 '(jde-run-classic-mode-vm t)
 '(desktop-enable t nil (desktop)))
(custom-set-faces)



=====end inserted .emacs file


> -----Original Message-----
> From: Paul Kinnucan [SMTP:[EMAIL PROTECTED]]
> Sent: 18 September 2000 00:58
> To:   [EMAIL PROTECTED]
> Cc:   [EMAIL PROTECTED]
> Subject:      Re: AW: AW: AW: Customizing jde-mode-line-format in 2.2.3
> 
> At 08:13 PM 9/17/00 +0200, you wrote:
> >Hi paul,
> >
> >thank you very much, now it works fine!
> >
> >But another question:
> >All jde-variables are only setable via customize, means if i�m the emacs-
> >administrator and if i want to pre-configure JDE in some options i must
> >do this with custom-set-variables in the site-start.el or any other site-
> >loaded file. It would be more convenient if the normal setq mechanism
> would
>                                                  ^^^^^^
> 
> The setq form is no longer the "normal" way to set Emacs customization
> variables. The "normal" way is to use customization.
> 
> >work too. Why are you so restrictive concerning the method of
> customization of JDE??
> >
> 
> 1) To facilitate correct configuration of the JDE. 
> 
> Before customization, the most frequent problems with the JDE were caused
> by people setting JDE variables incorrectly, e.g., setting a variable to a
> string where a list of strings was required. The people most prone to this
> kind of problem are experienced Emacs users who assume they know what the
> type of a variable is and never bother to check the doc. The introduction
> of customization buffers has eliminated this problem except for the
> occasional diehard who insists on setq'ing the variables.
> 
> 2) To permit multiple projects to be open at the same time. 
> 
> Before customization, all JDE variables were buffer local to permit
> multiple projects to be open simultaneously. When customization was
> introduced, it did not support customization of the buffer local version
> of
> a variable and hence the ability to customize variables differently for
> different projects. The JDE addresses this problem by making most JDE
> variables global and then resetting them to project-specific values
> whenever a user switches from a buffer belonging to one project to a
> buffer
> belonging to other. The project-switching mechanism gets the correct
> values
> by loading the corresponding project file or the customized values or
> default values specified by the .emacs file. The JDE gets the default or
> customized values from the corresponding properties of the customization
> variable. Customizing a variable sets these properties. The setq form does
> not. Thus, if you use setq to customize the variables, the project
> switching mechanism does not work correctlyl 
> 
> - Paul

Reply via email to