5. 把 Word 打造成英语学习利器

  1. MS Word 2007 的 “鼠标取词” 功能
  2. MS Word 2007 的 “词典面板”
  3. MS Word 2007 的 “同近义辞典”(Thesaurus)
  4. MS Word 2007 的 “英语助手”
  5. 为 MS Word 2007 设置单词朗读功能
  6. 用 Word 2007 为自己定制阅读文章词汇列表
  7. 附录:我的常用宏代码

在结绳记事的年代,人类还跟其它动物其实没有太大差异,只有文字出现之后,人类才开始拥有可(跨代)传播、可修正、可积累的所谓 “知识”。所以,书 写工具对人类来实在是太重要。毛笔、鹅毛笔、铅笔、钢笔、圆珠笔 …… 直到今天的各种各样的输入法以及字处理软件(MS Word 就是其中的一种),书写工具的每一次变革都伴随着人类巨大的进步。 对中国学生来说,MS Word 不仅仅是 “字处理工具”,更是一个非常强大的学习利器。

5.1 MS Word 2007 的 “鼠标取词” 功能

MS Word 从 2007 版本开始内嵌了 “鼠标取词” 功能。其所采用的词典是权威的《美国传统词典》的英汉版本,释义详实,例句丰富。“默认安装” 的情况下,鼠 标取词功能并未设置为开启状态,需要用户手动开启 —— 在鼠标右键的快捷菜单中选择 “翻译”,而后选定 “中文(中国)”:

此后,只要将鼠标移至某个英文单词上停留,就会看到该英文单词的中文解释:

5.2 MS Word 2007 的 “词典面板”

在默认情况下,MS Word 有一个快捷键:“Alt + Left Mouse”:先按住 Alt 键,然后在任何一个英文单词上点击鼠标左键,MS Word 的侧边栏里就会显示这个单词的检索结果(这也相当于在该英文单词上点击鼠标右键,而后在快捷菜单中选择 “翻译”->“翻译”):

如果用户安装的是 MS Office 中文版,那就可能需要设置一下才可以在文档中通过鼠标左键双击自动选中整个英文单词(“Word 选项”->“高级”->“选定时自动选定整个单词(W)”):

这个词典是英汉、汉英双向的。在文档中选定一个中文词汇,而后在选中的区域使用 “Alt + Left Mouse” 快捷键,右侧就将显示该中文词汇的英文释义。

5.3 MS Word 2007 的 “同近义辞典”(Thesaurus)

在任一英文单词上点击鼠标右键,都可以看到一个 “同义词” 快捷菜单。可以通过选中菜单子项而将文档中的词换为该同义词:

如果想看到更加完整的 “同近义词辞典” 内容,则要在光标移动到某个单词所在的位置之后,按下快捷键 “Shift + F7”;随后就可以在右侧边栏中看到 “同近义词辞典” 的详细内容。 而 MS Word 中还有一个用起来非常方便的 “同近义词查询对话框”,但由于默认情况下没有为它设置相应的呼出快捷键,所以很多用户根本就没有见过它:

为 “同近义词查询对话框” 添加快捷键的方法如下:

  • “Word 选项”->“自定义”->“键盘快捷方式自定义”;
  • 在 “自定义键盘” 对话框中选定:“指定命令”->“类别(C):” 中选择 “所有命令”
  • 在 “命令(O)” 中选择 ToolsThesaurus,
  • 在 “请按快捷键(N)” 之下的输入框里点一下鼠标左键,然后同时按下 “Ctrl+Shift+F7”,而后点击左下角的 “指定” 按钮,而后关闭该对话框。(当然,读者可以根据自己的喜好选择快捷键的组合方式……)

5.4 MS Word 2007 的 “英语助手”

事实上,读者可能早就注意到右侧边栏的词典工具中最好的应该是 “英语助手”(而非 “翻译” 命令所呼出的 “双语词典”)。“英语助手” 包括几乎所有的 好东西:“中文释义”(相当于英汉词典)、“英文释义”(相当于英英词典)、“常用搭配”(相当于搭配辞典)和 “同义词”(相当于 Thesaurus)。 如何才能直接呼出 “英语助手” 呢?

其实很简单,方法与上文中 “为同近义词查询对话框添加快捷键” 是一样的。只不过,这次要为 “EngWritingAssistant” 命令添加快捷键。我一般习惯于使用 “Alt+X” 这个在 MS Word 尚未被定义的键盘组合。

另,MS Word 中的这个 “英语助手”,是必须联网才能使用的,因为它实际上是在查询微软的服务器之后再返回查询结果。服务查询地址是:

有编程能力的读者,不妨看看其中的 “Basci Query Option”……

有些人的计算机上的 Office 可能并未安装 “英语助手” 服务,需要用户自己手动添加。在文档任意处 “Alt+鼠标右键” 呼出右侧的工具框,而后点击工具框底部的 “信息检索选项”:

点击左下角的 “添加服务(A)” 按钮,得到以下对话框:

而后在底部 “地址(A)” 之后的文字输入框里输入:“http://office.microsoft.com/Research/query.asmx”而后按“添加”按钮:

点击这个对话框里的 “安装(I)” 按钮即可。

5.5 为 MS Word 2007 设置单词朗读功能

