發表文章

目前顯示的是 2024的文章

%1 of %2, %3 remaining 譯法

這是使用介面譯者很容易遇到的條目,用於描述進度,如已完成幾分之幾,剩餘幾個檔案,或推估剩餘時間多久。 「%1 of %2」基於英文 of 的用法,代表總共有 %2,已完成之中的 %1。 最簡單的譯法,就是利用數學概念的幾分之幾,將 of 改成 / 作數學式表達,即「%1 / %2」。 「%3 remaining」有兩種可能,一種是剩餘幾個檔案,一種是推估完成還要多久時間。 若是剩餘幾個檔案的情境,則為「剩餘 %3 個」;若是推估還要多久時間完成,則為「剩下 %3」,%3 會自動帶入時間,例如某分鐘等。 總合起來,就是「%1 / %2,剩餘 %3 個」或「%1 / %2,剩下 %3」。 如果想要用更多文字來表達「%1 of %2」的概念,則可以用「第 %1 個,共 %2 個」這種表達法,並依情境對應改成「第 %1 項,共 %2 項」或「第 %1 頁,共 %2 頁」⋯⋯等,諸如此類。 這種譯法需要譯者十分明白該詞條所在的情境,有時如果情境難明,就得去研究程式碼了。如果想要簡單處理這個問題,個人還是推薦數學式表達法「%1 / %2」。 目前比較進步的開發者,在變數命名上會下更多工夫,經 i18n 工具抽出作 po 檔格式處理後,譯者可以看到 %1 %2 %3 這種無意義變數代號以外,更有意義的佔位符表示法,例如「%(count)d of %(total)d, %(time)s remaining」,就可以推估知道是在講進度,一個是目前個數,一個是總數,一個是時間的文字串。 若能遇到這類專案開發者就是譯者的福音了啊。

flash 閃刷; stage 分段備待; payload 實載階段; stream 流道

最近在翻譯 GNOME Firmware,它是協助刷硬體更新韌體版本的實用工具。 flash (v.) flash 以前都譯作刷機,是因為早期都是在刷機器的韌體,例如手機啦、遊戲機啦等等。 不過此處只是代表刷掉裝置的快閃記憶體,刷機的「機」字並不妥當,故搭配 flash 的快閃意味,譯為「閃刷」。 stage (v.) stage update 是一種安全的閃刷更新機制,像是裝置可以從閃刷失敗中還原、在更新期間可以使用,而且安裝所有居中的發行版本韌體等等。 以「Device stages updates」條目而言,stage 此處為動詞,是將 updates 作 stage。 Stage 作為動詞之意,即「 to produce or cause to happen for public view or public effect 」。 在此好比是 git 的 staging area(備待區域);其原意是譬喻公開演出,人員已待在正式上臺前的臺後準備等待區,雖還未公開露臉(安裝到最新版),但隨時可以上臺表演,準備就緒、蓄勢待發的安全準備區域(逐次安裝所有居中發行版本)。 相較於 git 採用的 Staging area,此處的用詞是「stages」update,更偏向逐次分階段意味,一步一步直到最上層的概念,故譯為「分段備待」更新。 payload (n.) 韌體領域所指的 payload 是什麼呢? 在通常開機過程 (Generic Boot Process) 間的階段,可以概分為 Platform Init Phase (Bootloader) 和 Payload Phase,前者是平臺硬體初始化階段,後者是完成初始化之後實際生效要載入的階段。 這邊的 payload 類似火箭或運輸載具領域在講的「實際有效負載內容」,故在此譯為「實載階段」。 stream (n.) 這裡的 stream 指的是 branch 的不同更新頻道,即「流道」,而非串流。 以上提供個人初步考慮後採用的譯法,歡迎提出意見一起討論。

Tile-based rendering 分塊式算繪

今天在更新 GNOME Loupe 的翻譯,它是一套新的影像檢視器,其中具備「Tiled rendering for vector graphics」的特性。 查了一下,Tiled rendering 就是在算繪向量大圖時,可以先概分成很多小塊,然後再逐塊算成圖。 這種算圖法,就像是牆面在鋪貼瓷磚一樣,所以稱為「Tiled rendering」,即「分塊式算繪」,早期也有人譯為「砌磚式算繪」。