《簡繁大師》使用者指南

附錄 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 檔案)。它們都是二進位檔案,簡繁大師在進行資料夾轉換時,會將他們複製到目的資料夾下的相應位置,而不會對它們進行轉換。