Seite 1 von 1

natürlichsprachliche zeitangaben parsen

Verfasst: Samstag 6. September 2008, 00:12
von ph
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?

Verfasst: Samstag 6. September 2008, 10:49
von snafu
Ä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? :)

Verfasst: Samstag 6. September 2008, 12:22
von ph
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.

Verfasst: Samstag 6. September 2008, 13:05
von br3z3l
Ü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.

Verfasst: Samstag 6. September 2008, 13:28
von ph
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/

Verfasst: Samstag 6. September 2008, 16:06
von snafu
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.