Kovid Goyal
|
bf35817d73
|
No need to store most channels on self
|
2022-11-14 15:41:52 +05:30 |
|
Kovid Goyal
|
1b90c03304
|
Refactor loop code into its own package
|
2022-11-14 15:41:52 +05:30 |
|
Kovid Goyal
|
b1f9139ca5
|
Use a fully random async_id rather than a uuid
|
2022-11-14 15:41:52 +05:30 |
|
Kovid Goyal
|
4a49c3940a
|
Switch to using goroutines rather than a select()
More complex code since now we have to synchronize between threads,
but a good way to teach myself more about goroutines.
|
2022-11-14 15:41:52 +05:30 |
|
Kovid Goyal
|
ee12349a50
|
Use Go's os.File this allows us to implement WriteString without using unsafe
|
2022-11-14 15:41:52 +05:30 |
|
Kovid Goyal
|
69c847a48f
|
Fix failing test
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
03705cbec0
|
Fix transmission of async rc commands
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
ff2ff9c04f
|
Port short uuid code to Go
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
a22ba9f739
|
Fix failing test
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
c86f8a698c
|
@ ls works phew
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
fa4711bd04
|
Give the kill signal time to be delivered
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
174bc25afb
|
Make timeout checking more efficient
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
2ffba1c422
|
Work on implementing ttyio via TUI
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
0913b64c6b
|
Dont vendor base85
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
32e59257d2
|
Refactor io in preparation for using tui
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
6f8c884bb5
|
Also handle SIGPIPE as the Go runtime does funky things with this signal
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
80c5ac891d
|
Add license info to Go files
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
6a2393299b
|
Add a write completed callback
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
ab66b3f4c0
|
Add timer infra to the loop
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
c8292d77f1
|
Re-use the escape code parser for wcswidth calculation
|
2022-11-14 15:41:51 +05:30 |
|
Kovid Goyal
|
7280c712d6
|
Move escape code parser into wcswidth package
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
9be2247081
|
Dont use the syscall package
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
e68b5fa504
|
Add callback for screen resize handling
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
c2ef6c986b
|
Password input now works
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
619fcb0681
|
Allow debug printing
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
10a39d3757
|
Fix reset mode incorrectly setting mode instead
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
d2a15a2009
|
Make using alternate screen the default
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
235eb868b2
|
More misc fixes for TUI
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
5703a3370e
|
Move wcswidth into its own package as it is very slow to build
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
5dca2a1a25
|
Fix stringifying mods
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
4b18b575cd
|
Misc fixes for TUI
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
818f68ec53
|
Initialize various maps
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
cd54fefa99
|
Ignore more types of temporary errors
|
2022-11-14 15:41:50 +05:30 |
|
Kovid Goyal
|
4ab5456ead
|
Less layering
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
10d11bc749
|
Drop another dependency
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
19ffbc6f3d
|
Implement wcswidth() for Go
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
79b1af28b4
|
Fix errors reported by compiler
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
05d768d8df
|
Generate a wcwidth for Go as well
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
7bb310d3af
|
Port recent changes from cli.py to Go
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
9d56f8eed2
|
Use TUI to build a nice password read control
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
42a5129553
|
Wire up key handling
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
d6ed20323b
|
Implement key event parsing and matching
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
63fdbd3fa0
|
Start work on decoding key events in Go
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
99fde8723a
|
Wire up the signal handlers
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
526a331f47
|
Wire up a bunch of callbacks
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
e18b6638bb
|
Allow propagating errors from the escape code handlers
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
3c3e7b7f70
|
Start work on proper TUI support
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
67f03621ae
|
Handle EINTR in IsTerminal
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
10cef16210
|
DRYer
|
2022-11-14 15:41:49 +05:30 |
|
Kovid Goyal
|
6a79b450f7
|
Drop another dependency and get a better read password function
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
eb4ee13f73
|
Drop another dependency
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
cf287015de
|
...
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
246277e7af
|
Refactor tty code into its own package
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
13758e9600
|
Drop one dependency
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
73e4deb1c2
|
Show suggestions based on levenshtein distance
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
68d589826a
|
...
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
7457746d65
|
Fix @command form not supporting global options
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
eec8f04e93
|
fix reading from tty
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
3a7d26a3ef
|
Work on reading command responses
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
91b15d1a90
|
Fix incorrect err handling
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
12b0f632bd
|
Allow OSC to be terminated by BEL
Also prevent changing streaming state unless in reset state
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
84cb2638d6
|
Work on an escape code parser
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
ce3062cbde
|
UTF-8 decode/encode for Go
The builtin utf-8 package has semantics not suitable for us
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
e599a2c87f
|
The stupid term package is not EINTR safe
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
15e1f376a4
|
EINTR safe function to get tty size
|
2022-11-14 15:41:48 +05:30 |
|
Kovid Goyal
|
82d0bd9364
|
Use the term package to get tty size since it has a function for it
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
6a9f3feba2
|
...
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
2e31178980
|
Workaround for go unix package not wrapping pselect() on darwin
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
141b9c8f08
|
Adjust select() timeout on EINTR
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
17629add66
|
Handle EINTR
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
352a78f056
|
Add a debug print method to tty and use pselect rather than select for greater timeout precision
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
2ef5d0a140
|
...
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
08b4741024
|
Get rid of a couple of unneeded dependencies
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
11ffa961bc
|
Use local hyperlinks for :doc:
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
ad6d928c12
|
Port various recent changes to CLI help output
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
9b703078dd
|
See if at least the field names are the same
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
43e93414ea
|
Some work on implementing TTYIO
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
6c3a439455
|
Use the io.Reader interface
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
a7bc2fcba8
|
Code to parse socket addresses
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
417c8887b9
|
Start on testing infra for command to JSON serialization
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
47feb73cdf
|
Code to generate structs for JSON marshalling
|
2022-11-14 15:41:47 +05:30 |
|
Kovid Goyal
|
63512f0512
|
Implement setting of option values into a struct
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
a32251cab4
|
Handle aliased flags
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
2ca8ae8e5f
|
normalize flag names so that underscores are interchangeable with hyphens
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
2d466f343d
|
Finish mapping of python cli opt to go cli opt
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
4596dc39ce
|
Fix formatting of lines with only spaces
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
605882582e
|
Transfer response_timeout
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
e127579ae6
|
DRYer
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
b3be6792fd
|
General cleanup
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
6c25f0cf4b
|
Use cobra's builtin machinery for creating new types
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
82410c58ed
|
Hide the default completion command
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
3a87cfce3e
|
Get bool set flags ported
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
15ffd8e6d8
|
Support older Go
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
33e16df586
|
Add some basic RC serialization tests
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
4432c1a2ea
|
Move the command types into a separate package
|
2022-11-14 15:41:46 +05:30 |
|
Kovid Goyal
|
bab914c497
|
Create hidden alias commands so kitty-tool @ls also works
|
2022-11-14 15:41:45 +05:30 |
|
Kovid Goyal
|
780b5ca8bd
|
misc fixes
|
2022-11-14 15:41:45 +05:30 |
|
Kovid Goyal
|
20ad7ca437
|
Output VCSRevision with --version
|
2022-11-14 15:41:45 +05:30 |
|
Kovid Goyal
|
d39036de2a
|
Add vcs revision to version string
|
2022-11-14 15:41:45 +05:30 |
|
Kovid Goyal
|
4ac4ee643e
|
Have the rc command wrapper sauto-generated on build
|
2022-11-14 15:41:45 +05:30 |
|