Linux server.edchosting.com 4.18.0-553.79.1.lve.el7h.x86_64 #1 SMP Wed Oct 15 16:34:46 UTC 2025 x86_64
LiteSpeed
Server IP : 75.98.162.185 & Your IP : 216.73.216.163
Domains :
Cant Read [ /etc/named.conf ]
User : goons4good
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
opt /
alt /
python313 /
lib64 /
python3.13 /
_pyrepl /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-xr-x
2026-02-10 03:50
__init__.py
925
B
-rw-r--r--
2026-01-10 05:19
__main__.py
422
B
-rw-r--r--
2026-01-10 05:19
_minimal_curses.py
1.8
KB
-rw-r--r--
2026-01-10 05:19
_threading_handler.py
2.12
KB
-rw-r--r--
2026-01-10 05:19
base_eventqueue.py
3.75
KB
-rw-r--r--
2026-01-10 05:19
commands.py
12.01
KB
-rw-r--r--
2026-01-10 05:19
completing_reader.py
9.81
KB
-rw-r--r--
2026-01-10 05:19
console.py
6.71
KB
-rw-r--r--
2026-01-10 05:19
curses.py
1.21
KB
-rw-r--r--
2026-01-10 05:19
fancy_termios.py
2.51
KB
-rw-r--r--
2026-01-10 05:19
historical_reader.py
12.93
KB
-rw-r--r--
2026-01-10 05:19
input.py
3.69
KB
-rw-r--r--
2026-01-10 05:19
keymap.py
6.31
KB
-rw-r--r--
2026-01-10 05:19
main.py
1.89
KB
-rw-r--r--
2026-01-10 05:19
mypy.ini
870
B
-rw-r--r--
2025-12-05 11:06
pager.py
5.68
KB
-rw-r--r--
2026-01-10 05:19
reader.py
27.06
KB
-rw-r--r--
2026-01-10 05:19
readline.py
19.75
KB
-rw-r--r--
2026-01-10 05:19
simple_interact.py
5.66
KB
-rw-r--r--
2026-01-10 05:19
trace.py
433
B
-rw-r--r--
2026-01-10 05:19
types.py
354
B
-rw-r--r--
2026-01-10 05:19
unix_console.py
26.09
KB
-rw-r--r--
2026-01-10 05:19
unix_eventqueue.py
2.46
KB
-rw-r--r--
2026-01-10 05:19
utils.py
2.39
KB
-rw-r--r--
2026-01-10 05:19
windows_console.py
21.11
KB
-rw-r--r--
2026-01-10 05:19
windows_eventqueue.py
991
B
-rw-r--r--
2026-01-10 05:19
Save
Rename
import re import unicodedata import functools from .types import CharBuffer, CharWidths from .trace import trace ANSI_ESCAPE_SEQUENCE = re.compile(r"\x1b\[[ -@]*[A-~]") ZERO_WIDTH_BRACKET = re.compile(r"\x01.*?\x02") ZERO_WIDTH_TRANS = str.maketrans({"\x01": "", "\x02": ""}) @functools.cache def str_width(c: str) -> int: if ord(c) < 128: return 1 # gh-139246 for zero-width joiner and combining characters if unicodedata.combining(c): return 0 category = unicodedata.category(c) if category == "Cf" and c != "\u00ad": return 0 w = unicodedata.east_asian_width(c) if w in ("N", "Na", "H", "A"): return 1 return 2 def wlen(s: str) -> int: if len(s) == 1 and s != "\x1a": return str_width(s) length = sum(str_width(i) for i in s) # remove lengths of any escape sequences sequence = ANSI_ESCAPE_SEQUENCE.findall(s) ctrl_z_cnt = s.count("\x1a") return length - sum(len(i) for i in sequence) + ctrl_z_cnt def unbracket(s: str, including_content: bool = False) -> str: r"""Return `s` with \001 and \002 characters removed. If `including_content` is True, content between \001 and \002 is also stripped. """ if including_content: return ZERO_WIDTH_BRACKET.sub("", s) return s.translate(ZERO_WIDTH_TRANS) def disp_str(buffer: str) -> tuple[CharBuffer, CharWidths]: r"""Decompose the input buffer into a printable variant. Returns a tuple of two lists: - the first list is the input buffer, character by character; - the second list is the visible width of each character in the input buffer. Examples: >>> utils.disp_str("a = 9") (['a', ' ', '=', ' ', '9'], [1, 1, 1, 1, 1]) """ chars: CharBuffer = [] char_widths: CharWidths = [] if not buffer: return chars, char_widths for c in buffer: if c == "\x1a": # CTRL-Z on Windows chars.append(c) char_widths.append(2) elif ord(c) < 128: chars.append(c) char_widths.append(1) elif unicodedata.category(c).startswith("C"): c = r"\u%04x" % ord(c) chars.append(c) char_widths.append(len(c)) else: chars.append(c) char_widths.append(str_width(c)) trace("disp_str({buffer}) = {s}, {b}", buffer=repr(buffer), s=chars, b=char_widths) return chars, char_widths