Skip to content

Commit dfcd4e5

Browse files
authored
Merge pull request #138 from atom-community/todos
chore: add more properties and TODOs
2 parents 5f462f1 + 989cc9f commit dfcd4e5

File tree

2 files changed

+37
-3
lines changed

2 files changed

+37
-3
lines changed

lib/auto-languageclient.ts

Lines changed: 34 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,12 +110,16 @@ export default class AutoLanguageClient {
110110
rootPath: projectPath,
111111
rootUri: Convert.pathToUri(projectPath),
112112
workspaceFolders: null,
113+
// The capabilities supported.
114+
// TODO the capabilities set to false/undefined are TODO. See {ls.ServerCapabilities} for a full list.
113115
capabilities: {
114116
workspace: {
115117
applyEdit: true,
116118
configuration: false,
117119
workspaceEdit: {
118120
documentChanges: true,
121+
normalizesLineEndings: false,
122+
changeAnnotationSupport: undefined,
119123
},
120124
workspaceFolders: false,
121125
didChangeConfiguration: {
@@ -124,12 +128,23 @@ export default class AutoLanguageClient {
124128
didChangeWatchedFiles: {
125129
dynamicRegistration: false,
126130
},
131+
// BLOCKED: on atom/symbols-view
127132
symbol: {
128133
dynamicRegistration: false,
129134
},
130135
executeCommand: {
131136
dynamicRegistration: false,
132137
},
138+
semanticTokens: undefined,
139+
codeLens: undefined,
140+
fileOperations: {
141+
// BLOCKED: on tree-view not providing hooks for "before file/dir created"
142+
willCreate: false,
143+
// BLOCKED: on tree-view not providing hooks for "before file/dir renamed"
144+
willRename: false,
145+
// BLOCKED: on tree-view not providing hooks for "before file/dir deleted"
146+
willDelete: false,
147+
},
133148
},
134149
textDocument: {
135150
synchronization: {
@@ -152,6 +167,7 @@ export default class AutoLanguageClient {
152167
signatureHelp: {
153168
dynamicRegistration: false,
154169
},
170+
declaration: undefined,
155171
references: {
156172
dynamicRegistration: false,
157173
},
@@ -189,13 +205,28 @@ export default class AutoLanguageClient {
189205
moniker: {
190206
dynamicRegistration: false,
191207
},
192-
193-
// We do not support these features yet.
194-
// Need to set to undefined to appease TypeScript weak type detection.
208+
publishDiagnostics: {
209+
relatedInformation: true,
210+
tagSupport: {
211+
// BLOCKED: on steelbrain/linter supporting ways of denoting useless code and deprecated symbols
212+
valueSet: [],
213+
},
214+
versionSupport: false,
215+
codeDescriptionSupport: true,
216+
dataSupport: true,
217+
},
195218
implementation: undefined,
196219
typeDefinition: undefined,
197220
colorProvider: undefined,
198221
foldingRange: undefined,
222+
selectionRange: undefined,
223+
linkedEditingRange: undefined,
224+
callHierarchy: undefined,
225+
semanticTokens: undefined,
226+
},
227+
general: {
228+
regularExpressions: undefined,
229+
markdown: undefined,
199230
},
200231
experimental: {},
201232
},

lib/convert.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,8 @@ export default class Convert {
183183
}
184184

185185
public static atomIdeDiagnosticToLSDiagnostic(diagnostic: atomIde.Diagnostic): ls.Diagnostic {
186+
// TODO: support diagnostic codes and codeDescriptions
187+
// TODO!: support data
186188
return {
187189
range: Convert.atomRangeToLSRange(diagnostic.range),
188190
severity: Convert.diagnosticTypeToLSSeverity(diagnostic.type),
@@ -223,6 +225,7 @@ export default class Convert {
223225
* @returns An Atom {atomIde.TextEdit} object.
224226
*/
225227
public static convertLsTextEdit(textEdit: ls.TextEdit): atomIde.TextEdit {
228+
// TODO: support annotations
226229
return {
227230
oldRange: Convert.lsRangeToAtomRange(textEdit.range),
228231
newText: textEdit.newText,

0 commit comments

Comments
 (0)