Kovid Goyal
624007c7aa
Refuse to read image files in /proc /sys and /dev
...
Also, open the image file with O_NONBLOCK to ensure we dont hang opening
a FIFO
2023-05-25 12:17:03 +05:30
Kovid Goyal
d059ddbb07
Only import resource module when actually running the test instead of at import time
2023-05-24 16:59:44 +05:30
Olivier Gayot
430768f38b
Skip crypto test if RLIMIT_MEMLOCK is too low
...
On systems where the max locked memory (a.k.a., RLIMIT_MEMLOCK) is too
low, the crypto test fails with "Cannot allocate memory".
Distros such as Debian and Ubuntu run the test-suite as part of the
build process. This results in failed builds if the build machine itself
does not have a sufficiently high value for RLIMIT_MEMLOCK. That said,
the resulting builds would run perfectly fine when installed on machines
that meet the requirements.
On supported systems, we now check if the RLIMIT_MEMLOCK is high enough
and skip the crypto test if it is not.
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2023-05-24 13:18:08 +02:00
Kovid Goyal
a2aadd4756
Remove python diff tests as no longer needed
2023-03-27 11:54:34 +05:30
Kovid Goyal
d30091034a
Remove the python diff kitten
2023-03-27 11:46:22 +05:30
Kovid Goyal
1bed92bed1
Cleanup previous PR
2023-03-20 07:42:10 +05:30
usertam
08fa7f19f7
kitty_tests, shell-integration: rework getpwuid() exceptions suppression
2023-03-20 03:31:23 +08:00
Samuel Tam
31319f0b65
kitty_tests/ssh.py: skip login shell detection if getpwuid() fails
2023-03-19 18:45:47 +08:00
Kovid Goyal
c19ac531cf
Fix some failing tests
2023-03-14 20:40:12 +05:30
Kovid Goyal
29dd2438c9
Port the subseq matcher to Go
2023-03-14 12:29:44 +05:30
Kovid Goyal
34cbf5ceac
Get rid of prewarming
...
Don't need it anymore since all major UI kittens are ported to Go
and so don't have startup latency.
2023-03-10 13:22:10 +05:30
Kovid Goyal
b76b0c61ed
Port custom processor for hints
2023-03-10 10:45:37 +05:30
Kovid Goyal
5b3f5dd02d
Port all remaining hints matching tests
2023-03-09 20:53:46 +05:30
Kovid Goyal
0e5ed29d83
Fix generation of url regex for Go
2023-03-09 19:00:56 +05:30
Kovid Goyal
8add28de96
Merge branch 'pr-unicode-placeholders' of https://github.com/sergei-grechanik/kitty
2023-03-03 10:55:02 +05:30
Kovid Goyal
00b3437a05
Remove python implementation of SSH kitten
2023-02-28 12:42:30 +05:30
Kovid Goyal
6de77ce987
Clean up exclude pattern handling
2023-02-26 09:12:12 +05:30
Kovid Goyal
5cc3d3cbfe
Fix remaining failing tests
2023-02-26 08:01:04 +05:30
Kovid Goyal
dc938cf3dd
More test fixes
2023-02-26 08:01:04 +05:30
Kovid Goyal
22ea33182a
Fix various test failures
2023-02-26 08:01:04 +05:30
Kovid Goyal
3f417b26b2
Wire up the new ssh kitten into the python ssh kitten tests
2023-02-26 08:01:04 +05:30
Kovid Goyal
525caff938
Move get_connection_data to utils module as it is not needed for the actual kitten
2023-02-26 08:01:03 +05:30
Kovid Goyal
e02ba7f389
Port bootstrap script length limit
2023-02-26 08:01:03 +05:30
Kovid Goyal
d656017f27
Move SSH askpass implementation into kitten
2023-02-26 08:01:02 +05:30
Kovid Goyal
5a8d903a4d
Go SHM API to read simple data with size from SHM name
2023-02-26 08:01:02 +05:30
Kovid Goyal
d98504e1a6
Finish porting SSH config file parsing
2023-02-26 08:01:02 +05:30
Kovid Goyal
2b7d6d45df
Finish up config parser port
2023-02-26 08:01:01 +05:30
Sergei Grechanik
d63eeada73
Image placement using Unicode placeholders
...
This commit introduces the Unicode placeholder image placement method.
In particular:
- Virtual placements can be created by passing `U=1` in a put command.
- Images with virtual placements can be displayed using the placeholder
character `U+10EEEE` with diacritics indicating rows and columns.
- The image ID is indicated by the foreground color of the placeholder.
Additionally, the most significant byte of the ID can be specified via
the third diacritic.
- Underline color can be optionally used to specify the placement ID.
- A bug was fixed, which caused incomplete image removal when it was
overwritten by another image with the same ID.
2023-02-21 18:23:16 -08:00
Kovid Goyal
ac5298ce76
Finish porting unicode input
2023-02-15 17:42:31 +05:30
Kovid Goyal
53e33a80ba
Start work on porting unicode input kitten to Go
2023-02-14 21:33:21 +05:30
Kovid Goyal
dd5cfe38b7
Update README
2023-01-14 15:56:03 +05:30
Kovid Goyal
6b8e5ea225
Rename kitty-tool to kitten
...
It's easier to type, and cuter.
Also, most, if not all of the TUI parts of
kitty's kittens will eventually be re-written into kitten.
The only downside I can see is that we cant tab complete kitty
anymore, but hopefully there will be less reason to run kitty
from the shell as command line tools migrate to kitten.
Meowrrrr!!!
2023-01-14 15:44:52 +05:30
Kovid Goyal
7fe5d7b58f
Replace isort with ruff
2023-01-09 16:47:42 +05:30
Kovid Goyal
a068e3e655
Fix issues reported by ruff
2023-01-09 15:54:41 +05:30
Kovid Goyal
e2543e8968
Fix #5852
2023-01-04 08:20:04 +05:30
Kovid Goyal
306f9e5735
Prettify URLs before displaying them to the user
2022-12-29 17:04:02 +05:30
Kovid Goyal
6e4376e44e
A few more wrapping serialization tests
2022-12-27 09:11:15 +05:30
Kovid Goyal
f6801d48d1
Add a test to ensure \n does not change wrapping status
2022-12-27 08:48:26 +05:30
Kovid Goyal
68cf9f7514
Switch to tracking linewrap on the last cell in a line
...
This allows us to have newline not affect the wrap status of a line.
Now a lines wrapping status is changed only when the last cell
in the line is changed. This actually matches the behavior of many other
terminal emulators so is probably a good thing from a ecosystem
compatibility perspective.
The fish shell expects this weird behavior of newline not changing
wrapping status, for unknown reasons, which is the actual motivation for
doing all this work.
Fixes #5766
2022-12-26 20:26:21 +05:30
Sergei Grechanik
32d8aac808
Fix scrolling images within margins
...
This commit fixes an off-by-one error in image scrolling that caused
images to not be scrolled or to be cropped at the wrong line.
2022-12-25 15:34:54 -08:00
Kovid Goyal
cd92d50a0d
Keyboard protocol: Remove CSI R from the allowed encodings of the F3 key as it conflicts with the *Cursor Position Report* escape code
2022-12-24 10:32:28 +05:30
James McCoy
9afd0309fc
tests: Use tempdir for XDG_RUNTIME_DIR
2022-12-21 22:21:48 -05:00
Kovid Goyal
c6360537e5
Try to fix tests failing on Python 3.11
2022-12-16 10:05:05 +05:30
Kovid Goyal
032e01ebf7
...
2022-12-11 20:55:06 +05:30
Kovid Goyal
3ee9f723f2
The legacy osc 52 protocol now works with the new clipboard requests manager class
2022-11-28 20:53:56 +05:30
Kovid Goyal
f9a22d0bc7
Port ANSI escape code parser to Go
2022-11-25 21:03:09 +05:30
Kovid Goyal
cfc6bd4da5
Native code implementation for expanding ANSI escape codes
2022-11-25 17:33:41 +05:30
Kovid Goyal
51bba9110e
Bash integration: Fix clone-in-kitty not working on bash >= 5.2 if environment variable values contain newlines or other special characters
...
Bash >= 5.2 changed the export command to output values using $' escaping when they contain special characters.
Fixes #5629
2022-11-22 16:38:24 +05:30
Kovid Goyal
efaf9faa38
Implement edit-in-kitty using kitty-tool
...
Fixes #5546
Fixes #5630
2022-11-17 20:48:20 +05:30
Kovid Goyal
a5a4a1bf8f
Increase timeout in test
2022-11-17 10:02:44 +05:30
Kovid Goyal
16775c5539
ssh kitten: Add a kitty-tool wrapper script to auto-download and use kitty-tool
...
Needs testing.
2022-11-15 13:26:48 +05:30
Kovid Goyal
2e07f90baf
...
2022-11-14 15:42:07 +05:30
Kovid Goyal
f945ef8ee8
handle ctrl-c better when interrupting go test
2022-11-14 15:42:06 +05:30
Kovid Goyal
7d5849cc17
...
2022-11-14 15:42:03 +05:30
Kovid Goyal
d2a2af9672
Add completion for kitty-tool
2022-11-14 15:42:02 +05:30
Kovid Goyal
3bd4fd999a
All completion tests pass again
2022-11-14 15:42:02 +05:30
Kovid Goyal
262e2fb7a3
Various fixes from the completion merge
2022-11-14 15:42:02 +05:30
Kovid Goyal
3662efdf80
Nicer handling of python for typecheck
2022-11-14 15:42:02 +05:30
Kovid Goyal
49f5f25fb9
Run tests in the writeable src dir as the generated go files are present there
2022-11-14 15:42:01 +05:30
Kovid Goyal
ff4353b209
...
2022-11-14 15:42:01 +05:30
Kovid Goyal
800dbf1f4d
extra message when tests have failed
2022-11-14 15:42:00 +05:30
Kovid Goyal
54ec486d3a
Now completion for hyperlinked_grep is automatic thanks to delegation
...
Also fix delegation for zsh when the command being completed differs
from the current command.
2022-11-14 15:42:00 +05:30
Kovid Goyal
e3b8de1ac0
Update test for new exe search
2022-11-14 15:41:59 +05:30
Kovid Goyal
928a4db817
Implement delegate based completion fof the ssh and hyperlinked_grep kittens
2022-11-14 15:41:59 +05:30
Kovid Goyal
fd631bf402
Delegate based completion for @launch args
2022-11-14 15:41:59 +05:30
Kovid Goyal
dc403156a9
Delegate based completion for kitty cmd
2022-11-14 15:41:59 +05:30
Kovid Goyal
8796168469
Port code to truncate strings to visual width to Go
2022-11-14 15:41:58 +05:30
Kovid Goyal
67f556bd7c
Add completion for the launch wrappers
2022-11-14 15:41:58 +05:30
Kovid Goyal
7737369fc9
Add completion for the kittens
2022-11-14 15:41:58 +05:30
Kovid Goyal
25a7ec9a07
Extra completion for some kitty options
2022-11-14 15:41:58 +05:30
Kovid Goyal
c2a2b4c087
Add various special purpose entry points
2022-11-14 15:41:58 +05:30
Kovid Goyal
3bf20594b7
Wire up completion for rc command options
2022-11-14 15:41:58 +05:30
Kovid Goyal
3a8bab90dc
Get rid of WordPrefix
2022-11-14 15:41:58 +05:30
Kovid Goyal
0ff2446a1a
More completion work
2022-11-14 15:41:58 +05:30
Kovid Goyal
d84efe105c
...
2022-11-14 15:41:58 +05:30
Kovid Goyal
c5afceb4cb
Basic completion for options
2022-11-14 15:41:57 +05:30
Kovid Goyal
18c3e46ac6
When completing on patterns exclude directories that only contain files that dont match
2022-11-14 15:41:57 +05:30
Kovid Goyal
3c29ce936b
Dont recurse for file completion
...
We could potentially end up recursing over the entire file system. And
for completion we only present the candidates in the immediate directory
anyway.
2022-11-14 15:41:57 +05:30
Kovid Goyal
c9d986f9a8
args completion for rc commands
2022-11-14 15:41:57 +05:30
Kovid Goyal
134fce8507
Allow completing paths with ~ prefix
2022-11-14 15:41:57 +05:30
Kovid Goyal
5d89a6c3c4
Work on completion of file args
2022-11-14 15:41:57 +05:30
Kovid Goyal
4575a14873
work on framework for testing completion
2022-11-14 15:41:56 +05:30
Kovid Goyal
b33a684357
...
2022-11-14 15:41:53 +05:30
Kovid Goyal
3b2c4561c2
Dont change the env for go tests
...
This prevents got test caching from working greatly increasing the time
for running a test
2022-11-14 15:41:53 +05:30
Kovid Goyal
e69b02ad46
...
2022-11-14 15:41:53 +05:30
Kovid Goyal
85b6053380
Run go tests in parallel
2022-11-14 15:41:53 +05:30
Kovid Goyal
417c8887b9
Start on testing infra for command to JSON serialization
2022-11-14 15:41:47 +05:30
Kovid Goyal
82a0e56eb2
Fix go tests not being excluded correctly
2022-11-14 15:41:45 +05:30
Kovid Goyal
fb4c7db25e
Add a test for existence of kitty-tool
2022-11-14 15:41:45 +05:30
Kovid Goyal
14262b158d
Log which go exe is being used to run the tests
2022-11-14 15:41:44 +05:30
Kovid Goyal
1325844539
Add some go testing infrastructure
2022-11-14 15:41:44 +05:30
Kovid Goyal
9d471782dd
Increase some more timeouts
2022-11-03 13:13:14 +05:30
Kovid Goyal
93563f1280
More pointless code churn thanks to importlib.resources
...
They've deprecated a bunch of API but the suggested replacement is
either not present in versions of python that are not EOLed or doesn't
actually work.
2022-11-03 12:13:47 +05:30
Kovid Goyal
0b3228ab16
...
2022-11-01 12:51:36 +05:30
Kovid Goyal
3f28cf45d4
Dont use the deprecated importlib.resources API
2022-11-01 12:38:24 +05:30
Kovid Goyal
c2ead407ae
...
2022-10-31 18:14:38 +05:30
Kovid Goyal
16b322616a
Fix cursor position at x=0 changing to x=1 on resize
...
Fixes #5635
2022-10-31 08:03:42 +05:30
Kovid Goyal
e0b4c7edc5
Increase the timeout for shell integration tests
...
Needed for ARM running non-natively
2022-10-30 11:09:36 +05:30
Kovid Goyal
a8ab4eaf23
Use a larger timeout when running prewarm test
2022-10-30 10:36:10 +05:30
Kovid Goyal
5ea0519f62
Pass through python used for type check to the test code from before the env is sanitized
2022-09-25 14:36:12 +05:30