UpdateStar AppCleaner 3
UpdateStar AppCleaner 3 Logo Award
「與其他清理工具相比,它的掃描與清理非常徹底。現在我只用 AppCleaner!」 — Christoph V.

用這款免費軟體清理您的 Windows 電腦。

AppCleaner 3 免費軟體可移除電腦上的陳舊檔案,包括暫存檔、瀏覽記錄、Cookie、網際網路日誌,以及來自 2000 款以上軟體的各式殘留資料——比任何其他清理工具都多。釋放磁碟空間並最佳化整體效能。值得一試! 它能優化電腦效能,而且操作簡單,適合每天使用。

參與貢獻 AppCleaner

為 AppCleaner 新增語言

你可以很輕鬆地替 AppCleaner 新增語言。所有出現在使用者介面中的文字,都定義在以 UTF-8 編碼的文字檔裡。其中有一些組態檔已經內建在 AppCleaner 中。

匯出語言檔

你可以在執行 Cleaner.Win.exe 時帶上 -x 參數,來匯出內建語言檔。這會把內建的語言檔輸出到目前的工作目錄中。

建立新的語言檔

若要在 AppCleaner 中加入另一個語言:

  1. 在 AppCleaner 資料夾底下新增一個名為 Lang 的子資料夾
  2. 將你用 -x 命令列參數匯出的內嵌 en-us.txt 檔案複製一份
  3. 將該檔案重新命名為 xx.txt,其中 xx 是你的目標語言所對應的 ISO 639-1 語言識別碼
  4. 把每一行右側的值替換成你目標語言的翻譯

文字檔大致長這樣:

LanguageName: "English"
Analyze: "&Analyze"
Clean: "&Clean"
OK: "OK"
Cancel: "Cancel"
Back: "Back"
...

