Change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.73.0 OS Version: macOS 12.1 21C52 x86_64 Recently upgraded to 1.73 and no longer seeing selection highlighting. <img width="1728" alt="Screen Shot 2022-11-09 at 8 44 07 AM" src="https://user-"Default setting still and set on the user level as well to no avail. <img width="1728" alt="Screen Shot 2022-11-09 at 8 41 34 AM" src="https://user-"<img width="803" alt="Screen Shot 2022-11-09 at 8 41 56 AM" src="https://user-"
I am only seeing this in Markdown (including code blocks) but not source code.
The problem seems to be that previously you'd get a match if the cursor was at the start of the word but now only if you select/highlight the entire word (or subset). If this is a change in functionality, any way to update settings to restore previous out-of-box behavior?
I believe this might be caused by markdown now registering a document highlight provider. When a language registers a document highlight provider, the non-semantic based, text editor word highlight takes a back seat. I think you can turn this down via , or maybe . Let me loop in , maybe he has more ideas.

Discussion:
export type ValidateEnabled = 'ignore' | 'warning' | 'error' | 'hint'; <del> interface Settings { </del> <ins> export interface Settings { </ins> readonly markdown: { readonly occurrencesHighlight: { readonly enabled: boolean;

*  Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ <del> import { CancellationToken, Connection, InitializeParams, InitializeResult, NotebookDocuments, ResponseError, TextDocuments } from 'vscode-languageserver'; </del> <ins> import { CancellationToken, CompletionRegistrationOptions, CompletionRequest, Connection, Disposable, DocumentHighlightRegistrationOptions, DocumentHighlightRequest, InitializeParams, InitializeResult, NotebookDocuments, ResponseError, TextDocuments } from 'vscode-languageserver'; </ins> import { TextDocument } from 'vscode-languageserver-textdocument'; import * as lsp from 'vscode-languageserver-types'; import * as md from 'vscode-markdown-languageservice'; import { URI } from 'vscode-uri'; import { getLsConfiguration, LsConfiguration } from './config'; <del> import { ConfigurationManager } from './configuration'; </del> <ins> import { ConfigurationManager, Settings } from './configuration'; </ins> import { registerValidateSupport } from './languageFeatures/diagnostics'; import { LogFunctionLogger } from './logging'; import * as protocol from './protocol';

}); registerCompletionsSupport(connection, documents, mdLs, configurationManager); <del> registerDocumentHightlightSupport(connection, documents, mdLs, configurationManager); </del> <ins> registerDocumentHighlightSupport(connection, documents, mdLs, configurationManager); </ins> registerValidateSupport(connection, workspace, documents, mdLs, configurationManager, serverConfig.logger); return {

workspaceDiagnostics: false, }, codeActionProvider: { resolveProvider: true }, <del> completionProvider: { triggerCharacters: ['.', '/', '#'] }, </del> definitionProvider: true, documentLinkProvider: { resolveProvider: true }, <del> documentHighlightProvider: true, </del> documentSymbolProvider: true, foldingRangeProvider: true, referencesProvider: true,

connection.listen(); } <ins> function registerDynamicClientFeature( config: ConfigurationManager, isEnabled: (settings: Settings | undefined) => boolean, register: () => Promise<Disposable>, ) { let registration: Promise<IDisposable> | undefined; function update() { const settings = config.getSettings(); if (isEnabled(settings)) { if (!registration) { registration = register(); } } else { registration?.then(x => x.dispose()); registration = undefined; } } update(); return config.onDidChangeConfiguration(() => update()); } </ins> function registerCompletionsSupport( connection: Connection,

ls: md.IMdLanguageService, config: ConfigurationManager, ): IDisposable { <del> // let registration: Promise<IDisposable> | undefined; function update() { // TODO: client still makes the request in this case. Figure our how to properly unregister. return; // const settings = config.getSettings(); // if (settings?.markdown.suggest.paths.enabled) { // 	if (!registration) { // 		registration = connection.client.register(CompletionRequest.type); // 	} // } else { // 	registration?.then(x => x.dispose()); // 	registration = undefined; // } } </del> connection.onCompletion(async (params, token): Promise<lsp.CompletionItem[]> => { <del> try { const settings = config.getSettings(); if (!settings?.markdown.suggest.paths.enabled) { return []; } </del> <ins> const settings = config.getSettings(); if (!settings?.markdown.suggest.paths.enabled) { return []; } </ins> <del> const document = documents.get(params.textDocument.uri); if (document) { return await ls.getCompletionItems(document, params.position, params.context!, token); } } catch (e) { console.error(e.stack); </del> <ins> const document = documents.get(params.textDocument.uri); if (document) { return ls.getCompletionItems(document, params.position, params.context!, token); </ins> } return []; }); <del> update(); return config.onDidChangeConfiguration(() => update()); </del> <ins> return registerDynamicClientFeature(config, (settings) => !!settings?.markdown.suggest.paths.enabled, () => { const registrationOptions: CompletionRegistrationOptions = { documentSelector: null, triggerCharacters: ['.', '/', '#'], }; return connection.client.register(CompletionRequest.type, registrationOptions); }); </ins> } <del> function registerDocumentHightlightSupport( </del> <ins> function registerDocumentHighlightSupport( </ins> connection: Connection, documents: TextDocuments<md.ITextDocument>, mdLs: md.IMdLanguageService,

return mdLs!.getDocumentHighlights(document, params.position, token); }); <ins> return registerDynamicClientFeature(configurationManager, (settings) => !!settings?.markdown.occurrencesHighlight.enabled, () => { const registrationOptions: DocumentHighlightRegistrationOptions = { documentSelector: null, }; return connection.client.register(DocumentHighlightRequest.type, registrationOptions); }); </ins> }