From f46b7eb0a6f9fe13e205b7bdd1f51db181cca56d Mon Sep 17 00:00:00 2001 From: David de Hilster Date: Sun, 21 Jul 2024 19:58:37 -0400 Subject: [PATCH] VISUALTEXT-FILES-101 fix date time parser, still not perfect Signed-off-by: David de Hilster --- analyzers/Date and Times/input/test.txt | 2 +- analyzers/Date and Times/input/text02.txt | 6 +- .../Date and Times/kb/user/timezones.dict | 382 +++++++++--------- analyzers/Date and Times/spec/analyzer.seq | 3 +- analyzers/Date and Times/spec/dates.nlp | 2 +- analyzers/Date and Times/spec/datesDay.nlp | 32 +- analyzers/Date and Times/spec/highlight.nlp | 2 +- analyzers/Date and Times/spec/numbers.nlp | 2 +- analyzers/Date and Times/spec/ordinals.nlp | 2 +- analyzers/Date and Times/spec/times.nlp | 2 +- analyzers/Date and Times/spec/times1.nlp | 43 -- analyzers/Date and Times/spec/zulu.nlp | 14 +- analyzers/README.md | 12 +- 13 files changed, 249 insertions(+), 255 deletions(-) delete mode 100644 analyzers/Date and Times/spec/times1.nlp diff --git a/analyzers/Date and Times/input/test.txt b/analyzers/Date and Times/input/test.txt index 015210f..e596fa0 100644 --- a/analyzers/Date and Times/input/test.txt +++ b/analyzers/Date and Times/input/test.txt @@ -9,7 +9,7 @@ Sept 04, 2014. 11. 12. 2014, 08:45:39 12th day of December, 2001 13/03/2014 -19 February 2013 year 09:10 +19 February 2013 09:10 19th day of May, 2015 2:21 p.m., December 11, 2014 20 Mar 2013 diff --git a/analyzers/Date and Times/input/text02.txt b/analyzers/Date and Times/input/text02.txt index 9bd3e45..b86acc4 100644 --- a/analyzers/Date and Times/input/text02.txt +++ b/analyzers/Date and Times/input/text02.txt @@ -1,5 +1 @@ -2017-02-03T09:04:08,00123Z -2017-02-03T09:04:08.001Z -2017-02-03T09:04:08Z -2003 -2017-02-03T09:04:08Z to 2017-02-03T09:04:09Z \ No newline at end of file +Wed Aug 05 12:00:00 EDT 2015 \ No newline at end of file diff --git a/analyzers/Date and Times/kb/user/timezones.dict b/analyzers/Date and Times/kb/user/timezones.dict index 6fc3ffc..a12fccc 100644 --- a/analyzers/Date and Times/kb/user/timezones.dict +++ b/analyzers/Date and Times/kb/user/timezones.dict @@ -1,197 +1,197 @@ # Timezone Abbreviations -acdt timezone=1 sign=+ hour=10 min=10 descr="Australian Central Daylight Saving Time" -acst timezone=1 sign=+ hour=9 min=9 descr="Australian Central Standard Time" -act timezone=1 sign=- hour=5 min=5 ambig=2 descr="Acre Time" -acwst timezone=1 sign=+ hour=8 min=8 descr="Australian Central Western Standard Time (unofficial)" -adt timezone=1 sign=- hour=3 min=3 descr="Atlantic Daylight Time" -aedt timezone=1 sign=+ hour=11 min=11 descr="Australian Eastern Daylight Saving Time" -aest timezone=1 sign=+ hour=10 min=10 descr="Australian Eastern Standard Time" -aet timezone=1 sign=+ hour=10 min=10 descr="Australian Eastern Time" -aft timezone=1 sign=+ hour=4 min=4 descr="Afghanistan Time" -akdt timezone=1 sign=- hour=8 min=8 descr="Alaska Daylight Time" -akst timezone=1 sign=- hour=9 min=9 descr="Alaska Standard Time" -almt timezone=1 sign=+ hour=6 min=6 descr="Alma-Ata Time[1]" -amst timezone=1 sign=- hour=3 min=3 descr="Amazon Summer Time (Brazil)[2]" -amt timezone=1 sign=- hour=4 min=4 ambig=2 descr="Amazon Time (Brazil)[3]" -anat timezone=1 sign=+ hour=12 min=12 descr="Anadyr Time[4]" -aqtt timezone=1 sign=+ hour=5 min=5 descr="Aqtobe Time[5]" -art timezone=1 sign=- hour=3 min=3 descr="Argentina Time" -ast timezone=1 sign=+ hour=3 min=3 ambig=2 descr="Arabia Standard Time" -awst timezone=1 sign=+ hour=8 min=8 descr="Australian Western Standard Time" +acdt timezone=1 sign=+ hour=10 min=30 descr="Australian Central Daylight Saving Time" +acst timezone=1 sign=+ hour=9 min=30 descr="Australian Central Standard Time" +act timezone=1 sign=- hour=5 ambig=2 descr="Acre Time" +acwst timezone=1 sign=+ hour=8 min=45 descr="Australian Central Western Standard Time (unofficial)" +adt timezone=1 sign=- hour=3 descr="Atlantic Daylight Time" +aedt timezone=1 sign=+ hour=11 descr="Australian Eastern Daylight Saving Time" +aest timezone=1 sign=+ hour=10 descr="Australian Eastern Standard Time" +aet timezone=1 sign=+ hour=10 descr="Australian Eastern Time" +aft timezone=1 sign=+ hour=4 min=30 descr="Afghanistan Time" +akdt timezone=1 sign=- hour=8 descr="Alaska Daylight Time" +akst timezone=1 sign=- hour=9 descr="Alaska Standard Time" +almt timezone=1 sign=+ hour=6 descr="Alma-Ata Time[1]" +amst timezone=1 sign=- hour=3 descr="Amazon Summer Time (Brazil)[2]" +amt timezone=1 sign=- hour=4 ambig=2 descr="Amazon Time (Brazil)[3]" +anat timezone=1 sign=+ hour=12 descr="Anadyr Time[4]" +aqtt timezone=1 sign=+ hour=5 descr="Aqtobe Time[5]" +art timezone=1 sign=- hour=3 descr="Argentina Time" +ast timezone=1 sign=+ hour=3 ambig=2 descr="Arabia Standard Time" +awst timezone=1 sign=+ hour=8 descr="Australian Western Standard Time" azost timezone=1 sign=± hour=0 descr="Azores Summer Time" -azot timezone=1 sign=- hour=1 min=1 descr="Azores Standard Time" -azt timezone=1 sign=+ hour=4 min=4 descr="Azerbaijan Time" -bnt timezone=1 sign=+ hour=8 min=8 descr="Brunei Time" -biot timezone=1 sign=+ hour=6 min=6 descr="British Indian Ocean Time" -bit timezone=1 sign=- hour=12 min=12 descr="Baker Island Time" -bot timezone=1 sign=- hour=4 min=4 descr="Bolivia Time" -brst timezone=1 sign=- hour=2 min=2 descr="Brasília Summer Time" -brt timezone=1 sign=- hour=3 min=3 descr="Brasília Time" -bst timezone=1 sign=+ hour=6 min=6 ambig=3 descr="Bangladesh Standard Time" -btt timezone=1 sign=+ hour=6 min=6 descr="Bhutan Time" -cat timezone=1 sign=+ hour=2 min=2 descr="Central Africa Time" -cct timezone=1 sign=+ hour=6 min=6 descr="Cocos Islands Time" -cdt timezone=1 sign=- hour=5 min=5 ambig=2 descr="Central Daylight Time (North America)" -cest timezone=1 sign=+ hour=2 min=2 descr="Central European Summer Time" -cet timezone=1 sign=+ hour=1 min=1 descr="Central European Time" -chadt timezone=1 sign=+ hour=13 min=13 descr="Chatham Daylight Time" -chast timezone=1 sign=+ hour=12 min=12 descr="Chatham Standard Time" -chot timezone=1 sign=+ hour=8 min=8 descr="Choibalsan Standard Time" -chost timezone=1 sign=+ hour=9 min=9 descr="Choibalsan Summer Time" -chst timezone=1 sign=+ hour=10 min=10 descr="Chamorro Standard Time" -chut timezone=1 sign=+ hour=10 min=10 descr="Chuuk Time" -cist timezone=1 sign=- hour=8 min=8 descr="Clipperton Island Standard Time" -ckt timezone=1 sign=- hour=10 min=10 descr="Cook Island Time" -clst timezone=1 sign=- hour=3 min=3 descr="Chile Summer Time" -clt timezone=1 sign=- hour=4 min=4 descr="Chile Standard Time" -cost timezone=1 sign=- hour=4 min=4 descr="Colombia Summer Time" -cot timezone=1 sign=- hour=5 min=5 descr="Colombia Time" -cst timezone=1 sign=- hour=6 min=6 ambig=3 descr="Central Standard Time (Central America)" -ct timezone=1 sign=- hour=6 min=6 descr="Central Time" -cvt timezone=1 sign=- hour=1 min=1 descr="Cape Verde Time" -cwst timezone=1 sign=+ hour=8 min=8 descr="Central Western Standard Time (Australia) unofficial" -cxt timezone=1 sign=+ hour=7 min=7 descr="Christmas Island Time" -davt timezone=1 sign=+ hour=7 min=7 descr="Davis Time" -ddut timezone=1 sign=+ hour=10 min=10 descr="Dumont d'Urville Time" -dft timezone=1 sign=+ hour=1 min=1 descr="AIX-specific equivalent of Central European Time[NB 1]" -easst timezone=1 sign=- hour=5 min=5 descr="Easter Island Summer Time" -east timezone=1 sign=- hour=6 min=6 descr="Easter Island Standard Time" -eat timezone=1 sign=+ hour=3 min=3 descr="East Africa Time" -ect timezone=1 sign=- hour=4 min=4 ambig=2 descr="Eastern Caribbean Time (does not recognise DST)" -edt timezone=1 sign=- hour=4 min=4 descr="Eastern Daylight Time (North America)" -eest timezone=1 sign=+ hour=3 min=3 descr="Eastern European Summer Time" -eet timezone=1 sign=+ hour=2 min=2 descr="Eastern European Time" +azot timezone=1 sign=- hour=1 descr="Azores Standard Time" +azt timezone=1 sign=+ hour=4 descr="Azerbaijan Time" +bnt timezone=1 sign=+ hour=8 descr="Brunei Time" +biot timezone=1 sign=+ hour=6 descr="British Indian Ocean Time" +bit timezone=1 sign=- hour=12 descr="Baker Island Time" +bot timezone=1 sign=- hour=4 descr="Bolivia Time" +brst timezone=1 sign=- hour=2 descr="Brasília Summer Time" +brt timezone=1 sign=- hour=3 descr="Brasília Time" +bst timezone=1 sign=+ hour=6 ambig=3 descr="Bangladesh Standard Time" +btt timezone=1 sign=+ hour=6 descr="Bhutan Time" +cat timezone=1 sign=+ hour=2 descr="Central Africa Time" +cct timezone=1 sign=+ hour=6 min=30 descr="Cocos Islands Time" +cdt timezone=1 sign=- hour=5 ambig=2 descr="Central Daylight Time (North America)" +cest timezone=1 sign=+ hour=2 descr="Central European Summer Time" +cet timezone=1 sign=+ hour=1 descr="Central European Time" +chadt timezone=1 sign=+ hour=13 min=45 descr="Chatham Daylight Time" +chast timezone=1 sign=+ hour=12 min=45 descr="Chatham Standard Time" +chot timezone=1 sign=+ hour=8 descr="Choibalsan Standard Time" +chost timezone=1 sign=+ hour=9 descr="Choibalsan Summer Time" +chst timezone=1 sign=+ hour=10 descr="Chamorro Standard Time" +chut timezone=1 sign=+ hour=10 descr="Chuuk Time" +cist timezone=1 sign=- hour=8 descr="Clipperton Island Standard Time" +ckt timezone=1 sign=- hour=10 descr="Cook Island Time" +clst timezone=1 sign=- hour=3 descr="Chile Summer Time" +clt timezone=1 sign=- hour=4 descr="Chile Standard Time" +cost timezone=1 sign=- hour=4 descr="Colombia Summer Time" +cot timezone=1 sign=- hour=5 descr="Colombia Time" +cst timezone=1 sign=- hour=6 ambig=3 descr="Central Standard Time (Central America)" +ct timezone=1 sign=- hour=6 descr="Central Time" +cvt timezone=1 sign=- hour=1 descr="Cape Verde Time" +cwst timezone=1 sign=+ hour=8 min=45 descr="Central Western Standard Time (Australia) unofficial" +cxt timezone=1 sign=+ hour=7 descr="Christmas Island Time" +davt timezone=1 sign=+ hour=7 descr="Davis Time" +ddut timezone=1 sign=+ hour=10 descr="Dumont d'Urville Time" +dft timezone=1 sign=+ hour=1 descr="AIX-specific equivalent of Central European Time[NB 1]" +easst timezone=1 sign=- hour=5 descr="Easter Island Summer Time" +east timezone=1 sign=- hour=6 descr="Easter Island Standard Time" +eat timezone=1 sign=+ hour=3 descr="East Africa Time" +ect timezone=1 sign=- hour=4 ambig=2 descr="Eastern Caribbean Time (does not recognise DST)" +edt timezone=1 sign=- hour=4 descr="Eastern Daylight Time (North America)" +eest timezone=1 sign=+ hour=3 descr="Eastern European Summer Time" +eet timezone=1 sign=+ hour=2 descr="Eastern European Time" egst timezone=1 sign=± hour=0 descr="Eastern Greenland Summer Time" -egt timezone=1 sign=- hour=1 min=1 descr="Eastern Greenland Time" -est timezone=1 sign=- hour=5 min=5 descr="Eastern Standard Time (North America)" -et timezone=1 sign=- hour=5 min=5 descr="Eastern Time (North America)" -fet timezone=1 sign=+ hour=3 min=3 descr="Further-eastern European Time" -fjt timezone=1 sign=+ hour=12 min=12 descr="Fiji Time" -fkst timezone=1 sign=- hour=3 min=3 descr="Falkland Islands Summer Time" -fkt timezone=1 sign=- hour=4 min=4 descr="Falkland Islands Time" -fnt timezone=1 sign=- hour=2 min=2 descr="Fernando de Noronha Time" -galt timezone=1 sign=- hour=6 min=6 descr="Galápagos Time" -gamt timezone=1 sign=- hour=9 min=9 descr="Gambier Islands Time" -get timezone=1 sign=+ hour=4 min=4 descr="Georgia Standard Time" -gft timezone=1 sign=- hour=3 min=3 descr="French Guiana Time" -gilt timezone=1 sign=+ hour=12 min=12 descr="Gilbert Island Time" -git timezone=1 sign=- hour=9 min=9 descr="Gambier Island Time" +egt timezone=1 sign=- hour=1 descr="Eastern Greenland Time" +est timezone=1 sign=- hour=5 descr="Eastern Standard Time (North America)" +et timezone=1 sign=- hour=5 descr="Eastern Time (North America)" +fet timezone=1 sign=+ hour=3 descr="Further-eastern European Time" +fjt timezone=1 sign=+ hour=12 descr="Fiji Time" +fkst timezone=1 sign=- hour=3 descr="Falkland Islands Summer Time" +fkt timezone=1 sign=- hour=4 descr="Falkland Islands Time" +fnt timezone=1 sign=- hour=2 descr="Fernando de Noronha Time" +galt timezone=1 sign=- hour=6 descr="Galápagos Time" +gamt timezone=1 sign=- hour=9 descr="Gambier Islands Time" +get timezone=1 sign=+ hour=4 descr="Georgia Standard Time" +gft timezone=1 sign=- hour=3 descr="French Guiana Time" +gilt timezone=1 sign=+ hour=12 descr="Gilbert Island Time" +git timezone=1 sign=- hour=9 descr="Gambier Island Time" gmt timezone=1 sign=± hour=0 descr="Greenwich Mean Time" -gst timezone=1 sign=- hour=2 min=2 ambig=2 descr="South Georgia and the South Sandwich Islands Time" -gyt timezone=1 sign=- hour=4 min=4 descr="Guyana Time" -hdt timezone=1 sign=- hour=9 min=9 descr="Hawaii–Aleutian Daylight Time" -haec timezone=1 sign=+ hour=2 min=2 descr="Heure Avancée d'Europe Centrale French-language name for CEST" -hst timezone=1 sign=- hour=10 min=10 descr="Hawaii–Aleutian Standard Time" -hkt timezone=1 sign=+ hour=8 min=8 descr="Hong Kong Time" -hmt timezone=1 sign=+ hour=5 min=5 descr="Heard and McDonald Islands Time" -hovst timezone=1 sign=+ hour=8 min=8 descr="Hovd Summer Time (not used from 2017-present)" -hovt timezone=1 sign=+ hour=7 min=7 descr="Hovd Time" -ict timezone=1 sign=+ hour=7 min=7 descr="Indochina Time" -idlw timezone=1 sign=- hour=12 min=12 descr="International Date Line West time zone" -idt timezone=1 sign=+ hour=3 min=3 descr="Israel Daylight Time" -iot timezone=1 sign=+ hour=6 min=6 descr="Indian Ocean Time" -irdt timezone=1 sign=+ hour=4 min=4 descr="Iran Daylight Time" -irkt timezone=1 sign=+ hour=8 min=8 descr="Irkutsk Time" -irst timezone=1 sign=+ hour=3 min=3 descr="Iran Standard Time" -ist timezone=1 sign=+ hour=5 min=5 ambig=3 descr="Indian Standard Time" -jst timezone=1 sign=+ hour=9 min=9 descr="Japan Standard Time" -kalt timezone=1 sign=+ hour=2 min=2 descr="Kaliningrad Time" -kgt timezone=1 sign=+ hour=6 min=6 descr="Kyrgyzstan Time" -kost timezone=1 sign=+ hour=11 min=11 descr="Kosrae Time" -krat timezone=1 sign=+ hour=7 min=7 descr="Krasnoyarsk Time" -kst timezone=1 sign=+ hour=9 min=9 descr="Korea Standard Time" -lhst timezone=1 sign=+ hour=10 min=10 ambig=2 descr="Lord Howe Standard Time" -lint timezone=1 sign=+ hour=14 min=14 descr="Line Islands Time" -magt timezone=1 sign=+ hour=12 min=12 descr="Magadan Time" -mart timezone=1 sign=- hour=9 min=9 descr="Marquesas Islands Time" -mawt timezone=1 sign=+ hour=5 min=5 descr="Mawson Station Time" -mdt timezone=1 sign=- hour=6 min=6 descr="Mountain Daylight Time (North America)" -met timezone=1 sign=+ hour=1 min=1 descr="Middle European Time (same zone as CET)" -mest timezone=1 sign=+ hour=2 min=2 descr="Middle European Summer Time (same zone as CEST)" -mht timezone=1 sign=+ hour=12 min=12 descr="Marshall Islands Time" -mist timezone=1 sign=+ hour=11 min=11 descr="Macquarie Island Station Time" -mit timezone=1 sign=- hour=9 min=9 descr="Marquesas Islands Time" -mmt timezone=1 sign=+ hour=6 min=6 descr="Myanmar Standard Time" -msk timezone=1 sign=+ hour=3 min=3 descr="Moscow Time" -mst timezone=1 sign=+ hour=8 min=8 ambig=2 descr="Malaysia Standard Time" -mt timezone=1 sign=- hour=7 min=7 descr="Mountain Time (North America)" -mut timezone=1 sign=+ hour=4 min=4 descr="Mauritius Time" -mvt timezone=1 sign=+ hour=5 min=5 descr="Maldives Time" -myt timezone=1 sign=+ hour=8 min=8 descr="Malaysia Time" -nct timezone=1 sign=+ hour=11 min=11 descr="New Caledonia Time" -ndt timezone=1 sign=- hour=2 min=2 descr="Newfoundland Daylight Time" -nft timezone=1 sign=+ hour=11 min=11 descr="Norfolk Island Time" -novt timezone=1 sign=+ hour=7 min=7 descr="Novosibirsk Time [9]" -npt timezone=1 sign=+ hour=5 min=5 descr="Nepal Time" -nst timezone=1 sign=- hour=3 min=3 descr="Newfoundland Standard Time" -nt timezone=1 sign=- hour=3 min=3 descr="Newfoundland Time" -nut timezone=1 sign=- hour=11 min=11 descr="Niue Time" -nzdt timezone=1 sign=+ hour=13 min=13 descr="New Zealand Daylight Time" -nzst timezone=1 sign=+ hour=12 min=12 descr="New Zealand Standard Time" -omst timezone=1 sign=+ hour=6 min=6 descr="Omsk Time" -orat timezone=1 sign=+ hour=5 min=5 descr="Oral Time" -pdt timezone=1 sign=- hour=7 min=7 descr="Pacific Daylight Time (North America)" -pet timezone=1 sign=- hour=5 min=5 descr="Peru Time" -pett timezone=1 sign=+ hour=12 min=12 descr="Kamchatka Time" -pgt timezone=1 sign=+ hour=10 min=10 descr="Papua New Guinea Time" -phot timezone=1 sign=+ hour=13 min=13 descr="Phoenix Island Time" -pht timezone=1 sign=+ hour=8 min=8 descr="Philippine Time" -phst timezone=1 sign=+ hour=8 min=8 descr="Philippine Standard Time" -pkt timezone=1 sign=+ hour=5 min=5 descr="Pakistan Standard Time" -pmdt timezone=1 sign=- hour=2 min=2 descr="Saint Pierre and Miquelon Daylight Time" -pmst timezone=1 sign=- hour=3 min=3 descr="Saint Pierre and Miquelon Standard Time" -pont timezone=1 sign=+ hour=11 min=11 descr="Pohnpei Standard Time" -pst timezone=1 sign=- hour=8 min=8 descr="Pacific Standard Time (North America)" -pt timezone=1 sign=- hour=8 min=8 descr="Pacific Time (North America)" -pwt timezone=1 sign=+ hour=9 min=9 descr="Palau Time[10]" -pyst timezone=1 sign=- hour=3 min=3 descr="Paraguay Summer Time[11]" -pyt timezone=1 sign=- hour=4 min=4 descr="Paraguay Time[12]" -ret timezone=1 sign=+ hour=4 min=4 descr="Réunion Time" -rott timezone=1 sign=- hour=3 min=3 descr="Rothera Research Station Time" -sakt timezone=1 sign=+ hour=11 min=11 descr="Sakhalin Island Time" -samt timezone=1 sign=+ hour=4 min=4 descr="Samara Time" -sast timezone=1 sign=+ hour=2 min=2 descr="South African Standard Time" -sbt timezone=1 sign=+ hour=11 min=11 descr="Solomon Islands Time" -sct timezone=1 sign=+ hour=4 min=4 descr="Seychelles Time" -sdt timezone=1 sign=- hour=10 min=10 descr="Samoa Daylight Time" -sgt timezone=1 sign=+ hour=8 min=8 descr="Singapore Time" -slst timezone=1 sign=+ hour=5 min=5 descr="Sri Lanka Standard Time" -sret timezone=1 sign=+ hour=11 min=11 descr="Srednekolymsk Time" -srt timezone=1 sign=- hour=3 min=3 descr="Suriname Time" -sst timezone=1 sign=- hour=11 min=11 ambig=2 descr="Samoa Standard Time" -syot timezone=1 sign=+ hour=3 min=3 descr="Showa Station Time" -taht timezone=1 sign=- hour=10 min=10 descr="Tahiti Time" -tha timezone=1 sign=+ hour=7 min=7 descr="Thailand Standard Time" -tft timezone=1 sign=+ hour=5 min=5 descr="French Southern and Antarctic Time[13]" -tjt timezone=1 sign=+ hour=5 min=5 descr="Tajikistan Time" -tkt timezone=1 sign=+ hour=13 min=13 descr="Tokelau Time" -tlt timezone=1 sign=+ hour=9 min=9 descr="Timor Leste Time" -tmt timezone=1 sign=+ hour=5 min=5 descr="Turkmenistan Time" -trt timezone=1 sign=+ hour=3 min=3 descr="Turkey Time" -tot timezone=1 sign=+ hour=13 min=13 descr="Tonga Time" -tst timezone=1 sign=+ hour=8 min=8 descr="Taiwan Standard Time" -tvt timezone=1 sign=+ hour=12 min=12 descr="Tuvalu Time" -ulast timezone=1 sign=+ hour=9 min=9 descr="Ulaanbaatar Summer Time" -ulat timezone=1 sign=+ hour=8 min=8 descr="Ulaanbaatar Standard Time" +gst timezone=1 sign=- hour=2 ambig=2 descr="South Georgia and the South Sandwich Islands Time" +gyt timezone=1 sign=- hour=4 descr="Guyana Time" +hdt timezone=1 sign=- hour=9 descr="Hawaii–Aleutian Daylight Time" +haec timezone=1 sign=+ hour=2 descr="Heure Avancée d'Europe Centrale French-language name for CEST" +hst timezone=1 sign=- hour=10 descr="Hawaii–Aleutian Standard Time" +hkt timezone=1 sign=+ hour=8 descr="Hong Kong Time" +hmt timezone=1 sign=+ hour=5 descr="Heard and McDonald Islands Time" +hovst timezone=1 sign=+ hour=8 descr="Hovd Summer Time (not used from 2017-present)" +hovt timezone=1 sign=+ hour=7 descr="Hovd Time" +ict timezone=1 sign=+ hour=7 descr="Indochina Time" +idlw timezone=1 sign=- hour=12 descr="International Date Line West time zone" +idt timezone=1 sign=+ hour=3 descr="Israel Daylight Time" +iot timezone=1 sign=+ hour=6 descr="Indian Ocean Time" +irdt timezone=1 sign=+ hour=4 min=30 descr="Iran Daylight Time" +irkt timezone=1 sign=+ hour=8 descr="Irkutsk Time" +irst timezone=1 sign=+ hour=3 min=30 descr="Iran Standard Time" +ist timezone=1 sign=+ hour=5 min=30 ambig=3 descr="Indian Standard Time" +jst timezone=1 sign=+ hour=9 descr="Japan Standard Time" +kalt timezone=1 sign=+ hour=2 descr="Kaliningrad Time" +kgt timezone=1 sign=+ hour=6 descr="Kyrgyzstan Time" +kost timezone=1 sign=+ hour=11 descr="Kosrae Time" +krat timezone=1 sign=+ hour=7 descr="Krasnoyarsk Time" +kst timezone=1 sign=+ hour=9 descr="Korea Standard Time" +lhst timezone=1 sign=+ hour=10 min=30 ambig=2 descr="Lord Howe Standard Time" +lint timezone=1 sign=+ hour=14 descr="Line Islands Time" +magt timezone=1 sign=+ hour=12 descr="Magadan Time" +mart timezone=1 sign=- hour=9 min=30 descr="Marquesas Islands Time" +mawt timezone=1 sign=+ hour=5 descr="Mawson Station Time" +mdt timezone=1 sign=- hour=6 descr="Mountain Daylight Time (North America)" +met timezone=1 sign=+ hour=1 descr="Middle European Time (same zone as CET)" +mest timezone=1 sign=+ hour=2 descr="Middle European Summer Time (same zone as CEST)" +mht timezone=1 sign=+ hour=12 descr="Marshall Islands Time" +mist timezone=1 sign=+ hour=11 descr="Macquarie Island Station Time" +mit timezone=1 sign=- hour=9 min=30 descr="Marquesas Islands Time" +mmt timezone=1 sign=+ hour=6 min=30 descr="Myanmar Standard Time" +msk timezone=1 sign=+ hour=3 descr="Moscow Time" +mst timezone=1 sign=+ hour=8 ambig=2 descr="Malaysia Standard Time" +mt timezone=1 sign=- hour=7 descr="Mountain Time (North America)" +mut timezone=1 sign=+ hour=4 descr="Mauritius Time" +mvt timezone=1 sign=+ hour=5 descr="Maldives Time" +myt timezone=1 sign=+ hour=8 descr="Malaysia Time" +nct timezone=1 sign=+ hour=11 descr="New Caledonia Time" +ndt timezone=1 sign=- hour=2 min=30 descr="Newfoundland Daylight Time" +nft timezone=1 sign=+ hour=11 descr="Norfolk Island Time" +novt timezone=1 sign=+ hour=7 descr="Novosibirsk Time [9]" +npt timezone=1 sign=+ hour=5 min=45 descr="Nepal Time" +nst timezone=1 sign=- hour=3 min=30 descr="Newfoundland Standard Time" +nt timezone=1 sign=- hour=3 min=30 descr="Newfoundland Time" +nut timezone=1 sign=- hour=11 descr="Niue Time" +nzdt timezone=1 sign=+ hour=13 descr="New Zealand Daylight Time" +nzst timezone=1 sign=+ hour=12 descr="New Zealand Standard Time" +omst timezone=1 sign=+ hour=6 descr="Omsk Time" +orat timezone=1 sign=+ hour=5 descr="Oral Time" +pdt timezone=1 sign=- hour=7 descr="Pacific Daylight Time (North America)" +pet timezone=1 sign=- hour=5 descr="Peru Time" +pett timezone=1 sign=+ hour=12 descr="Kamchatka Time" +pgt timezone=1 sign=+ hour=10 descr="Papua New Guinea Time" +phot timezone=1 sign=+ hour=13 descr="Phoenix Island Time" +pht timezone=1 sign=+ hour=8 descr="Philippine Time" +phst timezone=1 sign=+ hour=8 descr="Philippine Standard Time" +pkt timezone=1 sign=+ hour=5 descr="Pakistan Standard Time" +pmdt timezone=1 sign=- hour=2 descr="Saint Pierre and Miquelon Daylight Time" +pmst timezone=1 sign=- hour=3 descr="Saint Pierre and Miquelon Standard Time" +pont timezone=1 sign=+ hour=11 descr="Pohnpei Standard Time" +pst timezone=1 sign=- hour=8 descr="Pacific Standard Time (North America)" +pt timezone=1 sign=- hour=8 descr="Pacific Time (North America)" +pwt timezone=1 sign=+ hour=9 descr="Palau Time[10]" +pyst timezone=1 sign=- hour=3 descr="Paraguay Summer Time[11]" +pyt timezone=1 sign=- hour=4 descr="Paraguay Time[12]" +ret timezone=1 sign=+ hour=4 descr="Réunion Time" +rott timezone=1 sign=- hour=3 descr="Rothera Research Station Time" +sakt timezone=1 sign=+ hour=11 descr="Sakhalin Island Time" +samt timezone=1 sign=+ hour=4 descr="Samara Time" +sast timezone=1 sign=+ hour=2 descr="South African Standard Time" +sbt timezone=1 sign=+ hour=11 descr="Solomon Islands Time" +sct timezone=1 sign=+ hour=4 descr="Seychelles Time" +sdt timezone=1 sign=- hour=10 descr="Samoa Daylight Time" +sgt timezone=1 sign=+ hour=8 descr="Singapore Time" +slst timezone=1 sign=+ hour=5 min=30 descr="Sri Lanka Standard Time" +sret timezone=1 sign=+ hour=11 descr="Srednekolymsk Time" +srt timezone=1 sign=- hour=3 descr="Suriname Time" +sst timezone=1 sign=- hour=11 ambig=2 descr="Samoa Standard Time" +syot timezone=1 sign=+ hour=3 descr="Showa Station Time" +taht timezone=1 sign=- hour=10 descr="Tahiti Time" +tha timezone=1 sign=+ hour=7 descr="Thailand Standard Time" +tft timezone=1 sign=+ hour=5 descr="French Southern and Antarctic Time[13]" +tjt timezone=1 sign=+ hour=5 descr="Tajikistan Time" +tkt timezone=1 sign=+ hour=13 descr="Tokelau Time" +tlt timezone=1 sign=+ hour=9 descr="Timor Leste Time" +tmt timezone=1 sign=+ hour=5 descr="Turkmenistan Time" +trt timezone=1 sign=+ hour=3 descr="Turkey Time" +tot timezone=1 sign=+ hour=13 descr="Tonga Time" +tst timezone=1 sign=+ hour=8 descr="Taiwan Standard Time" +tvt timezone=1 sign=+ hour=12 descr="Tuvalu Time" +ulast timezone=1 sign=+ hour=9 descr="Ulaanbaatar Summer Time" +ulat timezone=1 sign=+ hour=8 descr="Ulaanbaatar Standard Time" utc timezone=1 sign=± hour=0 descr="Coordinated Universal Time" -uyst timezone=1 sign=- hour=2 min=2 descr="Uruguay Summer Time" -uyt timezone=1 sign=- hour=3 min=3 descr="Uruguay Standard Time" -uzt timezone=1 sign=+ hour=5 min=5 descr="Uzbekistan Time" -vet timezone=1 sign=- hour=4 min=4 descr="Venezuelan Standard Time" -vlat timezone=1 sign=+ hour=10 min=10 descr="Vladivostok Time" -volt timezone=1 sign=+ hour=3 min=3 descr="Volgograd Time" -vost timezone=1 sign=+ hour=6 min=6 descr="Vostok Station Time" -vut timezone=1 sign=+ hour=11 min=11 descr="Vanuatu Time" -wakt timezone=1 sign=+ hour=12 min=12 descr="Wake Island Time" -wast timezone=1 sign=+ hour=2 min=2 descr="West Africa Summer Time" -wat timezone=1 sign=+ hour=1 min=1 descr="West Africa Time" -west timezone=1 sign=+ hour=1 min=1 descr="Western European Summer Time" +uyst timezone=1 sign=- hour=2 descr="Uruguay Summer Time" +uyt timezone=1 sign=- hour=3 descr="Uruguay Standard Time" +uzt timezone=1 sign=+ hour=5 descr="Uzbekistan Time" +vet timezone=1 sign=- hour=4 descr="Venezuelan Standard Time" +vlat timezone=1 sign=+ hour=10 descr="Vladivostok Time" +volt timezone=1 sign=+ hour=3 descr="Volgograd Time" +vost timezone=1 sign=+ hour=6 descr="Vostok Station Time" +vut timezone=1 sign=+ hour=11 descr="Vanuatu Time" +wakt timezone=1 sign=+ hour=12 descr="Wake Island Time" +wast timezone=1 sign=+ hour=2 descr="West Africa Summer Time" +wat timezone=1 sign=+ hour=1 descr="West Africa Time" +west timezone=1 sign=+ hour=1 descr="Western European Summer Time" wet timezone=1 sign=± hour=0 descr="Western European Time" -wib timezone=1 sign=+ hour=7 min=7 descr="Western Indonesian Time" -wit timezone=1 sign=+ hour=9 min=9 descr="Eastern Indonesian Time" -wita timezone=1 sign=+ hour=8 min=8 descr="Central Indonesia Time" -wgst timezone=1 sign=- hour=2 min=2 descr="West Greenland Summer Time[14]" -wgt timezone=1 sign=- hour=3 min=3 descr="West Greenland Time[15]" -wst timezone=1 sign=+ hour=8 min=8 descr="Western Standard Time" -yakt timezone=1 sign=+ hour=9 min=9 descr="Yakutsk Time" -yekt timezone=1 sign=+ hour=5 min=5 descr="Yekaterinburg Time" +wib timezone=1 sign=+ hour=7 descr="Western Indonesian Time" +wit timezone=1 sign=+ hour=9 descr="Eastern Indonesian Time" +wita timezone=1 sign=+ hour=8 descr="Central Indonesia Time" +wgst timezone=1 sign=- hour=2 descr="West Greenland Summer Time[14]" +wgt timezone=1 sign=- hour=3 descr="West Greenland Time[15]" +wst timezone=1 sign=+ hour=8 descr="Western Standard Time" +yakt timezone=1 sign=+ hour=9 descr="Yakutsk Time" +yekt timezone=1 sign=+ hour=5 descr="Yekaterinburg Time" diff --git a/analyzers/Date and Times/spec/analyzer.seq b/analyzers/Date and Times/spec/analyzer.seq index 38205ee..ee7950b 100644 --- a/analyzers/Date and Times/spec/analyzer.seq +++ b/analyzers/Date and Times/spec/analyzer.seq @@ -1,11 +1,10 @@ dicttokz nil # Gen: Convert input to token list -nlp LinesDictTokZ # comment nlp funcs # comment nlp numbers # comment nlp ordinals # comment nlp times # comment nlp zulu # comment -nlp times1 # comment +nlp timeAdd # comment nlp dates # comment nlp datesDay # comment nlp highlight # comment \ No newline at end of file diff --git a/analyzers/Date and Times/spec/dates.nlp b/analyzers/Date and Times/spec/dates.nlp index fc1ac83..c2fe88d 100644 --- a/analyzers/Date and Times/spec/dates.nlp +++ b/analyzers/Date and Times/spec/dates.nlp @@ -6,7 +6,7 @@ # MODIFIED: ############################################### -@NODES _LINE +@NODES _ROOT ############################################### # 19th day of May, 2015 diff --git a/analyzers/Date and Times/spec/datesDay.nlp b/analyzers/Date and Times/spec/datesDay.nlp index ef4c55b..d838ba9 100644 --- a/analyzers/Date and Times/spec/datesDay.nlp +++ b/analyzers/Date and Times/spec/datesDay.nlp @@ -6,7 +6,37 @@ # MODIFIED: ############################################### -@NODES _LINE +@NODES _ROOT + +############################################### +# Wed Aug 05 12:00:00 EDT 2015 +############################################### + +@PRE +<1,1> var("day"); +<2,2> var("month"); +<3,3> var("day"); +<5,5> var("year"); + +@POST +S("weekday") = N("$text",1); +S("month") = N("month",2); +S("day") = num(N("$text",3)); +S("year") = num(N("$text",5)); + +S("hour") = N("hour",4); +S("min") = N("min",4); +S("sec") = N("sec",4); +single(); + +@RULES +_dateTime <- + _xALPHA ### (1) + _xALPHA ### (2) + _xNUM ### (3) + _time ### (4) + _xNUM ### (5) + @@ ############################################### # Fri, 12 Dec 2014 diff --git a/analyzers/Date and Times/spec/highlight.nlp b/analyzers/Date and Times/spec/highlight.nlp index 8851e81..777b7a1 100644 --- a/analyzers/Date and Times/spec/highlight.nlp +++ b/analyzers/Date and Times/spec/highlight.nlp @@ -6,7 +6,7 @@ # MODIFIED: ############################################### -@NODES _LINE +@NODES _ROOT @POST noop(); diff --git a/analyzers/Date and Times/spec/numbers.nlp b/analyzers/Date and Times/spec/numbers.nlp index 8ac2913..f8bac0b 100644 --- a/analyzers/Date and Times/spec/numbers.nlp +++ b/analyzers/Date and Times/spec/numbers.nlp @@ -6,7 +6,7 @@ # MODIFIED: ############################################### -@NODES _LINE +@NODES _ROOT @POST L("num") = num(N("$text",1)); diff --git a/analyzers/Date and Times/spec/ordinals.nlp b/analyzers/Date and Times/spec/ordinals.nlp index 7f2a363..663c7cc 100644 --- a/analyzers/Date and Times/spec/ordinals.nlp +++ b/analyzers/Date and Times/spec/ordinals.nlp @@ -6,7 +6,7 @@ # MODIFIED: ############################################### -@NODES _LINE +@NODES _ROOT @POST S("num") = num(N("$text",1)); diff --git a/analyzers/Date and Times/spec/times.nlp b/analyzers/Date and Times/spec/times.nlp index 61aacd2..766e936 100644 --- a/analyzers/Date and Times/spec/times.nlp +++ b/analyzers/Date and Times/spec/times.nlp @@ -6,7 +6,7 @@ # MODIFIED: ############################################### -@NODES _LINE +@NODES _ROOT ############################################### # 10:04:23 pm diff --git a/analyzers/Date and Times/spec/times1.nlp b/analyzers/Date and Times/spec/times1.nlp deleted file mode 100644 index 1806a8f..0000000 --- a/analyzers/Date and Times/spec/times1.nlp +++ /dev/null @@ -1,43 +0,0 @@ -############################################### -# FILE: times -# SUBJ: comment -# AUTH: David de Hilster -# CREATED: 2024-6-1 11:56:34 -# MODIFIED: -############################################### - -@NODES _LINE - -############################################### -# 09:04:08,00123Z -############################################### - -@POST -N("zulu",1) = N("zulu",3); -listadd(1,3); - -@RULES -_xNIL <- - _time ### (1) - _xWILD [star match=(\, \.)] ### (2) - _zulu ### (3) - @@ - -############################################### -# 10:17 pm EST -############################################### - -@PRE -<2,2> var("timezone"); - -@POST -N("tzsign",1) = N("sign",2); -N("tzhour",1) = N("hour",2); -if (N("min",2)) N("tzmin",1) = N("min",2); -listadd(1,2); - -@RULES -_xNIL <- - _time - _xALPHA - @@ diff --git a/analyzers/Date and Times/spec/zulu.nlp b/analyzers/Date and Times/spec/zulu.nlp index 84a8702..a960ef7 100644 --- a/analyzers/Date and Times/spec/zulu.nlp +++ b/analyzers/Date and Times/spec/zulu.nlp @@ -6,7 +6,19 @@ # MODIFIED: ############################################### -@NODES _LINE +@NODES _ROOT + +@POST +S("time") = N("$text",1); +S("adjust") = N("$text",3); +single(); + +@RULES +_time <- + _time ### (1) + \+ ### (2) + _time ### (3) + @@ @POST L("num") = num(N("$text",1)); diff --git a/analyzers/README.md b/analyzers/README.md index 68e136a..e82806d 100644 --- a/analyzers/README.md +++ b/analyzers/README.md @@ -1,22 +1,22 @@ -# Template Analyzers +# Block Analyzers -These are the templates for creating new analyzers using the [NLP++ VSCode language extension](http://vscode.visualtext.org). +These are blocks for creating new analyzers using the [NLP++ VSCode language extension](http://vscode.visualtext.org). -## Rules for Template Analyzers +## Rules for Block Analyzers -These are the rules for submitting template analyzers: +These are the rules for submitting block analyzers: 1. The folder name should be a two to three word descriptive name for the analyzer 2. The first line in the readme should be the same title with a "#" sign header 3. The next line that contains text should be a short description of the analyzer that will appear in the NLP++ VSCode Extension 4. The rest of the README file should contain information about the analyzer that will assist the end user on how to use and augment the analyzer. -Here is an example start of a template analyzer README file: +Here is an example start of a block analyzer README file: ``` # Moose Analyzer -Allows for analyzing text for articles on moose (appears in the description of the selection template analyzer selection list) +Allows for analyzing text for articles on moose (appears in the description of the selection block analyzer selection list) ## Using the Moose Analyzer