-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathOI_LANGUAGE_INTEGRATION
81 lines (62 loc) · 2.67 KB
/
OI_LANGUAGE_INTEGRATION
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
OpenIDE.Net integrates with programming languages through both executable output and tcp communication.
------------------------------------------------------- GENERAL OUTPUT ---------------------------------------------------------
Error description with no line separators
RESPONSE FORMAT:
error|ERROR_DESCRIPTION
------------------------------------------------------- GENERAL OUTPUT ---------------------------------------------------------
Warnings with no line separators
RESPONSE FORMAT:
warning|COMMENT
------------------------------------------------------- GENERAL OUTPUT ---------------------------------------------------------
Commands
RESPONSE FORMAT:
command|editor goto ...
----------------------------------------------------- REQUIRED INTEGRATION -----------------------------------------------------
Initialize is sent to the plugin when the code engine starts. If the plugin choooses
to respond with initialized the process will be kept open and all requests will be
sent through stdin, stdout for as long as the code engine lives.
PARAMETER:
initialize KEY_PATH
RESPONSE
(nothing)
initialized
After responding with initialized all requests must be terminated with:
end-of-conversation
Shutdown is sent to the plugin when the plugin is ment to exit.
PARAMETER:
shutdown
Getting command definitions for this language extension
PARAMETER:
get-command-definitions
RESPONSE FORMAT:
// Wrapping the command name with [] means the command is optional
// This is the definition response for the following commands:
// new file FILE_NAME
// new directory DIR_NAME
new|"Template command for new file"
file|"Creates a new file"
FILE_NAME|"The path/name of the file you want to create" end
end
directory|"Creates a new directory"
DIR_NAME|"Long description where every line
will be trimmed and new line is replaced by space" end
end
end
Suppoerted file extensions. This determintes what files will be sent over for change tracking
PARAMETER
crawl-file-types
RESPONSE FORMAT:
.csproj|.cs
Crawl directories and/or files
PARAMETER:
crawl-source PATH_TO_FILE_CONTIAINING_LINE_PR_FILE_OR_DIR_TO_CRAWL
RESPONSE FORMAT:
// Project is optional. Other than that the hierarchy is as follows
// Indentation is only to show hierarchy not required in output
// Arguments in [] are optional
// typesearch => Is searchable under typesearch
// filesearch => Is searchable under file browse list
[project|PROJECT-PATH|CUSTOM-JSON-INFO [|filesearch]]
file|FILE-PATH [|filesearch]
signature|PARENT|SIGNATURE|NAME|TYPE|SCOPE|LINE|COLUMN|CUSTOM-JSON-INFO [|typesearch]
reference|SIGNATURE|LINE|COLUMN|CUSTOM-JSON-INFO