.. Copyright (C) 2014 Eric Van Dewoestine This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program 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 this program. If not, see . Type Creation ============= .. _\:JavaNew: Creating a new Class, Interface, etc. ------------------------------------- **:JavaNew** is a command that allows you to create new classes, interfaces, enums, or annotations by specifying which of those you'd like to create, followed by the fully qualified path of the new type. The available types you can create include: - **class** - a new class - **interface** - a new interface - **abstract** - a new abstract class - **enum** - a new enum - **@interface** - a new annotation Here are some examples: .. code-block:: vim :JavaNew class org.test.MyNewClass :JavaNew interface org.test.MyNewInterface If you ommit the package name, the new type will be created in the same package as the file you are currently editing: .. code-block:: vim :JavaNew class MyNewClass .. note:: This command supports command completion of the available types (class, interface, etc) as well as completion of existing package names. In the case where the source directory to create the type in is ambiguous, you will be prompted to choose the source directory from a list.