## ======================================================================== ## File: $HOME/.mutt.color.body ## Purpose: Setup file for the Mail program "Mutt". ## Colorization of text for the builtin pager. ## Latest change: Thu Dec 05 21:30:00 MET 2002 ## ======================================================================== ## Author: Sven Guckes guckes-mutt-color-body@math.fu-berlin.de ## Availability: This file is available as ## ## Comments are very very welcome - please send an email! ## Size: ca 25K ## ======================================================================== ## ============================================================= ## General remarks ## ============================================================= # Words consist in a sequence of letters. # While it is still easy for human beings # to understand words with interspersed spaces # it is not easy for a program to do that. # Example: R E A L L Y I M P O R T A N T # Creating regular expressions which also # allow for this kind of "spacing" is not easy. # Instead, please indicate emphasis not by # chenging the definition of a word but by # placing it into asterisks, eg "*important*". # # Recognition of hyphenated words is difficult, too. # So please do not break words across lines at all. # Instead, put them on the next line. # The same holds for combined words or terms, eg # dates like "4th of July". # I'll need this macro when I do some testing - # jsut a simple way to reload this setup file: macro index % ":source ~/.mutt.color.body" ## ============================================================= ## COLOR for the BODY (viewed with *internal* pager) ## ============================================================= ## From the manual to mutt-1.2: ## Objects that you can colorize: ## attachment, body (regexpr), bold, error, header, hdrdefault, ## index, indicator, markers, message, normal, ## quoted, quoted1, ..., quotedN, ## search, signature, status, tilde, tree, underline. ## ## Color names you can use for "background" and "foreground": ## white black green magenta blue cyan yellow red default colorx ## ## NOTE: Although I'd like to use "default" as the background color, ## it somehow does not work out with "xterm". ## So I changed it to "black" everywhere. ## ================================================== ## COLOR for the BODY - special text parts ## ================================================== # Show attachments: color attachment green black # Quoted text - coloring only the first four levels: # color quoted cyan black # pager body color quoted cyan black # pager body color quoted1 red black # pager body color quoted2 cyan black # pager body color quoted3 yellow black # pager body # The Signature: color signature red black # pager body color tilde blue black # pager body # Bold and unerlined text: color bold green black # .. color underline yellow black # # How this works: Mutt recognizes sequences with embedded CTRL-H ('^H'). # If this matches one of the following kinds # then you get to see the text as either "bold text" or "underlined text" # depending on the capabilities of your terminal. # bold: "c^Hc" -> "bold 'c'" # underline: "c^H_" -> "underlined 'c'" # On color terminals you will see them with their own color. ## ================================================== ## COLOR for the BODY - special text parts ## ================================================== color normal white black color tilde blue black ## ================================================== ## COLOR for the BODY - Internet Addresses ## ================================================== # URLs (General Internet addresses): color body cyan black "(finger|ftp|http|news|telnet)://[^ >]*" color body cyan black "" # # web address without "http": # color body cyan black "www\\.[:alphanum:]+\\.[a-z][a-z][a-z]?([/a-z0-9.]+)?" color body cyan black "www\\.[-.a-z0-9]+\\.[a-z][a-z][a-z]?([-_./~a-z0-9]+)?" # this one yields false positives on addresses # with a minus sign in the name, eg # www.fu-berlin.de/foo/bar.html # ^ # weird. # # HTTPS addresses: color body white blue "https://[^ >]*" # FTP addresses: # color body cyan default "ftp://[^ ]*" color body cyan black "ftp://[^ ]*" # HTTP addresses: color body green black \ "[[:alnum:]][-+.#_[:alnum:]]*@[-+.[:alnum:]]*[[:alnum:]]" # Mailto links with a optional subject line: # Example: mailto:guckes@gmx.net?subject=mutt color body brightred black \ "mailto: *[^ ]+\(\\?subject=[^ ]+\)?" ## =========================================================== ## COLOR for the BODY - Directories, Filenames, and Variables ## =========================================================== # File names ("/path/file") # color body brightgreen black "\\~?\(/[-_.,a-zA-Z0-9{}]+\)+" # this variant includes umlauts, too (damn those krauts! ;-): color body brightgreen black "\\~?\(/[-_.,a-zA-Z0-9{}äöüß]+\)+" # Example: /usr/src/linux/include/{asm,linux} # DOS/Windows file names # c:\vim\vim60e\runtime\syntax\vim.vim # color body brightgreen black "[a-zA-Z]:[-_.a-zA-Z0-9\\]+" # # lower case letters should suffice: # color body brightgreen black "[a-z]:[-_.a-z0-9\\]+" # but it's better when there is a minumum length: color body brightgreen black "[a-z]:[-_.a-z0-9\\]{3,}" # # spaces are *not* included here, of course. # who puts spaces into his filenames, anyway? bah! # Path names ("/path/") color body brightred black "\(/[-_.a-zA-Z0-9]+\)+/" # Variables ("$HOME") color body brightmagenta black "\\$[a-zA-Z][-_a-zA-Z]+" ## =========================================================== ## COLOR for the BODY - Miscellaneous ## =========================================================== # Attribution line: color body red black "^[*] .*:$" # # my attribution line starts with '*' and ends with ':' # thus making it easier to recognize - eg for coloring. # # Example: # * Joe Doe [000907 18:00]: # > quoted text # > quoted text # > quoted text # # See also: # The Attribution line FAQ: # http://www.math.fu-berlin.de/~guckes/faq/attribution.html ## =========================================================== # Acronyms, Abbreviations, and "SCREAMING IN CAPS" ## =========================================================== # color body brightyellow black "[A-Z]+\([ ,]*[A-Z]+\)+" # color body brightyellow black "[A-Z]{3,}" # color body brightyellow black "\([A-Z]{3,} *\)+" # color body brightyellow black "\([-A-Z']{2,}[ ,]*\)+" # # The spaces at start and end are used for use with # "-USE_GNU_REGEX": # WARNING! The following RegEx crashes mutt-1.2.x! # color body brightyellow black " \([-A-Z']{2,}[ ,]*\)+ " # color body brightyellow black " ([-A-Z]{2,}[ ,]*)+ " # # The following includes umlauts - but that's quite clunky. color body brightyellow black "[A-ZÄÖÜ][-A-ZÄÖÜ]+[A-ZÄÖÜ][ .!?]?" # This works ok - but fails at the end of lines, of course. # # "+USE_GNU_REGEX": # When you use "+USE_GNU_REGEX" then you can also make use # of "start of word" ("\<") and "end of word" ("\>"): color body brightyellow black "\\<[-A-Z']{3,}\\>" # with just "two or more" leads to *many* false positives, # eg "AM" and "PM" in times and words like "A", "I", and # AC AD AM AM AN AS AS AT AX BE BY DC DO GO HE HI IF # IS IT ME MR MY NO OF ON OR OX PM RE TO TV UP US WE # # # TEST: try to catch such phrases: # "T H I S I S A C O O L T E X T - N O T !" # color body brightyellow black "([A-ZÄÖÜ] {1,3}){3,}" # color body brightyellow black "(\\<[-A-ZÄÖÜ]\\> *){3,}" # color body brightyellow black "(\\<[-A-ZÄÖÜ]\\> ? ?){3,}" ## =========================================================== # Alternatives ("either/or"): # color body brightwhite black "\\w+/\\w+" # color body brightwhite black "[-._a-zA-Z0-9]+/[-._a-zA-Z0-9]+" # color body brightwhite black "([-._a-zA-Z0-9]+/)+[-._a-zA-Z0-9]+" # # Kraut Version - with umlauts: # color body brightwhite black \ # "([-._a-zA-Zdv|DV\0-9]+/)+[-._a-zA-Zdv|DV\0-9]+" # but this has too many false positives! :-( # # this is much easier when you can use word boundaries: # color body brightwhite black "\\<\\w+/\\w+\\>" # allow a space before and after the '/': # color body brightwhite black "\\<\\w+ ?/ ?\\w+\\>" # color body brightwhite black "\\<[-\\w]+ ?/ ?[-\\w]+\\>" # # Cathing multiple alternatives: # A/B/C/D # color body brightwhite black "(\\<\\w+ ?/)+ ?\\w+\\>" # this is fine - but fails on words containing dashes. # however, building a character set with '-' and '\w' # is not possiblem it seems: # color body brightwhite black "(\\<[-\\w]+ ?/)+ ?[-\\w]+\\>" # # so all you can do is list the characters again: color body brightwhite black "(\\<[-a-z0-9._]+ ?/)+ ?[-a-z0-9._]+\\>" # example: foobar.123/foo-123.bar/foo.bar_123 # # non-matches: A/B/C/... # *Emphasized*, /emphasized/, and _emphasized_ words: # color body brightred black "[*/_]+ *[- &[:alnum:]]+ *[*/_]+" # this would catch false positives of the kind _foo* and /bar_ # so we should choose matching pairs only: color body brightred black "[*][-[:alnum:]]+[*]" color body brightred black "/[-[:alnum:]]+/" color body brightred black "_[-[:alnum:]]+_" # Smileys: :-) ;-) :-| :-/ :-( color body yellow black "[;:]-[)/(|]" # Grinning: "grin" ([g]) and "big grin" ([bg]): color body blue red "<[Gg]>" color body blue red "<[Bb][Gg]>" # Border Lines of length three or more. # (Several Newsletters use border lines..) color body green black "[-_=+~/\*]{3,}" # # Border lines with spaces in between charcaters: # Allowing for arbitrary space runs in between, # with a minimum length of four: # color body green black "\( *[-+=#*~_]\){4,}" # Examples: # "- - -" "#####" "~~~~~~~" "+-+-+-+-+-+" "* * * *" # "+ - ~ + === * ~~~" etc # Extensive use of exclamation and question marks: # "!!!" "???" color body red white "[!?]{3,}" # Percentages ("Save xx.x %!") color body brightgreen black "[.0-9]+ ?%" # MONEY! Dollars! "$$$" # color body green black "$\d\+.\d\+" color body white red "\\$[0-9]+[.,0-9]*" # Offers in "money per minute" - eg "pf/min" color body black yellow "[0-9]+[,.][0-9]* *pf/min" # Money with "DM", "EUR", or "$$$" before number # with an optional dot or comma in between digits # and an optional end 'f "-" to indicate zeros: # matches: DM1 DM10 DM10,00 DM10,- "Euro 30,--" # non-matches: DM010 DM-100 color body black yellow \ "(dm|euro?|\$\$\$) *[1-9][0-9]*([.,][0-9]*-?-?)?" # # same thing with monetary unit *after* number: # color body black yellow "[1-9][0-9]*([.,][0-9]*-?)* *(DM|EUR|Mark|\$\$\$)" # color body black yellow "[1-9][0-9]*[.,]?(--?|[0-9][0-9])? *(DM|EUR|Mark|\$\$\$)" color body black yellow \ "[1-9][0-9.,]*(--?|[0-9][0-9])? *(dm|euro?|mark|\$\$\$)" # # two digits followed by small monitary unit: color body black yellow "[1-9][0-9]? *(cents?|pfennig)" # 020410: Year Numbers 1980-2002 color body yellow black "19[89][0-9]" color body yellow black "200[012]" # 020410: Copyright color body yellow black "\\(c\\)" # FAX and TEL Numbers: # "FAX: (1 123) 4567 890" # "TEL: +1-123-456-78900" # "Tel.: 123/456-789" # "Cell: 123/456-789" # "Tel: +49-(0)30-883-8884" # "Fax: +49-(0)" # color body green black "(fax|tel)\.?:? *[+]?[-+0-9/() ]+" # color body green black "(cell|fax|Fax|FAX|tel|Tel|TEL)[.:]+ *\\+?[-+0-9/()]+" # color body green black "(cell|fax|tel|)?[.:]+ *[+]*[-+0-9/()]+" # color body green black "(cell|fax|tel|)?[.:+ ]+[-+0-9/()]+" color body black green \ "(tele)?(cell|fax|fon|phone|tel)[.: ]+[+]?[- 0-9/()]{4,}[0-9]" # # Phone Numbers: # "(123) 4567890" # color body white red "(tele)?(fon|phone):? *\\([-/ 0-9]{4,}\\)" # color body white red '(tele)?(fon|phone):? *[-/( )0-9]{4,}' # "1-234-4567890" # "1-234 4567890 ext. 123" color body brightyellow red "1-[0-9]{3}[- ][-0-9]+ +ext.? [0-9]+" # Toll Free Numbers: # "1-800-123-456-789" # "(800) 123-456-789 x123" # "(800) 123-456-789 ext 123" color body white red "1-?800[-0-9]+" color body white red "(1 ?)?\\(800\\) ?[-0-9]+( x[0-9]+)?" color body white red "(1 ?)?\\(800\\) ?[-0-9]+( ext ?[0-9]+)?" # ISBNs # color body white red "[-0-9]{9,12}[0-9X]" ## ======================================================================== ## DATE&TIME ## ======================================================================== # # Dates in "yyyy-mm-dd", "yyyy/mm/dd" and "yy/mm/dd" # matches: 1967/04/06 67/04/06 # color body white red "\(19|20\)?[0-9][0-9]/[01]?[0-9]/[0123]?[0-9]" # allow only months in range 01-12 and days in range 00-31: color body white red \ "\(19|20\)?[0-9][0-9][/-](0[0-9]|1[012])[/-]([012][0-9]|3[01])" # # matches: 4.6.1967 and "4.6. 1967" "4. 6. 67" color body blue green \ "(0?[1-9]|[12][0-9]|3[012])[.] ?([1-9]|1[012])[.] ?(19|20)?([0-9][0-9])?" # Tag+Monat (German month names) # "6.Apr" "6. April 1967" color body white red \ "((0?[1-9]|[12][0-9]|3[012])[.]? ?)?\ \\<(Jan(uar)?|Feb(ruar)?|M(ä|ae)rz|Apr(il)?|Mai|Juni?|Juli?|Aug(ust)?|\ Sept(ember)?|Okt(ober)?|Nov(ember)?|Dez(ember)?)\\> *\ ((19|20)?[0-9][0-9])?" # Month Day # "Jan 1st" "Feb. 2nd" "March 3rd 03" "April 6th 1967" color body white red \ "\\<(Jan(uar)?|Feb(ruar)?|M(ä|ae)rz|Apr(il)?|Mai|Juni?|Juli?|Aug(ust)?|\ Sept(ember)?|Okt(ober)?|Nov(ember)?|Dez(ember)?)\\>\ ( *[0 ]?[1-9]|[12][0-9]|3[012])?(st|nd|rd|th)? *((19|20)?[0-9][0-9])?" # allowing short month names and making both the day and the year optional # leads to false positives with words like "mail" or "augmented". # so you would have to use several color rules with different # combinations, eg "day+month+year" and "day+month" and "month+year". # Tag Monat Jahr # "6.April67" "6. Apr. 67" "6 April 1967" color body white red \ "(0?[1-9]|[12][0-9]|3[012]?[.]? ?)?\ \\<(Jan(uar)?|Feb(ruar)?|M(ä|ae)rz|Apr(il)?|Mai|Juni?|Juli?|Aug(ust)?|\ Sept(ember)?|Okt(ober)?|Nov(ember)?|Dez(ember)?)\\>\ ( *(19|20)?[0-9][0-9])?" # 020413: # Times on the clock: # matches: # 12:07:00 # 9h 12:00h 12.05Uhr "12 Uhr c.t." "16h s.t" # color body blue green \ "([01]?[0-9]|2[0-4])([.:][0-5][0-9])?([.:][0-5][0-9])? ?(am|pm)?\ (h|Uhr)?( *[cs][.]t[.])?" # make "h" or "Uhr" compulsory: color body blue green \ "([01]?[0-9]|2[0-4])([.:][0-5][0-9])?([.:][0-5][0-9])? ?(am|pm)?\ (h|Uhr)( *[cs][.]t[.])?" # 020410: Time Frames # matches: 10:00-12:00 09.30 - 13.30 color body blue green \ "[012][0-9][.:][0-5][0-9](am|pm)? ?- ?([012][0-9][.:][0-5][0-9](am|pm)?)?" # 020413: # Week Days - long form: color body blue green \ '\<(Montag|Dienstag|Mittwoch|Donnerstag|Freitag|Sonnabend|Samstag|Sonntag)\>' color body blue green \ '\<(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday)\>' # # Week Days - short form: # color body blue green "\\<(Mon|Die|Mit|Don|Fre|Sam|Son)\\>" # too many false positives as "die" and "mit" are proper german words. color body blue green "\\<(Mon|Tue|Wed|Thu|Fri|Sat|Sun)\\>" ## Date: header recognition # ## Date: Thu Apr 6 12:07:00 MEST 1967 # Date: + weekday + month(short) + day + # time(hh:mm:ss) + timezone + year color body yellow blue \ "Date: *\\<(Mon|Tue|Wed|Thu|Fri|Sat|Sun)\\>\ ?\\<(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\>\ ?([ 0]?[1-9]|[12][0-9]|3[012])\ ?([01][0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]\ ?[A-Z]{3,4}\ ?(19[789][0-9]|200[012])" # ## Date: Thu, 6 Apr 1967 12:07:00 +0000 color body yellow blue \ "Date: *\\<(Mon|Tue|Wed|Thu|Fri|Sat|Sun)\\>,\ ?([ 0]?[1-9]|[12][0-9]|3[012])\ ?\\<(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\>\ ?(19[789][0-9]|200[012])\ ?([01][0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]\ ?[-+][0-9]{4}" # # MMM DD HH:MM:SS (added 2002-11-16) # Nov 16 16:16:16 color body brightyellow blue \ "\\<(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\>\ ?([ 0]?[1-9]|[12][0-9]|3[012])\ ?([01][0-9]|2[0-4]):[0-5][0-9]:[0-5][0-9]" ## ======================================================================== ## END of DATE&TIME ## ======================================================================== # 020413 # Postleitzahlen (aka PLZ) (ZIP codes in Germany) # matches: D-12345 and "D 12345" # color body yellow red "D[- ]?[0-9]\{5\}" # # Also colorize the following word if it starts with a # capital letter, assuming that it is the name of the town: color body yellow red "(D ?- ?)?[0-9]\{5\} *[A-Z]\\w+" # RTFM! # " man word" # color body white red '\\"man [^ ]+\\"' # color body white red "^ +[$]? *man [^ ]+" color body white red "^ +[$]? *man \\w+" # Copyright (C) and # Registered Trademark (r) # color body brightyellow black "[^ ]+ ?\\([cr]\\)" color body brightyellow black "[(][cr][)]" # Lists # bulleted list: # * one # * two # * three # dashed list: # - one # - two # - three # color body red black "^ *[-*] +" # this pattern yields many false positives as it # spans lines for which there is no syntax language. # this is easier with Vim's syntax coloring. # color body red black "^ *[-*] +" # special IP Host Adresses: # 192.x.x.x color body white blue "192.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}" # 020405: # mutt has trouble with this iconv stuff and # gives me lots of characters in octal code - "\nnn" # color body red white "\\\\[0-7][0-7][0-7]" # however, this coloring does not work. # mutt obviously does not subject these characters # a color coding check but simply spews them out. # 020413: # HTML tags color body yellow black "" # 020413 # Quoted text in single quotes: # color body yellow black "'[a-z0-9 ]+'" # require that the text starts and ends with a letter: # color body yellow black "'\w[a-z0-9 ]+[a-z0-9.?!]'" # color body yellow black "'[a-z][a-z0-9 ]+[a-z0-9.?!]'" # will get you false positive on sentences like # it's a hard day's work # ^^^^^^^^^^^^ # too many false positives, actually! # # color body yellow black '"[a-z][a-z0-9 ]+[a-z0-9.?!]"' # color body yellow black '"\w[a-z0-9 ]+[a-z0-9.?!]"' # color body yellow black '"\w[a-z0-9 ]+\w"' color body yellow black '"\<\w[a-z0-9 ]+\w"\>' # announcements to seminars and talks: # room numbers, eg "Raum 123" "SR 049" "Zimmer 123" color body black green "(H(oe|ö)rsaal|Raum|Seminarraum|SR|Zimmer) ?[0-9]+" # 020414 # Linux Distributions and their versions color body white red \ "(linux *)?(debian|mandrake|redhat|suse) *(linux)? *[0-9][.][0-9]" # other free OSs: color body white red "(freebsd|netbsd|openbsd|solaris)" # Stucki's windoze patterns: # names of Windows[tm] # followed by some version # matches: windows-3.11 windoze-95 # windoof-nt win2k "winzigweich xp" color body blue yellow \ '\' color body blue yellow \ '\' # detecting "xp" as words only: color body red black '\*?\\*?' # krautland - city names: # taken from the list of cities for which # st*dtpl*nd**nst has a city map - except # those with spaces, dashes, or umlauts: color body white red \ '\<(aachen|augsburg|bad.salzuflen|bad.tölz|baden-baden|bamberg|bayreuth|\ bergheim|bergisch.gladbach|berlin|bielefeld|bocholt|bonn|braunschweig|\ bremen|bremerhaven|cottbus|düren|düsseldorf|darmstadt|detmold|dresden|\ elmshorn|eschweiler|esslingen.am.neckar|euskirchen|fürth|frankfurt|\ freiburg|gütersloh|güttingen|garmisch-partenkirchen|halle|hamburg|\ hannover|heidelberg|heilbronn|herford|hilden|hildesheim|iserlohn|\ köln|karlsruhe|kassel|kerpen|kiel|konstanz|krefeld|lübeck|lüdenscheid|\ leipzig|leverkusen|lippstadt|ludwigsburg|ludwigshafen|münchen|\ mönchengladbach|münster|magdeburg|mainz|mannheim|marburg|minden|\ nürnberg|neumünster|neuss|neustadt|norderstedt|offenbach|oldenburg|\ paderborn|passau|pforzheim|pinneberg|pulheim|ratingen|regensburg|\ remscheid|rheine|rostock|ruhrgebiet|saarbrücken|siegen|solingen|\ st..augustin|stuttgart|troisdorf|viersen|villingen-schwenningen|\ würzburg|waiblingen|wiesbaden|wuppertal)s?\>' # 2002-11-16 # krautland - some more city names # (without an online map by *st*dtpl*nd*nst): color body white red \ '\<(dortmund|fulda|giessen|goerlitz|jena|potsdam)\>' # krautland's federal states: color body white blue \ '\<(bayern|baden-w(ü|ue)rttemberg|berlin|bremen|brandenburg|hamburg|hessen|\ mecklenburg-vorpommern|niedersachsen|nordrhein-westfalen|rheinland-pfalz|\ saarland|sachsen|sachsen-anhalt|schleswig-holstein|th(ü|ue)ringen)\>' # berlin suburbs - new form (since 2001) color body white green \ '\<(charlottenburg-wilmersdorf|friedrichshain-kreuzberg|\ lichtenberg-hohenschönhausen|marzahn-hellersdorf|mitte|\ neukölln|pankow|reinickendorf|spandau|steglitz-zehlendorf|\ tempelhof-schöneberg|treptow-köpenick)\>' # berlin suburbs - old form (until 2001) color body black green \ '\<(charlottenburg|friedrichshain|hellersdorf|hohenschönhausen|\ kreuzberg|köpenick|lichtenberg|marzahn|mitte|neukölln|\ pankow|reinickendorf|schöneberg|spandau|steglitz|\ tempelhof|treptow|wilmersdorf|zehlendorf)\>' # Capitalized Words # color body black white '\<[A-Z]\w+\>' # Finding myself in Emails color body yellow blue "(Sven|Guckes)" color body yellow blue "guckes@math.fu-berlin.de" # Emphasis by interspersed spaces # Example: E M P H A S I S color body white red '\<\w( +\w\>)+' # PGP strings: color body black yellow "-----END PGP PUBLIC KEY BLOCK-----" color body black yellow "-----BEGIN PGP PUBLIC KEY BLOCK-----" color body black yellow "Version: GnuPG v1.0.[67] \(GNU/Linux\)" # color body black yellow "Version: GnuPG v1.2.[67] \(GNU/Linux\)" # 2002-09-20 # quoted-printable characters: =HH where 'H' is a hex digit color body yellow blue "=[0-9A-F][0-9A-F]" # colon at the end of a line (this preserves a line ending): color body yellow blue "=$" ## ======================================================================== ## TEST! ## ======================================================================== # example: # [ foo | bar | foo bar | foo-bar | baz ] color body brightyellow brightred '\[ [-a-z ]+ (\| [-a-z ]+)+ \]' ## ======================================================================== ## DONNERWETTER - Wettervorhersagen - weather forecast ## ======================================================================== # phrasen/ueberschriften: # eg "Wetter Freitag". color body white red \ 'Wetter *\<(Montag|Dienstag|Mittwoch|Donnerstag|Freitag|Sonnabend|Samstag|Sonntag)\>' color body white red "Weitere Aussichten" # "im laufe des tages" # "Weitere Aussichten" # Temperatures in Weather Forecasts: # degrees in C or F: color body brightyellow red \ '(zwischen [0-9]+ und *)?([1-9]?[0-9] bis ?)?[1-9]?[0-9] ?([cf]|grad|degrees)\>' color body white blue '-[1-9]?[0-9] ?([cf]|grad|degrees)\>' # color body black yellow '\<(heiter|sonne(nschein)?|sonnig)\>' color body white blue '\<(regen|schoenwetter)wolken)|regnerisch\>' color body white blue '\<(zwischen)?(hoch|tief)(drucks?(gebiet)?)?s?\>' color body white blue \ '\<(bedeckt|klar|wolken|wolkig|(aufgelockert *)?bewoelkt|bewoelkung)\>' # pressure: color body brightblue black '\<(hoch|tief)druck\>' # tempratures: freezing, cold; heat, warmth. color body brightblue black '\<(frost|kaelte)\>' color body brightyellow black '\<(hitze|waerme)\>' # times of day: color body brightred default '\<(nach|vor)?(mit)?tags?(ueber)?\>' color body yellow default '\' color body blue default '\<(abend|nachts?)\>' # himmelsrichtungen color body brightyellow default '\<(norden|osten|sueden|westen)\>' color body brightyellow default '\<(nord|sued)(osten|westen)\>' color body brightyellow default '\<(nord|ost|sued|west)(deutschland|wind)\>' color body brightyellow default '\<(noerd|oest|sued|west)lich\>' # different forms of water # .., hail, fog, rain, showers, .., snow, clouds. color body black blue \ '\<(foehn|hagel|(frueh)?nebel|regen(schauer)?|reif|schnee|wolken)\>' # krautlands area: color body green black \ '\<(alpenrand|erzgebirge|kueste|mittelgebirge|schwarzwald)\>' color body green black '\<(osteuropa)\>' #EOF vim: ft=muttrc