《简繁大师》用户指南

附录 2. 词汇修正引擎定制攻略 目录
 

附录

 

附录 3. 命令行指南(《简繁大师》标准版专属功能)


 

版本

* 命令行功能是《简繁大师》标准版的专属功能(仅在标准版中提供,其他版本《简繁大师》无此功能)

* 所有标准版用户均可使用标准命令行功能(单进程命令行功能)

* 极高端客户可以预订多进程命令行功能

 

适用客户群

* 有动态转换需求的开发级高端用户 - 开发人员、网站站长、熟悉命令行操作的电脑玩家

 

特色功能

* 您可以动态指定/切换简繁转换包

* 可以实现文件、文件夹的全系列转码:简体(GBK、UTF-8、Unicode、Unicode BE)和繁体(Big5、GBK、UTF-8、Unicode、Unicode BE)的任意组合之间的互转,共 9*8=72 种转换

* 熟悉命令行操作的普通用户也可以参照本指南和以下提供的样本批处理文件,将多行命令做成一个自定义批处理文件,它就是一个全自定义批量转换包

* 如您使用本公司原厂出品的《Anasoft Scheduler PE 精致个人计划管理器》,还可以定时执行命令行操作

 

版本时间及试用版、示例文件下载

 

试用版下载:http://www.speedy7.com/cn/stguru/download/stdstp_s.exe

示例文件及批处理文件下载(说明见 A3.3 示例包):http://www.speedy7.com/cn/stguru/download/test.zip

 

A3.1 简介

   1) 实施前提要求
   2) 命令的种类(控制命令、转换命令、命令队列)

   3) 状态反馈

   4) 大小写

   5) 命令 ID 与命令的取消

   6) 试用版和完全版

   7) 命令行选项页

A3.2 命令详解
   1) 立即执行的控制命令(不参与命令队列中排队)
   2) 加入队列执行的控制命令

   3) 文件、目录转换命令

A3.3 示例包
 

A3.1 简介
 

1) 实施前提要求

 

执行命令行操作之前,必须先设置《简繁大师》满足以下前提条件:

 

要求 1:您必须将《简繁大师》设置为单例程执行

设置一次即可,不必每次重复设置。如果您不使用命令行功能,可以按同样方式取消单例程模式:

运行《简繁大师》,在“选项”对话框中根据相关提示进行设置:“工具”(菜单)->“选项”(对话框)->“命令行”(选项页)。

 

如果您既想经常性使用命令行功能,又想用《简繁大师》方便地打开多个文档进行工作,您可以同时安装《简繁大师》标准版和《简繁大师》繁体中文版。购买标准许可的用户,自动同时获得标准版和繁体中文版的使用权。而繁体中文版不受单例程模式的限制;它有简、繁、英三语界面,使用时并不会有语言上的困难。

 

要求 2:在系统中注册《简繁大师》产品包文件夹路径

同样只需要设置一次,方法同上。

如您无权限进行此设置,您可以使用《简繁大师》的完全路径执行命令行命令

 

要求 3:注意不要在《简繁大师》启动过程中发送命令行命令

《简繁大师》可以带参数启动,不过它有 0.5 秒左右的启动时间,在此时间内不能保证接收响应所有命令行命令。外部程序向简繁大师发送命令行命令时,请注意绕开此短暂的启动时间。

 

2) 命令的种类(控制命令、转换命令、命令队列)

 

命令行以 playplay 为标记开始,分两种

a)控制命令,以 set 开头,执行控制指令

b)转换命令,以 convert 开头,包括文件转换(file)和目录转换(directory

除少数控制命令(目前共 4 条:set cancel, set halt, set continueset ProgressReportPath)外,大多数命令发出后,加入命令队列,顺序执行。您可以为每一条加入队列的命令指定一个“ID”,以后可以用它删除/取消此命令。如果您没加,系统也会指定一个 ID。

 

3) 状态反馈

 

a) 日志路径为:{产品包目录}\PlayPlayLog\yyyy-mm.log

如:C:\Program Files\Anasoft\STGuru Standard Edition (Trial Version)\PlayPlayLog\2009-01.log

b) 进度文件中指示的信息有:(1)当前任务队列中的任务总数和任务列表,包括每一任务的 ID 和命令语句本身,(2)当前任务的百分进度

进度文件的默认路径为:{产品包目录}\PlayPlayLog\progress.log

