natürlichsprachliche zeitangaben parsen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
ph
User
Beiträge: 3
Registriert: Freitag 25. Juli 2008, 19:01

Samstag 6. September 2008, 00:12

Hi,

das quick add Feature von google calendar ist leider nur für englische Sprache implementiert und steht somit in gcalcli auch nur für englische Zeitangaben (1pm/am, tomorrow ...) zur Verfügung.

Nun würde ich aber gerne 24h Zeit und deutsche relative Angaben (morgen, in einer Woche) usw. verwenden. Bevor ich mich daran mache das selber zu parsen, hat jemand das schonmal für deutsche Zeitangaben gemacht und evt. sogar einen Link zu einer Bibliothek?
Benutzeravatar
snafu
User
Beiträge: 5537
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Samstag 6. September 2008, 10:49

Änder doch einfach die entsprechenden Zeilen im Quelltext von gcalcli. Z.B. Zeile 476:

Code: Alles auswählen

dayNames = [ 'Sunday', 'Monday', 'Tuesday', 'Wednesday',
             'Thursday', 'Friday', 'Saturday' ]
Wäre zumindest ein Versuch wert, damit du nicht alles neu schreiben musst.

Oder wie wär's vielleicht mit Dictionaries? :)
Benutzeravatar
ph
User
Beiträge: 3
Registriert: Freitag 25. Juli 2008, 19:01

Samstag 6. September 2008, 12:22

snafu hat geschrieben:Änder doch einfach die entsprechenden Zeilen im Quelltext von gcalcli. Z.B. Zeile 476:
gaclcli verwendet das nur für Formatierung der Ausgabe.

Das gesamte parsen von Zeitangaben für quick add findet nicht in gcalcli statt, sondern erst auf Servern von google. gcalcli sendet den Eingabesting eins zu eins weiter. Ich kann also für das parsen nicht auf gcalcli code zurückgreifen.
Benutzeravatar
br3z3l
User
Beiträge: 10
Registriert: Mittwoch 30. Januar 2008, 21:31
Kontaktdaten:

Samstag 6. September 2008, 13:05

Übersetz deine deutschsprachige (oder welche auch immer) in die englische die con gcalci verwendet wird.

Montag -> Monday
Dienstag -> Tuesday
usw

10:45 -> 10:45 am
15:15 -> 3:15 pm
usw.
Benutzeravatar
ph
User
Beiträge: 3
Registriert: Freitag 25. Juli 2008, 19:01

Samstag 6. September 2008, 13:28

br3z3l hat geschrieben:Übersetz deine deutschsprachige (oder welche auch immer) in die englische die con gcalci verwendet wird.
Genau das habe ich vor. Was ich dazu suche ist eine Bibliothek zum parsen von deutschen natürlichsprachlichen Zeitangaben. Und die können von verschiedene Benutzer ziemlich unterschiedlich angeben werden:

heute um 10 Uhr

morgen 10:15

nächsten Donnerstag Abend

Sonntag in zwei Wochen

Di, 10 vor 8

12.September

12.09.08

Und für solche Angabe suche ich einen Parser ohne vorher das genaue Format zu kennen, also eine Art Heuristik. Ich bin doch bestimmt nicht der erste der sowas braucht?

Update OK. Ich habe was gefunden:
http://code-bear.com/code/parsedatetime/
Benutzeravatar
snafu
User
Beiträge: 5537
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Samstag 6. September 2008, 16:06

ph hat geschrieben:
snafu hat geschrieben:Änder doch einfach die entsprechenden Zeilen im Quelltext von gcalcli. Z.B. Zeile 476:
gaclcli verwendet das nur für Formatierung der Ausgabe.

Das gesamte parsen von Zeitangaben für quick add findet nicht in gcalcli statt, sondern erst auf Servern von google. gcalcli sendet den Eingabesting eins zu eins weiter. Ich kann also für das parsen nicht auf gcalcli code zurückgreifen.
Kannste ja trotzdem noch verwenden. Du jagst halt die deutschen Eingaben durch's Dict, damit er sie auf englisch weitergibt. Aber eventuell habe ich dich auch missverstanden. Du scheinst ja jetzt eine Lösung gefunden zu haben.
Antworten