You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+48-18Lines changed: 48 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
#Overview
1
+
#Overview
2
2
The D Completion Daemon is an auto-complete program for the D programming language.
3
3
4
4

@@ -13,7 +13,7 @@ used through a text editor script or plugin, though it can be used from the
13
13
command line. The server (dcd-server) is responsible for caching imported files,
14
14
calculating autocomplete information, and sending it back to the client.
15
15
16
-
#Status
16
+
#Status
17
17
This program is reasonably stable. Please report problems on the Github issue
18
18
tracker. Please be sure that you have read the documentation before filing an
19
19
issue.
@@ -31,25 +31,25 @@ issue.
31
31
* Display of documentation comments in function call tips
32
32
* *alias this*
33
33
* *auto* declarations (Mostly)
34
+
* *with* statements
34
35
* Not working:
35
-
* Automatic starting of the server by the client
36
36
* UFCS suggestions
37
37
* Autocompletion of declarations with template arguments (This will work to some extent, but it won't do things like replace T with int)
38
38
* Determining the type of an enum member when no base type is specified, but the first member has an initialaizer
39
39
* That one feature that you *REALLY* needed
40
40
41
-
#Setup
41
+
#Setup
42
42
1. Install a recent D compiler. DCD is tested with 2.066 and LDC 0.14.0.
43
43
1. Run ```git submodule update --init``` after cloning this repository to grab the MessagePack and Datapacked libraries and the parser from DScanner.
44
44
1. Run ```make``` to build the client and server. (Or run build.bat on Windows). ```make ldc``` and ```make gdc``` will use the LDC or GDC compilers. The resulting executable will be much faster.
45
45
1. Configure your text editor to call the dcd-client program. See the *editors* folder for directions on configuring your specific editor.
46
46
1. Start the dcd-server program before editing code. (Unless, of course, your editor's plugin handles this for you)
47
47
48
-
#Client
48
+
#Client
49
49
Because DCD is designed to be used from a text editor, this section is written
50
50
primarily for plugin authors.
51
51
52
-
##Get autocomplete information
52
+
##Get autocomplete information
53
53
The primary use case of the client is to query the server for autocomplete information.
54
54
To do this, provide the client with the file that the user is editing along with the
55
55
cursor position (in bytes).
@@ -63,14 +63,14 @@ a left parethesis.
63
63
64
64
The file name is optional. If it is not specified, input will be read from *stdin*.
65
65
66
-
###Dot completion
66
+
###Dot completion
67
67
When the first line of output is "identifiers", the editor should display a
68
68
completion list.
69
-
####Output format
69
+
####Output format
70
70
A line containing the string "identifiers" followed by the completions that are
71
71
available, one per line. Each line consists of the completion name followed by a
72
72
tab character, followed by a completion kind
73
-
#####Completion kinds
73
+
#####Completion kinds
74
74
* c - class name
75
75
* i - interface name
76
76
* s - struct name
@@ -89,7 +89,7 @@ tab character, followed by a completion kind
89
89
* t - template name
90
90
* T - mixin template name
91
91
92
-
####Example output
92
+
####Example output
93
93
identifiers
94
94
parts v
95
95
name v
@@ -101,18 +101,18 @@ tab character, followed by a completion kind
101
101
calltip v
102
102
getPartByName f
103
103
104
-
####Note
104
+
####Note
105
105
DCD's output will start with "identifiers" when completing at a left paren
106
106
character if the keywords *pragma*, *scope*, *__traits*, *extern*, or *version*
107
107
were just before the paren.
108
108
109
-
###Parenthesis completion
109
+
###Parenthesis completion
110
110
When the first line of output is "calltips", the editor should display a function
111
111
call tip.
112
-
#####Output format
112
+
#####Output format
113
113
A line containing the string "calltips", followed by zero or more lines, each
114
114
containing a call tip for an overload of the given function.
0 commit comments