From: Christian Heller Date: Wed, 13 Aug 2025 06:23:17 +0000 (+0200) Subject: Also parse NOTICEs into chat and server messages. X-Git-Url: https://plomlompom.com/repos/booking/process_titles?a=commitdiff_plain;h=5c71fc77cb3ef60cddf38297b532e8e2e6848a79;p=ircplom Also parse NOTICEs into chat and server messages. --- diff --git a/ircplom/client.py b/ircplom/client.py index 0d8b2cd..c62608b 100644 --- a/ircplom/client.py +++ b/ircplom/client.py @@ -312,6 +312,11 @@ class Client(ABC, ClientQueueMixin): self.close() case '001' | 'NICK': self._update_db('nickname', value=msg.params[0], confirm=True) + case 'NOTICE' | 'PRIVMSG': + scope = LogScope.CHAT if '!' in msg.source else LogScope.SERVER + self._log(msg.params[-1], scope=scope, channel=msg.params[0], + out=False, is_notice=msg.verb == 'NOTICE', + sender=msg.nick_from_source) case 'PRIVMSG': self._log(msg.params[-1], scope=LogScope.CHAT, out=False, sender=msg.nick_from_source, channel=msg.params[0]) diff --git a/ircplom/client_tui.py b/ircplom/client_tui.py index 8dc36de..c209f00 100644 --- a/ircplom/client_tui.py +++ b/ircplom/client_tui.py @@ -152,15 +152,17 @@ class _ClientWindowsManager: def log(self, msg: str, scope: LogScope, **kwargs) -> None: 'From parsing scope, kwargs, build prefix before sending to logger.' - prefix = '' - if 'out' in kwargs: - prefix += _LOG_PREFIX_OUT if kwargs['out'] else _LOG_PREFIX_IN + first_char = '$' + sender_label = '' + if 'out' in kwargs and scope != LogScope.SERVER: + first_char = _LOG_PREFIX_OUT if kwargs['out'] else _LOG_PREFIX_IN if scope == LogScope.CHAT: nickname = (self._db.nickname if kwargs['out'] else kwargs['sender']) - prefix += f' [{nickname}]' - else: - prefix += _LOG_PREFIX_SERVER + sender_label = f' [{nickname}]' + if kwargs.get('is_notice', False): + first_char *= 3 + prefix = f'{first_char}{sender_label}' self._tui_log(msg, scope=scope, prefix=prefix, **kwargs) def update(self, key: str, value: str, confirmed: bool, scope: LogScope