Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lolcat animate breaks #2813

Closed
blueforesticarus opened this issue Jun 29, 2020 · 4 comments
Closed

lolcat animate breaks #2813

blueforesticarus opened this issue Jun 29, 2020 · 4 comments
Labels

Comments

@blueforesticarus
Copy link

blueforesticarus commented Jun 29, 2020

Describe the bug
Running lolcat -a does not produce expected output. Instead it keeps overwriting line 0.
It looks like some sort of problem with clear and/or move cursor escape codes.
I've checked the terminfo. This could be a problem with lolcat itself, but it works fine on st.

To Reproduce

cat "<any text file>" | lolcat -a

Expected behavior
Lolcat -a animates the printing of the text to mimic teletype.

Screenshots
2020-06-29T12:07:44

Environment details
OS: Arch Linux
kitty 0.18.1
lolcat 100.0.0

kitty --debug-config

kitty 0.18.1 created by Kovid Goyal
Linux aquila 5.7.4-arch1-1 #1 SMP PREEMPT Thu, 18 Jun 2020 16:01:07 +0000 x86_64
Arch Linux \r (\l)
LSB_VERSION=1.4
DISTRIB_ID=Arch
DISTRIB_RELEASE=rolling
DISTRIB_DESCRIPTION="Arch Linux"
Loaded config files: /home/segfault/.config/kitty/kitty.conf
[181 12:06:09.603414] Ignoring unknown config key: font_size_delta
[181 12:06:09.603981] The option macos_hide_titlebar is deprecated. Use hide_window_decorations instead.
[181 12:06:09.604017] Ignoring unknown config key: x11_bell_volume
Running under: X11

Config options different from defaults:
allow_remote_control       y
background                 Color(red=14, green=22, blue=17)
background_opacity         0.9
click_interval             0.5
color0                     Color(red=14, green=22, blue=17)
color1                     Color(red=100, green=37, blue=47)
color10                    Color(red=117, green=71, blue=26)
color11                    Color(red=57, green=16, blue=77)
color12                    Color(red=80, green=15, blue=76)
color13                    Color(red=110, green=13, blue=75)
color14                    Color(red=100, green=17, blue=99)
color15                    Color(red=185, green=137, blue=155)
color2                     Color(red=117, green=71, blue=26)
color3                     Color(red=57, green=16, blue=77)
color4                     Color(red=80, green=15, blue=76)
color5                     Color(red=110, green=13, blue=75)
color6                     Color(red=100, green=17, blue=99)
color7                     Color(red=185, green=137, blue=155)
color8                     Color(red=129, green=95, blue=108)
color9                     Color(red=100, green=37, blue=47)
cursor                     Color(red=185, green=137, blue=155)
cursor_blink_interval      0.5
dynamic_background_opacity True
enable_audio_bell          False
font_family                Hack
font_size                  13.0
foreground                 Color(red=185, green=137, blue=155)
input_delay                0
macos_option_as_alt        3
open_url_modifiers         3
repaint_delay              0
scrollback_lines           10000
scrollback_pager           ['less', '+G', '-R']
select_by_word_characters  :@-./_~?&=%+#
shell                      fish
window_padding_width       FloatEdges(left=12.0, top=12.0, right=12.0, bottom=12.0)
Added shortcuts:
	shift+space KeyAction(func='send_text', args=['all', b'\x1b[24;2~'])
	shift+enter KeyAction(func='send_text', args=['all', b'\x1b[13;2u'])
	control+enter KeyAction(func='send_text', args=['all', b'\x1b[13;5u'])
Changed shortcuts:
	shift+control+minus KeyAction(func='decrease_font_size', args=())
	shift+control+equal KeyAction(func='increase_font_size', args=())
	shift+control+u KeyAction(func='input_unicode_character', args=())
	shift+control+enter KeyAction(func='new_os_window_with_cwd', args=())
	shift+control+backspace KeyAction(func='restore_font_size', args=())

Additional context
The problem persists with kitty --config NONE

@kovidgoyal
Copy link
Owner

Produce a minimal dump to reproduce the issue with --dump-bytes as I am
not installing a huge ruby dep tree just for this. Something like

kitty --dump-bytes bytes.bin sh -c "lolcat -a"

@Luflosi
Copy link
Contributor

Luflosi commented Jun 29, 2020

From kitty --dump-bytes bytes.bin sh -c "cat brewfile | lolcat -a": https://send.firefox.com/download/cc54a09c31cebaea/#U2tmOwmeMrQozJ0Avyd2Gg
This link will expire after one download.

@kovidgoyal
Copy link
Owner

This is a bug in lolcat it is emitting multiple DECRC without DECSC.

It needs to do DECSC print text DECRC DECSC print text DECRC DECSC ...

It is leaving out all but the first DECSC in that sequence.

See #1264

@blueforesticarus
Copy link
Author

Are there any other terminals which have this behavior? I can't find one.
This seems like a very odd interpretation of the vt100 spec.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants