Version 2.9.17 Windows 10
In the Wysiwyg Editor, I add links to images and folders on my hard drive using the insert/edit link button,
like C:\Folder.
Whenever I open the md editor, all backslashes in those links transform into %5C, like C:%5C\Folder.
I found a similar thread here Backslash in md editor changes in md viewer where it is suggested to use forward slashes for local references, but how is that supposed to work? Can't I somehow stop the md editor to transform my backslashes? Linking stuff in my notes is quite essential for me...

Update: I tried to enter links like an URL, so instead of C:\folder\file, I entered file:///C:/folder/file, but even then switching to md changes the path into C:%5Cfolder%5Cfile so that doesnt work...

Hi there, usually this might happen due to spaces and non latin characters in the path to Joplin profile. For example, username could be spelled in two words `John Doe` or with non latin name `习近平`. Try checking this path or create different user with latin one-word name

Uh, there is a minus in my Username. It is not really practical to create a new user for me, though. Is there a way to move the Joplin Directory somewhere else? I couldn't find an option in the preferences...

I'm suggesting to create new user just to triage the issue for now

I switched to another user with only latin letters. Problem still persists. I take a screenshot, paste it into the joplin note and retrieve its path. Path looks like that:
C:\Users\ [USER]\ .config\joplin-desktop\resources\98ec67623e134d928f4837c02ba8100a.png
In the WYSIWYG Editor, i then paste that path into a link. I also tried entering it manually in the markup editor with [Picture] (path)
In both cases, it works initially, but as soon I switch between markup and WYSIWYG view, joplin converts the path into: C:%5CUsers%5C[USER]%5C.config%5Cjoplin-desktop%5Cresources%5C98ec67623e134d928f4837c02ba8100a.png
Even if I enter a forward slash path like file:///C:/etc. Joplin transforms all slashes as soon as I hit the toggle editors button.

Can you try running the same Joplin profile on another computer?

Also let's try safe mode as well (menu --> help --> toggle safe mode)

Sorry, not possible to use another computer.
Safe mode leaves the backslashes intact. In WYSIWYG, I use insert link to create a clickable link, which works. Then I toggle to md, then I toggle back to WYSIWYG. This puts a space between [Text] and (path), creating a [Text] (path) in WYSIWYG. Backslashes remain backslashes though.

Ok, can you list the plugins you use?

None, I guess...

Hm... I just pondered... could it be because of my sync settings? I sync the archive to a network drive, so I wonder anyway if local paths to objects are being transformed. Does C:\localfolder\object sync into server\serverfolder\object in any way? Thing is, I tried to link the pasted images as Joplin Objects, like you can do with markdown paths for topics, but joplin always automatically seems to translate those back into actual folder paths, unlike with topics. So while a topic link always remains [link] (joplin://topic), [link] (joplin://picture) is transformed to [link] (local path\picture) which then is transformed into [link](local path%5Cobject) which seems to break the link.

Once again you may try different user with different profile to rule out external storage.

Also, does the behavior persists in all notes or only in some?

Also-also, have you tried reinstalling the app already?

• different user = same problem
• different notes = same problem
• reinstall = same problem

Actually, the colleague I with whom I share the notebook works on another computer and even she has the same problem. toggle between md and rtf editor destroys link-paths to local resources.

ok, let's see the logs of the moment when links are broken

So those are the warnings popping up. Do I get this right that joplin rewrites the link because the path is not recommended to be used?

C:\Program Files\Jop…evelopment.js:11494 Warning: componentWillReceiveProps has been renamed, and is not recommended for use. See https://fb.me/react-async-component-lifecycle-hooks for details.

• Move data fetching code or side effects to componentDidUpdate.
• If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://fb.me/react-derived-state
• Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 17.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.

Please update the following components: Connect(NoteTextViewerComponent), Connect(Toolbar)
printWarning @ C:\Program Files\Jop…evelopment.js:11494
lowPriorityWarning @ C:\Program Files\Jop…evelopment.js:11513
ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings @ C:\Program Files\Jop…evelopment.js:11680
flushRenderPhaseStrictModeWarningsInDEV @ C:\Program Files\Jop…evelopment.js:23134
commitRootImpl @ C:\Program Files\Jop…evelopment.js:22428
unstable_runWithPriority @ C:\Program Files\Jop….development.js:643
runWithPriority\$2 @ C:\Program Files\Jop…evelopment.js:11305
commitRoot @ C:\Program Files\Jop…evelopment.js:22414
runRootCallback @ C:\Program Files\Jop…evelopment.js:21554
(anonymous) @ C:\Program Files\Jop…evelopment.js:11353
unstable_runWithPriority @ C:\Program Files\Jop….development.js:643
runWithPriority\$2 @ C:\Program Files\Jop…evelopment.js:11305
flushSyncCallbackQueueImpl @ C:\Program Files\Jop…evelopment.js:11349
flushSyncCallbackQueue @ C:\Program Files\Jop…evelopment.js:11338
dispatchDiscreteEvent @ C:\Program Files\Jop…development.js:5979
C:\Program Files\Jop…evelopment.js:11494 Warning: componentWillUpdate has been renamed, and is not recommended for use. See https://fb.me/react-async-component-lifecycle-hooks for details.

• Move data fetching code or side effects to componentDidUpdate.
• Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 17.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.

Please update the following components: Connect(NoteTextViewerComponent), Connect(Toolbar)
C:\Program Files\Jop…essageHandler.js:25 Got ipc-message: noteRenderComplete undefined
DevTools failed to load source map: Could not parse content for file:///C:/Program%20Files/Joplin/resources/app.asar/gui/note-viewer/pluginAssets/mermaid/mermaid.min.js.map: Unexpected end of JSON input

I can't say for sure from this log. The depreciation warnings are usually okay.

Btw have you tried 2.8.8 version before (does the behaviour persist)? Also let's backup once again and try latest 2.10 beta, it may resolve some warnings.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.