这一步稍微复杂一点,因为要为 Word 添加宏代码。 在 Word 程序中,先关闭所有文档,之后按快捷键 “Alt+F11” 呼出 VBA 编辑器。 从菜单 “工具(T)” 中选择 “引用(R)”,在随之跳出的对话框中选中 “Microsoft Speech Object Library”,而后在之前的复选框里打勾:

之后再 VBA 编辑器的左侧 “工程” 面板里鼠标双击选定 “Normal – Microsoft Word 对象-ThisDocument”,程序主面板里输入以下 VBA 代码:

Sub SpeakText() 
    On Error Resume Next 
    Set speech = New SpVoice 
    Selection.MoveLeft Unit:=wdWord, Count:=1 
    Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend 
    If Len(Selection.Text) > 1 Then
        speech.Speak Trim(Selection.Text), SVSFlagsAsync + SVSFPurgeBeforeSpeak 
    End If 
    Selection.MoveRight Unit:=wdWord, Count:=1 
    Do 
        DoEvents 
    Loop Until speech.WaitUntilDone(10) 
    Set speech = Nothing 
End Sub 

按快捷键 “CTRL+S” 保存之后关闭 VBA 编辑器。而后,就可以为这个宏设置快捷键了 —— 我个人选择是 “CTRL+SHIFT+S”。

其实,为 Word 编写宏代码非常简单,VBA 的程序代码也比较易读。在当前文档最后的部分,我附加上了我自己最常用的宏代码。

5.6 用 Word 2007 为自己定制阅读文章词汇列表

MS Word 还有个很好的功能:“选择格式相似的文本(S)”。这样的话,就可以在阅读一篇英文文章的时候,顺手把生词都标记出来,而后可以通过 “选择格式相似的文本(S)” 把那些已经做了记号的文本单独拷贝出来。

选择之后,按 “Ctrl+C”:

而后,再找个地方 “Ctrl+V”,就可以得到以下的列表:

  • neonatal
  • burgeoning
  • endoscopic
  • snaking
  • gallbladders
  • jabbed
  • sales pitch
  • laparoscopic
  • lickety-split

用之前讲过的同样的方式,也可以为 “选择格式相似的文本(S)” 这个命令设置快捷键 —— 这个功能的命令名称是 “SelectSimilarFormatting”;我一般设定为 “Alt+S”。

在阅读的过程中使用什么格式为文本做标记呢?“加重” 和 “倾斜” 可能并不是好的选择,因为文本中原本就可能有一些这样格式的文字;加高亮底色也不是 好的选择,不知道为什么 Word 的 “选择格式相似的文本(S)” 竟然不支持这种格式。我一般使用 “双下划线”。就象上面的图示里能看到的那样。这次不用自 定义,因为双下划线有 Word 默认设置好的快捷键 “Ctrl+Shift+D”。 去掉所有记号的方法是,在某一个标记了 “双下划线” 的单词上点一下鼠标左键,然后,按刚刚设置好的快捷键 “Alt+S”,而后再按 “Ctrl+Shift+D” 就可以了。

5.7 附录

以下是我个人常用的宏的代码:

'要使用该宏,需事先安装Merriam-Webster Collegiate Dictionary 
Sub LookUpMerriamWebsterDictionary() 
'MWDictionary Macro 
     Selection.MoveLeft Unit:=wdWord, Count:=1 
     Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend 
     Selection.Copy 
     Selection.MoveRight Unit:=wdWord, Count:=1 
     If Tasks.Exists("Merriam-Webster") = True Then 
        With Tasks("Merriam-Webster") 
            .Activate 
            .WindowState = wdWindowStateNormal 
        End With 
         SendKeys "%ep{ENTER}", 1 
     Else 
        Response = MsgBox("Task Merriam-Webster doesn't exist! Run the application before use this Macro, please.", vbExclamation, "WARNING!") 
    End If 
End Sub 
Sub SpeakTheWord() 
    On Error Resume Next 
    Set speech = New SpVoice 
    Selection.MoveLeft Unit:=wdWord, Count:=1 
    Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend 
    If Len(Selection.Text) > 1 Then 'speak selection 
        speech.Speak Trim(Selection.Text), _ 
        SVSFlagsAsync + SVSFPurgeBeforeSpeak 
    End If 
    Selection.MoveRight Unit:=wdWord, Count:=1 
    Do 
        DoEvents 
    Loop Until speech.WaitUntilDone(10) 
    Set speech = Nothing 
End Sub 
' 为选中的文本加上双引号 
Sub AddDoubleQuotationMarks() 
    Selection.InsertBefore ("“") 
    Selection.InsertAfter ("”") 
    Selection.MoveRight Unit:=wdWord, Count:=1 
End Sub 
' 指定选中文本的字体 
Sub ChangeFontNameTo() 
    Selection.Font.Name = "Georgia" 
End Sub 
' 指定选中文本的字号大小 
Sub ChangeFontSizeTo() 
    Selection.Font.Size = 28 
End Sub 
' 将选中文本的字号放大 
Sub FontSizeGrow() 
    Selection.Font.Grow 
End Sub 
' 将选中文本的字号缩小 
Sub FontSizeShrink() 
    Selection.Font.Shrink 
End Sub 
' 将双标所在的词汇首字母变成大写 
Sub FirstLetterToUppercase() 
    Selection.MoveLeft Unit:=wdWord, Count:=1 
    Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend 
    Selection.Text = UCase(Selection.Text) 
    Selection.MoveRight Unit:=wdWord, Count:=1 
End Sub