論 Package 翻譯,套件與軟體包

過去翻譯前輩常將 package 譯為「套件」,一開始我是直接沿用而毫無思考,但後來各個因素才讓我從而重新思考這個英文詞語。

正文

什麼是套件?首先我們來看套件一詞在日常生活中的用法:1. 螺絲套件 2. 玩具組裝套件 3. 熱感應套件 4. 智慧駕駛輔助套件 5. 空氣動力套件。究其根本,套件的意思就是:「一套的組件」,更清楚的說,就是「可組裝以構成某部件 (或某功能) 所需之成套零組件」。

那麼 Linux 系統中常見的 package 又是什麼?其實它就是 software package,本質上就是將許多軟體整理成的包裹。舉例來說,過去 gnome-packagekit 採用 package 來指稱軟體包;目前 gnome-packagekit 新版,則為與其他 GNOME 軟體一致採更通用的名稱,而將介面中的所有 package 字眼改為 software,更顯示出 package 提供的本質就是為了安裝 software 而存在的。甚者,各種格式的 package 其實本身是種封存檔,可以透過解壓縮軟體抽出內部檔案,這也就是 package 的包裝特質。

在軟體管理中,package 與 repository 兩者是同等重要的詞語,前者儲藏於後者中。我們通常連線至 repository 取得 package 後,在本地端解開 package 並安裝到系統中。其實兩者間的概念就是倉庫 (repository) 與包裹 (package) 的關係,英文描述中已經將此兩者的概念明顯內含在其中,讀者只要瞭解日常生活中的實際情況,就能馬上明瞭它們之間的關係。
 
我們日常口中所說的套件,指的是一套構成某物的組件;而 package,則是將東西打成一包後所見的一整個封存體。以日常生活為例,例如從賣場買回的椅子組裝箱中,箱子中會有多組套件,像是椅墊、滾輪、氣壓棒、螺絲等,而各組套件獨立裝包,這些套件再被一個大箱封住,這就是套件、套件包與總包裹間的關係。

那麼生活中有人在說套件庫嗎?這麼一想,存放套件的地方其實是套件箱,是一種可以收納並整理各種形式套件的箱子 (或盒子),例如植牙時我們常會使用這種箱子來準備各種情況下所需要的植體零組件,並從中挑選出我們此次情況所需要的某部份構成元件。一個套件箱中所提供的套件,通常都是可組成型態類似,但實際用途有所差異的構造,例如組裝出不同寬度的插鍵,不同高度的螺絲等;因此你只要準備一個套件箱,就能應付不同狀況的使用。從這個角度來看,我們甚至可以說套件箱是種包裹,或許姑且稱之為套件包吧! 但如果真的是想講套件「庫」呢?這麼一提,或許套件庫指的是供應商存放各種套件包的倉庫吧!但實際生活中,相似的情境除了供應商與倉庫這兩個詞彙之外,我從未聽聞過「套件庫」一詞混入人們的對話中,所謂的套件庫我猜約略指涉存放套件包的倉庫這個概念。

那麼我們可以稱為 package 為套件嗎?我現在認為萬萬不可。

首先,套件是成套的零件,永遠只會是包裹中的部分而已,而這部份也許是全部,抑或是其中一部份。以數學來看,零件是元素,套件是集合,或是聯集之中的元素,而包裹則是宇集。這樣看得出兩者的差別了嗎?此外,許多包裹住套件的包裹(套件包)還可以湊在一起再被包裹成包裹,所以我們能輕鬆想像包中包的情況,而這正好是 meta-package 的概念。然而套件一詞字面上卻無法給讀者提示包裝之間的關係,反而成為讀者理解上的障礙。或許稱 package 為套件可以表達裝了軟體就能擴充所需要的功能沒錯,但卻失去了最重要的包裹概念,最起碼該稱之為套件包。

再者,套件與套件庫無法明確表達出包裹與倉儲間的關係。因為日常中最多我們只會用到套件箱或套件包;甚至沒有套件庫的用法。至於絕大多數人來說,聽聞「套件」二字時,主要是車廠在推車子升級,詢問是否客戶打算要擴充、升級功能,加裝或改裝其他套件?所以要透過套件一詞理解 Package 背後的概念也就更難了。畢竟這種情境下指稱的套件,更貼近我們打算擴充某軟體現有功能時所講的 extension,例如 Firefox 或 GNOME Shell 的 extension。

我個人認為 package 翻成套件根本搭不上,而且也無法把「software package」這種把所需要的東西打成一包一包的包裹概念傳達出來。如果那些 package mannagement 的軟體開發者會說流暢的漢語,一聽到有人把 package 翻成套件時我以為勢必會破口大罵說:「你在說什麼鬼話?我才不是那樣說的!」

不好、甚至會讓人誤解的翻譯總該讓它走去,因襲前人的難解翻譯不僅無法讓翻譯進步,更讓該明瞭的東西永遠蒙上一層灰幕,總讓想理解它的人含混不清。或許說著,「這是傳統」,「我們都習慣了」,「這就是我們稱呼它的方式,你不該改動它」,這些是我看過最沒邏輯與說服力的辯解了。

能貼切地傳達本義給讀者,那才是翻譯者該做的事。我認為,package 與 repository 的翻譯必須給予讀者包裹的概念,或可稱之為軟體包與軟體庫吧。

感謝 V 字龍在 package 一詞上給予一直承襲前人翻譯的我另一個看法,讓我得以重新出發去思考這個棘手的翻譯問題。

留言

張貼留言

這個網誌中的熱門文章

論 Render 翻譯(算繪/演繹)

poedit 基本使用教學與 po 檔概念