From f8e51fcb178924dd63c2ce185b1b1ab5daa09362 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sun, 7 Mar 2021 17:31:42 +0100 Subject: [PATCH] generate-alt-random: emit multiple sixel bands MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This ensures we’re getting the ‘$’ command PGO:d --- scripts/generate-alt-random-writes.py | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/scripts/generate-alt-random-writes.py b/scripts/generate-alt-random-writes.py index 2513cbe9..770ba038 100755 --- a/scripts/generate-alt-random-writes.py +++ b/scripts/generate-alt-random-writes.py @@ -165,7 +165,7 @@ def main(): # The sixel 'alphabet' sixels = '?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~' - for _ in range(200): + for _ in range(100): # Offset image out.write(' ' * (random.randrange(cols // 2))) @@ -188,17 +188,24 @@ def main(): out.write(f'"1;1;{six_width};{six_height}') for row in range(six_height // 6): # Each sixel is 6 pixels - # Choose a random color - out.write(f'#{random.randrange(256)}') + band_count = random.randrange(32) + for band in range(band_count): + # Choose a random color + out.write(f'#{random.randrange(256)}') - if random.randrange(2): - for col in range(six_width): - out.write(f'{random.choice(sixels)}') - else: - out.write(f'!{six_width}{random.choice(sixels)}') + if random.randrange(2): + for col in range(six_width): + out.write(f'{random.choice(sixels)}') + else: + out.write(f'!{six_width}{random.choice(sixels)}') - # Next line - out.write('-') + # Next line + if band + 1 < band_count: + # Move cursor to beginning of current row + out.write('$') + elif row + 1 < six_height // 6: + # Newline + out.write('-') # End sixel out.write('\033\\')