DevLog:2025年9月3日

1、参考Xcode的建议和Cursor的解释,对项目进行了死代码剥离(Dead Code Stripping),Cursor称这是一个编译优化功能,可以移除未使用的代码和数据,减小最终应用程序的大小,提高应用程序的加载性能,并且这是一个安全的优化
2、继续调整细节,比如将备忘录中的“笔记”替换为“备忘录”,和应用中备忘录模块名字保持一致,搜索界面按钮的顺序调整和文字修改,删除NotesListView也就是备忘录列表中未被使用的搜索功能,等等,让代码更干净一些
3、继续想办法解决从NoteWith还是手机应用时就一直存在的老大难问题:备忘录,询问了Cursor,有没有一些比较好用的Markdown编辑器,可以替换掉目前正在使用的NSTextView,Cursor给我推荐了SwiftUI Markdown、MarkdownUI、AttributedString+Markdown解析、以及MarkdownEditor、RichTextEditor两个第三方开源组件、和WebView+JavaScript方案
4、选择了第一个方案,但Cursor建议将现有的单视图编辑器改为双视图模式,即将编辑和预览分开,在编辑时可以实时更新预览,再具体一些,它推荐内联预览模式,可以同时看到编辑和预览,上面是编辑区域,下面是预览区域,可以展开/收起、可以拖拽调整高度,先试试看
5、修改过程中发现编辑区域已经显示了渲染效果,但预览区域显示的是未渲染的效果,这是因为之前创建的WYSIWYGMarkdownEditor是一个所见即所得编辑器,在编辑时就已经渲染了Markdown,按照Cursor的建议替换成了TextEditor
6、测试发现预览界面依然存在一些Markdown语法标记,可能是因为MarkdownRenderer不够完善,于是让Cursor修改,之后又是漫长的修正MarkdownRenderer的过程,因为Cursor在修改过程中认为之前的MarkdownRender太过复杂,于是删掉、重新创建了一个
7、目前应用内包含了两个Markdown渲染器,一个是AI对话使用的MarkdownWithCodeBlocksView,一个是备忘录使用的MarkdownRenderer