Change:
Type: <bBug</bFile names do not load properly when calling double-byte filenames in Markdown It would be great if Markdown could show double-byte file names when we load them up, just like in VS Code Explorer Markdown file -and-drop to embed double-byte files names do not load properly when calling double-byte filenames in Markdown ! VS Code version: Code 1.84.2 (Universal) (, 2023-11-09T10:52:33.687Z) OS version: Darwin arm64 23.1.0 Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (32)</summaryExtensionVersion ------ vscode-django1.14.0 markdown-preview-github-styles2.0.3 python-environment-manager1.2.4 python-extension-pack1.7.0 codespaces1.16.2 copilot1.139.0 copilot-chat0.10.2 vscode-pull-request-github0.76.1 vscode-power-mode3.0.2 vsc-python-indent1.18.0 node-module-intellisense1.5.0 vscode-language-pack-ja1.84. vscode-kubernetes-tools1.3.15 python2023.20.0 vscode-pylance2023.11.10 jupyter2023.10. jupyter-keymap1.1.2 jupyter-renderers1.0.17 vscode-jupyter-cell-tags0.1.8 vscode-jupyter-slideshow0.1.5 remote-containers0.321.0 atom-keybindings3.3.0 vsliveshare1.0.5896 autodocstring0.6.1 vscode-yaml1.14.0 code-spell-checker3.0.1 vscode-pets1.25.1 intellicode-api-usage-examples0.2.8 vscodeintellicode1.2.30 jinja0.0.8 markdown-pdf1.5.0 markdown-all-in-one3.5.1 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Can you please share an example file name as text so I can try to easily reproduce this Also is the issue that the file doesn't load in the preview or that the wrong path is inserted when you drop the file into the markdown editor
I'm having the same problem. Below is an example of a Japanese file name: audio.mp3 Below is a quick hack that will get you the desired result. Added decodeURI when creating a link on the editor. I hope you can decide whether it is helpful or not. <img width="1318" alt="image" src=""Version: 1.86.0 Commit: Unknown Date: Unknown Electron: 27.1.3 ElectronBuildId: undefined Chromium: 118.0.5993.159 18.17.1 V8: 11.8.172.18-electron.0 OS: Darwin arm64 23.1.0
Thanks Will check in a fix for the next insiders build
The hover in the preview still shows encoded characters. Let me know if this i under out control and I should file and issue. !

Discussion:
title: string, link: string, placeholderValue: number, <del> isExternalLink: boolean, </del> <ins> _isExternalLink: boolean, </ins> ): void { snippet.appendText('['); snippet.appendPlaceholder(escapeBrackets(title) || 'Title', placeholderValue); <del> snippet.appendText(`](${escapeMarkdownLinkPath(link, isExternalLink)})`); </del> <ins> snippet.appendText(`](${escapeMarkdownLinkPath(link)})`); </ins> } export function createUriListSnippet(

snippet.appendPlaceholder(escapeBrackets(title) || 'Title', placeholderValue); snippet.appendText('"></audio>'); } else if (insertAsMedia) { <del> if (insertAsMedia) { insertedImageCount++; if (pasteAsMarkdownLink) { snippet.appendText('!['); const placeholderText = escapeBrackets(title) || options?.placeholderText || 'Alt text'; const placeholderIndex = typeof options?.placeholderStartIndex !== 'undefined' ? options?.placeholderStartIndex + i : (placeholderValue === 0 ? undefined : placeholderValue); snippet.appendPlaceholder(placeholderText, placeholderIndex); snippet.appendText(`](${escapeMarkdownLinkPath(mdPath, isExternalLink)})`); } else { snippet.appendText(escapeMarkdownLinkPath(mdPath, isExternalLink)); } </del> <ins> insertedImageCount++; if (pasteAsMarkdownLink) { snippet.appendText('!['); const placeholderText = escapeBrackets(title) || options?.placeholderText || 'Alt text'; const placeholderIndex = typeof options?.placeholderStartIndex !== 'undefined' ? options?.placeholderStartIndex + i : (placeholderValue === 0 ? undefined : placeholderValue); snippet.appendPlaceholder(placeholderText, placeholderIndex); snippet.appendText(`](${escapeMarkdownLinkPath(mdPath)})`); } else { snippet.appendText(escapeMarkdownLinkPath(mdPath)); </ins> } } else { insertedLinkCount++;

return encodeURI(attr).replaceAll('"', '&quot;'); } <del> function escapeMarkdownLinkPath(mdPath: string, isExternalLink: boolean): string { </del> <ins> function escapeMarkdownLinkPath(mdPath: string): string { </ins> if (needsBracketLink(mdPath)) { return '<' + mdPath.replaceAll('<', '<').replaceAll('>', '>') + '>'; } <del> return isExternalLink ? mdPath : encodeURI(mdPath); </del> <ins> return mdPath; </ins> } function escapeBrackets(value: string): string {

return value; } <del> function needsBracketLink(mdPath: string) { </del> <ins> function needsBracketLink(mdPath: string): boolean { </ins> // Links with whitespace or control characters must be enclosed in brackets if (mdPath.startsWith('<') || /s|[u007Fu0000-u001f]/.test(mdPath)) { return true;