如:C:\Program Files\Anasoft\STGuru Standard Edition (Trial Version)\PlayPlayLog\progress.log

不过您也可以通过命令 set ProgressReportPath 指定进度文件路径。

 

4) 大小写

 

命令 ID {CommandID} 区分大小写,除此以外,所以参数均不区分大小写

 

5) 命令 ID 与命令的取消

 

所有命令都可以加一个 CommandID,格式见下例。
{ProductExe} playplay {[ID="{CommandID}"]} set singleinstance {nSet}
示例
STGurud playplay [ID="SetSingle"] set singleinstance 1
这里 "{CommandID}" = "SetSingle"
{CommandID}区分大小写,它的主要用处是您可以用这个 ID 取消/删除正在执行或待执行的命令。

 

如果您未设置命令 ID,系统会为您设置 ID,默认 ID 为 Command ID

如果 ID 已存在,系统会为新加入的 ID 加入一个序号,如 Command ID (1),或 Command ID (2)

 

命令 ID 可以在进度文件(见上面 3)中查到。

 

您可以通过 set cancel 命令取消当前命令或所有命令。

 

6) 试用版和完全版

 

目前的试用版和完全版均为单进程。即您只能一个任务接一个任务执行,任务可以通过队列排队,但不能并发执行。

 

所有许可均只限于客户自己使用,严格禁止用于为第三方提供免费或收费服务,或用于开发同类产品或模块

 

试用版(单进程)

 

可从此下载试用版:

 

http://www.speedy7.com/cn/stguru/download/stdstp_s.exe

 

可试用 30 天,试用期内允许转换的单个文件最大为 40 KB;转换目录时一个目录下允许的的文件数最多为 40 个。

试用版执行程序文件名为 STGurud.exe(即下文命令中的 {ProductExe} 取值为 STGurud)。

 

完全版(单进程)

 

1)无上述时间、字数、文件数限制

2)完全版的许可就是《简繁大师标准版》的许可,价格说明见此。完全版是单机许可,一份许可只能在一台指定电脑上使用(需激活),3 年免费升级。

完全版执行程序文件名为 STGuru.exe(即下文命令中的 {ProductExe} 取值为 STGuru)。

 

关于多进程完全版

 

我们目前并无开发多进程完全版的明确计划,如您有需要,可以预订,大致计划如下:

1)10 进程许可:最多可以在您的该台指定电脑上同时起 10 个完全版,分路执行,单机使用,5 年免费升级,8 年使用期,价格预计人民币 10000 元(约$1599)。

2)50 进程许可:最多可以在您的该台指定电脑上同时起 50 个完全版,分路执行,单机使用,5 年免费升级,8 年使用期,价格预计人民币 30000 元(约$4800)。

 

系统要求:

10 进程许可:至少需要有 4 核电脑,最好 8 核,否则 10 进程许可没必要。

50 进程许可:至少需要有 8 核电脑,越多越好,否则 50 进程许可没必要。

 

预订多进程完全版:

需要 50% 预付,开发周期约 1-2 个月。

 

7) 命令行选项页

 

《简繁大师》选项对话框中,有一个“命令行”选项页,您可以在其中修订:

 

* 《简繁大师》以单进程运行(设置/取消)

* 将《简繁大师》产品目录加入 Windows 搜索路径(设置/取消)

* 设置进度报告文件路径,如您将路径清空,将不提供进度反馈。另外,您可以重置,这时将采用软件默认的路径。

 

由于命令行功能仅在《简繁大师》标准版中提供,有些选项仅在标准版下才可设置。

 

A3.2 命令详解

 

1) 立即执行的控制命令(不参与命令队列中排队)
 

set cancel 取消命令


此命令可取消当前命令或队列中的所有命令。

 

语法 (nSet=1 为设置,nSet=0 为取消)
{ProductExe} playplay set cancel 0
{ProductExe} playplay set cancel all
{ProductExe} playplay set cancel "{CommandID}"
如 cancel 后为 0,则取消/删除正在执行的命令。
如 cancel 后为 all,则取消/删除所有命令。
如 cancel 后为一个 ID 名,则取消/删除 ID 为该值的命令。
 

示例
STGurud playplay set cancel "SetSingle"
将取消/删除 ID 为 "SetSingle"的命令。


set halt / set continue 命令的暂停与继续
 

这两个命令可用于暂停/继续执行命令行命令。

 

暂停
语法
{ProductExe} playplay set halt
 

继续
语法
{ProductExe} playplay set continue
 

