Skip to main content

hexdump for your Unicode data

Project description

Ein Unicode-Codepunkt-Dump.

Denke es dir als hexdump(1) für Unicode. Der Befehl analysiert die Eingabe und gibt dann drei Spalten aus: die direkte Byte-Position des ersten Codepunkts in dieser Zeile, Codepunkte in ihrer Hex-Schreibweise und schließlich die rohen Eingabezeichen, wobei Kontrollzeichen und Leerzeichen durch einen Punkt ersetzt wurden.

Ungültige Byte-Sequenzen werden mit einem „X“ dargestellt und mit dem Hex-Wert in Fragezeichen eingeschlossen, z. B., „?F5?“.

Du kannst Daten von stdin einleiten, mehrere Dateien auf einmal auswählen oder sogar alle diese Eingabemethoden durcheinander verwenden.

Beispiele:

  • Basic usage with stdin:

    echo -n 'ABCDEFGHIJKLMNOP' | unidump -n 4
          0    0041 0042 0043 0044    ABCD
          4    0045 0046 0047 0048    EFGH
          8    0049 004A 004B 004C    IJKL
         12    004D 004E 004F 0050    MNOP
  • Dump the code points translated from another encoding:

    unidump -c latin-1 some-legacy-file
  • Dump many files at the same time:

    unidump foo-*.txt
  • Control characters and whitespace are safely rendered:

    echo -n -e '\x01' | unidump -n 1
         0    0001    .
  • Finally learn what your favorite Emoji is composed of:

    ( echo -n -e '\xf0\x9f\xa7\x9d\xf0\x9f\x8f\xbd\xe2' ; \
      echo -n -e '\x80\x8d\xe2\x99\x82\xef\xb8\x8f' ; ) | \
    unidump -n 5
         0    1F9DD 1F3FD 200D 2642 FE0F    .🏽.♂️

See <https://emojipedia.org/man-elf-medium-skin-tone/> for images. The “elf” emoji (the first character) is replaced with a dot here, because the current version of Python’s unicodedata doesn’t know of this character yet.

  • Use it like strings(1):

    unidump -e '{data}' some-file.bin

Das ersetzt jedes unbekannte Byte aus der Eingabedatei mit „X“ und jedes Kontroll- und Leerzeichen mit „.“.

  • Only print the code points of the input:

    unidump -e '{repr}'$'\n' -n 1 some-file.txt

Das Ergebnis ist eine Folge von Codepunkten in Hex-Notation, jeder auf einer eigenen Zeile, ohne Byte-Zähler oder Darstellung der tatsächlichen Daten. Du kannst das verwenden, um die Gesamtzahl an Zeichen (nicht rohe Bytes) in einer Datei zu bestimmen, indem du es durch wc -l pipest.

Das ist version 1.1.4 von unidump mit Unicode-13.0.0-Daten.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unidump-1.1.4.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

unidump-1.1.4-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file unidump-1.1.4.tar.gz.

File metadata

  • Download URL: unidump-1.1.4.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for unidump-1.1.4.tar.gz
Algorithm Hash digest
SHA256 be39ba0beff5b50cab11f5ce5de9c03c3a4f5437755f2d93e9a176f5c30586b3
MD5 7630e8eddfb2cdf837ed975427452ebd
BLAKE2b-256 58c1e5ad58903d895c62206f7a625ee3c1ccd4fe6f70a5b0dd87ed6557e3093b

See more details on using hashes here.

File details

Details for the file unidump-1.1.4-py3-none-any.whl.

File metadata

  • Download URL: unidump-1.1.4-py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for unidump-1.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 24293269f06cd627255034e0d755526b6d43443eeb104c3c773e50e6b9d8c2cb
MD5 76079ec8b3ca31416751157574e26fde
BLAKE2b-256 c6a37fdce5d74be37ba232ac0371a77aadc0ebe9e0602914560d38c9fd7b842b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page