Commit graph

350 commits

Author SHA1 Message Date
aycabta
5af602e4d4 [ruby/reline] Erase lines correctly when dialog height is changed
68d2516551
2021-09-10 09:05:25 +09:00
aycabta
e4eb085329 [ruby/reline] Render scrollbar when the column of the dialog is moved
5cea268e56
2021-09-08 03:34:51 +09:00
aycabta
8b6d757ba0 [ruby/reline] Remove variables that have no meaning in calculations
3b7a1900fd
2021-09-08 03:34:46 +09:00
aycabta
11a00e3fa2 [ruby/reline] Remove garbage left behind when rerendering the right side of the dialog
d89c23e30b
2021-09-08 03:34:40 +09:00
aycabta
95089ddaf4 [ruby/reline] Move only one line when render a line and then go to the next line
8a966cd962
2021-09-08 01:11:13 +09:00
aycabta
6faf653ab0 [ruby/reline] The #reset_dialog should also use calculated block elem width
577df401b9
2021-09-08 00:13:21 +09:00
aycabta
5a01da7a29 [ruby/reline] Remove debug print
6f82177f2e
2021-09-08 00:08:48 +09:00
aycabta
b766214851 [ruby/reline] Calculate block elem width only once
3054a67d05
2021-09-08 00:08:43 +09:00
aycabta
0ef3d574a0 [ruby/reline] Ensure that scrollbar is only rerendered when the position is changed
f629853eae
2021-09-08 00:08:38 +09:00
aycabta
30486d9150 [ruby/reline] The width of Block Elements in Unicode is East Asian Ambiguous
05e8ab8cbb
2021-09-08 00:04:40 +09:00
aycabta
cec50ec8d6 [ruby/reline] Remove SIG prefix because don't use it in any other signal processing
37648042e8
2021-09-07 02:42:42 +09:00
aycabta
f927614e55 [ruby/reline] Use String for the value to be passed because Signal.trap also returns String
b908fe4439
2021-09-07 02:42:38 +09:00
aycabta
4885a61b12 [ruby/reline] Rescue ArgumentError from Signal.trap(:TSTP) on Windows
8da8182d1c
2021-09-07 01:59:13 +09:00
aycabta
e8ad881336 [ruby/reline] Trap TSTP to handle C-z
ebbd0076b8
2021-09-07 01:59:05 +09:00
aycabta
32ff4a8c93 [ruby/reline] Set scrollbar color
d7962e420d
2021-09-06 05:35:03 +09:00
aycabta
79652c5873 [ruby/reline] Support multiple trap_key
b0207fa049
2021-09-06 05:24:05 +09:00
aycabta
544cd3fb91 [ruby/reline] Support oneshot key bindings config for key_trap of dialog callbacks
5f1141b693
2021-09-06 05:23:06 +09:00
aycabta
03e9887d2e [ruby/reline] Correct misalignment of scrollbar
7924b4cfc6
2021-09-04 21:40:17 +09:00
aycabta
ec36ceb072 [ruby/reline] Implement scrollbar
4c7fc42151
2021-09-04 21:40:12 +09:00
aycabta
9e0caba187 [ruby/reline] Add Reline::Key#match?
8f6aa3af2e
2021-09-03 04:27:48 +09:00
aycabta
38ae3b8e36 [ruby/reline] Add key accessor for dialog callbacks
c949e44a14
2021-09-03 04:27:42 +09:00
aycabta
f3fe3511da [ruby/reline] Swap the order of initialization for readability
d53749b208
2021-09-03 03:32:12 +09:00
aycabta
93080111cd [ruby/reline] Fix autocomplete dialog width
9868432687
2021-09-03 03:32:07 +09:00
aycabta
afa4b59e06 [ruby/reline] Clear only necessary parts when dialog disappearing
46ff0ff435
2021-09-02 17:11:21 +09:00
aycabta
4208cd0301 [ruby/reline] Shrink the dialog height when contents is shorter than it
a18817635f
2021-09-02 17:11:14 +09:00
aycabta
a44d28db9f [ruby/reline] Fix a misalignment when dialog is shown on top
0527b1a492
2021-09-02 17:11:09 +09:00
aycabta
123fcc8c92 [ruby/reline] Remove an unnsed constant
44da8a6b9e
2021-09-02 17:11:01 +09:00
aycabta
4852d87a81 [ruby/reline] Fix a crash when completing empty line
8226ae7e57
2021-09-02 14:07:48 +09:00
aycabta
5f23003cc2 [ruby/reline] Fix a crash when completing after 2nd line
f9d3480c34
2021-09-02 14:07:40 +09:00
aycabta
f9bdb17c02 [ruby/reline] Use padding_space_with_escape_sequences to padding spaces in reset_dialog
7d582f4982
2021-09-01 18:05:37 +09:00
aycabta
acf11b94d2 [ruby/reline] Cut out a method that calcs width including the escape sequence and padding with spaces
46c9d944e5
2021-09-01 18:05:30 +09:00
aycabta
a669b9661e [ruby/reline] Calc width including escape sequences and padding with spaces correctly
21c795e97f
2021-09-01 18:05:25 +09:00
aycabta
3bd3adde7c [ruby/reline] Calc width including escape sequences and clear dialog correctly
9b812d5151
2021-09-01 18:05:20 +09:00
aycabta
9b188ac238 [ruby/reline] Remove one unnecessary nest for simplicity's sake
f4bda85a7c
2021-08-31 20:48:54 +09:00
aycabta
64373a3c58 Move access to dialog_render_info inside nil check 2021-08-31 20:35:10 +09:00
aycabta
7afb5b8b95 [ruby/reline] Use Reline::Unicode.take_range to devide exactly by width
de1ad93f44
2021-08-31 15:19:44 +09:00
aycabta
4f5166e790 [ruby/reline] Check if dialog_render_info is nil or not
e2b87fe831
2021-08-31 15:19:37 +09:00
aycabta
c8a07a1231 [ruby/reline] Fix Reline::Unicode.take_range as it was not fully functional
5da6a8d851
2021-08-31 15:19:32 +09:00
aycabta
7fae57dbb4 [ruby/reline] Use dynamic contents width
f0e54f239b
2021-08-31 15:19:25 +09:00
aycabta
a598730e79 [ruby/reline] Remove an unused variable
0ae7d8b336
2021-08-31 05:45:02 +09:00
aycabta
c98b2e14c7 [ruby/reline] Pass "dialog" to context to get "dialog.scroll_top" later
d81f29a134
2021-08-31 05:26:53 +09:00
aycabta
81d40b5b7e [ruby/reline] Scroll autocompletion pointer in dialog correctly
dc79ed2dd8
2021-08-31 05:26:39 +09:00
aycabta
282f7ce896 [ruby/reline] Use DialogRenderInfo struct
ac6f652a39
2021-08-31 05:26:33 +09:00
aycabta
0c09418fff [ruby/reline] Fix dialog rendering at the bottom edge
860be91bd7
2021-08-31 05:26:28 +09:00
aycabta
935bb4c617 [ruby/reline] Add autocompletion on emacs mode by Tab / S-Tab
22d0b4e5d8
2021-08-30 02:37:23 +09:00
aycabta
11b825076b [ruby/reline] Add config.autocompletion
3d918e4ccb
2021-08-30 02:37:23 +09:00
aycabta
b023ef8594 [ruby/reline] Clear dialog by C-c
f66a079c85
2021-08-29 20:30:33 +09:00
aycabta
d41d41da38 [ruby/reline] Clear completion journey data when finished
03716a411e
2021-08-29 20:30:33 +09:00
aycabta
3d757ba1b6 [ruby/reline] Suppress crashes on nil
b5f62c366b
2021-08-29 20:30:33 +09:00
aycabta
acd15a39d2 [ruby/reline] Support custom bg color
cd0cbf53d5
2021-08-29 20:30:33 +09:00