From 91f0b224e15e0e5004b4292d2cf5cd373136e3f2 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Tue, 12 Dec 2023 11:19:20 -0800 Subject: [PATCH] Add a formatter for notices --- circe-serenity.el | 10 ++++++++++ 1 file changed, 10 insertions(+) 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."