summaryrefslogtreecommitdiff
path: root/lib/reline/io
AgeCommit message (Collapse)Author
2024-12-06[ruby/reline] Combine MAPPINGS(single byte input to symbol) withtomoya ishida
key_bindings(escape sequence to symbol) (https://github.com/ruby/reline/pull/715) https://github.com/ruby/reline/commit/6a7e249374
2024-12-02[ruby/reline] Implement buffered output to Reline::ANSItomoya ishida
(https://github.com/ruby/reline/pull/790) Minimize the call of STDOUT.write This will improve rendering performance especially when there is a busy thread `Thread.new{loop{}}` https://github.com/ruby/reline/commit/a6fe45f5ba
2024-11-30[ruby/reline] Call user defined sigwinch and sigcont handlertomoya ishida
(https://github.com/ruby/reline/pull/788) https://github.com/ruby/reline/commit/7d44770c84
2024-11-27[ruby/reline] Fix io_gate.encoding raises IOError in ruby <= 3.0tomoya ishida
(https://github.com/ruby/reline/pull/785) https://github.com/ruby/reline/commit/85e20f0031
2024-11-14[ruby/reline] Drop loading terminfo, remove fiddle dependency intomoya ishida
non-windows environment. (https://github.com/ruby/reline/pull/769) Reline works perfectly in most major terminal emulators without terminfo. In minor/old terminal emulator, we used to get key bindings from terminfo, but I think it is not used so much. https://github.com/ruby/reline/commit/3ceba3bff7
2024-11-08[ruby/reline] Windows fix (https://github.com/ruby/reline/pull/775)YO4
* test_yamatanooroti: close tempfile before unlink * test_yamatanooroti: omit because of windows does not support job control * test_yamatanooroti: change startup message detection for windows * windows.rb: can call win32api using nil as NULL for pointer argument Exception occurred when interrupted with Ctrl+C on legacy conhost * windows.rb: fix get_screen_size return [window height, buffer width] insted of [buffer height, buffer width] * windows.rb: import scroll_down() from ansi.rb * windows.rb: add auto linewrap control if VT output not supported (legacy console) * unfreeze WIN32API pointer arguments They internally duplicate arguments so api functions write to another place. This breaks the console mode detection with ruby-head. * remove useless code from Win32API#call argument repacking and return value tweaking is not needed for Reline::Windows requirements. * Correctly handle top of console viewport * Revert "remove useless code from Win32API#call" This reverts commit https://github.com/ruby/reline/commit/060ba140ed43. * Revert "windows.rb: can call win32api using nil as NULL for pointer argument" This reverts commit https://github.com/ruby/reline/commit/93a23bc5d0c9. https://github.com/ruby/reline/commit/47c1ffbabe
2024-10-22[ruby/reline] Use IO's encoding instead of Encoding.default_externalWu
(https://github.com/ruby/reline/pull/765) * use IO's encoding * refactoring * remove unused encoding params * (for retriggering CI) remove unused encoding params https://github.com/ruby/reline/commit/f09772adab
2024-10-07[ruby/reline] Add cursor keys for application keypad mode to defaulttomoya ishida
key bindings (https://github.com/ruby/reline/pull/719) * Add SS3 arrow sequence to default key bindings * Remove wrong KDE arrow sequence https://github.com/ruby/reline/commit/546a42522e
2024-10-03[ruby/reline] Rename `matches?` as `match?`Nobuyoshi Nakada
(https://github.com/ruby/reline/pull/753) https://github.com/ruby/reline/commit/9230fe162d
2024-10-02[ruby/reline] Add a timeout to cursor_postomoya ishida
(https://github.com/ruby/reline/pull/750) https://github.com/ruby/reline/commit/dd4a654e5d
2024-09-02[ruby/reline] Get console handle again and retry when Win32API calltomoya ishida
fails (https://github.com/ruby/reline/pull/734) https://github.com/ruby/reline/commit/66291b5e3c
2024-06-25[ruby/reline] Rerender and enter raw mode again by SIGCONTtomoya ishida
(https://github.com/ruby/reline/pull/727) https://github.com/ruby/reline/commit/be45660c83
2024-06-10[ruby/reline] Add more fallbacks when terminfo is not availabletomoya ishida
(https://github.com/ruby/reline/pull/722) Add xterm key bindings to comprehensive list Add fallback escape sequence of cursor hide/show https://github.com/ruby/reline/commit/e3c73bbe26
2024-06-04[ruby/reline] Ensure no escape sequence before printing prompttomoya ishida
(https://github.com/ruby/reline/pull/716) https://github.com/ruby/reline/commit/f9227b5c89
2024-06-04Revert "Revert "[ruby/reline] Reline::ANSI is general io. Reline::GeneralIO ↵Takashi Kokubun
is not."" This reverts commit 6e84ac2359c8fc8cb686ef4644b9cae26cd5ab9e. Now that the rubygems spec change has been merged, let's try reverting this and fixing it with tompng's new patch.
2024-06-03Revert "[ruby/reline] Reline::ANSI is general io. Reline::GeneralIO is not."Takashi Kokubun
This reverts commit ba01d15cf5db96933905d669c68f5cc0cd6910b8. It seems to be failing test-bundler-parallel. Reverting it to normalize the CI. We should revert this revert once we figure it out.
2024-06-03[ruby/reline] Reline::ANSI is general io. Reline::GeneralIO is not.tomoya ishida
(https://github.com/ruby/reline/pull/659) Reline::ANSI has a partial non-tty supporting code. It should be a general io. Reline::Dumb should be only used in testing. https://github.com/ruby/reline/commit/2d6828473d
2024-06-01[ruby/reline] Overhaul io gate structureStan Lo
(https://github.com/ruby/reline/pull/666) * Overhaul IO gate structure 1. Move IO related classes to `lib/reline/io/` directory. 2. Rename `GeneralIO` to `Dumb`. 3. Use IO classes as instances instead of classes. * Update lib/reline/io/ansi.rb Co-authored-by: tomoya ishida <tomoyapenguin@gmail.com> --------- https://github.com/ruby/reline/commit/dc1518e1ac Co-authored-by: tomoya ishida <tomoyapenguin@gmail.com>