Node:Top, Next:

You are looking at the top node of the Info tree documenting JXMINOR (Version 0.1). Not all functions that are used only internally by the package are documented here, but after all you do have the source code. All commands and settable variables have built-in documentation, as per usual Emacs conventions.


Node:Copying, Next:, Previous:Top, Up:Top

You can freely copy, modify and redistribute jxminor because it's made available under the liberal terms of the GNU General Public License.

GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

SML mode is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.


Node:Introduction, Next:, Previous:Copying, Up:Top

Introduction

jxminor is a minor mode for Emacs for helping when editing Java code. It is meant to complement the Java major mode that Emacs already provides.


Node:Contributors, Next:, Previous:Introduction, Up:Introduction

Contributors to jxminor

Contributions to the package are welcome. I have limited time to work on this project, but I will gladly add any code that you contribute to me to this package.


Node:Getting Started, Next:, Previous:Contributors, Up:Introduction

Getting started

If jxminor mode isn't already installed on your system, which is pretty unlikely, you'll need to do a few things to get started. You can tell whether or not it is installed by whether when you edit a Java file you see JX in the mode line after Java.

If it's not installed you will need to tell Emacs where to find all the jxminor .el files, and when to use them. The where is addressed by locating the Lisp code on your Emacs Lisp load path. You may have to create a directory for this, say ~/elisp, where you should unpack the jxminor.tgz file. Then insert the following lines in your ~/.emacs file:

(add-to-list 'load-path "~/elisp/jxminor")
(autoload 'jxminor-mode-on "jx-mode" "" t)
(add-hook 'java-mode-hook 'jxminor-mode-on)

The first line adjusts Emacs' internal search path so it can locate the Lisp source you have copied to that directory, the second line tells Emacs to load the code automatically when it is needed, and the third turns on jxminor mode for any Java file.

You may want to pre-compile the jx-*.el files (M-x byte-compile-file) for greater speed--byte compiled code loads and runs somewhat faster.


Node:Getting Help, Previous:Getting Started, Up:Introduction

Help!

You're reading it. Apart from the on-line info tree (C-h i is the Emacs key to enter the info system--you should follow the brief tutorial if this is unfamiliar), there are further details on specific commands in their documentation strings. Only the most useful jxminor commands are documented in the info tree: to find out more use Emacs' help facilities.

Briefly, to get help on a specific function use C-h f and enter the command name. All jxminor mode commands begin with jx or jx-, so if you type this and press <TAB> (for completion) you will get a list of all commands. Another way is to use C-h a and enter the string jx. This is command apropos; it will list all commands with that sub-string in their names, and any key binding they may have in the current buffer. Command apropos gives a one-line synopsis of what each command does.

See See Command Index, for a list of (info) documented functions. See Variable Index, for a list of user settable variables to control the behaviour of jxminor.

Before accessing this information on-line from within Emacs you may have to set the variable jxminor-mode-info. Put in your .emacs file something like:

(setq jxminor-mode-info "~/elisp/jxminor/jxminor.info")

When different from the default this variable should be a string giving the absolute name of the .info file. Then C-c C-f i in jxminor mode (i.e., the command M-x jxminof-mode-info) will bring up the manual. This help is also accessible from the menu.


Node:Imports, Next:, Previous:Introduction, Up:Top

Managing import statements

When you maintain java code, especially as part of a team, you can end up with more import statements than you need in a program. While this doesn't make the program less efficient it does make it harder to gauge by looking at the imports the dependencies of the program. jxminor mode provides three operations to apply to import statements.

The operations can be selected from the menu or can be invoked with the following commands.

jx-sort-imports Command

Sort the input statements at the start of the program into alphabetical order by package and class name. Group the packages by the first part of the name with java and javax packages preceeding org packages and com packages coming last. Put a blank line between groups of import statements from the same package.

jx-check-imports Command

Comment out unused import statements. For each import that imports a single class the program is checked to see whether the class is used anywhere. If no use can be found the import statement is commented out. It is not deleted as there may be a bug in the way this operation works and it that case it would be better if the import statement were still available.

jx-delete-commented-imports Command

After the unused import statements have been commented out and the program has been recompiled to check that none of them really were needed this operation can be used to delete them.

jx-sort-and-check-imports Command

Lots of times you want to sort and then check the imports as one operation so this function does that.


Node:Methods, Next:, Previous:Imports, Up:Top

Navigation and searching by method

Incremental search for a method by name. Move forward and backward throught the java file method by method.


Node:Javadoc, Next:, Previous:Methods, Up:Top

Javadoc

How to insert Javadoc comments for a method.


Node:Templates, Next:, Previous:Javadoc, Up:Top

Templates

How to create a template from some program text. How to edit an existing template. How to insert a template into a program.


Node:Log4j, Previous:Templates, Up:Top

Log4j

Information about inserting log4j debug statements.


Node:Command Index, Next:, Up:Top

Command Index


Node:Variable Index, Next:, Previous:Command Index, Up:Top

Variable Index


Node:Key Index, Previous:Variable Index, Up:Top

Key Index

Table of Contents