Thomas O'Dowd
d9af567781
Various screen redraw fixes for wide characters, narrow screens etc.
...
- Don't overwrite existing text on same line as the prompt
- Don't refresh screen when simply appending characters to buffer
- Don't refresh screen unnessarily when pressing enter key
- Handle prompts longer than screen width.
- Fix wide characters in prompt
- Fix screen edge issue when next character is wide.
- Fix screen edge issue for masked characters
- Fix narrow masked characteter, masking wide input
- Fix wide masked character, masking narrow input
- Reworked backspacesequence for index to use same algorithm as used
for lineedge and reduce the control sequences to 2.
- Reworked cleanup to incorporate initial cursor column position
and avoid overwriting existing text as well as simplifying the
control sequences used.
- Fixed double width character detection and updated unit tests
- Handle emoji in text or prompts.
- Implement windows ANSI absolute horizonal position ansi code.
- Get windows cursor position directly and don't send ansi DSR code
- Don't write out empty mask runes
- Cleanup - removed unused hadCLean variable
2023-02-28 11:00:57 +09:00
ChenYe
7f93d88cd5
fixing deadloop when input is filtered
2022-07-15 20:48:48 +08:00
mrsinham
aee0fa669f
fix: on linux multine move was not working ( #103 )
...
on linux, if you want to change line, \b are not enough. You need to change line
and move to the right.
2017-10-02 20:39:53 +08:00
Thomas Bradford
707fd8ecaa
intercept line rendering using a 'Painter' ( #116 )
2017-10-01 22:58:28 -05:00
Sagar Mittal
9f56defe66
Add barebones support for yank/paste ( #120 )
2017-10-01 22:57:50 -05:00
chzyer
283f5429f7
Bugfix/datarace prompt ( #81 )
...
* fix data race in PromptLen
* add lock for all operation in RuneBuffer
* add race test
* update travis
2016-09-15 18:11:25 +08:00
chzyer
820d6f2766
fix data race in PromptLen ( #80 )
2016-09-10 16:03:59 +08:00
chzyer
31eb6be473
support insert tag char ( #74 )
2016-09-02 20:10:31 +08:00
chzyer
27fdf0b285
Fix: a backup plan when can't get size of terminal ( #71 )
...
* fix (0,0) size
* fix
2016-08-31 23:51:28 +08:00
aktungmak
47d43db0fd
fix #36 vim mode: 'e' moves to the beginning of the next word ( #64 )
...
I updated the switch in vim.go to treat 'w' and 'W' differently to 'e' and 'E'.
I then added a method to runebuf.go to provide the logic for that motion.
tested and working.
2016-07-26 21:40:22 +08:00
chzyer
6cc043de37
Fix #43 , remove sub-package for gopkg compatiblity
2016-04-05 09:55:46 +08:00
chzyer
218eb7fff6
[example] Add a IM example
2016-03-31 10:55:53 +08:00
chzyer
e5e328dcc7
remove SplitByMultiLine
2016-03-31 00:15:33 +08:00
chzyer
b1b67f8632
[runebuffer] use single line
2016-03-30 23:55:12 +08:00
chzyer
b57eccfd02
add remote mode
2016-03-13 18:32:48 +08:00
Cheney
4ae9d7e0fd
fix multiline
2016-03-05 15:45:42 +08:00
Cheney
867002449c
refactory
2016-03-05 15:45:42 +08:00
Chzyer
44ccc71d92
Merge pull request #33 from chzyer/feature/support_more_vim_feature
...
Support more vim shortcut
2016-02-27 10:07:23 +08:00
Cheney
e967bfcedb
#22 support more vim shortcut
...
* c<motion>, d<motion> (change, delete)
* x (delete character)
* r (replace character)
2016-02-24 22:35:22 +08:00
Ben Darnell
c3db9c3189
Fix a division by zero on terminals that report 0 width.
...
This is true of emacs shell-mode.
2016-02-18 17:25:32 -05:00
Cheney
15e7be4ac2
add new interface and fixed crash if stdout isn't a tty
2016-02-18 11:25:41 +08:00
Cheney
00e1a8e95a
#19 fixed mass history
2016-02-17 22:20:03 +08:00
Cheney
71e9536f4b
add password support
2015-11-20 20:56:42 +08:00
Cheney
55809b401d
add runes package
2015-10-04 21:56:34 +08:00
Cheney
879224ddc9
refactor
2015-10-02 10:37:21 +08:00
Cheney
79d1bf27b4
add simple vim mode
2015-10-01 22:44:43 +08:00
Cheney
390f0ebb6b
fix typo
2015-09-30 16:13:36 +08:00
Cheney
6eb29567f6
support ANSI escape sequence for windows
2015-09-29 21:01:17 +08:00
Cheney
9edb463230
add windows api, ansi writer
2015-09-29 17:49:58 +08:00
Cheney
d4826eb059
add ansi writer
2015-09-29 00:26:49 +08:00
Cheney
03d201ab65
add Ctrl+U
2015-09-28 11:13:39 +08:00
Cheney
7537bea372
add set prompt
2015-09-27 18:54:26 +08:00
Cheney
a81fb5db7a
fixed not working in screen #3
2015-09-27 10:12:15 +08:00
Cheney
04f86e9c53
add auto complete
2015-09-25 22:56:00 +08:00
Cheney
f179b24304
support double-width-char & colorful prompt
2015-09-25 12:45:39 +08:00
Cheney
a659448259
update example
2015-09-23 14:52:45 +08:00
Cheney
3c4b5dd53d
rename
2015-09-23 13:52:26 +08:00
Cheney
bfdaae1594
fix typo
2015-09-23 13:03:13 +08:00
Cheney
9848c61567
fix word breaker
2015-09-23 11:59:39 +08:00
Cheney
4ab9a96399
refactor
2015-09-23 11:46:56 +08:00
Cheney
a7f498f047
fix fwd/bck search
2015-09-23 11:10:36 +08:00
Cheney
3b1cf6b8fb
add fwd/bck search
2015-09-22 23:01:15 +08:00
Cheney
3f23122fec
support save history item
2015-09-22 18:16:24 +08:00
Cheney
c8f8ec4b96
refactor runebuffer
2015-09-22 17:41:14 +08:00
Cheney
f8c012aa53
fix runebuf
2015-09-22 17:36:52 +08:00
Cheney
c9aba7b858
fix deleteword/kill
2015-09-21 22:51:48 +08:00
Cheney
9c65cb7ccf
fix runebuffer refresh
2015-09-21 22:27:40 +08:00
Cheney
772978399e
improve history
2015-09-21 21:00:48 +08:00
Cheney
6642cc6506
support history
2015-09-21 13:14:10 +08:00
Cheney
740e90a464
init commit
2015-09-20 23:14:29 +08:00