Skip to content

Conversation

@fredyw
Copy link

@fredyw fredyw commented Dec 7, 2025

JediTerm was incorrectly handling cursor movement when the cursor was located outside the active scrolling region (e.g. updating a status bar). If the cursor was below the scroll region, operations like newlines would trigger a scroll of the main content area, causing visual corruption.

This change ensures scrolling only occurs when the cursor is strictly at the bottom edge of the defined scrolling region.

Also fixes DSR (Device Status Report) to respect Origin Mode by reporting coordinates relative to the scrolling region instead of absolute screen coordinates.

Fixes #148.
Related to https://youtrack.jetbrains.com/issue/IJPL-102697/JediTerm-mis-render-prompt-cursor-location-when-inside-tmux.

Before:
jediterm_148_before

After:
jediterm_148_after

JediTerm was incorrectly handling cursor movement when the cursor was located outside
the active scrolling region (e.g. updating a status bar). If the cursor was below the
scroll region, operations like newlines would trigger a scroll of the main content area,
causing visual corruption.

This change ensures scrolling only occurs when the cursor is strictly at the bottom edge
of the defined scrolling region.

Also fixes DSR (Device Status Report) to respect Origin Mode by reporting coordinates
relative to the scrolling region instead of absolute screen coordinates.

Fixes JetBrains#148.
Related to https://youtrack.jetbrains.com/issue/IJPL-102697/JediTerm-mis-render-prompt-cursor-location-when-inside-tmux.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Jediterm doesn't play nice with terminal multiplexers

1 participant