From 66210d1d2ef745153c1b630090fc62defabbbd64 Mon Sep 17 00:00:00 2001 From: kangfenmao Date: Sat, 14 Sep 2024 16:17:35 +0800 Subject: [PATCH] fix: remove trailing double spaces from markdown strings --- src/renderer/src/pages/home/Messages/Message.tsx | 4 ++-- src/renderer/src/utils/index.ts | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/pages/home/Messages/Message.tsx b/src/renderer/src/pages/home/Messages/Message.tsx index bb2a7bff..d6135e06 100644 --- a/src/renderer/src/pages/home/Messages/Message.tsx +++ b/src/renderer/src/pages/home/Messages/Message.tsx @@ -18,7 +18,7 @@ import { useSettings } from '@renderer/hooks/useSettings' import { useRuntime } from '@renderer/hooks/useStore' import { EVENT_NAMES, EventEmitter } from '@renderer/services/event' import { Message, Model } from '@renderer/types' -import { firstLetter, removeLeadingEmoji } from '@renderer/utils' +import { firstLetter, removeLeadingEmoji, removeTrailingDoubleSpaces } from '@renderer/utils' import { Alert, Avatar, Divider, Dropdown, Popconfirm, Tooltip } from 'antd' import dayjs from 'dayjs' import { upperFirst } from 'lodash' @@ -54,7 +54,7 @@ const MessageItem: FC = ({ message, index, showMenu, onDeleteMessage }) = const showMetadata = Boolean(message.usage) && !generating const onCopy = useCallback(() => { - navigator.clipboard.writeText(message.content) + navigator.clipboard.writeText(removeTrailingDoubleSpaces(message.content)) window.message.success({ content: t('message.copied'), key: 'copy-message' }) setCopied(true) setTimeout(() => setCopied(false), 2000) diff --git a/src/renderer/src/utils/index.ts b/src/renderer/src/utils/index.ts index a8373097..31bf5a4f 100644 --- a/src/renderer/src/utils/index.ts +++ b/src/renderer/src/utils/index.ts @@ -224,3 +224,8 @@ export function getBriefInfo(text: string, maxLength: number = 50): string { // 截取前面的内容,并在末尾添加 "..." return truncatedText + '...' } + +export function removeTrailingDoubleSpaces(markdown: string): string { + // 使用正则表达式匹配末尾的两个空格,并替换为空字符串 + return markdown.replace(/ {2}$/gm, '') +}