diff --git a/shadowsocks-csharp/Controller/I18N.cs b/shadowsocks-csharp/Controller/I18N.cs
index a86788d7..45217b7a 100755
--- a/shadowsocks-csharp/Controller/I18N.cs
+++ b/shadowsocks-csharp/Controller/I18N.cs
@@ -35,12 +35,12 @@ namespace Shadowsocks.Controller
{
// choose Traditional Chinese only if we get explicit indication
Init(name.Contains("Traditional")
- ? Resources.zh_tw
- : Resources.cn);
+ ? Resources.zh_TW
+ : Resources.zh_CN);
}
else if (name.StartsWith("Japan", StringComparison.OrdinalIgnoreCase))
{
- Init(Resources.jp);
+ Init(Resources.ja);
}
}
diff --git a/shadowsocks-csharp/Data/jp.txt b/shadowsocks-csharp/Data/ja.txt
similarity index 97%
rename from shadowsocks-csharp/Data/jp.txt
rename to shadowsocks-csharp/Data/ja.txt
index 0d79533c..d6a2a1b9 100644
--- a/shadowsocks-csharp/Data/jp.txt
+++ b/shadowsocks-csharp/Data/ja.txt
@@ -1,145 +1,143 @@
-# translation for Japanese
-
-Shadowsocks=Shadowsocks
-
-# Menu items
-
-Enable System Proxy=システムの代理を有効にする
-Mode=モード
-PAC=PAC
-Global=全般
-Servers=サーバ
-Edit Servers...=サーバーを編集する...
-Statistics Config...=統計情報の設定...
-Start on Boot=システムと同時に起動
-Forward Proxy...=代理を転送する...
-Allow Clients from LAN=LANからのクライアントを許可する
-Local PAC=ローカル PAC
-Online PAC=オンライン PAC
-Edit Local PAC File...=ローカル PAC ファイルを編集する...
-Update Local PAC from GFWList=GFWList から、ローカル PACを更新する
-Edit User Rule for GFWList...=利用者規則を編集する...
-Secure Local PAC=安全なローカル PAC
-Copy Local PAC URL=ローカルのPAC URLをコピー
-Share Server Config...=サーバーの設定を共有する...
-Scan QRCode from Screen...=画面からの QRコードをスキャン...
-Import URL from Clipboard...=クリップボードからの URLを貼り付け...
-Availability Statistics=可用性の統計
-Show Logs...=ログを表示する...
-Verbose Logging=詳細なログ
-Updates...=更新...
-Check for Updates...=更新プログラムを確認しています...
-Check for Updates at Startup=起動と同時に更新プログラムを確認しています
-Check Pre-release Version=先行開発版の更新を確認しています...
-Edit Hotkeys...=ホットキーを編集する...
-About...=について...
-Help=ヘルプ
-Quit=終了
-Edit Servers=サーバを編集する
-Load Balance=バランス
-High Availability=高パフォーマンス
-Choose by statistics=統計で選ぶ
-
-# Config Form
-
-&Add=新規 (&A)
-&Delete=削除 (&D)
-Dupli&cate=コピー (&C)
-Server=サーバ
-Server Addr=サーバーアドレス
-Server Port=サーバポート
-Password=暗証番号
-Encryption=暗号化
-Proxy Port=代理ポート
-Remarks=短評する
-Timeout(Sec)=タイムアウト (秒)
-Onetime Authentication=単回認証
-OK=はい
-Cancel=いいえ
-New server=新規サーバ
-Move &Up=上に移動 (&U)
-Move D&own=下に移動 (&O)
-
-# Proxy Form
-
-Edit Proxy=代理を編集する
-Use Proxy=代理を利用する
-Proxy Type=代理類型
-Proxy Addr=代理アドレス
-Proxy Port=代理ポート
-
-# Log Form
-
-&File=ファイル (&F)
-&Open Location=この場所を開く (&O)
-E&xit=終了 (&X)
-&View=ビュー
-
-(&V)
-&Clean Logs=ログを削除する (&C)
-Change &Font=フォントを変更する (&F)
-&Wrap Text=文字改行 (&W)
-&Top Most=一番上 (&T)
-&Show Toolbar=ツールバーを表示する (&S)
-Log Viewer=ログビューア
-Inbound=輸入
-Outbound=輸出
-
-# QRCode Form
-
-QRCode and URL=QR コードと URL
-
-# PAC Url Form
-
-Edit Online PAC URL=オンライン PAC URLを編集する
-Edit Online PAC URL...=オンライン PAC URLを編集する...
-Please input PAC Url=PAC URLを入力して下さい
-
-# HotkeySettings Form
-
-Switch system proxy=代理を切換える
-Switch system proxy mode=代理モードを切換える
-Switch share over LAN=LAN経由でシェアを切換える
-Show Logs=ログを表示する
-Switch to prev server=前のサーバーに切り替える
-Switch to next server=次のサーバーに切り替える
-Reg All=全部登録する
-
-# Messages
-
-Shadowsocks Error: {0}=Shadowsocks エラー: {0}
-Port already in use=既に使用中のポート
-Invalid server address=違法なサーバアドレス
-Illegal port number format=不法なポート番号形式
-Illegal timeout format=不法なタイムアウト形式
-Please add at least one server=少なくとも一つのサーバーを追加して下さい
-Server IP can not be blank=サーバ IP は空欄にできない
-Password can not be blank=暗証番号は空欄にできない
-Port out of range=ポートが範囲外
-Port can't be 8123=ポート8123できない
-Shadowsocks {0} Update Found=Shadowsocks {0} 更新プログラムを利用できます
-No update is available=お使いのソフトウェアは最新です
-Click here to update=プログラムの更新
-Shadowsocks is here=Shadowsocks 此処です
-You can turn on/off Shadowsocks in the context menu=コンテキストメニューにshadowsocksを有効化または無効化
-System Proxy Enabled=システム 代理を有効にする
-System Proxy Disabled=システム 代理を無効にする
-Failed to update PAC file =PAC の更新に失敗しました
-PAC updated=PAC の更新に正しくインストールされました
-No updates found. Please report to GFWList if you have problems with it.=お使いのソフトウェアは最新です。もし貴方は問題がある、GFWListに報告して下さい。
-No QRCode found. Try to zoom in or move it to the center of the screen.=QR コードを探し当てていません。ズームインまたはそれが画面の中心に移動して下さい。
-Shadowsocks is already running.=Shadowsocks 実行中。
-Find Shadowsocks icon in your notify tray.=shadowsocks通知トレイにアイコンを見つけて下さい。
-If you want to start multiple Shadowsocks, make a copy in another directory.=同時に起動したい場合は、別のディレクトリにコピーしてもいいと思ってます。
-Failed to decode QRCode=QR コードの復号化に失敗しました
-Failed to update registry=登錄の更新に失敗しました
-System Proxy On: =システム代理をオンにする:
-Running: Port {0}=実行中:ポート {0}
-Unexpected error, shadowsocks will exit. Please report to=予想外のエラー、Shadowsocks を終了する。この場所を報告して下さい。
-Unsupported operating system, use Windows Vista at least.=サポートしていないのOS、Windows Vista 以降のOSを利用して下さい。
-Unsupported .NET Framework, please update to 4.6.2 or later.=サポートしていないの .NET Framework、4.6.2 以降のバンジョーを利用して下さい。
-Proxy request failed=代理要求が失敗した。
-Proxy handshake failed=代理の握手に失敗しました
-Register hotkey failed=ホットキーの登錄に失敗しました
-Cannot parse hotkey: {0}=ホットキーを解析できません: {0}
-Timeout is invalid, it should not exceed {0}=タイムアウトが無効であるか、それを超えてはならない {0}
+# translation for Japanese
+
+Shadowsocks=Shadowsocks
+
+# Menu items
+
+Enable System Proxy=システムの代理を有効にする
+Mode=モード
+PAC=PAC
+Global=全般
+Servers=サーバ
+Edit Servers...=サーバーを編集する...
+Statistics Config...=統計情報の設定...
+Start on Boot=システムと同時に起動
+Forward Proxy...=代理を転送する...
+Allow Clients from LAN=LANからのクライアントを許可する
+Local PAC=ローカル PAC
+Online PAC=オンライン PAC
+Edit Local PAC File...=ローカル PAC ファイルを編集する...
+Update Local PAC from GFWList=GFWList から、ローカル PACを更新する
+Edit User Rule for GFWList...=利用者規則を編集する...
+Secure Local PAC=安全なローカル PAC
+Copy Local PAC URL=ローカルのPAC URLをコピー
+Share Server Config...=サーバーの設定を共有する...
+Scan QRCode from Screen...=画面からの QRコードをスキャン...
+Import URL from Clipboard...=クリップボードからの URLを貼り付け...
+Availability Statistics=可用性の統計
+Show Logs...=ログを表示する...
+Verbose Logging=詳細なログ
+Updates...=更新...
+Check for Updates...=更新プログラムを確認しています...
+Check for Updates at Startup=起動と同時に更新プログラムを確認しています
+Check Pre-release Version=先行開発版の更新を確認しています...
+Edit Hotkeys...=ホットキーを編集する...
+About...=について...
+Help=ヘルプ
+Quit=終了
+Edit Servers=サーバを編集する
+Load Balance=バランス
+High Availability=高パフォーマンス
+Choose by statistics=統計で選ぶ
+
+# Config Form
+
+&Add=新規 (&A)
+&Delete=削除 (&D)
+Dupli&cate=コピー (&C)
+Server=サーバ
+Server Addr=サーバーアドレス
+Server Port=サーバポート
+Password=暗証番号
+Encryption=暗号化
+Proxy Port=代理ポート
+Remarks=短評する
+Timeout(Sec)=タイムアウト (秒)
+Onetime Authentication=単回認証
+OK=はい
+Cancel=いいえ
+New server=新規サーバ
+Move &Up=上に移動 (&U)
+Move D&own=下に移動 (&O)
+
+# Proxy Form
+
+Edit Proxy=代理を編集する
+Use Proxy=代理を利用する
+Proxy Type=代理類型
+Proxy Addr=代理アドレス
+Proxy Port=代理ポート
+
+# Log Form
+
+&File=ファイル (&F)
+&Open Location=この場所を開く (&O)
+E&xit=終了 (&X)
+&View=ビュー (&V)
+&Clean Logs=ログを削除する (&C)
+Change &Font=フォントを変更する (&F)
+&Wrap Text=文字改行 (&W)
+&Top Most=一番上 (&T)
+&Show Toolbar=ツールバーを表示する (&S)
+Log Viewer=ログビューア
+Inbound=輸入
+Outbound=輸出
+
+# QRCode Form
+
+QRCode and URL=QR コードと URL
+
+# PAC Url Form
+
+Edit Online PAC URL=オンライン PAC URLを編集する
+Edit Online PAC URL...=オンライン PAC URLを編集する...
+Please input PAC Url=PAC URLを入力して下さい
+
+# HotkeySettings Form
+
+Switch system proxy=代理を切換える
+Switch system proxy mode=代理モードを切換える
+Switch share over LAN=LAN経由でシェアを切換える
+Show Logs=ログを表示する
+Switch to prev server=前のサーバーに切り替える
+Switch to next server=次のサーバーに切り替える
+Reg All=全部登録する
+
+# Messages
+
+Shadowsocks Error: {0}=Shadowsocks エラー: {0}
+Port already in use=既に使用中のポート
+Invalid server address=違法なサーバアドレス
+Illegal port number format=不法なポート番号形式
+Illegal timeout format=不法なタイムアウト形式
+Please add at least one server=少なくとも一つのサーバーを追加して下さい
+Server IP can not be blank=サーバ IP は空欄にできない
+Password can not be blank=暗証番号は空欄にできない
+Port out of range=ポートが範囲外
+Port can't be 8123=ポート8123できない
+Shadowsocks {0} Update Found=Shadowsocks {0} 更新プログラムを利用できます
+No update is available=お使いのソフトウェアは最新です
+Click here to update=プログラムの更新
+Shadowsocks is here=Shadowsocks 此処です
+You can turn on/off Shadowsocks in the context menu=コンテキストメニューにshadowsocksを有効化または無効化
+System Proxy Enabled=システム 代理を有効にする
+System Proxy Disabled=システム 代理を無効にする
+Failed to update PAC file =PAC の更新に失敗しました
+PAC updated=PAC の更新に正しくインストールされました
+No updates found. Please report to GFWList if you have problems with it.=お使いのソフトウェアは最新です。もし貴方は問題がある、GFWListに報告して下さい。
+No QRCode found. Try to zoom in or move it to the center of the screen.=QR コードを探し当てていません。ズームインまたはそれが画面の中心に移動して下さい。
+Shadowsocks is already running.=Shadowsocks 実行中。
+Find Shadowsocks icon in your notify tray.=shadowsocks通知トレイにアイコンを見つけて下さい。
+If you want to start multiple Shadowsocks, make a copy in another directory.=同時に起動したい場合は、別のディレクトリにコピーしてもいいと思ってます。
+Failed to decode QRCode=QR コードの復号化に失敗しました
+Failed to update registry=登錄の更新に失敗しました
+System Proxy On: =システム代理をオンにする:
+Running: Port {0}=実行中:ポート {0}
+Unexpected error, shadowsocks will exit. Please report to=予想外のエラー、Shadowsocks を終了する。この場所を報告して下さい。
+Unsupported operating system, use Windows Vista at least.=サポートしていないのOS、Windows Vista 以降のOSを利用して下さい。
+Unsupported .NET Framework, please update to 4.6.2 or later.=サポートしていないの .NET Framework、4.6.2 以降のバンジョーを利用して下さい。
+Proxy request failed=代理要求が失敗した。
+Proxy handshake failed=代理の握手に失敗しました
+Register hotkey failed=ホットキーの登錄に失敗しました
+Cannot parse hotkey: {0}=ホットキーを解析できません: {0}
+Timeout is invalid, it should not exceed {0}=タイムアウトが無効であるか、それを超えてはならない {0}
diff --git a/shadowsocks-csharp/Data/cn.txt b/shadowsocks-csharp/Data/zh_CN.txt
similarity index 100%
rename from shadowsocks-csharp/Data/cn.txt
rename to shadowsocks-csharp/Data/zh_CN.txt
diff --git a/shadowsocks-csharp/Data/zh_tw.txt b/shadowsocks-csharp/Data/zh_TW.txt
similarity index 96%
rename from shadowsocks-csharp/Data/zh_tw.txt
rename to shadowsocks-csharp/Data/zh_TW.txt
index c11392ab..ba44f5bb 100644
--- a/shadowsocks-csharp/Data/zh_tw.txt
+++ b/shadowsocks-csharp/Data/zh_TW.txt
@@ -1,145 +1,143 @@
-# translation for Traditional Chinese
-
-Shadowsocks=Shadowsocks
-
-# Menu items
-
-Enable System Proxy=啟用系統代理
-Mode=系統代理模式
-PAC=PAC 模式
-Global=全局模式
-Servers=伺服器
-Edit Servers...=編輯伺服器...
-Statistics Config...=統計設定檔...
-Start on Boot=開機啟動
-Forward Proxy...=正向 Proxy 設定...
-Allow Clients from LAN=允許來自區域網路的連線
-Local PAC=使用本機 PAC
-Online PAC=使用線上 PAC
-Edit Local PAC File...=編輯本機 PAC 檔案...
-Update Local PAC from GFWList=從 GFWList 更新本機 PAC
-Edit User Rule for GFWList...=編輯 GFWList 的使用者規則...
-Secure Local PAC=安全本機 PAC
-Copy Local PAC URL=複製本機 PAC 網址
-Share Server Config...=分享伺服器設定檔...
-Scan QRCode from Screen...=掃描螢幕上的 QR 碼...
-Import URL from Clipboard...=從剪貼簿匯入 URL...
-Availability Statistics=統計可用性
-Show Logs...=顯示記錄檔...
-Verbose Logging=詳細資訊記錄
-Updates...=更新...
-Check for Updates...=檢查更新
-Check for Updates at Startup=啟動時檢查更新
-Check Pre-release Version=檢查發行前版本更新
-Edit Hotkeys...=編輯快速鍵...
-About...=關於...
-Help=說明
-Quit=結束
-Edit Servers=編輯伺服器
-Load Balance=負載平衡
-High Availability=高可用性
-Choose by statistics=根據統計
-
-# Config Form
-
-&Add=新增 (&A)
-&Delete=移除 (&D)
-Dupli&cate=複製 (&C)
-Server=伺服器
-Server Addr=伺服器位址
-Server Port=伺服器連接埠
-Password=密碼
-Encryption=加密
-Proxy Port=Proxy 連接埠
-Remarks=註解
-Timeout(Sec)=逾時 (秒)
-Onetime Authentication=單次驗證
-OK=確定
-Cancel=取消
-New server=新伺服器
-Move &Up=上移 (&U)
-Move D&own=下移 (&O)
-
-# Proxy Form
-
-Edit Proxy=編輯 Proxy
-Use Proxy=使用 Proxy
-Proxy Type=Proxy 類型
-Proxy Addr=Proxy 位址
-Proxy Port=Proxy 連接埠
-
-# Log Form
-
-&File=檔案 (&F)
-&Open Location=在檔案總管中開啟 (&O)
-E&xit=結束 (&X)
-&View=檢視
-
-(&V)
-&Clean Logs=清除記錄檔 (&C)
-Change &Font=變更字型 (&F)
-&Wrap Text=自動換行 (&W)
-&Top Most=置頂 (&T)
-&Show Toolbar=顯示工具列 (&S)
-Log Viewer=記錄檔檢視器
-Inbound=輸入
-Outbound=輸出
-
-# QRCode Form
-
-QRCode and URL=QR 碼與 URL
-
-# PAC Url Form
-
-Edit Online PAC URL=編輯線上 PAC 網址
-Edit Online PAC URL...=編輯線上 PAC 網址...
-Please input PAC Url=請輸入 PAC 網址
-
-# HotkeySettings Form
-
-Switch system proxy=切換系統 Proxy 狀態
-Switch system proxy mode=切換系統 Proxy 模式
-Switch share over LAN=切換區域網路共用
-Show Logs=顯示記錄檔
-Switch to prev server=切換上一個伺服器
-Switch to next server=切換下一個伺服器
-Reg All=註冊所有快速鍵
-
-# Messages
-
-Shadowsocks Error: {0}=Shadowsocks 錯誤: {0}
-Port already in use=連接埠號碼已被使用
-Invalid server address=無效伺服器位址
-Illegal port number format=無效連接埠號碼格式
-Illegal timeout format=無效逾時格式
-Please add at least one server=請新增至少一個伺服器
-Server IP can not be blank=伺服器 IP 不能為空
-Password can not be blank=密碼不能為空
-Port out of range=連接埠號碼超出範圍
-Port can't be 8123=連接埠號碼不能為 8123
-Shadowsocks {0} Update Found=Shadowsocks {0} 更新
-No update is available=沒有可用的更新
-Click here to update=點按此處升級
-Shadowsocks is here=Shadowsocks 在這裡
-You can turn on/off Shadowsocks in the context menu=可以在右鍵選項單中開關 Shadowsocks
-System Proxy Enabled=系統 Proxy 已啟用
-System Proxy Disabled=系統 Proxy 未啟用
-Failed to update PAC file =更新 PAC 檔案失敗
-PAC updated=更新 PAC 成功
-No updates found. Please report to GFWList if you have problems with it.=未發現更新。如有問題請報告至 GFWList。
-No QRCode found. Try to zoom in or move it to the center of the screen.=未發現 QR 碼,嘗試把它放大或移動到靠近熒幕中間的位置
-Shadowsocks is already running.=Shadowsocks 已經在執行。
-Find Shadowsocks icon in your notify tray.=請在工作列裡尋找 Shadowsocks 圖示。
-If you want to start multiple Shadowsocks, make a copy in another directory.=如果想同時啟動多個,可以另外複製一份至別的目錄。
-Failed to decode QRCode=QR 碼解碼失敗
-Failed to update registry=無法修改登錄檔
-System Proxy On: =系統 Proxy 已啟用:
-Running: Port {0}=正在執行:連接埠號碼 {0}
-Unexpected error, shadowsocks will exit. Please report to=非預期錯誤,Shadowsocks 將結束。請報告此錯誤至
-Unsupported operating system, use Windows Vista at least.=不支援的作業系統版本,最低需求為 Windows Vista。
-Unsupported .NET Framework, please update to 4.6.2 or later.=目前 .NET Framework 版本過低,最低需求為4.6.2。
-Proxy request failed=Proxy 要求失敗
-Proxy handshake failed=Proxy 交握失敗
-Register hotkey failed=註冊快速鍵失敗
-Cannot parse hotkey: {0}=剖析快速鍵失敗: {0}
-Timeout is invalid, it should not exceed {0}=逾時無效,不應超過 {0}
+# translation for Traditional Chinese
+
+Shadowsocks=Shadowsocks
+
+# Menu items
+
+Enable System Proxy=啟用系統代理
+Mode=系統代理模式
+PAC=PAC 模式
+Global=全局模式
+Servers=伺服器
+Edit Servers...=編輯伺服器...
+Statistics Config...=統計設定檔...
+Start on Boot=開機啟動
+Forward Proxy...=正向 Proxy 設定...
+Allow Clients from LAN=允許來自區域網路的連線
+Local PAC=使用本機 PAC
+Online PAC=使用線上 PAC
+Edit Local PAC File...=編輯本機 PAC 檔案...
+Update Local PAC from GFWList=從 GFWList 更新本機 PAC
+Edit User Rule for GFWList...=編輯 GFWList 的使用者規則...
+Secure Local PAC=安全本機 PAC
+Copy Local PAC URL=複製本機 PAC 網址
+Share Server Config...=分享伺服器設定檔...
+Scan QRCode from Screen...=掃描螢幕上的 QR 碼...
+Import URL from Clipboard...=從剪貼簿匯入 URL...
+Availability Statistics=統計可用性
+Show Logs...=顯示記錄檔...
+Verbose Logging=詳細資訊記錄
+Updates...=更新...
+Check for Updates...=檢查更新
+Check for Updates at Startup=啟動時檢查更新
+Check Pre-release Version=檢查發行前版本更新
+Edit Hotkeys...=編輯快速鍵...
+About...=關於...
+Help=說明
+Quit=結束
+Edit Servers=編輯伺服器
+Load Balance=負載平衡
+High Availability=高可用性
+Choose by statistics=根據統計
+
+# Config Form
+
+&Add=新增 (&A)
+&Delete=移除 (&D)
+Dupli&cate=複製 (&C)
+Server=伺服器
+Server Addr=伺服器位址
+Server Port=伺服器連接埠
+Password=密碼
+Encryption=加密
+Proxy Port=Proxy 連接埠
+Remarks=註解
+Timeout(Sec)=逾時 (秒)
+Onetime Authentication=單次驗證
+OK=確定
+Cancel=取消
+New server=新伺服器
+Move &Up=上移 (&U)
+Move D&own=下移 (&O)
+
+# Proxy Form
+
+Edit Proxy=編輯 Proxy
+Use Proxy=使用 Proxy
+Proxy Type=Proxy 類型
+Proxy Addr=Proxy 位址
+Proxy Port=Proxy 連接埠
+
+# Log Form
+
+&File=檔案 (&F)
+&Open Location=在檔案總管中開啟 (&O)
+E&xit=結束 (&X)
+&View=檢視 (&V)
+&Clean Logs=清除記錄檔 (&C)
+Change &Font=變更字型 (&F)
+&Wrap Text=自動換行 (&W)
+&Top Most=置頂 (&T)
+&Show Toolbar=顯示工具列 (&S)
+Log Viewer=記錄檔檢視器
+Inbound=輸入
+Outbound=輸出
+
+# QRCode Form
+
+QRCode and URL=QR 碼與 URL
+
+# PAC Url Form
+
+Edit Online PAC URL=編輯線上 PAC 網址
+Edit Online PAC URL...=編輯線上 PAC 網址...
+Please input PAC Url=請輸入 PAC 網址
+
+# HotkeySettings Form
+
+Switch system proxy=切換系統 Proxy 狀態
+Switch system proxy mode=切換系統 Proxy 模式
+Switch share over LAN=切換區域網路共用
+Show Logs=顯示記錄檔
+Switch to prev server=切換上一個伺服器
+Switch to next server=切換下一個伺服器
+Reg All=註冊所有快速鍵
+
+# Messages
+
+Shadowsocks Error: {0}=Shadowsocks 錯誤: {0}
+Port already in use=連接埠號碼已被使用
+Invalid server address=無效伺服器位址
+Illegal port number format=無效連接埠號碼格式
+Illegal timeout format=無效逾時格式
+Please add at least one server=請新增至少一個伺服器
+Server IP can not be blank=伺服器 IP 不能為空
+Password can not be blank=密碼不能為空
+Port out of range=連接埠號碼超出範圍
+Port can't be 8123=連接埠號碼不能為 8123
+Shadowsocks {0} Update Found=Shadowsocks {0} 更新
+No update is available=沒有可用的更新
+Click here to update=點按此處升級
+Shadowsocks is here=Shadowsocks 在這裡
+You can turn on/off Shadowsocks in the context menu=可以在右鍵選項單中開關 Shadowsocks
+System Proxy Enabled=系統 Proxy 已啟用
+System Proxy Disabled=系統 Proxy 未啟用
+Failed to update PAC file =更新 PAC 檔案失敗
+PAC updated=更新 PAC 成功
+No updates found. Please report to GFWList if you have problems with it.=未發現更新。如有問題請報告至 GFWList。
+No QRCode found. Try to zoom in or move it to the center of the screen.=未發現 QR 碼,嘗試把它放大或移動到靠近熒幕中間的位置
+Shadowsocks is already running.=Shadowsocks 已經在執行。
+Find Shadowsocks icon in your notify tray.=請在工作列裡尋找 Shadowsocks 圖示。
+If you want to start multiple Shadowsocks, make a copy in another directory.=如果想同時啟動多個,可以另外複製一份至別的目錄。
+Failed to decode QRCode=QR 碼解碼失敗
+Failed to update registry=無法修改登錄檔
+System Proxy On: =系統 Proxy 已啟用:
+Running: Port {0}=正在執行:連接埠號碼 {0}
+Unexpected error, shadowsocks will exit. Please report to=非預期錯誤,Shadowsocks 將結束。請報告此錯誤至
+Unsupported operating system, use Windows Vista at least.=不支援的作業系統版本,最低需求為 Windows Vista。
+Unsupported .NET Framework, please update to 4.6.2 or later.=目前 .NET Framework 版本過低,最低需求為4.6.2。
+Proxy request failed=Proxy 要求失敗
+Proxy handshake failed=Proxy 交握失敗
+Register hotkey failed=註冊快速鍵失敗
+Cannot parse hotkey: {0}=剖析快速鍵失敗: {0}
+Timeout is invalid, it should not exceed {0}=逾時無效,不應超過 {0}
diff --git a/shadowsocks-csharp/Properties/Resources.Designer.cs b/shadowsocks-csharp/Properties/Resources.Designer.cs
index 467865ce..ab946b69 100644
--- a/shadowsocks-csharp/Properties/Resources.Designer.cs
+++ b/shadowsocks-csharp/Properties/Resources.Designer.cs
@@ -1,10 +1,10 @@
//------------------------------------------------------------------------------
//
-// 此代码由工具生成。
-// 运行时版本:4.0.30319.42000
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
//
-// 对此文件的更改可能会导致不正确的行为,并且如果
-// 重新生成代码,这些更改将会丢失。
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
//
//------------------------------------------------------------------------------
@@ -13,12 +13,12 @@ namespace Shadowsocks.Properties {
///
- /// 一个强类型的资源类,用于查找本地化的字符串等。
+ /// A strongly-typed resource class, for looking up localized strings, etc.
///
- // 此类是由 StronglyTypedResourceBuilder
- // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
- // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
- // (以 /str 作为命令选项),或重新生成 VS 项目。
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
@@ -33,7 +33,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 返回此类使用的缓存的 ResourceManager 实例。
+ /// Returns the cached ResourceManager instance used by this class.
///
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
@@ -47,8 +47,8 @@ namespace Shadowsocks.Properties {
}
///
- /// 使用此强类型资源类,为所有资源查找
- /// 重写当前线程的 CurrentUICulture 属性。
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
///
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
@@ -61,7 +61,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Byte[] 类型的本地化资源。
+ /// Looks up a localized resource of type System.Byte[].
///
internal static byte[] abp_js {
get {
@@ -71,69 +71,37 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找类似 # translation for Simplified Chinese
+ /// Looks up a localized string similar to # translation for Japanese
///
///Shadowsocks=Shadowsocks
///
///# Menu items
///
- ///Enable System Proxy=启用系统代理
- ///Mode=系统代理模式
- ///PAC=PAC 模式
- ///Global=全局模式
- ///Servers=服务器
- ///Edit Servers...=编辑服务器...
- ///Statistics Config...=统计配置...
- ///Start on Boot=开机启动
- ///Forward Proxy...=正向代理设置...
- ///Allow Clients from LAN=允许来自局域网的连接
- ///Local PAC=使用本地 PAC
- ///Online PAC=使用在线 PAC
- ///Edit Local PAC File...=编辑本地 PAC 文件...
- ///Update Local PAC from GFWList=从 GFWList 更新本地 PAC
- ///Edit User Rule for GFWList...=编辑 GFWList 的用户规则...
- ///Secure Local PAC=保护本地 PAC
- ///Cop [字符串的其余部分被截断]"; 的本地化字符串。
- ///
- internal static string cn {
- get {
- return ResourceManager.GetString("cn", resourceCulture);
- }
- }
-
- ///
- /// 查找类似 # translation for Japanese
- ///
- ///Shadowsocks=Shadowsocks
- ///
- ///# Menu items
- ///
- ///Enable System Proxy=システムの代理を有効にする
- ///Mode=モード
- ///PAC=PAC
- ///Global=全般
- ///Servers=サーバ
- ///Edit Servers...=サーバーを編集する...
- ///Statistics Config...=統計情報の設定...
- ///Start on Boot=システムと同時に起動
- ///Forward Proxy...=代理を転送する...
- ///Allow Clients from LAN=LANからのクライアントを許可する
- ///Local PAC=ローカル PAC
- ///Online PAC=オンライン PAC
- ///Edit Local PAC File...=ローカル PAC ファイルを編集する...
- ///Update Local PAC from GFWList=GFWList から、ローカル PACを更新する
- ///Edit User Rule for GFWList...=利用者規則を編集する...
- ///Secure Local PAC=安全なローカル PAC
- ///Copy [字符串的其余部分被截断]"; 的本地化字符串。
+ ///Enable System Proxy=システムの代理を有効にする
+ ///Mode=モード
+ ///PAC=PAC
+ ///Global=全般
+ ///Servers=サーバ
+ ///Edit Servers...=サーバーを編集する...
+ ///Statistics Config...=統計情報の設定...
+ ///Start on Boot=システムと同時に起動
+ ///Forward Proxy...=代理を転送する...
+ ///Allow Clients from LAN=LANからのクライアントを許可する
+ ///Local PAC=ローカル PAC
+ ///Online PAC=オンライン PAC
+ ///Edit Local PAC File...=ローカル PAC ファイルを編集する...
+ ///Update Local PAC from GFWList=GFWList から、ローカル PACを更新する
+ ///Edit User Rule for GFWList...=利用者規則を編集する...
+ ///Secure Local [rest of string was truncated]";.
///
- internal static string jp {
+ internal static string ja {
get {
- return ResourceManager.GetString("jp", resourceCulture);
+ return ResourceManager.GetString("ja", resourceCulture);
}
}
///
- /// 查找 System.Byte[] 类型的本地化资源。
+ /// Looks up a localized resource of type System.Byte[].
///
internal static byte[] libsscrypto_dll {
get {
@@ -143,7 +111,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Byte[] 类型的本地化资源。
+ /// Looks up a localized resource of type System.Byte[].
///
internal static byte[] mgwz_dll {
get {
@@ -153,14 +121,14 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找类似 listen-address __PRIVOXY_BIND_IP__:__PRIVOXY_BIND_PORT__
+ /// Looks up a localized string similar to listen-address __PRIVOXY_BIND_IP__:__PRIVOXY_BIND_PORT__
///toggle 0
///logfile ss_privoxy.log
///show-on-task-bar 0
///activity-animation 0
///forward-socks5 / 127.0.0.1:__SOCKS_PORT__ .
///hide-console
- /// 的本地化字符串。
+ ///.
///
internal static string privoxy_conf {
get {
@@ -169,7 +137,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Byte[] 类型的本地化资源。
+ /// Looks up a localized resource of type System.Byte[].
///
internal static byte[] privoxy_exe {
get {
@@ -179,7 +147,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Byte[] 类型的本地化资源。
+ /// Looks up a localized resource of type System.Byte[].
///
internal static byte[] proxy_pac_txt {
get {
@@ -189,7 +157,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Drawing.Bitmap 类型的本地化资源。
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
///
internal static System.Drawing.Bitmap ss16 {
get {
@@ -199,7 +167,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Drawing.Bitmap 类型的本地化资源。
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
///
internal static System.Drawing.Bitmap ss20 {
get {
@@ -209,7 +177,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Drawing.Bitmap 类型的本地化资源。
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
///
internal static System.Drawing.Bitmap ss24 {
get {
@@ -219,7 +187,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Drawing.Bitmap 类型的本地化资源。
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
///
internal static System.Drawing.Bitmap ssIn24 {
get {
@@ -229,7 +197,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Drawing.Bitmap 类型的本地化资源。
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
///
internal static System.Drawing.Bitmap ssOut24 {
get {
@@ -239,7 +207,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Drawing.Bitmap 类型的本地化资源。
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
///
internal static System.Drawing.Bitmap ssw128 {
get {
@@ -249,7 +217,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Byte[] 类型的本地化资源。
+ /// Looks up a localized resource of type System.Byte[].
///
internal static byte[] sysproxy_exe {
get {
@@ -259,7 +227,7 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找 System.Byte[] 类型的本地化资源。
+ /// Looks up a localized resource of type System.Byte[].
///
internal static byte[] sysproxy64_exe {
get {
@@ -269,9 +237,9 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找类似 ! Put user rules line by line in this file.
+ /// Looks up a localized string similar to ! Put user rules line by line in this file.
///! See https://adblockplus.org/en/filter-cheatsheet
- /// 的本地化字符串。
+ ///.
///
internal static string user_rule {
get {
@@ -280,7 +248,38 @@ namespace Shadowsocks.Properties {
}
///
- /// 查找类似 # translation for Traditional Chinese
+ /// Looks up a localized string similar to # translation for Simplified Chinese
+ ///
+ ///Shadowsocks=Shadowsocks
+ ///
+ ///# Menu items
+ ///
+ ///Enable System Proxy=启用系统代理
+ ///Mode=系统代理模式
+ ///PAC=PAC 模式
+ ///Global=全局模式
+ ///Servers=服务器
+ ///Edit Servers...=编辑服务器...
+ ///Statistics Config...=统计配置...
+ ///Start on Boot=开机启动
+ ///Forward Proxy...=正向代理设置...
+ ///Allow Clients from LAN=允许来自局域网的连接
+ ///Local PAC=使用本地 PAC
+ ///Online PAC=使用在线 PAC
+ ///Edit Local PAC File...=编辑本地 PAC 文件...
+ ///Update Local PAC from GFWList=从 GFWList 更新本地 PAC
+ ///Edit User Rule for GFWList...=编辑 GFWList 的用户规则...
+ ///Secure Local PAC=保护本地 PAC
+ ///Cop [rest of string was truncated]";.
+ ///
+ internal static string zh_CN {
+ get {
+ return ResourceManager.GetString("zh_CN", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to # translation for Traditional Chinese
///
///Shadowsocks=Shadowsocks
///
@@ -301,11 +300,11 @@ namespace Shadowsocks.Properties {
///Edit Local PAC File...=編輯本機 PAC 檔案...
///Update Local PAC from GFWList=從 GFWList 更新本機 PAC
///Edit User Rule for GFWList...=編輯 GFWList 的使用者規則...
- ///Secure Local PAC=安全本機 [字符串的其余部分被截断]"; 的本地化字符串。
+ ///Secure Local PAC=安全本機 [rest of string was truncated]";.
///
- internal static string zh_tw {
+ internal static string zh_TW {
get {
- return ResourceManager.GetString("zh_tw", resourceCulture);
+ return ResourceManager.GetString("zh_TW", resourceCulture);
}
}
}
diff --git a/shadowsocks-csharp/Properties/Resources.resx b/shadowsocks-csharp/Properties/Resources.resx
index 3b15cf92..1e2a09f6 100755
--- a/shadowsocks-csharp/Properties/Resources.resx
+++ b/shadowsocks-csharp/Properties/Resources.resx
@@ -121,11 +121,8 @@
..\Data\abp.js.gz;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- ..\data\cn.txt;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
-
-
- ..\Data\jp.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ ..\Data\ja.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
..\data\libsscrypto.dll.gz;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
@@ -169,7 +166,10 @@
..\data\user-rule.txt;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
-
- ..\Data\zh_tw.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ ..\data\zh_CN.txt;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+
+ ..\Data\zh_TW.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
\ No newline at end of file
diff --git a/shadowsocks-csharp/shadowsocks-csharp.csproj b/shadowsocks-csharp/shadowsocks-csharp.csproj
index 62ea4e60..11b1f6f5 100644
--- a/shadowsocks-csharp/shadowsocks-csharp.csproj
+++ b/shadowsocks-csharp/shadowsocks-csharp.csproj
@@ -301,11 +301,11 @@
-
-
+
+
+
-
Designer
@@ -357,25 +357,25 @@
- ();
-var attribute = config.Attribute("ExcludeAssemblies");
-if (attribute != null)
- foreach (var item in attribute.Value.Split('|').Select(x => x.Trim()).Where(x => x != string.Empty))
- excludedAssemblies.Add(item);
-var element = config.Element("ExcludeAssemblies");
-if (element != null)
- foreach (var item in element.Value.Split(new[] { "\r\n", "\n" }, StringSplitOptions.RemoveEmptyEntries).Select(x => x.Trim()).Where(x => x != string.Empty))
- excludedAssemblies.Add(item);
-
-var filesToCleanup = Files.Select(f => f.ItemSpec).Where(f => !excludedAssemblies.Contains(Path.GetFileNameWithoutExtension(f), StringComparer.InvariantCultureIgnoreCase));
-
-foreach (var item in filesToCleanup)
- File.Delete(item);
+ ();
+var attribute = config.Attribute("ExcludeAssemblies");
+if (attribute != null)
+ foreach (var item in attribute.Value.Split('|').Select(x => x.Trim()).Where(x => x != string.Empty))
+ excludedAssemblies.Add(item);
+var element = config.Element("ExcludeAssemblies");
+if (element != null)
+ foreach (var item in element.Value.Split(new[] { "\r\n", "\n" }, StringSplitOptions.RemoveEmptyEntries).Select(x => x.Trim()).Where(x => x != string.Empty))
+ excludedAssemblies.Add(item);
+
+var filesToCleanup = Files.Select(f => f.ItemSpec).Where(f => !excludedAssemblies.Contains(Path.GetFileNameWithoutExtension(f), StringComparer.InvariantCultureIgnoreCase));
+
+foreach (var item in filesToCleanup)
+ File.Delete(item);
]]>
@@ -389,11 +389,11 @@ foreach (var item in filesToCleanup)
-
\ No newline at end of file