.. Copyright (C) 2005 - 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 <http://www.gnu.org/licenses/>.

Features
========

The following is a partial list of eclim features with much more still to
come.  For more details please see the detailed
:doc:`documentation </vim/index>`.  For a more comprehensive list you can also
visit the :doc:`cheatsheet </cheatsheet>`.

Eclipse Projects
-------------------------
- Create, update, and delete Eclipse projects.
- Easily manage Eclipse .classpath files (support for maven and ivy).
- Quickly and easily manage settings globally or on a project basis.

C/C++
-------------------------
- Context sensitive code completion.
- Searching.
- Source code validation.

Css
-------------------------
- Context sensitive code completion.
- Source code validation.

Html
-------------------------
- Context sensitive code completion.
- Automatic validation (w/ visual marking of errors and warnings).

Java
-------------------------
- Automatic source code validation (w/ visual marking of errors and
  warnings).
- Context sensitive code completion.
- Code correction suggestions with option to apply a suggestion.
- Class constructor generation.
- Java Bean getter and setter generation.
- Generation of delegate methods.
- Java source and java doc searching capabilities.
- Generate stub methods from implemented interfaces or super classes.
- Generate stub methods for junit testing.
- Quickly clean and sort imports and easily import new classes.
- Automatic generation of logging initialization code, upon first usage
  of a logger.
- Javadoc generation for package, class, field, method, etc.
- Java regular expression testing.
- Support for Checkstyle.
- Validation of log4j xml files.

Android
^^^^^^^
- Support for creating android projects from vim.

Ant
^^^^^^^
- Ant execution from any file.
- Context sensitive code completion when editing build files.
- Automatic validation of build files (w/ visual marking of errors and
  warnings).
- Quick access to ant documentation.

Maven
^^^^^^^
- Maven execution from any file.
- Maven repository searching and ability to add results to pom file.

JavaScript
-------------------------
- File validation using jsl_.

Php
-------------------------
- Context sensitive code completion.
- Searching.
- Source code validation.

Python
-------------------------
- Context sensitive code completion.
- Find element definition/references support.
- Source code validation.
- Regular expression testing.
- Django functionality.

Ruby
-------------------------
- Context sensitive code completion.
- Searching.
- Source code validation.

Vim Script
-------------------------
- Find user defined command, function, or global variable declarations /
  references.
- Quickly lookup help topic for a keyword, functions, command, etc.


Xml / Dtd / Xsd
-------------------------
- Automatic validation (w/ visual marking of errors and warnings).
- Quickly look up element definition from the current xml file's dtd or xsd.
- Context sensitive code completion.

Common Vim Functionality
-------------------------
- Commands to locate a project, workspace, or current file relative file and
  open it (split, edit, or tabnew).
- Much more...

.. _jsl: http://www.javascriptlint.com/
.. _pyflakes: http://www.divmod.org/trac/wiki/DivmodPyflakes
.. _pylint: http://www.logilab.org/857
