UTF-8 Byte Order Marks (BOMs) automatisch entfernen

Posted on by

Insbesondere in heterogenen Netzwerken in einer Entwicklungsabteilung mit unterschiedlichster Softwarenutzung, kann es schon mal vorkommen, dass jemand einen Editor verwendet, der auf den falschen Zeichensatz eingestellt ist.

Ehe man sich versieht, wird aus dem ehemals unsichtbaren Byte-Order-Mark-Steuerzeichen, ein sichtbares Zeichen, das besonders am Anfang von .php  und JS-Dateien durchaus für Ungemach sorgen kann, wenn es vom Webbrowser falsch interpretiert wird.  Entweder nur hässlich sichtbar oder der Code funktioniert nicht mehr.

Bei uns prüft ein pre-commit-hook jeden SVN-Commit auf BOMs. Und für alle Homepagebastler die sich auch schon das eine oder andere mal darüber geärgert haben – mit der simplen – auf einer Shell eines Linux-Rechners ausgeführten Zeile wird man die Dinger komplett los. Wenn man SVN benutzt, kann man die Änderungen danach auch direkt committen, da die SVN-Steuerdateien ausgenommen sind.

find .  -name .svn -prune -o -type f -print  | while read file;do [ "`head -c3 -- "$file"`" == $'\xef\xbb\xbf' ] && sed -i -s -e '1s/^\xef\xbb\xbf//' $files $file && echo "found BOM in: $file";done

2 thoughts on “UTF-8 Byte Order Marks (BOMs) automatisch entfernen

  1. Pingback: buildblog | Schmutzzeichen am Anfang von Dateien entfernen

  2. …nanu… wieso steht hier plötzlich NILS als Urheber?

    Diesen Artikel habe ich, Timo Götze in meiner Zeit als Releasemanager bei StudiVZ hier geschrieben. hmmmmm

Leave a Reply

Your email address will not be published. Required fields are marked *


*