From 87134ce93b8c90d1f903938158fa5c908389543f Mon Sep 17 00:00:00 2001 From: Christian Heller Date: Wed, 24 Sep 2025 02:44:40 +0200 Subject: [PATCH] Move major part of message formatting from ClientWindowsManager.log into TuiClientDb.recursive_set_and_report_change. --- ircplom/client_tui.py | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/ircplom/client_tui.py b/ircplom/client_tui.py index 164f079..b7056f1 100644 --- a/ircplom/client_tui.py +++ b/ircplom/client_tui.py @@ -306,7 +306,10 @@ class _TuiClientDb(_UpdatingNode, SharedClientDbFields): update.results += [(_LogScope.ALL, [':DISCONNECTED'])] elif update.key == 'message' and update.value: assert isinstance(update.value, ChatMessage) - update.results += [(_LogScope.CHAT, [':' + update.value.content])] + who = (f':{update.value.sender}' if update.value.sender + else 'NICK:me') + update.results += [(_LogScope.CHAT, + [':[', who, f':] {update.value.content}'])] class _ClientWindowsManager: @@ -367,19 +370,11 @@ class _ClientWindowsManager: def log(self, msg: str, scope: _LogScope, **kwargs) -> None: 'From parsing scope, kwargs, build prefix before sending to logger.' first_char = '$' - sender_label = '' - receiving: Optional[bool] = None - if scope == _LogScope.RAW: - receiving = not kwargs.get('out', False) - if scope == _LogScope.CHAT and 'sender' in kwargs: - receiving = bool(kwargs['sender']) - sender_label = ' [' + (kwargs['sender'] if receiving - else self.db.users['me'].nick) + ']' - if receiving is not None: - first_char = _LOG_PREFIX_IN if receiving else _LOG_PREFIX_OUT + if 'out' in kwargs: + first_char = _LOG_PREFIX_OUT if kwargs['out'] else _LOG_PREFIX_IN if kwargs.get('is_notice', False): first_char *= 3 - prefix = f'{first_char}{sender_label}' + prefix = f'{first_char}' self._tui_log(msg, scope=scope, prefix=prefix, **kwargs) def update_db(self, update: _Update) -> bool: @@ -394,7 +389,7 @@ class _ClientWindowsManager: if update.full_path == ('message',): log_kwargs['log_target'] = (update.value.target or update.value.sender) - log_kwargs['sender'] = update.value.sender + log_kwargs['out'] = not bool(update.value.sender) log_kwargs['is_notice'] = update.value.is_notice else: log_kwargs['log_target'] = update.full_path[1] -- 2.30.2