Jaymon / pout

Python pretty print on steroids
MIT License
29 stars 0 forks source link

Bytes aren't being displayed properly #87

Closed Jaymon closed 6 months ago

Jaymon commented 8 months ago
>>> b
'оказаться уж значить 𠵿 𡁶 час 𢯊'

>>> b.encode("utf-8")
b'\xd0\xbe\xd0\xba\xd0\xb0\xd0\xb7\xd0\xb0\xd1\x82\xd1\x8c\xd1\x81\xd1\x8f \xd1\x83\xd0\xb6 \xd0\xb7\xd0\xbd\xd0\xb0\xd1\x87\xd0\xb8\xd1\x82\xd1\x8c \xf0\xa0\xb5\xbf \xf0\xa1\x81\xb6 \xd1\x87\xd0\xb0\xd1\x81 \xf0\xa2\xaf\x8a'

>>> pout.v(b)

Unknown 0 = str (30) instance at 0x105203df0
    "
        оказаться уж значить 𠵿 𡁶 час 𢯊
    "
(<stdin>:1)

>>> pout.v(b.encode("utf-8"))

Unknown 0 = bytes (60) instance at 0x105518090
    b"
        оказаться уж значить 𠵿 𡁶 час 𢯊
    "
(<stdin>:1)

Looks like it is decoding it back to unicode and printing it. Interestingly the counts seem accurate.

Jaymon commented 6 months ago

This was fixed in 985448f3258d524733eb8cf221bb735bb0acefe3