config/.vim/eclim/doc/vim/settings.txt

198 lines
5.9 KiB
Plaintext
Raw Normal View History

*vim-settings*
Settings
********
Certain aspects of eclim can be controlled by modifying one or more
settings.
There are two types of settings available:
- Eclim global / project settings.
These are settings that reside in your Eclipse workspace and are
used to control certain aspects of the eclim server's behavior.
These settings can be viewed and modified using one of the following
commands: - |:EclimSettings| - |:ProjectSettings|
- Vim global variable settings.
These are your typical global Vim variables which can be set within
your vimrc file.
Givin these two types, you may be ask, why do we need two? Or, when a
new setting is added, how do you decide which type to make it?
The reasoning behind having two types is that there are some settings
that may vary from one project to another. For instance, I may have
one project that can be used in jdk 1.3 and utilizes log4j for
logging, while another project of mine requires jdk 1.4 and utilizes
slf4j for logging. Instances like this require that each project be
capable of storing their own settings. Rather than reinvent this
support in Vim, we utilize Eclipse's built in preferences system.
If the Eclipse preferences system can store project level and global
settings, why not make all the eclim settings of this type? Well, the
downside to Eclipse preferences system is that an Eclipse instance
must be running to obtain the value of that preference. Eclim
however, requires access to many settings, regardless of whether
Eclipse is running or not. So, to ensure that these settings are
always available, we utilize the standard Vim global variable support.
When adding a new setting, deciding between an Eclipse preference or a
Vim global variable is a matter of answering the following:
- Will this setting vary from one project to another?
Yes: Add this setting an Eclipse preference.
- Does eclim need access to this setting regardless of whether an
Eclipse instance is running or not?
Yes: Add this setting a Vim global variable.
Eclim global / project settings
===============================
The following is a list of the common global / project settings
available.
*org.eclim.user.name*
- org.eclim.user.name Should be set to your name. Used by various
commands that add contact or author information to a file.
*org.eclim.user.email*
- org.eclim.user.email Should be set to the email address where you
can be contacted. Used by various commands that add contact or
author information to a file.
*org.eclim.project.version*
- org.eclim.project.version Should be set to the version number of
your project. This is used by various commands that add version
info to a file or utilize the version number in some other manner.
Defaults to "1.0".
Vim global variables
====================
The following is a list of some of the common Vim variables available.
*g:EclimLogLevel*
- g:EclimLogLevel (Default: 5)
Much like the Vim 'verbose' option, this variable allows you to
control the level of output from eclim as follows:
- <= 0: No output.
- >= 1: Fatal errors.
- >= 2: Errors.
- >= 3: Warning messages.
- >= 4: Info messages.
- >= 5: Debug messages.
- >= 6: Trace messages.
Each level also has a corresponding variable to set the highlighting
group used for the text.
*g:EclimFatalHighlight*
- g:EclimFatalHighlight (Default: "Error")
*g:EclimErrorHighlight*
- g:EclimErrorHighlight (Default: "Error")
*g:EclimWarningHighlight*
- g:EclimWarningHighlight (Default: "WarningMsg")
*g:EclimInfoHighlight*
- g:EclimInfoHighlight (Default: "Statement")
*g:EclimDebugHighlight*
- g:EclimDebugHighlight (Default: "Normal")
*g:EclimTraceHighlight*
- g:EclimTraceHighlight (Default: "Normal")
*g:EclimSignLevel*
- g:EclimSignLevel (Default: 5)
Behaves just like g:EclimLogLevel except this applies to placing of
Vim signs for displaying validation errors / warnings, or marking
:[vim]grep matches.
The resulting signs also use the same highlighting variables above.
*g:EclimEchoHighlight*
- g:EclimEchoHighlight (Default: "Statement")
Determines which highlight group will be used for informative
messages.
*g:EclimBrowser*
- g:EclimBrowser (Default: Dependent on OS)
Configures the external web browser to use when opening urls. By
default eclim will attempt to set a default browser based on your
system, but if it cannot find a compatible browser, you will need to
set one in your vimrc.
- Firefox
let g:EclimBrowser = 'firefox'
- Mozilla
let g:EclimBrowser = 'mozilla'
- Opera
let g:EclimBrowser = 'opera'
- IE
let g:EclimBrowser = 'iexplore'
Note: The above examples assume that the browser executable is in
your path. On windows machines they won't be by default, so you will
need to add them.
*g:EclimShowCurrentError*
- g:EclimShowCurrentError (Default: 1)
This variable determines whether or not a CursorHold autocommand is
created that will echo the error associated with the current line if
any error exists. Setting this variable to 0 disables this feature.
*g:EclimMakeLCD*
- g:EclimMakeLCD (Default: 1)
When not set to 0, this enables autocommand which will perform a
local change directory (:lcd) for the current window, setting that
window's current working directory to the directory of the current
file. After execution of the :make command, that window's current
working directory will be restored to the dir it was prior to
executing :make.
Enabling this has the benefit of allowing you to run :make or :Ant
(|vim-java-ant-execute|) from any file regardless of where it was
opened from without having to worry about the directory it is
executing from. For example if you have a file open from project A
and split a file from project B, you can execute :Ant from the
project B file and it will utilize project B's build.xml even though
your current working directory is in project A.
vim:ft=eclimhelp