Extraschueler.txt Umlaute

Hallo,

ich bräuchte schnelle Hilfe:

Uber die Schulkonsole pflege ich alle Schüler in der kategorie Extraschueler. Die Namen enthalten zum Teil Umlaute, die Benutzernamen allerdings nicht. W haben nur Linux-CLients und ich verwende auch immer UTF8-Codierung in den Texteditoren von denen aus ich EInträge in die Schulkonsoleneingaberahmen kopiere.
Das Pflegen der Extraschueler in der Schulkonsole war bislang auch kein Problem.
Allerdings hat die Schulkonsole unter Firefox jetzt auf einmal alle Umlaute ersetzt durch kryptische Zeichenfolgen.

Mein Problem ist, dass ich das erst nach dem Speichern gemerkt habe.
Gibt es ein Backup in sophomorix der extraschueler.txt ???
Oder gibt es einen einfachen Weg die Datei zu fixen?

Gruß
Stefan

leider ist es so, dass nur die vom Schulverwaltungsprogramm kommenden
Dateien geloggt werden.
Also NICHT die extraschueler.txt

also entweder per Editor und editieren zurücksetzen, oder

Mit

sophomorix-check --analyze-encoding /path/to/extraschueler.txt

kannst du feststellen welches encoding die Datei hat (sollte eindeutig sein)

miticonv kann man dann konvertieren, z.B.:

iconv --verbose -f 8859_1 -t utf-8 inputfile -o outputfile

Aber aufpassen:

  1. immer mit Kopien der Datei arbeiten

  2. wenn man z.B. eine utf8 Datei nach utf8 umcodiert hat man Müll!!

  3. In der Datei darf kein mixed encoding vorkommen
    (Datei ist iso9981-1 und man kopiert utf8rein -> Müll)

  4. Evtl muss man noch das encoding der Datei sophomorix bekanntgeben:

sophomorix-check --encoding-students-extra ascii|8859-1|8859-15|win1252|utf8

oder dito in sophomorix.conf

LG. Rüdiger

Hallo Rüdiger,

Danke für die Infos.

Leider habe ich feststellen müssen, dass meine Datei extraschueler.txt wohl nicht mehr so einfach zu retten ist, da alle Umlaute durch den selben String ersetzt wurden:
\x{fffd}

Und das ist egal, in welchem Encoding ich versuche diese (mit LO Calc) zu öffnen.

sophomorix-check --analyze-encoding
funktioniert bei mir leider nicht, wahrscheinlich, weil ich nicht die aktuelle LMN6.2, sondern LMN6.1 habe. Aber für die Zukunft sind die befehle interessant - Danke!

Ich werde wohl im Backup nach einer unzerstörten Dateiversion suchen

Gruß
Stefan

Hallo Stephan,

hier

/var/log/sophomorix/user/history/

liegen die Sicherungskopien.

Tip:

Auf dem Server die Software “locate” installieren, wenn nicht bereits geschehen.
Danach updatedb aufrufen und warten bis die Raute # wieder kommt

Jetzt

locate extraschueler

ausführen und Du bekommst eine Liste aller Sicherungskopien mit Zeitstempel. Das funktioniert natürlich auch mit

locate schueler.txt

Gruß

Alois

Hallo Alois,

Danke für den Tipp - jetzt ist die Extraschueler-Datei wieder repariert!

  1. Mit locate die Backups gesucht und gefunden in /var/log/sophomorix/user/history/
  2. In der Backup-Datei gleich mal alle Umlaute etc ersetzt via LO Calc und UTF8 gespeichert
  3. extraschueler.txt auf Server kopiert, Benutzerliste überprüft und die Fälle, die in der Schulkonsole als Veränderung angezeigt wurden nochmal händisch überprüft.

Danke!
Stefan

Hallo Rüdiger,

ich habe noch ein Problem beim Anlegen der Extraschueler-Liste in der Version 6.1. Wie kann ich das korrekt machen, so dass kein Mischmasch mit der Kodierung passiert, wie es schon vorgekommen ist:

Du hast das ja schon erkannt (im verwandten Thema):

„bei der 6er gab es bisher kein ersetzen von Zeichen in extraschueler.txt durch sophomorix. Da muss dann evtl. ein edior/schulkonsole/human am Werk gewesen sein.“

