diff --git a/src/vs/editor/common/modes.ts b/src/vs/editor/common/modes.ts
index 5df073ba886..04a350ce779 100644
--- a/src/vs/editor/common/modes.ts
+++ b/src/vs/editor/common/modes.ts
@@ -188,6 +188,7 @@ export type SuggestionType = 'method'
| 'property'
| 'unit'
| 'value'
+ | 'constant'
| 'enum'
| 'enum-member'
| 'keyword'
diff --git a/src/vs/editor/contrib/suggest/browser/media/Constant_16x.svg b/src/vs/editor/contrib/suggest/browser/media/Constant_16x.svg
new file mode 100644
index 00000000000..ed2a1751005
--- /dev/null
+++ b/src/vs/editor/contrib/suggest/browser/media/Constant_16x.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/vs/editor/contrib/suggest/browser/media/Constant_16x_inverse.svg b/src/vs/editor/contrib/suggest/browser/media/Constant_16x_inverse.svg
new file mode 100644
index 00000000000..173e427f964
--- /dev/null
+++ b/src/vs/editor/contrib/suggest/browser/media/Constant_16x_inverse.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/vs/editor/contrib/suggest/browser/media/suggest.css b/src/vs/editor/contrib/suggest/browser/media/suggest.css
index 57744fdc56a..9a66988d24b 100644
--- a/src/vs/editor/contrib/suggest/browser/media/suggest.css
+++ b/src/vs/editor/contrib/suggest/browser/media/suggest.css
@@ -143,6 +143,7 @@
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.module { background-image: url('Namespace_16x.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.property { background-image: url('Property_16x.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.unit { background-image: url('Ruler_16x.svg'); }
+.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.constant { background-image: url('Constant_16x.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.value,
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.enum { background-image: url('Enumerator_16x.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.enum-member { background-image: url('EnumItem_16x.svg'); }
@@ -292,10 +293,14 @@
.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.unit,
.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.unit { background-image: url('Ruler_inverse_16x.svg'); }
+.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.constant,
+.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.constant { background-image: url('Constant_16x_inverse.svg'); }
+
.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.value,
.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.value,
.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.enum,
.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.enum { background-image: url('Enumerator_inverse_16x.svg'); }
+
.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.enum-member,
.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.enum-member { background-image: url('EnumItem_inverse_16x.svg'); }
diff --git a/src/vs/vscode.d.ts b/src/vs/vscode.d.ts
index 562e241bdb8..c3fea41bf55 100644
--- a/src/vs/vscode.d.ts
+++ b/src/vs/vscode.d.ts
@@ -2394,6 +2394,7 @@ declare module 'vscode' {
Property = 9,
Unit = 10,
Value = 11,
+ Constant = 20,
Enum = 12,
EnumMember = 19,
Keyword = 13,
diff --git a/src/vs/workbench/api/node/extHostTypeConverters.ts b/src/vs/workbench/api/node/extHostTypeConverters.ts
index a3e32a301ff..2e2f61ba0e4 100644
--- a/src/vs/workbench/api/node/extHostTypeConverters.ts
+++ b/src/vs/workbench/api/node/extHostTypeConverters.ts
@@ -251,6 +251,7 @@ export const CompletionItemKind = {
case types.CompletionItemKind.Property: return 'property';
case types.CompletionItemKind.Unit: return 'unit';
case types.CompletionItemKind.Value: return 'value';
+ case types.CompletionItemKind.Constant: return 'constant';
case types.CompletionItemKind.Enum: return 'enum';
case types.CompletionItemKind.EnumMember: return 'enum-member';
case types.CompletionItemKind.Keyword: return 'keyword';
diff --git a/src/vs/workbench/api/node/extHostTypes.ts b/src/vs/workbench/api/node/extHostTypes.ts
index b9bbdf3d03a..557e7e25569 100644
--- a/src/vs/workbench/api/node/extHostTypes.ts
+++ b/src/vs/workbench/api/node/extHostTypes.ts
@@ -836,13 +836,14 @@ export enum CompletionItemKind {
Unit = 10,
Value = 11,
Enum = 12,
- EnumMember = 19,
Keyword = 13,
Snippet = 14,
Color = 15,
File = 16,
Reference = 17,
- Folder = 18
+ Folder = 18,
+ EnumMember = 19,
+ Constant = 20
}
export class CompletionItem {