2010-04-01 48 views
0

我們似乎遇到了內容管理系統上的拼寫檢查程序出現問題,它將部分的We’ve標記爲拼寫錯誤。拼寫檢查器使用aspell,這是從執行cmd.exe的服務器上的腳本調用的,並用它將文件傳輸到aspell(我知道這是一種冗長的方式,但我們的服務器端編程語言(ColdFusion)不支持寫入標準輸入可執行文件)。在窗口中使用aspell時出現撇號和其他特殊字符時出現問題

Aspell的是通過執行稱爲:

c:\windows\system32\cmd.exe /c type d:\path_to_file\file.txt | "C:\Program Files\Aspell\bin\aspell" --lang=en -a 

file.txt包含的文本要被例如拼寫^Oh have We’ve(克拉是爲了防止管道問題,我相信)。

安博泰然後輸出:

@(#) International Ispell Version 3.1.20 (but really Aspell 0.50.3) 
* 
* 
* 
& ve 62 12: vie, voe, V, v, veg, vet, Be, Ce, be, Ev, E, e, vex, VA, VI, Va, Vi, vi, we, VD, VF, VG, VJ, VP, VT, Vt, vb, vs, DE, De, Fe, GE, Ge, He, IE, Le, ME, Me, NE, Ne, OE, PE, Re, SE, Se, Te, Xe, he, me, re, ye, Ave, Eve, Ive, ave, eve, VAR, var, veer, vier, view, vow 

但是,我們有一個開發網站,使用相同版本的aspell,當使用相同的文件時,它沒有拼寫錯誤輸出。這兩種服務器在Windows Server 2003上運行安博泰0.50.3,但也有可能是配置中的其他差異:

@(#) International Ispell Version 3.1.20 (but really Aspell 0.50.3) 

我想知道如果這個問題是與過程的管道部分或不同的東西在做Aspell配置。有沒有人有任何想法?

乾杯,

湯姆

回答

0

由於頭部被正確輸出,我猜想,管部分工作,而且我通過查看配置的aspell或測試設置開始 - - 你在開發服務器和生產環境中運行的是完全相同的東西嗎?

我以前見過的問題(不是特別明確地)與聰明的引號,它看起來像一個普通的單引號字符,但實際上它是一個Unicode撇號或關閉引號字符。例如,如果文本是從MS Word或Outlook粘貼的,則可能發生這種情況。如果您在開發服務器上手動輸入字符串,則可能會有不同的字符串。

+0

我已經使用dump config命令檢查了兩臺服務器上的配置,並且它是相同的。引號是使用Unicode字符的智能引號,但檢查的文本是相同的 - 文件被傳送到aspell,所以我可以在兩臺服務器上使用相同的文本文件。 – Loftx 2010-04-05 20:29:42

相關問題