     foreground associate format ;
 : dark-red T{ rgba f 0.5 0.0 0.0 1 } ;
 : dark-green T{ rgba f 0.0 0.5 0.0 1 } ;
+: dark-blue T{ rgba f 0.0 0.0 0.5 1 } ;
 
 : dot-or-parens ( string -- string )
     [ "." ]

    drop "* Ping" blue write-color ;

M: privmsg write-irc
    "<" blue write-color
    [ irc-message-sender write ] keep
    "> " blue write-color
    trailing>> write ;

M: notice write-irc
    [ type>> blue write-color ] keep
    ": " blue write-color
    trailing>> write ;

TUPLE: own-message message nick timestamp ;

    " from the channel" dark-red write-color
    trailing>> dot-or-parens dark-red write-color ;

M: mode write-irc
    "* " dark-blue write-color
    [ name>> write ] keep
    " has applied mode " dark-blue write-color
    [ mode>> write ] keep
    " to " dark-blue write-color
    parameter>> write ;

M: nick write-irc
    "* " dark-blue write-color
    [ irc-message-sender write ] keep
    " is now known as " blue write-color
    trailing>> write ;

M: unhandled write-irc
    "UNHANDLED: " write
    line>> dark-blue write-color ;

M: irc-end write-irc
    drop "* You have left IRC" dark-red write-color ;
