Skip to content

Commit

Permalink
Avoid using CSI # S for scroll down (#577)
Browse files Browse the repository at this point in the history
  • Loading branch information
st0012 authored Jul 25, 2023
1 parent 46db711 commit b67ee4e
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion lib/reline/ansi.rb
Original file line number Diff line number Diff line change
Expand Up @@ -335,9 +335,12 @@ def self.erase_after_cursor
@@output.write "\e[K"
end

# This only works when the cursor is at the bottom of the scroll range
# For more details, see https://github.com/ruby/reline/pull/577#issuecomment-1646679623
def self.scroll_down(x)
return if x.zero?
@@output.write "\e[#{x}S"
# We use `\n` instead of CSI + S because CSI + S would cause https://github.com/ruby/reline/issues/576
@@output.write "\n" * x
end

def self.clear_screen
Expand Down

0 comments on commit b67ee4e

Please sign in to comment.