docs: function(editor, contentAssist, evnt) {
  				// Content assist is about to be activated; set its providers.
  				var fileContentType = inputManager.getContentType();
  				var fileName = editor.getTitle();
  				var serviceRefs = serviceRegistry.getServiceReferences("orion.edit.contentAssist").concat(serviceRegistry.getServiceReferences("orion.edit.contentassist")); //$NON-NLS-1$ //$NON-NLS-2$
  				var providerInfoArray = evnt && evnt.providers;
  				if (!providerInfoArray) {
  					providerInfoArray = serviceRefs.map(function(serviceRef) {
  						var contentTypeIds = serviceRef.getProperty("contentType"), //$NON-NLS-0$
  						    pattern = serviceRef.getProperty("pattern"); // backwards compatibility //$NON-NLS-0$
  						if ((contentTypeIds && contentTypeRegistry.isSomeExtensionOf(fileContentType, contentTypeIds)) ||
  								(pattern && new RegExp(pattern).test(fileName))) {
  							var service = serviceRegistry.getService(serviceRef);
  							var id = serviceRef.getProperty("service.id").toString();  //$NON-NLS-0$
  							var charTriggers = serviceRef.getProperty("charTriggers"); //$NON-NLS-0$
  							var excludedStyles = serviceRef.getProperty("excludedStyles");  //$NON-NLS-0$
  							var autoApply = serviceRef.getProperty("autoApply");
  							if (charTriggers) {
  								charTriggers = new RegExp(charTriggers);
  							}
  
  							if (excludedStyles) {
  								excludedStyles = new RegExp(excludedStyles);
  							}
  
  							return {provider: service, id: id, charTriggers: charTriggers, excludedStyles: excludedStyles, autoApply: autoApply};
  						}
  						return null;
  					}).filter(function(providerInfo) {
  						return !!providerInfo;
  					});
  				}
  				// check lsp implementation for the current content type
  					var lspServer = languageServerRegistry.getServerByContentType(fileContentType);
  				if (lspServer) {
  					providerInfoArray.push({provider: lspServer, id: lspServer._id, lspServer: true, excludedStyles: new RegExp("(string.*)")});					
  				}
  				// Produce a bound EditorContext that contentAssist can invoke with no knowledge of ServiceRegistry.
  				var boundEditorContext = {};
  				Object.keys(EditorContext).forEach(function(key) {
  					if (typeof EditorContext[key] === "function") {
  						boundEditorContext[key] = EditorContext[key].bind(null, serviceRegistry, that.editContextServiceID);
  					}
  				});
  				contentAssist.setEditorContextProvider(boundEditorContext);
  				contentAssist.setProviders(providerInfoArray);
  				contentAssist.setAutoTriggerEnabled(that.settings.contentAssistAutoTrigger);
  				contentAssist.setProgress(progress);
  				contentAssist.setStyleAccessor(that.getStyleAccessor());
  			}