May 30, 2020

Day/date checking of a message (Check and Send 2.0.5)

Check and Send 2.0.5 is now available for download.

Download:

Note: Check and Send 2.x only works for Thunderbird 76 Beta1 and up.

It newly implements day/date checking functionalities. You can check as followings:
  • You wrote 6/6 (Fri) but the day is Saturday in actual 
  • You wrote a meeting would hold 6/7 but the day is Sunday
  • You wrote 2/29 but this year is not leap year

This check does not consider year your write in a message. Date after today is considered as this year and one before today is interpreted as next year.




Before you use the functionalities, you need to configure them.
Open the Check and Send option and scroll down. You"ll find the Day/Date section.

Enable functionalities

Here you can choose functionalities to be activated:
  • Check day/date consistency
    Confirm if the date and day is not matched
  • Confirm if a message includes the following day
    Confirm if the date in a message matches with the day specified here
  • Check invalid date
    Confirm if the date is not valid such as 4/30

Describe patterns to search date string in a message


Setup regular expression and back reference to search and extract date information.
This search is performed on a subject and a message body.
Quotaion and signature are excluded.
Case is not considered. (Apply regular expression with "i" flag)

Describe regular expression to the text field.
The pattern includes back reference to extract month, date and day.
The month and date extractions are mandatory.
The day extraction is needed for Day checking, not mandatory for the other checkings.
Note that the "(month=$1, ...) " is automatically added. You don't need to write it.

Then specify the back reference is related to month, date or day.
In the example above, first parameter($1) is treated as month, second one($2) is date and third one($3) is day.
If you don't need day extraction, choose "-" for the Day list.

Finally click the Add button. Your regular expression is registered.
You can edit existing pattern by the Update button.

The each pattern in the example above matched with the following date formats:
  • month/date (day): ex) 5/30 (Sat)
  • month/date: ex) 5/30
The first pattern is registered by default.

For example, if you want to check date in date/month format, not the default month/date (day), do the followings:
  1. Select the first pattern (default setting)
  2. Change Month to $2
  3. Change Date to $1
  4. Change Day to -
  5. Click the Update button


Define month, date and day strings
After the regular expression setup, define how to interpret the extracted month, date and day strings.
It is represeted as Javascript Array.

Sample definition is registered by default. Add your definition to it.
Don't change the structure of the array; don't change the "[" and "]".


The above is month definition. The 2nd line specifies Janunary and 3rd line do February, and the same for others.
If you want to add full month word to the definition such as January, February, March and so on, change the definition as follows. (The part is added.)

All item in the array is String object. So, wrap the definition by "" even if it is number.

[
  ["1","01","Jan","January"],
  ["2","02","Feb","February"],
  ["3","03","Mar","March"],
   ... 


The date and day definitions are also registered by default. So, customize them by the same way as the month.


If the definition you write is invalid, the following error message is displayed and rollback to the previous setting.


After the all configurations above, you can use the day/date functionalities.
It may be difficult to you if you are not familiar with a programming language.
Please add a comment here if you have a question or further improvement of the functionalities.





1 comment:

Unknown said...

Hi
Check and Send doesn't work with Thunderbird 78.2.2 when set to confirm if "To" is blank.

Popular Posts