Zur Situation vor Ort (Version 6.1):

  1. Ich habe die Änderungen an den Extraschuelern immer über die Weboberfläche der Schulkonsole gemacht, immer im Firefox und Firefox gibt mit bei Seiteninformationenen zu Schulkonsolenseiten immer UTF8 als Textkodierung aus.

  2. Bei einem Report für das Sekretariat steht beim Encoding der /etc/sophomorix/user/ extraschueler.txt aber 8859-15

  3. Deinen Tipp habe ich versucht umzusetzen:

In der sophomorix.conf habe ich diese Zeile hinzugefügt:
$encoding_students_extra=„utf8“;

Seit dem steht im Report für das Sekretariat steht beim Encoding der extraschueler.txt auch UTF8.

Fragen:

  1. Wie ist das Editieren der Extraschueler am gefahrlosesten möglich?
  2. Ist es über die Weboberfläche der Schulkonsole im Firefox bezüglich der Kodierung unsicher?

Mit besten Wünschen
Stefan

Hallo Stefan,

Antwort für die 6.x

Zu 1. am besten immer mit ein und demselben Editor auf Konsole editieren. Wenn eine LEERE Datei öffnet man Umlaute tippt speichern die meisten das als utf8 ab (emacs zum Beispiel.)

Wenn du eine Datei mit einem Editor ÖFFNEST, versucht er das Encoding zu erkennen und beizubehalten.

Zuverlässig erkennen was in der Datei steht kannst du mit
od -c datei.txt

Das gibt dann das Ergebnis

0000000   J 303 274   r   g   e   n  \n
0000010

Der Umlaut ü wird mit 2 byte dargestellt: --> wahrscheinlich utf8 (kein iso 8859-…)

  1. Schulkonsole ist meines Erachtens unsicher. Du kannst sicher was so einstellen/verstellen im Browser, dass irgendwelche komische Zeichen hochgeladen werden

zur 7er:

Dort wird mit sophomorix-newfile beim anmelden einer Datei das encoding auf utf8 gewandelt (oder sophomorix-newfile bricht ab).

Die Webui hat dann einen utf8 Editor

Zum mixed encoding gibts leider keine Lösung.
bei der 7er bricht sophomorix-newfile ab (wenn es bekannte Namen trifft).

Wenn du eine mixed encoding Datei retten möchtest, würde ich so vorgehen

  1. Datei kopieren
  2. In einer Version alle sonderzeichen raus (–> ASCII Format), speichern
  3. Mit Editor wieder öffnen (emacs tut, …)
  4. Beide nebeneinander öffnen, in der ASCII-Datei die Umlaute nachtragen (Tippen, NICHT kopieren). Dann hast du eine reine utf8 Datei
  5. Mit od -c testen, obs passt

Hallo jeffbeck,

Danke für die Einschätzung.

Hallo Liste,

auf dem Server habe ich das Problem, dass beim Öffnen der Datei extraschueler.txt
die Umlaute nicht korrekt dargestellt werden

server ~ # nano /etc/sophomorix/user/extraschueler.txt

# Umlaute ä ö ü �^� �^� �^�;;

Ich hatte zuerst an fehlende Locales gedacht:

Aber das ist es wohl nicht:
server ~ # locale -a
C
C.UTF-8
POSIX
de_AT.utf8
de_BE.utf8
de_CH.utf8
de_DE
de_DE.iso88591
de_DE.iso885915@euro
de_DE.utf8
de_DE@euro
de_LI.utf8
de_LU.utf8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8

Hat jemand einen Tipp, wie ich extraschueler.txt auf dem Server korrekt bearbeiten kann?

Gruß
Stefan

Hallo Stefan,
ich würde sagen, wenn sie nicht korrekt dargestellt werden, sind sie auch nicht korrekt gespeichert.
Ich würde einmalig ein Programm verwenden, bei dem man die Kodierung wirklich vorgeben kann (wenn man z.B. bei Libreoffice (auf Client) als .txt speichern, dann wird man gefragt)
Auf dem Server nehme ich immer emacs. Da kann man das aber auch beim Speichern vorgeben:
http://ergoemacs.org/emacs/emacs_encoding_decoding_faq.html
LG
Max

schau mal mit
sophomorix-check --analyze /path/to/file
wie die Datei codiert ist.

LG, Rüdiger