示例
STGurud playplay set halt
STGurud playplay set continue
 

set ProgressReportPath 设置进度报告文件路径


该命令用于设置进度报告文件的路径。因为进度报告写入频繁,如您担心会影响硬盘,可改变路径,或让程序不写进度报告。

 

语法
{ProductExe} playplay {[ID="{CommandID}"]} set ProgressReportPath {ProgressReportPath}
 

示例
STGurud playplay set ProgressReportPath
STGurud playplay set ProgressReportPath ""
以上二者指清空,不记录进度
STGurud playplay set ProgressReportPath reset
以上指采用系统默认路径,默认路径位于:{Product Folder}\PlayPlayLog\Progress.log
STGurud playplay set ProgressReportPath "c:\temp\progress.txt"
设置路径为 "c:\temp\progress.txt"
 

2) 加入队列执行的控制命令
 

set singleinstance 设置/取消单进程


《简繁大师》必须处于单进程执行(即只能打开一个《简繁大师》进程)状态时,才可正常执行命令行操作。所以如果您需要执行命令行操作,请先设置其按单进程执行。如您不需要使用命令行操作,可取消单进程执行状态。

 

语法 (nSet=1 为设置,nSet=0 为取消)
{ProductExe} playplay {[ID="{CommandID}"]} set singleinstance {nSet}
 

示例
STGurud playplay set singleinstance 1
STGurud playplay set singleinstance 0
STGurud playplay [ID="SetSingle"] set singleinstance 1

set pack 设置转换包
 

该命令用于设置当前转换包。

 

语法
{ProductExe} playplay {[ID="{CommandID}"]} set pack {Pack Path}
 

示例
STGurud playplay set pack C:\conversion\stcp\international\Sony\VAIO\VAIO.stcp
STGurud playplay set pack C:\conversion\stcp\local\anasoft\anasoftstudio.stcp
 

3) 文件、目录转换命令

 

convert file / convert directory 转换文件、目录
 

这两个命令用于转换一个文件或一个目录。转换方向共有 9x8 组,即在(GBK-简、UTF8-简、Unicode-简、Unicode BE-简、GBK-繁、Big5-繁、UTF8-繁、Unicode-繁、Unicode BE-繁)间任意转码。可以设置不能转入源地址从而保护源文件;在转换目录时,也可以设置复制非文本文件及转换子目录下的所有文件。软件可自动识别文本文件,如您的目录下有文本文件和非文本文件,软件将只转换文本文件,而不转换非文本文件(可以选择复制非文本文件到目标目录下的相同位置)。

 

语法
{文件转换}
{ProductExe} playplay convert file[{Switches},{SourceCode}-{SourceLan,{TargetCode}-{TargetLan] s="{SourcePath}" d="{TargetPath}"
{目录转换}
{ProductExe} playplay convert directory[{Switches},{SourceCode}-{SourceLan,{TargetCode}-{TargetLan] s="{SourcePath}" d="{TargetPath}"
 

注释
{Switches}
共有 3 个,n/s/c,说明见下,s 和 c 只用于目录转换。使用时,有一个写一个。如果一个都没有则可空着。如果有多个,则直接连写,如 nsc,连写顺序不限。
n:转换结果另存为新文件/网页,设置它时,源文件路径和目标文件路径不能相同,否则不能转换
s:包含子目录(本开关仅适用于目录转换)
c:复制非文本文件到新站点(本开关仅适用于目录转换)
 

{SourceCode}/{TargetCode}:
GBK, Big5, Unicode, Unicode BE, UTF8
{SourceLan}/{TargetLan}:
s:简体中文
t:繁体中文
说明:
1)注意这里 UTF8 的写法是 UTF8,而非 UTF-8。
2)没有 Big5-s 这种组合,其他 Code 和 Lan 可以任意组合
3){SourceCode}-{SourceLan} 和 {TargetCode}-{TargetLan] 不能相同。如果相同,将跳过,不会转换。
4)如果出现其他转换条件不符的情况,也会跳过,如文件路径不合法、目标路径中已有内容等。
 

示例
STGurud.exe playplay convert file[n,gbk-s,big5-t] s="C:\test\files\gbk_s\readme.txt" t="C:\test\files\big5_t\readme.txt"
STGurud.exe playplay convert file[n,big5-t,gbk-s] s="C:\test\files\big5_t\readme.txt" t="C:\test\files\gbk_s\readme.txt"
STGurud.exe playplay convert directory[nsc,utf8-s,utf8-t] s="C:\test\directories\utf8_s" t="C:\test\directories\utf8_t"


