__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
"""Minimal '_curses' module, the low-level interface for curses module
which is not meant to be used directly.
Based on ctypes. It's too incomplete to be really called '_curses', so
to use it, you have to import it and stick it in sys.modules['_curses']
manually.
Note that there is also a built-in module _minimal_curses which will
hide this one if compiled in.
"""
import ctypes
import ctypes.util
class error(Exception):
pass
def _find_clib() -> str:
trylibs = ["ncursesw", "ncurses", "curses"]
for lib in trylibs:
path = ctypes.util.find_library(lib)
if path:
return path
raise ModuleNotFoundError("curses library not found", name="_pyrepl._minimal_curses")
_clibpath = _find_clib()
clib = ctypes.cdll.LoadLibrary(_clibpath)
clib.setupterm.argtypes = [ctypes.c_char_p, ctypes.c_int, ctypes.POINTER(ctypes.c_int)]
clib.setupterm.restype = ctypes.c_int
clib.tigetstr.argtypes = [ctypes.c_char_p]
clib.tigetstr.restype = ctypes.c_ssize_t
clib.tparm.argtypes = [ctypes.c_char_p] + 9 * [ctypes.c_int] # type: ignore[operator]
clib.tparm.restype = ctypes.c_char_p
OK = 0
ERR = -1
# ____________________________________________________________
def setupterm(termstr, fd):
err = ctypes.c_int(0)
result = clib.setupterm(termstr, fd, ctypes.byref(err))
if result == ERR:
raise error("setupterm() failed (err=%d)" % err.value)
def tigetstr(cap):
if not isinstance(cap, bytes):
cap = cap.encode("ascii")
result = clib.tigetstr(cap)
if result == ERR:
return None
return ctypes.cast(result, ctypes.c_char_p).value
def tparm(str, i1=0, i2=0, i3=0, i4=0, i5=0, i6=0, i7=0, i8=0, i9=0):
result = clib.tparm(str, i1, i2, i3, i4, i5, i6, i7, i8, i9)
if result is None:
raise error("tparm() returned NULL")
return result
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| __pycache__ | Folder | 0755 |
|
|
| __init__.py | File | 925 B | 0644 |
|
| __main__.py | File | 263 B | 0644 |
|
| _minimal_curses.py | File | 1.8 KB | 0644 |
|
| _threading_handler.py | File | 2.12 KB | 0644 |
|
| commands.py | File | 11.91 KB | 0644 |
|
| completing_reader.py | File | 9.81 KB | 0644 |
|
| console.py | File | 6.71 KB | 0644 |
|
| curses.py | File | 1.21 KB | 0644 |
|
| fancy_termios.py | File | 2.11 KB | 0644 |
|
| historical_reader.py | File | 12.93 KB | 0644 |
|
| input.py | File | 3.69 KB | 0644 |
|
| keymap.py | File | 6.31 KB | 0644 |
|
| main.py | File | 1.89 KB | 0644 |
|
| mypy.ini | File | 870 B | 0644 |
|
| pager.py | File | 5.68 KB | 0644 |
|
| reader.py | File | 27.06 KB | 0644 |
|
| readline.py | File | 19.75 KB | 0644 |
|
| simple_interact.py | File | 5.15 KB | 0644 |
|
| trace.py | File | 433 B | 0644 |
|
| types.py | File | 354 B | 0644 |
|
| unix_console.py | File | 24.88 KB | 0644 |
|
| unix_eventqueue.py | File | 4.92 KB | 0644 |
|
| utils.py | File | 2.18 KB | 0644 |
|
| windows_console.py | File | 19.05 KB | 0644 |
|