很简单:我需要一种方法将特殊字符(例如花括号、省略号等)转换为其“纯文本”版本,即将 ... 转换为 ...,“转换为”。
这是在 OS X 上,这意味着我不能像在 PC 上那样使用 Microsoft Word 中的宏来执行此操作。
这是纯文本电子邮件,而不是 HTML,这就是我需要这种格式的原因。
答案1
我知道您想在邮件中执行此操作。最好的方法是使用服务菜单项(在我看来)。文字服务可以选择拉直/弯曲引号。
如果您使用的是 Snow Leopard,那么用 python/ruby/applescript 创建自己的服务菜单项来替换任意特殊字符就非常简单了。
编辑:是的,我略过了如何做到这一点,说它“非常简单”,有点不诚实。以下是使用 ruby 脚本执行此操作的方法。;-)
- 打开 Automator
- 创建新的工作流,选择“服务”作为模板
- 选择服务接收所选文本在任何应用程序使用顶部弹出窗口
- 点击下面的复选框:替换选定的文本
- 拖运行 Shell 脚本从左侧窗格进入您的工作流程
- 随着壳幼犬选择/usr/bin/ruby/
- 复制并粘贴以下代码,根据您的需要进行修改
保存!在服务您最喜欢的应用程序的菜单
$KCODE = 'u' require 'jcode' # need the above two lines for ruby <1.9.1 # to make str.tr and str.gsub unicode aware # grab the selected text! theText = STDIN.gets(nil) # str.tr replaces single characters theText = theText.tr('“”','"') theText = theText.tr("‘’","'") # need to use str.gsub: replacement is > replaced characters theText = theText.gsub("…","...") theText = theText.gsub("—","--") # add more replacements as desired . . . STDOUT << theText # replace da text!
答案2
简单的点击方式——Bare Bones Software 有一款名为“TextWrangler”的免费文本编辑器,其中内置有“转换为 ASCII”命令。您甚至可以自动执行此操作:http://discussions.apple.com/thread.jspa?threadID=890344
如果您需要,该应用程序还具有正则表达式搜索和替换功能。
答案3
http://www.mbayer.de/html2text/
可能就是你想要的。
对于 OS X,有一个 macports 端口,如果你有 macports,请使用
sudo port install html2text
答案4
我已经用自动机工作流程:
- 使用“从 Word 文档获取选定内容”操作并将该输出传递给...
- “运行 Shell 脚本”来使用
sed -e 's/“/"/g; s/”/"/g; s/…/.../g; ' -e "s/’/'/g"
并将该输出传递给... - “复制到剪贴板”操作
将此脚本保存在 ~/Documents/Microsoft User Data/Word Script Menu Items/ 下,它将出现在 Word 的脚本菜单中。
只需选择要发送的文本,运行脚本,然后将清理后的文本粘贴到电子邮件中即可。