A3.3 示例包

 

下载

为了便于您测试,我们做了一个示例包,下载地址为:http://www.speedy7.com/cn/stguru/download/test.zip

 

解压

您下载完成后,将其在 c:\ 根目录解压。

 

解压后一级子目录是:

 

c:\test

 

其下有 4 个二级子目录:

 

C:\test\files

C:\test\directories

C:\test\directories_s

C:\test\directories_ss


如您多出一层 test 目录,可以自行调整一下。

 

说明

前期准备

执行此批处理文件之前,您必须

a) 在系统中注册《简繁大师》产品包目录(具体方法请参实施前提要求),

b) 您必须将《简繁大师》设置为单进程执行(具体方法请参实施前提要求),

c) 建议先完全启动《简繁大师》,再执行批处理程序。《简繁大师》可以带参数启动,不过它有 0.5 秒左右的启动时间,在此时间内不能保证接收响应所有命令行命令。外部程序向简繁大师发送命令行命令时,请注意绕开此短暂的启动时间。

 

批处理文件解说

1)4 个目录中都各自有一个以 stgurud_ 开头的 .bat 文件和一个以 stguru_ 开头的 .bat 文件。前者是供试用版测试用的批处理文件,后者是供完全版测试用的批处理文件。

2) 每个批处理文件中的命令分为三段。前两段各为一行,分别用于启动《简繁大师》和延时 1 秒让软件可以完全启动,第三段为一组正常命令行命令。如果《简繁大师》已经正常启动,则前两段可以略去,当然如果您不在乎每次等待 1 秒延时时间,也可以保留。

第 1 段:启动《简繁大师》,可以附带执行一条命令行命令。采用 start 命令启动软件。针对试用版的该 start 命令在启动《简繁大师》的同时,也附带向《简繁大师》发出了第一条命令行命令。

第 2 段:延时 1 秒。执行 ping 命令本身并无特别意义,唯一的作用就是可以在执行后续命令行命令之前,预留出 1 秒钟,让《简繁大师》有时间完全启动。ping 命令只有在网络连通情况下才能执行。

第 3 段:正常命令行命令。

 

files

3) 在一级子目录 files 下有一个 gbk_s 子目录,其中有一个 GBK 简体中文文本文件。批处理命令将把这个文件转换成另外 8 种编码。分别放在新生成的 8 个子目录下。

 

directories、directories_s 和 directories_ss

4) 这三个目录下的文件用于测试目录转码。它们的区别仅仅在于目录下的文件数量不同。在 directories 目录下的待转换文件有 30 多个,directories_s 目录下只有一半左右,而 directories_ss 下只有不到 10 个文件。

5) 待转换的源码是 UTF8 简体。另外,测试目录下还有 GBK 简体和 Word 文件。当设置按 UTF8 简体转出(源码 = utf8-s)时,只有源码确实为 UTF8 简体的源文件可以正确转换,如源码为其他码(目录下提供的“错误”源码是 GBK 简体),则会转错,而如果源文件为二进制文件(bin 子目录下有一些 MS Word 文件,它们都是二进制文件),将被复制到目标目录下的相应位置。这几个目录下就有一些编码“不符要求”的文件和二进制文件,测试包提供这些编码“不正确”的文件,目的仅仅是供用户测试编码“不对”和格式为二进制文件时,会出现什么结果。

这三个目录下都有一个 utf8_s 子目录,而在 utf8_s 之下,又有另外 3 个子目录:

proper_code_utf8_s

只有这个目录下的文件格式是“正确”的(它们确实是 UTF8 简体文件),因而可以正确转换。该目录下又包含了一个 word_files_useful_only_in_utf8 子目录,该子目录下的文件是 XML 格式的 Microsoft Word 文件。仅当这些文件被转换成 UTF-8 简体和 UTF-8 繁体时,Microsoft Word 才能识别它们。

wrong_code

这一目录下有一个子目录,叫 gbk_s,其中的文件格式为 GBK 简体中文,由于它们的格式“不正确”,被当作 UTF-8 简体时转换出的结果也可想而知。

binary_files

该目录下有一些真正的 Word 文件(doc 文件)。它们都是二进制文件,简繁大师在进行文件夹转换时,会将他们复制到目标目录下的相应位置,而不会对它们进行转换。