Der Code-Schnippsel-Thread

  • Code
    GET http://fpdownload.macromedia.com/get/flashplayer/pdc/12.0.0.43/install_flash_player.exe HTTP/1.1
    GET http://fpdownload.macromedia.com/get/flashplayer/pdc/12.0.0.38/install_flash_player_ax.exe HTTP/1.1

    Falls jemand sich fragt, ob man den Flash-Installer noch zur Offline-Installation herunterladen kann.

    Hab daraus mal ein kleines, krudes Shellskript gemacht:

  • Endlich mal ums Backup kümmern

    Meine Beiträge stehen unter der MIT-Lizenz :)


    externe HDD am Router? Klar ich tausch mein Auto gegen nen Tretroller mit Bremsklotz.


  • Wget einen ASCII-Penis als Progressbar ausgeben lassen. Patch ist anzuwenden auf Version 1.15 und ist dort verfügbar: https://qsuscs.sculptor.uberspace.de/cgit/wget.git/…bfd6dc12a81f016



    Das sieht dann so aus.

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“

    Einmal editiert, zuletzt von thosch97 (17. August 2014 um 20:56)

  • Rekursiv leere Verzeichnisse löschen:

    cmd:

    Code
    for /f "delims=" %d in ('dir /s /b /ad ^| sort /r') do rd "%d"

    Linux:

    Code
    find -mindepth 1 -type d -print0 | sort -rz | xargs -0 rmdir

    Der Trick: Sowohl RD/RMDIR als auch rmdir(1) (im Gegensatz zu rm -r) löschen keine nicht-leeren Verzeichnisse. Wenn man den Verzeichnisbaum in umgekehrter Sortierung durchgeht, werden alle leeren Verzeichnisse von innen nach außen entfernt, auch wenn der Löschbefehl auf jedes Verzeichnis ausgeführt wird.

  • Im aktuellen Verzeichnis nachschauen, in welchen Dateien ein bestimmter Suchbegriff als alleinstehendes Wort vorkommt. Dabei jedoch nur die Dateinamen ausgeben. Jede Datei nur einmal zeigen.

    Bash
    #!/bin/bash
    # benutzung mittels suche.sh begriff
    grep -ri " ${1} " . | cut -d : -f 1 | uniq
  • Für alle, die sich ein "Startmenü" in IRIX bauen wollen:
    Das hier als .auxchestrc ins Home speichern (Und mit eigenen Einträgen anpassen). Danach einmal toolchest neu starten und fertig ist! :b1:

  • Kleines Quizspiel mit Mehrspielersupport, welches ich in Perl geschrieben habe. Sollte überall laufen, wo Perl läuft. Macht mit mehreren Spielern durchaus Laune.

    Die Fragen werden einfach in einer Textdatei hinterlegt. Die Syntax dieser Textdatei ist so aufgebaut, dass erst die Frage, dann die Antworten und dann die Nummer der richtigen Antwort jeweils in einer Zeile stehen und zwischen den einzlenen Fragen eine Leerzeile steht. Beispielhaft hier mal eine Fragendatei:

  • Gibt es einen bestimmten Grund, dass du die Umlaute escapest?

    (Außerdem: Podencos wegen ihrer Eier züchten -- gute Idee :D )

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“

  • Um schei_ Encodingproblemen vorzubeugen.

    Systeme, die nicht mit UTF-8 umgehen können, gehören sowieso aus dem Verkehr gezogen. Haskell ist ja komplett UTF-8-Clean, und der Typ Char beinhaltet immer UTF-8 und so lustiges Zeugs wie strlen("ä")=3 hat man da nicht, length "ä" gibt 1 zurück.

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“

  • Überarbeitetes Quiz-Script.

    Neu:

    • Farben
    • Bei Falschantwort Ausgabe, was stattdessen richtig ist
    • Anzeige der Fragennr
    • Ab nun führt der freundliche Moderator Merlin durchs Programm
    • Immernoch reines ehrliches Perl ohne Objektorientierung

  • Systeme, die nicht mit UTF-8 umgehen können, gehören sowieso aus dem Verkehr gezogen. Haskell ist ja komplett UTF-8-Clean, und der Typ Char beinhaltet immer UTF-8 und so lustiges Zeugs wie strlen("ä")=3 hat man da nicht, length "ä" gibt 1 zurück.

    Ich bin zwar auch ein Freund von Unicode, aber UTF-8 ist nicht für alle Anwendungen das Gelbe vom Ei. Ich hoffe, dein Statement gilt nicht zwangsläufig auch für Embedded-Geschichten, denn mit 2-Byte-Kodierungen fährt man da oft besser. Python ist doch neuerdings (seit 3?) auch UTF-16, oder?

    • • • – • – – • – –


  • Python ist doch neuerdings (seit 3?) auch UTF-16, oder?

    Python 3.2 und früher haben Unicode-Strings immer intern als UCS-2 oder UCS-4 gespeichert, je nach Kompilations- und Plattformoptionen (Verfügbarkeit und Breite von wchar_t, z. B. Windows NT im Gegensatz zu unixoiden C-Bibliotheken). Das hat gerade mit den 16-Bit-Datentypen immer Probleme gegeben, wenn man Zeichen außerhalb der BMP verwenden will.

    Python 3.3 (PEP 393) führt hingegen PyUnicodeObject ein, das Strings in verschiedenen Repräsentationen speichern kann; insbesondere können ASCII-Strings effizient gespeichert und UTF-8-Daten direkt mit nativem Code ausgetauscht werden.

  • Ich bin zwar auch ein Freund von Unicode, aber UTF-8 ist nicht für alle Anwendungen das Gelbe vom Ei. Ich hoffe, dein Statement gilt nicht zwangsläufig auch für Embedded-Geschichten, denn mit 2-Byte-Kodierungen fährt man da oft besser.

    Welches jetzt?

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“

  • Meine Eindruck Hoffnung ist, dass sich UTF-8 vermehrt durchsetzen wird. UTF-16 verwendet man eigentlich nur noch, wenn man String-Representierungen mit existierenden Systemen/Programmiersprachen (z.B. Windows, Java, Javascript) teilen will.

    UTF-16 erlaubte mal eine Speicherstelle pro Code-Point, das ist aber längst nicht mehr der Fall. Schon seit den 90er Jahren gibt mehr Unicode-Zeichen als man mit 16bit Darstellen könnte. Und selbst wenn man auf UTF-32 umsteigen würde (was niemand tun wird, weil Bloat): Ein Unicode-Buchstabe kann immer noch aus mehr als einem Code-Point besitzen, man kann z.B. den Buchstaben ã auch aufsplitten in "~" und "a" - was zwei Codepoints sind, aber ein Zeichen - also keine Konstanter Zugriff auf einzelne Buchstaben (!= Code-Points). Gerade für nicht-europäische Schriften ist das offenbar wichtig.

    Darum gibt es inzwischen kaum mehr Argumente für UTF-16 (oder UTF-32). Es ist ein effizienteres Encoding für manche Schriften (z.B. Japanisch), dafür ist UTF-8 in lateinischen Schriften super effizient. Und halt abwärtskompatibel.

    Lesetipps:
    http://lucumr.pocoo.org/2014/1/9/ucs-vs-utf8/
    https://www.reddit.com/r/rust/comment…y_vecu8/cj0ihes

    Einmal editiert, zuletzt von gandro (29. September 2014 um 17:11)

  • Es ist halt hinten und vorne nicht abwärtskompatibel zu beklopptem alten Zeugs, eben mit so Späßen wie strlen("ä")=2.

    PGP-Key E384 009D 3B54 DCD3 21BF  9532 95EE 94A4 3258 3DB1 | S/MIME-Key 0x1A33706DAD44DA
    G d-@ s+:- a--- C+++ UB+L++ P--- L++@ E-@>++ W+ N o? K? w>++ !O !M !V PS+++ PE-- Y+>++ PGP++>+++ !t 5? X? !R tv b+++>++++ DI !D G>+ e>+++ h !r>++ !z
    „Die Aachener gelten als Erfinder des 4. Hauptsatzes der Thermodynamik: ‚Thermo schreibt man zweimal.“‘
    “Saying that Java is good because it works on all platforms is like saying oral sex is good because it works on all sexes.”
    „Es gibt 10 Sorten von Leuten: Die einen verstehen das Binärsystem, die anderen nicht.“
    „Manche Männer lieben Männer, Manche Frauen eben Frauen; Da gibt's nix zu bedauern und nichts zu staunen; Das ist genau so normal wie Kaugummi kauen; Doch die meisten werden sich das niemals trauen“


  • Es ist halt hinten und vorne nicht abwärtskompatibel zu beklopptem alten Zeugs, eben mit so Späßen wie strlen("ä")=2.


    Ich hätte schreiben sollen: Es ist abwärtskompatibel mit ASCII. "ä" ist kein ASCII.

    Nachtrag: Ausserdem ist dein Fall ein Fall von Aufwärtskompatibilität. Das ist nicht zu verwechseln mit Abwärtskompatibilität.
    Lies: Jedes UTF-8-System ist abwärtskompatibel mit ASCII. Du kannst ein 30 Jahre altes ASCII-Textfile in ein UTF-8-System schmeissen, und es läuft.
    Daraus folgt nicht, dass jedes ASCII-System aufwärtskompatibel mit UTF-8 ist und dass du in ein 30 Jahre altes C-Programm UTF-8-Text schmeissen kannst.

    Einmal editiert, zuletzt von gandro (29. September 2014 um 17:17)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!