檔案格式規則

  • 每一行以關鍵字開頭,並以冒號將關鍵字與文字值分隔
  • 文字值使用雙引號包住,可以跨多行
  • 如果文字值中包含雙引號字元,必須以連續兩個雙引號跳脫
  • 不要翻譯關鍵字
  • 註解以井字號字元 (#) 開頭,一直到該行結束

特殊格式

  • LanguageName:定義語言在選項頁面下拉選單中顯示的名稱。請使用「英文名稱 (母語名稱)」的慣例,例如 "German (Deutsch)"
  • 和號 (&):有些字串包含和號字元,用來定義對應指令的鍵盤快捷鍵字元
  • 佔位符:有些值包含像 {0}{1} 這樣的格式字串。這些會在執行時被計算出的值取代,例如項目數量或檔名。例如「{0} items」在實際顯示時可能是「14 items」

進階翻譯

除了 en-us.txt 裡的字串之外,你可能也會想翻譯 Tasks.conf(如下所述)裡的一些字串。它們包含分頁上的文字(「Cleaner」、「Tools」、「Options」、「Apps」等),以及左側面板中所有核取方塊旁邊的說明。

你可以把任何在 Tasks.conf 中當作 key 使用的字串,放到你的翻譯檔裡(例如用 Options: "Optionen" 來把 Options 分頁的標題改成德文對應)。請參考 de.txt 檔案以取得更多額外翻譯範例。

AppCleaner 會自動載入 Lang 資料夾中所有的 *.txt 檔案,因此你可以立即檢查看看你的語言檔實際呈現效果。

如果你已建立一個語言檔,請寄到 support@updatestar.com 給我們,我們會考慮在下一版 AppCleaner 中將它納入。謝謝!

協助我們為 AppCleaner 新增程式

AppCleaner 允許你新增新的程式,並覆寫內建的定義。清理流程是由一個組態檔所驅動。

存取組態檔

你可以在執行 Cleaner.Win.exe 時帶上 -x 命令列參數,來檢視內建的組態檔。這會在目前的工作目錄產生一個名為 Tasks.conf 的檔案。

  • 若要覆寫內建定義:請修改 Tasks.conf,並將它放在與 Cleaner.Win.exe 相同的資料夾中
  • 若要在內建定義之上新增:請在與 Cleaner.Win.exe 相同的資料夾中建立一個名為 Tasks.add.conf 的檔案

組態階層

AppCleaner 建立在三個具階層的概念之上(由上而下):

  1. 工作區域 (Task Areas):對應到像是「Apps」、「Browsers」、「Registry」這些分頁
  2. 工作群組 (Task Groups):在一個工作區域中,你會有多個群組,例如「Apps」區域中的「Multimedia」群組
  3. 工作 (Tasks):最低層級的組成單位,包含單一程式的定義,例如「Paint.NET」

.conf 檔案格式

.conf 檔案格式是 UTF-8 編碼的文字,其結構類似 JSON。以下是一個範例:

Apps: {
    Applications: {
        .NET Reflector: {
            DetectPattern: "%LocalAppData%Red Gate.NET Reflector 6Reflector.cfg"
            Default: false
            FilePattern: [
                "%LocalAppData%Red Gate.NET Reflector 6Cache***"
                "%LocalAppData%Red Gate.NET Reflector 6Reflector.cfg"
            ]
        }
    }
}

基本型別

  • 物件 (Object):由一組包在大括號中的 key-value 配對組成。key 是字串,可以省略引號;如果 key 中包含冒號,則必須加上引號。各個 key-value 配對以空白分隔
  • 陣列 (Array):由一組包在中括號中的值組成。各值以空白分隔
  • 布林值 (Boolean)truefalse
  • 字串 (String):由雙引號包住的一串字元。如果字串中包含雙引號字元,必須以連續兩個雙引號來編碼

工作定義的鍵值

在上面的範例中,"Apps" 是工作區域,"Applications" 是工作群組,".NET Reflector" 是工作名稱。以下這些 key 可以用來定義一個工作:

DetectPattern
在啟動時被評估,用來決定這個工作是否會顯示在 GUI 中。這個檢測只有在程式安裝於電腦上時才應該有結果。其值是一個檔案樣式,用來識別某些檔案一旦存在,就代表該程式已安裝。樣式可以是 glob,且可以包含像 %LocalAppData% 這類已知資料夾 ID。可以在工作群組層級設定以避免重複。
Detect
與 DetectPattern 類似,但用來識別在程式安裝時必須存在的登錄機碼或數值。登錄機碼與數值以直線符號 (|) 分隔。也可以出現在工作群組層級。
DetectOS
只有在作業系統版本符合指定條件時才顯示該工作。它是一個字串值,包含版本號,前面可以選擇性帶上布林運算子,例如 >。若未指定運算子,預設為 >=。例如 "6.0" 代表 Windows Vista 或更新版本,而 "<6.0" 代表 Windows XP 或更舊版本。
FilePattern
可以是字串值陣列,或是單一字串值。用來決定要刪除哪些檔案。可以使用與 DetectPattern 相同的樣式。
IgnoreFiles
代表要忽略檔案的 glob 樣式。當你想刪除資料夾中的所有檔案,但保留少數幾個檔案時會很有用。可以是單一值或陣列。
RegKey
可以是陣列或單一值。決定要刪除哪些登錄機碼與數值。不支援樣式。登錄機碼與數值以直線符號分隔。
Default
truefalse(若未指定則預設為 false)。決定這個工作預設是否打勾。
Regex
允許你在檔案中取代或刪除內容。其值是一個物件,包含 3 個 key-value 配對:FilePatternReplacement
SQLite
允許你在 SQLite 資料庫中執行查詢。其值是一個物件,包含 2 個 key-value 配對:dbsql

如果你為某個公開應用程式建立了定義並且想要分享,請寄到 support@updatestar.com 給我們,我們會考慮在下一版 AppCleaner 中將它納入。謝謝!