Bruhscreen

Copyright 2023 Ethan Christensen Copied, Guided, and Adapted from Asciimatics <https://github.com/peterbrittain/asciimatics/blob/master/asciimatics/screen.py>

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

bruhanimate.bruhutil.bruhscreen._wait_for_enter(screen)[source]

Explicit legacy end prompt, using the same normalized input as playback.

class bruhanimate.bruhutil.bruhscreen.Screen(window, height=None)[source]

Bases: object

wait_for_enter()

Explicit legacy end prompt, using the same normalized input as playback.

KEY_ESCAPE = -1
KEY_F1 = -2
KEY_F2 = -3
KEY_F3 = -4
KEY_F4 = -5
KEY_F5 = -6
KEY_F6 = -7
KEY_F7 = -8
KEY_F8 = -9
KEY_F9 = -10
KEY_F10 = -11
KEY_F11 = -12
KEY_F12 = -13
KEY_F13 = -14
KEY_F14 = -15
KEY_F15 = -16
KEY_F16 = -17
KEY_F17 = -18
KEY_F18 = -19
KEY_F19 = -20
KEY_F20 = -21
KEY_F21 = -22
KEY_F22 = -23
KEY_F23 = -24
KEY_F24 = -25
KEY_PRINT_SCREEN = -100
KEY_INSERT = -101
KEY_DELETE = -102
KEY_HOME = -200
KEY_END = -201
KEY_LEFT = -203
KEY_UP = -204
KEY_RIGHT = -205
KEY_DOWN = -206
KEY_PAGE_UP = -207
KEY_PAGE_DOWN = -208
KEY_BACK = -300
KEY_TAB = -301
KEY_BACK_TAB = -302
KEY_NUMPAD0 = -400
KEY_NUMPAD1 = -401
KEY_NUMPAD2 = -402
KEY_NUMPAD3 = -403
KEY_NUMPAD4 = -404
KEY_NUMPAD5 = -405
KEY_NUMPAD6 = -406
KEY_NUMPAD7 = -407
KEY_NUMPAD8 = -408
KEY_NUMPAD9 = -409
KEY_MULTIPLY = -410
KEY_ADD = -411
KEY_SUBTRACT = -412
KEY_DECIMAL = -413
KEY_DIVIDE = -414
KEY_CAPS_LOCK = -500
KEY_NUM_LOCK = -501
KEY_SCROLL_LOCK = -502
KEY_SHIFT = -600
KEY_CONTROL = -601
KEY_MENU = -602
get_event()[source]
__init__(window, height=None)[source]
has_resized()[source]
refresh_size() → bool[source]

Refresh curses outside the signal handler, then acknowledge resize.

close(restore=True)[source]
clear()[source]
classmethod open()[source]
print_at(text, x, y, width)[source]
begin_frame()[source]

Enter frame-batching mode; print_at() calls accumulate until flush_frame().

flush_frame()[source]

Flush accumulated frame output as a single sys.stdout.write() + flush(). Goes from O(cells_changed) write() calls to 1 write + 1 flush per frame.

classmethod show(function, args=None)[source]
class bruhanimate.bruhutil.bruhscreen.SignalState[source]

Bases: object

__init__()[source]
set(signalnum, handler)[source]
restore()[source]