[BUG] Markdown renderer incorrectly treats single tilde (~) as strikethrough
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Single tildes used for "approximately" (e.g., ~15M minutes) are being rendered with strikethrough formatting in the markdown viewer, when they should just display as plain text
What Should Happen?
Expected behavior: Single tilde should display as "approximately" symbol
Actual behavior: Text appears with strikethrough formatting
Error Messages/Logs
Steps to Reproduce
create markdown with
~test test~
and see if it generates strikethrough
Claude Model
Not sure / Multiple models
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.12
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
WSL (Windows Subsystem for Linux)
Additional Information
This has been previously reported in #9757 , but that issue has been closed after just one month of inactivity, despite the closing message mentioning 2 months of inactivity, and now has also been locked. This anti-user automatic behavior is quite annoying. Bugs should be investigated and fixed, not ignored.
One of my comments from the previous issue on this subject:
I had a similar issue with a markdown rendering engine (the issue I had is not directly related to this bug, I found this bug report by accident when looking for solutions to my unrelated problem).
It seems there is a particular flavor of markdown, called GFM (GitHub Flavored Markdown), for which this particular "bug" is considered a "feature". The engine I was using supports disabling GFM, which fixed my particular problem.
GFM has other peculiarities too, for example the handling of new lines is also inconsistent with standard markdown. From what I see, many LLM tools use GFM for rendering, instead of standard markdown. LM Studio for example is affected by the same "bug", I'm guessing for the same reason, GFM support.
The problem is that, in my experience, LLMs can frequently generate "~" characters when not actually "intending" to strikethrough any text, and this "feature" can be quite annoying when that happens.
Further comment on the subject:
For example, Unix/Linux home directories can be represented using the ~ character in paths, as a placeholder, so LLM outputs containing such home directory based paths will frequently trigger this incorrect strike-through formatting.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