diff --git a/src/fluxer/migrate_message.py b/src/fluxer/migrate_message.py index f0f3aba..7f8a314 100644 --- a/src/fluxer/migrate_message.py +++ b/src/fluxer/migrate_message.py @@ -390,7 +390,7 @@ async def migrate_messages( # Use custom clean_mentions with msg mentions for accuracy content = clean_mentions( msg.content, - msg.guild, + context.discord_reader.guild, msg.mentions, msg.role_mentions, msg.channel_mentions, @@ -422,10 +422,10 @@ async def migrate_messages( snapshot = msg.message_snapshots[0] if not content: # Only update content if it wasn't already set (e.g., by thread_starter_message) content = snapshot.content - if hasattr(msg, 'guild') and msg.guild: + if context.discord_reader.guild: content = clean_mentions( content, - msg.guild, + context.discord_reader.guild, snapshot.mentions if hasattr(snapshot, 'mentions') else None, snapshot.role_mentions if hasattr(snapshot, 'role_mentions') else None, snapshot.channel_mentions if hasattr(snapshot, 'channel_mentions') else None, # Changed this line diff --git a/src/fluxer/writer.py b/src/fluxer/writer.py index d1984c3..517a290 100644 --- a/src/fluxer/writer.py +++ b/src/fluxer/writer.py @@ -285,7 +285,7 @@ class FluxerWriter: # -# is Fluxer/Discord's subtext markdown: small, muted grey text prefix = f"-# \n" if is_forwarded: - prefix += "-# ⤷*forwarded*\n" + prefix += "-# ⮫*forwarded*\n" display_content = content if is_forwarded and content: @@ -345,7 +345,7 @@ class FluxerWriter: # We add the author name to the prefix since bot name won't match bot_prefix = f"-# \n" if is_forwarded: - bot_prefix += "-# ⤷*forwarded*\n" + bot_prefix += "-# ⮫*forwarded*\n" bot_prefix += f"-# · {author_name}\n" final_bot_content = bot_prefix + display_content if display_content else bot_prefix diff --git a/src/stoat/migrate_message.py b/src/stoat/migrate_message.py index f20a6db..ff56285 100644 --- a/src/stoat/migrate_message.py +++ b/src/stoat/migrate_message.py @@ -46,11 +46,7 @@ def clean_mentions(content: str, guild, user_mentions=None, role_mentions=None, def replace_role(match): rid = int(match.group(1)) - # 0. Try native mapping first - if state: - target_role_id = state.get_target_role_id(str(rid)) - if target_role_id: - return f"<@&{target_role_id}>" + # Stoat does not support migrating Discord Role mentions natively, always use the name as fallback # 1. Try provided guild cache/list role = guild.get_role(rid) or next((r for r in guild.roles if r.id == rid), None) @@ -393,7 +389,7 @@ async def migrate_messages( # Use custom clean_mentions with msg mentions for accuracy content = clean_mentions( msg.content, - msg.guild, + context.discord_reader.guild, msg.mentions, msg.role_mentions, msg.channel_mentions, @@ -421,10 +417,10 @@ async def migrate_messages( snapshot = msg.message_snapshots[0] if not content: content = snapshot.content - if hasattr(msg, 'guild') and msg.guild: + if context.discord_reader.guild: content = clean_mentions( content, - msg.guild, + context.discord_reader.guild, snapshot.mentions if hasattr(snapshot, 'mentions') else None, snapshot.role_mentions if hasattr(snapshot, 'role_mentions') else None, snapshot.channel_mentions if hasattr(snapshot, 'channel_mentions') else None, diff --git a/src/stoat/writer.py b/src/stoat/writer.py index 8a0bf76..cc1eab3 100644 --- a/src/stoat/writer.py +++ b/src/stoat/writer.py @@ -316,7 +316,7 @@ class StoatWriter: # Build content with timestamp prefix prefix = f"###### \n" if is_forwarded: - prefix += "##### ⤷*forwarded*\n" + prefix += "##### ⮫*forwarded*\n" display_content = content if is_forwarded and content: