Skip to content

CopyTxMate

repo link:https://github.com/catwithtudou/CopyTxMate

一个优雅的 macOS 文本格式化工具,专注于优化中英文混排文本的格式和标点符号。

支持自动监听剪贴板,实现复制即格式化的便捷体验。

🥹治疗我的强迫症,特别是对日常对 PDF 复制出来的内容。

主要功能

目前格式化的处理模式支持以下方式:

  • 自动格式化:监听剪贴板内容,复制粘贴时自动格式化
  • 手动格式化:将需要格式化的文本进行复制或手动粘贴到输入框
  • 提供测试模式:来提前查看目前工具格式化的覆盖情况

目前格式化的处理有以下(后续可根据诉求持续完善添加):

  1. 智能标点转换 - 根据上下文自动判断使用全角或半角标点 - 保持标点符号使用的一致性 - 智能处理括号的配对转换

  2. 中英文混排优化 - 在中英文之间添加适当的空格 - 保持专有名词的完整性 - 智能识别中英文环境

  3. 空格处理优化 - 自动处理多余的空格 - 移除中文之间不必要的空格 - 保持英文单词间的空格 - 智能处理换行导致的空格问题

使用方法

  1. 自动格式化模式(推荐) - 点击"开启自动格式化"或使用快捷键 Command+A - 之后直接复制需要处理的文本 - 粘贴时将自动得到格式化后的内容 - 无需任何额外操作,复制即完成格式化

  2. 手动格式化模式 - 将需要格式化的文本粘贴到输入框 - 点击"格式化"按钮或使用 Command+F - 复制格式化后的文本

  3. 快捷键 - Command+A:开启/关闭自动格式化(推荐使用) - Command+F:手动格式化文本 - Command+V:复制格式化结果 - Command+T:运行测试用例

安装说明

  1. 下载 CopyTxMate.dmg
  2. 双击打开 DMG 文件
  3. 将应用程序拖拽到 Applications 文件夹
  4. 在 Applications 文件夹中双击运行应用

首次运行说明

由于应用未上架 Mac App Store,首次运行时可能会提示安全警告:

  1. 如果提示"无法打开",请前往"系统偏好设置 > 安全性与隐私"
  2. 点击"仍要打开"
  3. 允许应用访问剪贴板(首次运行时会请求权限)

系统要求

  • macOS 12.0 或更高版本

技术实现

技术栈

  • SwiftUI
  • AppKit 集成
  • Foundation

核心实现

  1. 文本处理引擎 - 使用正则表达式进行文本匹配和替换 - 实现智能的上下文分析 - 优化的性能和内存管理 - 缓存常用的正则表达式模式

  2. 用户界面 - 使用 SwiftUI 构建现代化界面 - 集成 NSTextView 实现原生文本编辑体验 - 优化的 UI 响应和反馈

  3. 系统集成 - 安全的剪贴板监听和处理 - 高效的进程间通信 - 优化的内存使用

项目结构

Text Only
CopyTxMate/
├── Views/
│ └── MainView.swift          # 主界面视图
├── Models/
│ └── ClipboardManager.swift  # 剪贴板管理
├── Services/
│ └── TextFormattingService.swift  # 文本格式化服务
└── CopyTxMateApp.swift       # 应用入口

开发环境

  • macOS 12.0 或更高版本
  • Xcode 15.0 或更高版本
  • Swift 5.9

性能优化

  1. 内存管理 - 使用 autoreleasepool 优化内存使用 - 缓存常用的正则表达式 - 优化字符串操作

  2. 处理效率 - 优化的剪贴板监听机制 - 高效的文本处理算法 - 减少不必要的操作

  3. 用户体验 - 流畅的界面响应 - 及时的操作反馈 - 可靠的功能表现

后续优化方向

  1. 支持更多的文本格式化规则
  2. 添加自定义规则配置
  3. 优化性能和内存使用
  4. 添加更多的测试用例
  5. 支持更多的文本处理场景