Commit Graph

52 Commits

Author SHA1 Message Date
Christian Rocha d301ee0405
change(keys): spacebar sends a `KeySpace` (#315)
* Revert "fix: update tests for space input"

This reverts commit bfb166822e.

* Revert "feat: obliterate type KeySpace"

This reverts commit d3fb1b707a.
2022-05-13 13:24:16 -04:00
Christian Rocha d3fb1b707a feat: obliterate type KeySpace
Treating a space differently from other runes was proving to cause more
confusion that clarity.
2022-05-10 16:56:37 -04:00
Christian Rocha 48cdc1e6c3
feat(keys): add support for shift/ctrl + arrow keys (#292)
* feat(keys): add support for shift/ctrl+arrow keys

* chore(keys): use sequences for shift/ctrl arrow keys

* feat(keys): support ctrl+shift+arrow keys

* chore(keys): use sequences for alt+arrows

* feat(keys): add support for arrow key combinations with alt modifiers

* fix(keys): remove an extreaneous check

* feat(keys): add support for urxvt arrow keys with modfiers

* feat(keys): add support for arrow keys in DECCKM mode

* docs(keys): expand on comment about ctrl+backtick

* chore(keys): migrate various bindings to sequences

* Minor comment improvements to the input parser

Co-authored-by: Bwahharharrr <yitang@tutanota.com>
2022-05-10 16:16:33 -04:00
bashbunni 14e58aa1f9
fix(keys): spacebar now sends a `KeySpace` (#289)
* fix: replace keySP with working KeySpace

* test: update test to meet new reqs

* fix: fix test looking for 'space'

* fix(keys): set type to KeySpace when sending a space

* docs(keys): comments

Co-authored-by: Christian Rocha <christian@rocha.is>
2022-04-12 11:14:35 -04:00
Christian Rocha 5c76027b36
feat: add support for function keys 2022-03-21 09:48:05 -04:00
Christian Muehlhaeuser 6301f93cb2 Support receiving batched mouse events
Mouse events may trigger more than a single events simultaneously.

Fixes #212.
2022-02-13 08:40:04 +01:00
Christian Rocha c5ed2b4a01 Add missing GoDocs 2021-09-07 15:37:14 -04:00
Christian Muehlhaeuser b664dee939 Fix typo 2021-03-12 01:24:38 +01:00
Christian Rocha 65e8067a82 Implement String() on type Key and make key constants type KeyType 2021-03-08 19:11:02 -05:00
Christian Rocha 116a0cfb8f Process alt-modfied keystrokes before normal character input 2020-11-01 08:57:43 -05:00
Christian Rocha 1b5f599f2d Update key usage examples 2020-11-01 08:57:43 -05:00
Christian Rocha 4f2d85494d Remove the excessive Key.IsRune() method 2020-11-01 08:57:43 -05:00
Christian Rocha fc37167e16 Support multi-character input (i.e. Chinese and Japanese IME) 2020-11-01 08:57:43 -05:00
Christian Rocha a1d92e77c5
Correct backspace and delete key mappings 2020-10-22 15:22:07 -04:00
Christian Rocha a85d22cf54
Handle arrows on Powershell on Unix-like systems 2020-10-13 14:42:29 -04:00
Christian Rocha 223519f81f
Add periods after comments to make the godoc linter happy. 2020-08-24 15:22:04 -04:00
Christian Muehlhaeuser d26cfb6b38
Make golint happy 2020-08-22 12:34:03 +02:00
Christian Rocha 6fcdf9908f
Improve examples in docs 2020-07-30 11:30:33 -04:00
Christian Rocha a5e38222c5
Don't expose ReadInput 2020-07-29 20:51:55 -04:00
Christian Rocha c0f67a2927
Improve GoDocs 2020-07-29 20:50:00 -04:00
Christian Rocha eecd6b0612
Fix ctrl+v key mapping 2020-07-21 15:50:07 -04:00
Christian Rocha 2ee871862a
Fix bug where certain keys (pgup/pgdown/home/end/etc) weren't being sent 2020-07-20 11:50:27 -04:00
Christian Rocha d86cb562f0
Add basic mouse support 2020-06-22 20:41:26 -04:00
Christian Rocha 3b8b011b5a
Rename to Bubble Tea (with the import name tea) 2020-05-25 19:48:36 -04:00
Christian Muehlhaeuser e8b7e510bb
Simplify key/sequence map 2020-05-25 14:03:59 +02:00
Christian Muehlhaeuser 0957c58e05
Make type documentation godoc-compliant 2020-05-25 14:02:46 +02:00
Christian Rocha ee5f82579f
Don't treat the space character as a control character
There are drawbacks to both sides of this, but in the end, it seems to make
more sense to treat spaces as regular runes.
2020-05-19 14:41:55 -04:00
Christian Rocha 4bf40fbe62
Rename project to Boba 2020-05-12 16:39:08 -04:00
Christian Rocha 72c1a1c0ef
Treat space key as a control character (instead of a " ") 2020-05-11 19:56:46 -04:00
Christian Rocha 23432f30dd
Add TODO + comment 2020-02-19 22:23:54 -05:00
Christian Rocha abf5c6e845
Also catch home/end/pgup/pgdown on urxvt 2020-02-19 22:18:04 -05:00
Christian Rocha 0cb138f63d
Catch a bunch of outlier alt-prefixed keystokes + home/end/pgup/pgdown 2020-02-19 21:06:57 -05:00
Christian Rocha eefa9c7aa3
Catch the alt key modifier 2020-02-19 18:35:34 -05:00
Christian Rocha f88269fb22
Don't send funky escape sequences as keypresses 2020-02-18 15:33:06 -05:00
Christian Rocha 3c6a2c1a52
Properly catch shift+tab 2020-02-18 14:52:57 -05:00
Christian Rocha d38a22380b
Revert shift+tab fix because it broke sequences like left/right 2020-02-18 11:06:57 -05:00
Christian Rocha 645a88ca26
Export alias for Tab key 2020-02-18 11:06:37 -05:00
Christian Rocha 73d773109f
Fix a bug where shift+tab would make inputs wig out 2020-02-17 19:58:32 -05:00
Christian Rocha 91271cacab
Fill out constants and strings for control keys 2020-01-26 16:46:30 -05:00
Christian Rocha 84c9ca54bc
Add missing control keys 2020-01-26 15:39:54 -05:00
Christian Rocha f64f86f183
Add missing comment 2020-01-25 16:34:00 -05:00
Christian Muehlhaeuser 47bfe2b5df
Simplify IsRune() 2020-01-25 06:56:53 +01:00
Christian Rocha fac654d7ef
Fix incorrect line feed value + also listen for tab 2020-01-18 11:20:26 -05:00
Christian Rocha 32dc19b3d3
Fix a bug where control keys weren't being properly mapped 2020-01-17 22:21:17 -05:00
Christian Rocha 208f421470
Refactor the keybinding stuff + add backspace 2020-01-17 20:46:34 -05:00
Christian Rocha c7f1302943
Remove extraneous select{} and improve comments 2020-01-14 17:56:51 -05:00
Christian Rocha 466d16b5a4
Let's call sequences what they really are 2020-01-14 17:15:17 -05:00
Christian Rocha b6c8792309
Multi-view example with progress bar 2020-01-14 13:47:36 -05:00
Christian Rocha 97bbcdd5fb
Catch Ctrl+C 2020-01-11 11:15:01 -05:00
Christian Rocha 293c2f6696
Also use escape to quit 2020-01-10 23:46:46 -05:00