發表文章

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」,即「分塊式算繪」,早期也有人譯為「砌磚式算繪」。

Transfer 傳輸/轉傳, Transmit 傳送; Transit 輸送, Rendezvous 集結; Send 傳送, Receive 接收; Relay 中繼

最近校對了 GNOME 旗下生態圈的 Warp 程式,也稱為《傳送門》,用於點對點、跨多裝置的檔案傳輸,採用「Magic Wormhole 神奇蟲洞」協定。如果有用過 iPhone 手機的話,類似 AirDrop 這樣的東西。 其中用到了一些傳送、傳輸相關的詞彙,在這裡也稍微辨析一下。 Transfer Transfer 在 Merriam-Webster 和 Oxford Learner's Dictionaries 字典中,此處接近的釋義是:     to cause to pass from one to another : transmit     使其從一處通往另一處 就過去業界的習慣,例如 FTP,File Transfer Protocol,已固定譯為「檔案傳輸協定」,可以直接沿用「傳輸」。 另外,若從檔案放在甲處,接著讓其他乙、丙、丁⋯⋯等處,皆能得到同一份副本,那麼這樣的動作在口語中也被稱為「轉傳」。例如:「欸欸!你剛剛拍的照片記得回去要轉傳給我!」所以,也能視情境譯為「轉傳」。 Transmit Transmit 在 Merriam-Webster 的釋義當中,基本上類同 Transfer,但更著重通過所路經的媒介:     to send or convey from one person or place to another 從一人那傳送或傳遞給另一人那          to cause (something, such as light or force) to pass or be conveyed through space or a medium 使其(某物,如光、力)經由空間或某種媒介通過或傳遞     to send out (a signal) either by radio waves or over a wire 透過無線電波或是線路傳送(訊號) 另外參考 Oxford Learner's Dictionaries:     to send an electronic signal, radio or television broadcast, etc. 送出電子訊號、無線電、電視廣播等。 總體來看,Transmit 類同中文的「傳送」,特別是發送訊號、無線電波等,這一類物理特性的傳送。此外,台灣

Feed 饋流/消息饋流; Aggregator 匯集器

以前 RSS feed 剛流行的年代,曾幫 KDE 的 Akregator 翻譯部分內容。 記錄一下當時個人採用的譯詞,Feed 為「消息饋流」,Aggregator 為「匯集器」。 後來 Rhythmbox 也開始支援 Podcast,同樣會用到 feed 一詞;而這類情況下,則不需要消息二字作為前綴,稱「饋流」即可。

sink 承接; source 來源

sink: 音效工程用語,作為聲音訊流的最終承接播放裝置,例如實體喇叭,也可能是虛擬裝置。 source: 音效工程用語,作為聲音訊流的聲音初始收錄來源,例如實體麥克風,也可能是虛擬裝置,或是監聽前述的承接裝置而來。

Regular Expression 常規(正則)表達式

如果我們探究 Regular Expression 的「Regular」,會發現它代表的是 Regularity 規律性,在數學中也被譯為「正則性」,指根據發現的某種「常規」來表示。 至於常聽到的「正規表達式」,正規是錯譯。中文的正規代表正式規範,意即英文的 Norm/Normal。 中文的常規與正規不同,最大的差異在於一個是尋常性、普遍性、日常習慣,另一個則是權威性、正式性、官方訂立的標準。 正常二字,則代表既正且常,符合規範而且尋常。 由於中文的「正則」過於冷僻、僵硬,令一般教育下的人們難以理解,識讀性門檻過高(根據 Accessibility 的近用性原則,通常翻譯的識讀性目標,應以國中程度為主),建議翻譯成「常規表達式」。錯譯的正規表達式就別再用了。

Back 返回, Backward 返回/往前/往上, Forward 前進/往後/往下, Previous 上一個, Next 下一個

軟體翻譯中,Back、Forward 是一組特別需要留意的詞彙。 為什麼呢?因為中文與英文兩種語言,在思考怎樣表達時間的特性不同之故。 以中文為例,在講書籍的前後、事件發生經歷的前後、人生的前後時,採用的是整體觀,亦即你已經知道書籍、事件、人生是一個整體,故開端為前方,尾聲為後方。 書本內容上下文、事件先後順序、人生從小到大,在中文的表達裡,是由前而後的,由原先走到後來。 然而,在英文表達裡,採用的觀點是主觀,亦即你就是當事人,位在所欲觀察的目標之內,隨著文字描述、事情發生、人生經歷,一步一步前進,還未經歷者在你眼前,而經過的則落在你後方。 因此,英文介面中,Forward 指的是行進觀點下的「前進」,Back 則是「返回」,這是最通用的萬能譯法,比較不會發生用詞前後錯亂不一致的問題。 如果要以中文慣有的思路,來表達這裡的 Forward 和 Back,就完全反過來了。Forward 成了「往後」、「往下」,Back 成了「往前」、「往上」。 有的譯者會轉個意思,改用 Next 和 Previous 這組詞的「下一個」、「下一步」,或「上一個」、「上一步」來表達,迴避這個矛盾之處,然而本人並不推薦。 因為這些按鈕有時候是由 Widget 或 Toolkit 提供,很可能有的程式開發者同時用到 Forward/Back 和 Next/Previous 這兩組,而且你也不知道他們思路中的前後上下左右。 例如,你把翻譯寫死成上下,但在介面中的表現卻是左右移動;這遠不如維持用動態感的「前進」和「返回」行進觀來得靈活。簡而言之,轉意式翻譯法可能造成其他未預期的困擾,還是盡量避免為佳。 還有,對於舊版的相容性,稱為 Backward Compatible,是往過去相容。在中文的時間描述裡,往後是指今天以後,往前才是過往,所以這裡的 Backward 其實是「往前」。 如果翻譯成「往後相容」就貽笑大方了,代表這位譯者還不懂中文與英文語言對時間感描述上的差異性。 至於轉意式譯法,在此又必須改變為「向下相容」,因為中文如奮發向上、向上提升等是前進,向下則是後退,是取自逆流而上、鯉躍龍門的典故。這時又和前面提到的上一個、下一個觀點反過來了,無法維持一致,必須適時隨情境調整,很容易弄錯,除非頭腦能時常保持清楚,否則個人不推薦使用。