作為 2 版本的 NSIS 已經完全支援了多語言。一個安裝程式的介面可以支援多語言。
對所有的語言使用 LoadLanguageFile 來載入預設的介面文字和語言屬性。
預設的介面文字可以很容易的使用指令比如 ComponentText 等來更改。
你也可以在你自己的字串裡使用標準語言字串的內容 (例如,$(^Name) 包含了 Name 指令設定的安裝程式名稱)。所有標準語言字串的名稱作為註釋列表於語言檔案字串的上方。 語言檔案在 Contrib\Language Files。
要建立你自己的語言字串,請使用 LangString。
使用多語言的一個安裝程式例子,請看 languages.nsi。
當安裝程式啟動時按如下步驟選擇介面語言:
LangDLL 插件允許用戶為安裝程式選擇語言。只需要把語言 ID (${LANG_langfile})和它在所有語言中的名稱壓入堆棧,然後再壓入語言的數量,視窗標題,要提示用戶選擇語言的文字,調用插件的 LangDialog 函數,彈出返回值到 $LANGUAGE,然後你便可以繼續。如果用戶按這裡了取消按鈕,則返回值就是 cancel。
使用多語言的一個安裝程式例子,請看 languages.nsi。
RTL 語言是從右至左書寫的語言(如 Arabic和 Hebrew)。NSIS 完整支援 RTL 語言。在語言檔案裡有一個地方來指定該語言是否 RTL 語言。要在運行時檢測目前是否 RTL 語言只需要檢測 $(^RTL) 語言字串的值。如果語言是 RTL 則為 1,否則為 0。這在使用插件來建立對話時非常有用,他們通常都有 RTL 設定。