aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--circe-serenity.el10
1 files changed, 10 insertions, 0 deletions
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."