claude-code - 💡(How to fix) Fix [BUG] Character under cursor is illegible when terminal has CustomCursorTextColor set (Konsole)

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

Error Messages/Logs

Fix Action

Fix / Workaround

  • Reproduced with both theme: "dark" and theme: "dark-ansi".
    • zsh and neovim/vim in the same Konsole profile render the cursor character correctly per CustomCursorTextColor, so the issue is specific to Claude Code's TUI renderer
    • Likely cause: the renderer applies reverse video (\e[7m) or similar attribute at the cursor position, which prevents Konsole from applying its CustomCursorTextColor override.
    • Workaround: set UseCustomCursorColor=false in the Konsole profile (loses the custom cursor in zsh/vim too).

Code Example

N/A — visual rendering issue.
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing issues and this hasn't been reported yet
  • This is a single bug report (please file separate reports for different bugs)
  • I am using the latest version of Claude Code

What's Wrong?

When typing in Claude Code's input box and moving the cursor mid-line (with arrow keys), the character under the cursor block is rendered in a dark color that does not respect the terminal's configured cursor text color, making it illegible against the cursor block.

What Should Happen?

The character under the cursor should be rendered with the terminal's configured CustomCursorTextColor (white in this case), as it correctly does in plain zsh and in vim/neovim running in the same terminal profile.

Error Messages/Logs

N/A — visual rendering issue.

Steps to Reproduce

  1. Use Konsole with a profile that has these settings in ~/.local/share/konsole/<profile>.profile:
    [Cursor Options]
    CustomCursorColor=17,122,110
    CustomCursorTextColor=255,255,255 UseCustomCursorColor=true
  2. Open Claude Code and type a sentence
  3. Press ← arrow keys to move the cursor mid-line over a character.
  4. Observe that the cursor block renders in teal (the configured custom cursor color) but the character underneath is rendered dark instead of white.
  5. For comparison, exit Claude Code, run echo "test cursor here" in zsh, recall it with ↑, and move cursor mid-line, character is correctly rendered white on teal.
  6. Same for :e in neovim — character correctly white on teal.

Claude Model

Not sure / Multiple models

Is this a regression?

I don't know

Last Working Version

Claude Code Version

2.1.132 (Claude Code)

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Other

Additional Information

  • Reproduced with both theme: "dark" and theme: "dark-ansi".
  • zsh and neovim/vim in the same Konsole profile render the cursor character correctly per CustomCursorTextColor, so the issue is specific to Claude Code's TUI renderer
  • Likely cause: the renderer applies reverse video (\e[7m) or similar attribute at the cursor position, which prevents Konsole from applying its CustomCursorTextColor override.
  • Workaround: set UseCustomCursorColor=false in the Konsole profile (loses the custom cursor in zsh/vim too).

Neovim: <img width="671" height="766" alt="Image" src="https://github.com/user-attachments/assets/696f95bb-f07f-4d25-96fc-33d17f68ddd0" />

zsh: <img width="449" height="45" alt="Image" src="https://github.com/user-attachments/assets/fc0bd7e2-e5e4-49ce-99a3-d20a55c47d09" />

Claude Code: <img width="687" height="101" alt="Image" src="https://github.com/user-attachments/assets/9b901916-563d-431c-8c14-9be610d5f444" />

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING