Hallo,
obwohl das letzte JTG-Image (2.3) sehr rund
läuft, gibt es zwei Stellen, die mich regelmäßig
ärgern. Beide betreffen den EPG mit alphabetischer
Sortierung der Sendungen:
1. Die Sortierung erfolgt in Abhängigkeit von
Groß- und Kleinschreibung. Erst kommen alle
Sendung mit großen Anfangsbuchstaben, nach
"Z" dann die Sendungen mit Sendungstitel in
Kleinbuchstaben. Um eine Sendung zu finden,
muss man also erst unter den Großbuchstaben,
dann (eventuell) unter den Kleinbuchstaben
suchen. Beispiele liefert das Programm
von BR-alpha.
2. Man erwartet intuitiv, dass bei alphabetischer
Sortierung das Sendungsdatum als zweites
Sortierkriterium fungiert. Gegenwärtig ist die
Reihenfolge jedoch wahllos, d.h. bei gleichem
Titel erscheint die spätere vor der früheren
Sendung. Um die erste Ausstrahlung aufzunehmen,
muss man also die ganze Reihe von Sendungen
durchsehen und deren Datum vergleichen.
Beides nur Kleinigkeiten, aber in der Praxis
störend. Wäre super, wenn sich ein Entwickler
der Probleme annehmen würde.
Korrekte Sortierung im EPG
-
- Neugieriger
- Beiträge: 12
- Registriert: Donnerstag 27. April 2006, 14:47
-
- Wissender
- Beiträge: 1839
- Registriert: Sonntag 17. August 2003, 01:39
Re: Korrekte Sortierung im EPG
Ist mir bisher noch nicht aufgefallen, wäre aber sicherlich eine tolle Sache was man das fixen könnte...
Gruß
____Paule
Gruß
____Paule
-
- Neugieriger
- Beiträge: 12
- Registriert: Donnerstag 27. April 2006, 14:47
Re: Korrekte Sortierung im EPG
Das wäre super, zumal auch die Umlaute nicht korrektIst mir bisher noch nicht aufgefallen, wäre aber sicherlich eine tolle Sache was man das fixen könnte...
einsortiert werden. Statt hinter "Z" müsste "Ö" hinter
"O" stehen.
-
- Contributor
- Beiträge: 1623
- Registriert: Donnerstag 10. Januar 2002, 20:03
Re: Korrekte Sortierung im EPG
Das kommt immer darauf an welche Kollation man als die "richtige" ansieht! Entweder man benutzt ci (case-insensitive) wo ö z.b. wie o betrachtet und nicht zwischen Groß/Kleinschreibung unterschieden wird, also wie im Wörterbuch, oder im Gegenstück cs (case-senstitive) wo die Reihenfolge a->A->c->D->e->E benutzt werden würde. So wird es im Telefonbuch gemacht.
-
- Wissender
- Beiträge: 1839
- Registriert: Sonntag 17. August 2003, 01:39
Re: Korrekte Sortierung im EPG
Hier scheint ja aber weder das Eine noch das Andere der Fall zu sein...doc hat geschrieben:Das kommt immer darauf an welche Kollation man als die "richtige" ansieht! Entweder man benutzt ci (case-insensitive) wo ö z.b. wie o betrachtet und nicht zwischen Groß/Kleinschreibung unterschieden wird, also wie im Wörterbuch, oder im Gegenstück cs (case-senstitive) wo die Reihenfolge a->A->c->D->e->E benutzt werden würde. So wird es im Telefonbuch gemacht.
Gruß
____Paule
-
- Developer
- Beiträge: 2183
- Registriert: Mittwoch 10. Dezember 2003, 07:59
Re: Korrekte Sortierung im EPG
Hier die erweiterte Funktion dazu aus eventlist.cpp:
Code: Alles auswählen
bool sortByDescription (const CChannelEvent& a, const CChannelEvent& b)
{
std::string tmpa = a.description;
std::string tmpb = b.description;
std::transform(tmpa.begin(), tmpa.end(), tmpa.begin(), tolower);
std::transform(tmpb.begin(), tmpb.end(), tmpb.begin(), tolower);
if(tmpa == tmpb)
return a.eventID < b.eventID;
else
return tmpa < tmpb ;
}
-
- Wissender
- Beiträge: 1839
- Registriert: Sonntag 17. August 2003, 01:39
Re: Korrekte Sortierung im EPG
Soll es mit dieser Erweiterung besser sortiert werden?Houdini hat geschrieben:Hier die erweiterte Funktion dazu aus eventlist.cpp:Code: Alles auswählen
bool sortByDescription (const CChannelEvent& a, const CChannelEvent& b) { std::string tmpa = a.description; std::string tmpb = b.description; std::transform(tmpa.begin(), tmpa.end(), tmpa.begin(), tolower); std::transform(tmpb.begin(), tmpb.end(), tmpb.begin(), tolower); if(tmpa == tmpb) return a.eventID < b.eventID; else return tmpa < tmpb ; }
-
- Developer
- Beiträge: 2183
- Registriert: Mittwoch 10. Dezember 2003, 07:59
Re: Korrekte Sortierung im EPG
jo.
Punkt 1 ist damit korrigiert.
wenn Startzeit als 2. Kriterium genutzt werden soll einfach eventID durch startTime ersetzen
Punkt 1 ist damit korrigiert.
nicht wahllos sondern nach eventId2. Man erwartet intuitiv, dass bei alphabetischer
Sortierung das Sendungsdatum als zweites
Sortierkriterium fungiert. Gegenwärtig ist die
Reihenfolge jedoch wahllos
wenn Startzeit als 2. Kriterium genutzt werden soll einfach eventID durch startTime ersetzen
-
- Wissender
- Beiträge: 1839
- Registriert: Sonntag 17. August 2003, 01:39
Re: Korrekte Sortierung im EPG
Dann ab damit ins CVS...