diff --git a/circe-serenity.el b/circe-serenity.el index 6f0ecbe..501b1c8 100644 --- a/circe-serenity.el +++ b/circe-serenity.el @@ -202,6 +202,16 @@ passed on to `lui-format'." (circe-serenity--define-formatter 'circe-serenity-server-nick-regain-formatter 'circe-format-server-nick-regain) +(defun circe-serenity-notice-formatter (&rest keywords) + "Format a notice. +KEYWORDS should be a plist with at least a :nick and :body key." + (propertize + (lui-format + (format "{intro:%ds} -{nick}- {body}" circe-serenity-longest-nick) + (plist-put keywords :intro "***")) + 'wrap-prefix (circe-serenity--fill-string))) +(circe-serenity--define-formatter 'circe-serenity-notice-formatter 'circe-format-notice) + ;;;###autoload (defun enable-circe-serenity () "Enable Serenity for Circe."