DCD/editors/vim/README.md

85 lines
2.4 KiB
Markdown

This plugin is deprecated in favor of [the Dutyl
plugin](https://github.com/idanarye/vim-dutyl), that can set the import paths
from other sources.
----------------------
A plugin for using DCD with vim.
Tested on Linux (and a bit on Windows)
Installation
============
Vundle
------
1. Add `Bundle "Hackerpilot/DCD", {'rtp': 'editors/vim'}` to your vimrc.
2. `:BundleInstall`
Manual
------
Put the autoload and ftplugin folders in your vim runtime path.
Configuration
=============
Compile DCD and put both dcd-client and dcd-server in your path, or set the
global variable `g:dcd\_path` to where you put DCD.
You can set `g:dcd\_importPath` to an import path(or list of import paths) to
use when starting the server. You should do so for Phobos and DRuntime - since
DCD does not add them for you. On Linux it should be:
```vim
let g:dcd_importPath=['/usr/include/d','/usr/include/d/druntime/import']
```
On Windows you need to locate the root of your dmd installation (typically
`C:\D`). Phobos and DRuntime can be found within under `dmd2\src\phobos` and
`dmd2\src\druntime\import`, respectively. Example:
```vim
let g:dcd_importPath=['C:\D\dmd2\src\phobos','C:\D\dmd2\src\druntime\import']
```
Import paths are globbed with Vim's globbing function.
Be sure that the following option is set in your .vimrc:
```vim
set omnifunc=syntaxComplete#complete
```
If you do not do this, omni-complete will not know to use DCD.
Usage
=====
When the filetype is D, use the `DCDstartServer` command to start the server
and the `DCDstopServer` command to stop the server. `DCDstartServer` can
receive import path(s) as arguments.
Use the `DCDaddPath` command to add a import path(s) to the server. Make sure you
escape spaces! Import paths are globbed with Vim's globbing function.
Use the `DCD` command to send arbitary commands to the server via the client.
The syntax is the same as with `dcd-client`, so you can use it without
arguments to print the help message.
Use `DCDclearCache` to clear the DCD server cache.
When the server is running, use `CTRL`+`x` `CTRL`+`o` in a D buffer to use DCD
completion.
When the server is running, use the `DCDdoc` to print the doc-string of symbol
under the cursor.
When the server is running, use the `DCDsymbolLocation` to print jump to the
declaration of the symbol under the cursor.
Configuration
=============
If you want to never add the closing paren in calltips completions, add this to you vimrc:
```vim
let g:dcd_neverAddClosingParen=1
```