tor-commits
Threads by month
- ----- 2025 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
March 2015
- 23 participants
- 1889 discussions

27 Mar '15
commit 0a1a75b3c3a8142e285a0c2dc38a0746c65b67f9
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Mar 26 19:49:39 2015 -0700
Bump Tor Launcher to 0.2.7.3.
---
Bundle-Data/Docs/ChangeLog.txt | 2 ++
gitian/versions.alpha | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/Bundle-Data/Docs/ChangeLog.txt b/Bundle-Data/Docs/ChangeLog.txt
index edbd748..f357766 100644
--- a/Bundle-Data/Docs/ChangeLog.txt
+++ b/Bundle-Data/Docs/ChangeLog.txt
@@ -5,6 +5,8 @@ Tor Browser 4.5a5 -- Mar 31 2015
* Update Tor to 0.2.6.6
* Update NoScript to 2.6.9.19
* Update meek to 0.16
+ * Update Tor Launcher to 0.2.7.3
+ * Bug 13983: Directory search path fix for Tor Messanger+TorBirdy
* Update Torbutton to 1.9.1.0
* Bug 9387: "Security Slider 1.0"
* Include descriptions and tooltip hints for security levels
diff --git a/gitian/versions.alpha b/gitian/versions.alpha
index 12c16cc..5c9ffb9 100755
--- a/gitian/versions.alpha
+++ b/gitian/versions.alpha
@@ -10,7 +10,7 @@ TORBROWSER_UPDATE_CHANNEL=alpha
TORBROWSER_TAG=tor-browser-${FIREFOX_VERSION}-4.5-1-build1
TOR_TAG=tor-0.2.6.6
-TORLAUNCHER_TAG=0.2.7.2
+TORLAUNCHER_TAG=0.2.7.3
TORBUTTON_TAG=1.9.1.0
HTTPSE_TAG=3.5.3 # XXX: HTTPSE_VER is used instead, pending #11630
NSIS_TAG=v0.3
1
0

[tor-launcher/master] Update translations and bump version for 0.2.7.3.
by mikeperry@torproject.org 27 Mar '15
by mikeperry@torproject.org 27 Mar '15
27 Mar '15
commit 7382cc7c462e39afa0ec320c63e10ab88db01630
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Mar 26 19:45:24 2015 -0700
Update translations and bump version for 0.2.7.3.
---
src/chrome/locale/ar/network-settings.dtd | 6 +-
src/chrome/locale/bg/network-settings.dtd | 2 +-
src/chrome/locale/bn/network-settings.dtd | 6 +-
src/chrome/locale/bn/torlauncher.properties | 28 +++----
src/chrome/locale/ca/network-settings.dtd | 8 +-
src/chrome/locale/da/network-settings.dtd | 8 +-
src/chrome/locale/da/torlauncher.properties | 4 +-
src/chrome/locale/de/progress.dtd | 4 +-
src/chrome/locale/es/network-settings.dtd | 30 +++----
src/chrome/locale/es/torlauncher.properties | 10 +--
src/chrome/locale/fi/network-settings.dtd | 20 ++---
src/chrome/locale/fi/progress.dtd | 4 +-
src/chrome/locale/fi/torlauncher.properties | 20 ++---
src/chrome/locale/fr/network-settings.dtd | 8 +-
src/chrome/locale/fr/progress.dtd | 2 +-
src/chrome/locale/hi/progress.dtd | 8 +-
src/chrome/locale/hi/torlauncher.properties | 2 +-
src/chrome/locale/hu/network-settings.dtd | 8 +-
src/chrome/locale/id/network-settings.dtd | 8 +-
src/chrome/locale/it/network-settings.dtd | 6 +-
src/chrome/locale/lo/torlauncher.properties | 2 +-
src/chrome/locale/nb/network-settings.dtd | 8 +-
src/chrome/locale/pt/network-settings.dtd | 8 +-
src/chrome/locale/pt/torlauncher.properties | 38 ++++-----
src/chrome/locale/sq/network-settings.dtd | 80 +++++++++---------
src/chrome/locale/sq/progress.dtd | 8 +-
src/chrome/locale/sq/torlauncher.properties | 116 +++++++++++++-------------
src/chrome/locale/sv/network-settings.dtd | 6 +-
src/chrome/locale/uk/network-settings.dtd | 8 +-
src/chrome/locale/zh-CN/network-settings.dtd | 8 +-
src/chrome/locale/zh-TW/network-settings.dtd | 8 +-
src/install.rdf | 2 +-
32 files changed, 242 insertions(+), 242 deletions(-)
diff --git a/src/chrome/locale/ar/network-settings.dtd b/src/chrome/locale/ar/network-settings.dtd
index a4d92b1..81dc4e2 100644
--- a/src/chrome/locale/ar/network-settings.dtd
+++ b/src/chrome/locale/ar/network-settings.dtd
@@ -15,9 +15,9 @@
<!ENTITY torSettings.connectPrompt3 "سيصلح هذا في معظم الحالات.">
<!ENTITY torSettings.connect "اتصل">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "هل يحتاج هذا الكمبيوتر لاستخدام وكيل محلي للاتصال بالإنترنت؟">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "إذا كنت غير متأكد من كيفية الإجابة على هذا السؤال، أنظر الى إعدادات الإنترنت في متصفح آخر لمعرفة ما إذا تمت تهيئتة لاستخدام وكيل محلي.">
<!ENTITY torSettings.enterProxy "أدخل إعدادات البروكسي.">
<!ENTITY torSettings.bridgeQuestion "هل يقوم مقدم خدمة الإنترنت (ISP) الذي تتعامل معه بحجب الاتصالات بشبكة Tor أو مراقبتها بطريقة أخرى؟">
<!ENTITY torSettings.bridgeHelp "إذا لم تكن متأكدا من إجابة هذا السؤال، قم باختيار لا.   إذا قمت باختيار نعم، فسيطلب منك تكوين جسور Tor والتي هي منافذ ترحيل غير مدرجة تصعب عملية حظر الاتصالات بشبكة Tor.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "اختياري">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "يحتاج هذا الكمبيوتر لاستخدام وكيل محلي للاتصال بالإنترنت">
<!ENTITY torsettings.useProxy.type "نوع البروكسي:">
<!ENTITY torsettings.useProxy.address "العنوان:">
<!ENTITY torsettings.useProxy.address.placeholder "عنوان الإنترنت IP أو اسم المضيف">
diff --git a/src/chrome/locale/bg/network-settings.dtd b/src/chrome/locale/bg/network-settings.dtd
index 56f17d4..3813505 100644
--- a/src/chrome/locale/bg/network-settings.dtd
+++ b/src/chrome/locale/bg/network-settings.dtd
@@ -15,7 +15,7 @@
<!ENTITY torSettings.connectPrompt3 "Това ще работи при повечето ситуации.">
<!ENTITY torSettings.connect "Свържи се">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Този компютър използва ли локално прокси за достъп до Интернет?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
<!ENTITY torSettings.enterProxy "Въведете настройките за прокси.">
diff --git a/src/chrome/locale/bn/network-settings.dtd b/src/chrome/locale/bn/network-settings.dtd
index e8ccb67..5cb5821 100644
--- a/src/chrome/locale/bn/network-settings.dtd
+++ b/src/chrome/locale/bn/network-settings.dtd
@@ -4,8 +4,8 @@
<!ENTITY torsettings.prompt "Before you connect to the Tor network, you need to provide information about this computer's Internet connection.">
-<!ENTITY torSettings.yes "Yes">
-<!ENTITY torSettings.no "No">
+<!ENTITY torSettings.yes "হ্যা">
+<!ENTITY torSettings.no "না">
<!ENTITY torSettings.firstQuestion "Which of the following best describes your situation?">
<!ENTITY torSettings.configurePrompt1 "This computer's Internet connection is censored or proxied.">
@@ -13,7 +13,7 @@
<!ENTITY torSettings.configure "Configure">
<!ENTITY torSettings.connectPrompt2 "I would like to connect directly to the Tor network.">
<!ENTITY torSettings.connectPrompt3 "This will work in most situations.">
-<!ENTITY torSettings.connect "Connect">
+<!ENTITY torSettings.connect "সংযোগ করুন">
<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
diff --git a/src/chrome/locale/bn/torlauncher.properties b/src/chrome/locale/bn/torlauncher.properties
index c745e20..fd9face 100644
--- a/src/chrome/locale/bn/torlauncher.properties
+++ b/src/chrome/locale/bn/torlauncher.properties
@@ -6,14 +6,14 @@ torlauncher.error_title=Tor Launcher
torlauncher.tor_exited=Tor unexpectedly exited. This might be due to a bug in Tor itself, another program on your system, or faulty hardware. Until you restart Tor, the Tor Browser will not able to reach any websites. If the problem persists, please send a copy of your Tor Log to the support team.
torlauncher.tor_exited2=Restarting Tor will not close your browser tabs.
torlauncher.tor_controlconn_failed=Could not connect to Tor control port.
-torlauncher.tor_failed_to_start=Tor failed to start.
+torlauncher.tor_failed_to_start=টর শুরু হতে ব্যর্থ হয়েছে
torlauncher.tor_control_failed=Failed to take control of Tor.
-torlauncher.tor_bootstrap_failed=Tor failed to establish a Tor network connection.
-torlauncher.tor_bootstrap_failed_details=%1$S failed (%2$S).
+torlauncher.tor_bootstrap_failed=টর নেটওয়ার্ক সংযোগ সৃষ্টি করতে হতে ব্যর্থ হয়েছে।
+torlauncher.tor_bootstrap_failed_details=%1$S ব্যর্থ হয়েছে (%2$S).
-torlauncher.unable_to_start_tor=Unable to start Tor.\n\n%S
-torlauncher.tor_missing=The Tor executable is missing.
-torlauncher.torrc_missing=The torrc file is missing.
+torlauncher.unable_to_start_tor=টর শুরু করা সম্ভব নয়।\n\n%S
+torlauncher.tor_missing= Tor executable নথিটি পাওয়া যাচ্ছে না।
+torlauncher.torrc_missing=torrc নথিটি পাওয়া যাচ্ছে না।
torlauncher.datadir_missing=The Tor data directory does not exist.
torlauncher.password_hash_missing=Failed to get hashed password.
@@ -27,15 +27,15 @@ torlauncher.error_bridges_missing=You must specify one or more bridges.
torlauncher.error_default_bridges_type_missing=You must select a transport type for the provided bridges.
torlauncher.error_bridge_bad_default_type=No provided bridges that have the transport type %S are available. Please adjust your settings.
-torlauncher.recommended_bridge=(recommended)
+torlauncher.recommended_bridge=( সুপারিশকৃত )
-torlauncher.connect=Connect
+torlauncher.connect=সংযোগ করুন
torlauncher.restart_tor=Restart Tor
-torlauncher.quit=Quit
-torlauncher.quit_win=Exit
-torlauncher.done=Done
+torlauncher.quit=বেরিয়ে যান
+torlauncher.quit_win=বেরিয়ে যান
+torlauncher.done=সমাপ্ত
-torlauncher.forAssistance=For assistance, contact %S
+torlauncher.forAssistance=সাহায্যের জন্য , যোগাযোগ করুনঃ %S
torlauncher.copiedNLogMessages=Copy complete. %S Tor log messages are ready to be pasted into a text editor or an email message.
@@ -48,9 +48,9 @@ torlauncher.bootstrapStatus.requesting_descriptors=Requesting relay information
torlauncher.bootstrapStatus.loading_descriptors=Loading relay information
torlauncher.bootstrapStatus.conn_or=টর নেটওয়ার্কের সাথে সংযুক্ত হচ্ছে
torlauncher.bootstrapStatus.handshake_or=Establishing a Tor circuit
-torlauncher.bootstrapStatus.done=Connected to the Tor network!
+torlauncher.bootstrapStatus.done=টর নেটওয়ার্কের সাথে সংযুক্ত হয়েছে!
-torlauncher.bootstrapWarning.done=done
+torlauncher.bootstrapWarning.done=সম্পূর্ণ
torlauncher.bootstrapWarning.connectrefused=connection refused
torlauncher.bootstrapWarning.misc=miscellaneous
torlauncher.bootstrapWarning.resourcelimit=insufficient resources
diff --git a/src/chrome/locale/ca/network-settings.dtd b/src/chrome/locale/ca/network-settings.dtd
index 15025b4..a8996f7 100644
--- a/src/chrome/locale/ca/network-settings.dtd
+++ b/src/chrome/locale/ca/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "Quina de les següuens descriula teva situació?">
<!ENTITY torSettings.configurePrompt1 "La connexió a internet d'aquest ordinador està censurada o configurada amb un proxy. ">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "He de configurar preferències de ponts o de proxy local.">
<!ENTITY torSettings.configure "Configura">
<!ENTITY torSettings.connectPrompt2 "M'agradaria conectar-me directament a la xarxa Tor.">
<!ENTITY torSettings.connectPrompt3 "Això funciona en la majoria dels casos.">
<!ENTITY torSettings.connect "Conectar">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Aquest ordinador ha de fer servir un proxy local per accedir a internet?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Si no esteu segurs de com respondre aquesta pregunta, mireu les preferències d'internet d'un altre navegador per veure si està configurat per usar un proxy local. ">
<!ENTITY torSettings.enterProxy "Introdueix les opcions del proxy.">
<!ENTITY torSettings.bridgeQuestion "El vostre proveïdor d'Internet (ISP) bloqueja o censura les connexions a la Xarxa Tor?">
<!ENTITY torSettings.bridgeHelp "Si no esteu segurs de com respondre a aquesta pregunta, escolliu No.  Si escolliu Sí, se us demanarà que configureu Ponts Tor, que són relés no llistats que fan més dificil de bloquejar les connexions a la Xarxa Tor">
@@ -31,7 +31,7 @@
<!ENTITY torsettings.optional "Opcional
">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Aquest ordinador ha de fer servir un proxy local per accedir a internet. ">
<!ENTITY torsettings.useProxy.type "Tipus de Proxy:">
<!ENTITY torsettings.useProxy.address "Adreça:">
<!ENTITY torsettings.useProxy.address.placeholder "Direcció IP o nom del host">
diff --git a/src/chrome/locale/da/network-settings.dtd b/src/chrome/locale/da/network-settings.dtd
index b7ca021..4eff2c2 100644
--- a/src/chrome/locale/da/network-settings.dtd
+++ b/src/chrome/locale/da/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "Hvilke af de følgende beskriver bedst din situation?">
<!ENTITY torSettings.configurePrompt1 "Denne computers internetforbindelse er censureret eller er etableret gennem en proxy.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Jeg har brug for at konfigurere bro eller lokale proxy indstillinger.">
<!ENTITY torSettings.configure "Indstil">
<!ENTITY torSettings.connectPrompt2 "Jeg vil forbinde direkte til Tor netværket.">
<!ENTITY torSettings.connectPrompt3 "Dette vil virker i de fleste situationer">
<!ENTITY torSettings.connect "Tilslut">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Behøver denne computer bruge en lokal proxy for at tilgå Internettet?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Hvis du ikke er sikker på svaret på dette spørgsmål, så kig på Internetindstillingerne i en anden browser for at se om den er konfigureret til at bruge en lokal proxy. ">
<!ENTITY torSettings.enterProxy "Indtast proxy-indstillinger.">
<!ENTITY torSettings.bridgeQuestion "Blokerer eller censurerer din internetudbyder (ISP) forbindelser til Tor netværket?">
<!ENTITY torSettings.bridgeHelp "Hvis du er usikker på svaret til dette spørgsmål, vælg No.  Hvis du vælger Ja, vil du blive bedt om at konfigurere Tor Broer, der er ulistede relays, som gør det sværere at blokere forbindelser til Tor Netværket.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Valgfri">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Denne computer skal bruge en lokal proxy for at tilgå Internettet">
<!ENTITY torsettings.useProxy.type "Proxy type:">
<!ENTITY torsettings.useProxy.address "Adresse:">
<!ENTITY torsettings.useProxy.address.placeholder "IP adresse eller værtsnavn">
diff --git a/src/chrome/locale/da/torlauncher.properties b/src/chrome/locale/da/torlauncher.properties
index 8d2d084..2c7c9ca 100644
--- a/src/chrome/locale/da/torlauncher.properties
+++ b/src/chrome/locale/da/torlauncher.properties
@@ -4,7 +4,7 @@
torlauncher.error_title=Tor starter
torlauncher.tor_exited=Tor lukkede uventet. Dette kan skyldes en fejl i selve Tor, et andet program i dit system eller en hardware-fejl. Tor-browseren vil ikke være i stand til at forbinde til noget som helst website før du genstarter Tor. Send en kopi af din Tor-log til support-teamet hvis problemet fortsætter.
-torlauncher.tor_exited2=Fanebladene i din browser vil ikke blive lukket af at du genstarter Tor.
+torlauncher.tor_exited2=Fanebladene i din browser vil ikke blive lukket ved af at du genstarter Tor.
torlauncher.tor_controlconn_failed=Kunne ikke forbinde til Tor kontrol-porten.
torlauncher.tor_failed_to_start=Tor kunne ikke starte.
torlauncher.tor_control_failed=Det lykkedes ikke at tage kontrol over Tor.
@@ -57,5 +57,5 @@ torlauncher.bootstrapWarning.resourcelimit=utilstrækkelige ressourcer
torlauncher.bootstrapWarning.identity=identitet matcher ikke
torlauncher.bootstrapWarning.timeout=forbindelse timeout
torlauncher.bootstrapWarning.noroute=ingen rute til vært
-torlauncher.bootstrapWarning.ioerror=læs/skriv fejl
+torlauncher.bootstrapWarning.ioerror=læse/skrive fejl
torlauncher.bootstrapWarning.pt_missing=mangler udskiftelig transport
diff --git a/src/chrome/locale/de/progress.dtd b/src/chrome/locale/de/progress.dtd
index 3386f46..9433d6f 100644
--- a/src/chrome/locale/de/progress.dtd
+++ b/src/chrome/locale/de/progress.dtd
@@ -1,4 +1,4 @@
<!ENTITY torprogress.dialog.title "Tor-Status">
<!ENTITY torprogress.openSettings "Einstellungen öffnen">
-<!ENTITY torprogress.heading "Mit dem Tor-Netzwerk wird verbinden">
-<!ENTITY torprogress.pleaseWait "Bitte warten, während die Verbindung zum Tor-Netzwerk hergestellt wird.">
+<!ENTITY torprogress.heading "Verbindung mit dem Tor-Netzwerk wird hergestellt">
+<!ENTITY torprogress.pleaseWait "Bitte warten Sie, während eine Verbindung zum Tor-Netzwerk hergestellt wird">
diff --git a/src/chrome/locale/es/network-settings.dtd b/src/chrome/locale/es/network-settings.dtd
index 246fe19..6aa47b2 100644
--- a/src/chrome/locale/es/network-settings.dtd
+++ b/src/chrome/locale/es/network-settings.dtd
@@ -1,4 +1,4 @@
-<!ENTITY torsettings.dialog.title "Configuración de red de Tor">
+<!ENTITY torsettings.dialog.title "Configuración de la red Tor">
<!-- For "first run" wizard: -->
@@ -7,11 +7,11 @@
<!ENTITY torSettings.yes "Si">
<!ENTITY torSettings.no "No">
-<!ENTITY torSettings.firstQuestion "¿Cuál de las siguientes describe mejor su situación?">
-<!ENTITY torSettings.configurePrompt1 "La conexión a Internet de este equipo está censurada o proxyficada.">
-<!ENTITY torSettings.configurePrompt2 "Necesito ajustar la configuración de repetidor puente (bridge) o de proxy local.">
+<!ENTITY torSettings.firstQuestion "¿Cuál de las siguientes opciones describe mejor su situación?">
+<!ENTITY torSettings.configurePrompt1 "La conexión a Internet de este equipo está censurada o proxificada.">
+<!ENTITY torSettings.configurePrompt2 "Necesito ajustar la configuración del repetidor puente(bridge) o del proxy local.">
<!ENTITY torSettings.configure "Configurar">
-<!ENTITY torSettings.connectPrompt2 "Me gustaría conectar directamente a la red Tor.">
+<!ENTITY torSettings.connectPrompt2 "Me gustaría conectarme directamente a la red Tor.">
<!ENTITY torSettings.connectPrompt3 "Esto funcionará en la mayoría de las situaciones.">
<!ENTITY torSettings.connect "Conectar">
@@ -20,8 +20,8 @@
<!ENTITY torSettings.proxyHelp "Si no está seguro de cómo responder a esta pregunta, mire la configuración de Internet en otro navegador para ver si está configurado para utilizar un proxy (interpuesto) local.">
<!ENTITY torSettings.enterProxy "Introduzca los ajustes del proxy.">
<!ENTITY torSettings.bridgeQuestion "Su proveedor de servicios de Internet (ISP) bloquea o censura de alguna forma las conexiones hacia la red Tor?">
-<!ENTITY torSettings.bridgeHelp "Si no está seguro como responder a esta pregunta, elija No.  Si usted elige Sí, se le pedirá configurar puentes Tor, los cuales son repetidores no listados que hacen más difícil el bloqueo de conexiones hacia la red Tor.">
-<!ENTITY torSettings.bridgeSettingsPrompt "Puede usar el juego de repetidores puente ('bridge') proporcionado, o puede obtener e introducir un juego de puentes personalizado.">
+<!ENTITY torSettings.bridgeHelp "Si no está seguro de como responder a esta pregunta, elija No.  Si usted elige Sí, se le pedirá configurar puentes Tor, los cuales son repetidores no listados que hacen más difícil el bloqueo de las conexiones hacia la red Tor.">
+<!ENTITY torSettings.bridgeSettingsPrompt "Puede utilizar el conjunto de repetidores puente (bridge) proporcionado, o puede obtener e introducir un juego de puentes personalizado.">
<!-- Other: -->
@@ -40,24 +40,24 @@
<!ENTITY torsettings.useProxy.type.socks4 "SOCKS 4">
<!ENTITY torsettings.useProxy.type.socks5 "SOCKS 5">
<!ENTITY torsettings.useProxy.type.http "HTTP / HTTPS">
-<!ENTITY torsettings.firewall.checkbox "Esta computadora va a través de un cortafuegos ('firewall') que sólo permite conexiones a ciertos puertos">
+<!ENTITY torsettings.firewall.checkbox "Esta computadora va a través de un cortafuegos(firewall) que sólo permite conexiones a ciertos puertos">
<!ENTITY torsettings.firewall.allowedPorts "Puertos permitidos:">
<!ENTITY torsettings.useBridges.checkbox "Mi Proveedor de Servicios de Internet (ISP) bloquea las conexiones a la red Tor">
<!ENTITY torsettings.useBridges.default "Conectar con los puentes proporcionados">
<!ENTITY torsettings.useBridges.type "Tipo de transporte:">
<!ENTITY torsettings.useBridges.custom "Introducir puentes personalizados">
-<!ENTITY torsettings.useBridges.label "Introduzca uno o más repetidores puente ('bridge', uno por línea).">
+<!ENTITY torsettings.useBridges.label "Introduzca uno o más repetidores puente(uno por línea).">
<!ENTITY torsettings.useBridges.placeholder "introduzca dirección:puerto">
-<!ENTITY torsettings.copyLog "Copiar el registro de mensajes ('log') de Tor al portapapeles">
+<!ENTITY torsettings.copyLog "Copiar el registro de mensajes(log) de Tor al portapapeles">
<!ENTITY torsettings.bridgeHelpTitle "Ayuda de repetidores puente ('bridge relays')">
-<!ENTITY torsettings.bridgeHelp1 "Si no puede conectar a la red Tor, podría ser que su proveedor de servicios de Internet (ISP) u otra agencia, esté bloqueando Tor.  A menudo, puede evitar este problema usando puentes ('bridges') de Tor, que son repetidores ('relays') de salida de la red Tor que no son publicitados, y es más difícil que sean bloqueados.">
-<!ENTITY torsettings.bridgeHelp1B "Puede usar el juego de direcciones de repetidores puente ('bridge') preconfigurado proporcionado, o puede obtener un juego de direcciones personalizado usando uno de estos tres métodos:">
+<!ENTITY torsettings.bridgeHelp1 "Si no puede conectarse a la red Tor, podría ser que su proveedor de servicios de Internet (ISP) u otra agencia, esté bloqueando Tor.  A menudo, puede evitar este problema usando puentes ('bridges') de Tor, que son repetidores ('relays') de salida de la red Tor que no son públicos, y es más difícil que sean bloqueados.">
+<!ENTITY torsettings.bridgeHelp1B "Puede usar el conjunto de direcciones de repetidores puente ('bridge') preconfigurado proporcionado, o puede obtener un conjunto de direcciones personalizado usando uno de estos tres métodos:">
<!ENTITY torsettings.bridgeHelp2Heading "Mediante la web">
<!ENTITY torsettings.bridgeHelp2 "Use un navegador web para visitar https://bridges.torproject.org">
<!ENTITY torsettings.bridgeHelp3Heading "Mediante el correo electrónico automático">
-<!ENTITY torsettings.bridgeHelp3.emailDesc "Envíe un correo electrónico a bridges(a)torproject.org únicamente con la línea 'get bridges' en el cuerpo del mensaje.  Sin embargo, para ponerle más difícil a un atacante adquirir muchas direcciones de puentes, tiene que enviar esta petición desde uno de los siguientes proveedores de correo electrónico (listados en orden de preferencia):">
+<!ENTITY torsettings.bridgeHelp3.emailDesc "Envíe un correo electrónico a bridges(a)torproject.org únicamente con la línea 'get bridges' en el cuerpo del mensaje.  Sin embargo, para ponerle más difícil a un atacante el poder adquirir muchas direcciones de puentes, tiene que enviar esta petición desde uno de los siguientes proveedores de correo electrónico (listados en orden de preferencia):">
<!ENTITY torsettings.bridgeHelp3.emailList "https://www.riseup.net, https://mail.google.com o https://mail.yahoo.com">
-<!ENTITY torsettings.bridgeHelp4Heading "Mediante el gabinete de ayuda">
+<!ENTITY torsettings.bridgeHelp4Heading "Mediante el soporte de usuario">
<!ENTITY torsettings.bridgeHelp4 "Como último recurso, puede pedir direcciones de repetidores puente enviando un cortés mensaje de correo a help(a)rt.torproject.org . 
-Por favor observe que es una persona la que tendrá que responder a cada petición.">
+Por favor tenga en cuenta que es una persona la que tendrá que responder a cada petición.">
diff --git a/src/chrome/locale/es/torlauncher.properties b/src/chrome/locale/es/torlauncher.properties
index 6f1c18a..42780e5 100644
--- a/src/chrome/locale/es/torlauncher.properties
+++ b/src/chrome/locale/es/torlauncher.properties
@@ -3,8 +3,8 @@
torlauncher.error_title=Arranque de Tor
-torlauncher.tor_exited=Tor se cerró inesperadamente. Esto podría deberse a un fallo con el propio Tor, con otro programa de su sistema, o a hardware defectuoso. Hasta que reinicie Tor, el Navegador Tor no podrá alcanzar ningún sitio web. Si el problema persiste, por favor envíe una copia de su Registro de Tor (log) al equipo de soporte.
-torlauncher.tor_exited2=Al reiniciar Tor no cerrará las pestañas de su navegador.
+torlauncher.tor_exited=Tor se cerró inesperadamente. Esto podría deberse a un fallo con el propio Tor, con otro programa de su sistema, o por hardware defectuoso. Hasta que reinicie Tor, el Navegador Tor no podrá abrir ningún sitio web. Si el problema persiste, por favor envíe una copia de su Registro de Tor (log) al equipo de soporte.
+torlauncher.tor_exited2=Al reiniciar Tor no se cerrarán las pestañas de su navegador.
torlauncher.tor_controlconn_failed=No se pudo conectar al puerto de control de Tor
torlauncher.tor_failed_to_start=Tor no pudo iniciarse.
torlauncher.tor_control_failed=Fallo al tomar control de Tor.
@@ -21,7 +21,7 @@ torlauncher.failed_to_get_settings=No se pudo recuperar las preferencias de Tor.
torlauncher.failed_to_save_settings=No fue posible guardar los ajustes de Tor.\n\n%S
torlauncher.ensure_tor_is_running=Por favor, asegúrese de que Tor se está ejecutando.
-torlauncher.error_proxy_addr_missing=Debe especificar tanto una dirección IP o nombre de máquina ('hostname') como un número de puerto para configurar Tor para que utilice un 'proxy' para acceder a la Internet.
+torlauncher.error_proxy_addr_missing=Tiene que especificar tanto una dirección IP o nombre de máquina ('hostname') como un número de puerto para configurar Tor para que utilice un 'proxy' para acceder a la Internet.
torlauncher.error_proxy_type_missing=Debe seleccionar el tipo de 'proxy'.
torlauncher.error_bridges_missing=Debe especificar uno o más puentes ('bridges').
torlauncher.error_default_bridges_type_missing=Debe seleccionar un tipo de transporte para los repetidores puente ('bridges') proporcionados.
@@ -37,7 +37,7 @@ torlauncher.done=Listo
torlauncher.forAssistance=Para obtener ayuda, contacte con %S
-torlauncher.copiedNLogMessages=Copia completada. %S mensajes de registro ('log') de Tor están listos para ser pegados en un editor de texto o un mensaje de correo electrónico.
+torlauncher.copiedNLogMessages=Copia completada. %S mensajes de registro ('log') de Tor están listos para ser pegados en un editor de texto o en un mensaje de correo electrónico.
torlauncher.bootstrapStatus.conn_dir=Conectando a un repositorio ('Directory') de repetidores ('relays')
torlauncher.bootstrapStatus.handshake_dir=Estableciendo una conexión cifrada con el repositorio de repetidores
@@ -58,4 +58,4 @@ torlauncher.bootstrapWarning.identity=las identidades no coinciden
torlauncher.bootstrapWarning.timeout=tiempo de espera de conexión agotado
torlauncher.bootstrapWarning.noroute=no hay ruta hacia el servidor ('host')
torlauncher.bootstrapWarning.ioerror=error de lectura/escritura
-torlauncher.bootstrapWarning.pt_missing=transporte enchufable desaparecido
+torlauncher.bootstrapWarning.pt_missing=transporte plugable no encontrado
diff --git a/src/chrome/locale/fi/network-settings.dtd b/src/chrome/locale/fi/network-settings.dtd
index 92d2dfe..3b70e7f 100644
--- a/src/chrome/locale/fi/network-settings.dtd
+++ b/src/chrome/locale/fi/network-settings.dtd
@@ -2,35 +2,35 @@
<!-- For "first run" wizard: -->
-<!ENTITY torsettings.prompt "Ennen kuin voit yhdistää Tor verkkoon, sinun pitää antaa tietoa tietokoneesi internet yhteydestä.">
+<!ENTITY torsettings.prompt "Ennen kuin voit yhdistää Tor-verkkoon, sinun on annettava tietoja tietokoneesi internet-yhteydestä.">
<!ENTITY torSettings.yes "Kyllä">
<!ENTITY torSettings.no "Ei">
<!ENTITY torSettings.firstQuestion "Mikä seuraavista kuvailee parhaiten tilannettasi?">
<!ENTITY torSettings.configurePrompt1 "Tämän tietokoneen internet-yhteys on sensuroitu tai kulkee välityspalvelimen kautta.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Minun on asetettava sillan tai paikallisen välityspalvelimen asetukset">
<!ENTITY torSettings.configure "Määritä">
<!ENTITY torSettings.connectPrompt2 "Haluan yhdistää suoraan Tor-verkkoon.">
<!ENTITY torSettings.connectPrompt3 "Tämä toimii useimmissa tilanteissa.">
<!ENTITY torSettings.connect "Yhdistä">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Tarvitseeko tämän tietokoneen käyttää paikallista välityspalvelinta Internet-pääsyyn?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Jos et ole varma, kuinka vastata tähän kysymykseen, katso toisen selaimen Internet-asetuksista, onko se asetettu käyttämään paikallista välityspalvelinta.">
<!ENTITY torSettings.enterProxy "Kirjoita välityspalvelinasetukset.">
<!ENTITY torSettings.bridgeQuestion "Sensuroiko tai estääkö sinun operaattorisi (ISP) yhteydet Tor-verkkoon?">
-<!ENTITY torSettings.bridgeHelp "Ellet ole varma kuinka vastata tähän kysymykseen, valitse No.  Jos valitset Kyllä, sinua pyydetään määrittämään Torin Sillat, jotka ovat listaamattomia releitä, jotta yhteyksiä olisi vaikeampi estää Torin verkkoon yhdistettäessä.">
+<!ENTITY torSettings.bridgeHelp "Ellet ole varma kuinka vastata tähän kysymykseen, valitse Ei.  Jos valitset Kyllä, sinua pyydetään määrittämään Tor-sillat, jotka ovat listaamattomia välityspalvelimia, jotta yhteyksiä olisi vaikeampi estää Tor-verkkoon yhdistettäessä.">
<!ENTITY torSettings.bridgeSettingsPrompt "Voit käyttää tarjottua siltajoukkoa tai voit hankkia ja kirjoittaa oman siltojen joukon.">
<!-- Other: -->
-<!ENTITY torsettings.startingTor "Odotetaan Torin käynnistymistä...">
+<!ENTITY torsettings.startingTor "Odotetaan Tor-sovelluksen käynnistymistä...">
<!ENTITY torsettings.restartTor "Käynnistä Tor uudelleen">
<!ENTITY torsettings.optional "Vaihtoehtoinen">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Tämä tietokone tarvitsee paikallisen välityspalvelimen Internet-pääsyyn">
<!ENTITY torsettings.useProxy.type "Välityspalvelintyyppi:">
<!ENTITY torsettings.useProxy.address "Osoite:">
<!ENTITY torsettings.useProxy.address.placeholder "IP-osoite tai palvelinnimi">
@@ -46,12 +46,12 @@
<!ENTITY torsettings.useBridges.default "Yhdistä tarjotuilla silloilla">
<!ENTITY torsettings.useBridges.type "Siirtotyyppi:">
<!ENTITY torsettings.useBridges.custom "Kirjoita omat sillat">
-<!ENTITY torsettings.useBridges.label "Kirjoita yksi tai useampi siltarele (yksi per rivi).">
+<!ENTITY torsettings.useBridges.label "Kirjoita yksi tai useampi siltavälityspalvelin (yksi per rivi).">
<!ENTITY torsettings.useBridges.placeholder "kirjoita osoite:portti">
<!ENTITY torsettings.copyLog "Kopioi Tor-loki leikepöydälle">
-<!ENTITY torsettings.bridgeHelpTitle "Siltareleopaste">
-<!ENTITY torsettings.bridgeHelp1 "Jos et pysty yhdistämään Tor-verkkoon, syy voi olla, että Internet palveluntarjoajasi (ISP) tai muu taho estää Torin.  Usein voit kiertää tämän ongelman käyttämällä Tor-siltoja, jotka ovat listaamattomia releitä, joita on vaikeampi estää.">
+<!ENTITY torsettings.bridgeHelpTitle "Siltavälityspalvelinopaste">
+<!ENTITY torsettings.bridgeHelp1 "Jos et pysty yhdistämään Tor-verkkoon, syy voi olla, että Internet palveluntarjoajasi (ISP) tai muu taho estää Tor-sovelluksen.  Usein voit kiertää tämän ongelman käyttämällä Tor-siltoja, jotka ovat listaamattomia välityspalvelimia, joita on vaikeampi estää.">
<!ENTITY torsettings.bridgeHelp1B "Voit käyttää esiasetettuja, tarjottuja siltaosoitejoukkoja tai voit hankkia oman osoitejoukon käyttämällä yhtä näistä kolmesta menetelmästä:">
<!ENTITY torsettings.bridgeHelp2Heading "Verkon yli">
<!ENTITY torsettings.bridgeHelp2 "Käytä internet-selainta vieraillaksesi osoitteessa: https://bridges.torproject.org">
diff --git a/src/chrome/locale/fi/progress.dtd b/src/chrome/locale/fi/progress.dtd
index 957640e..1ddad9b 100644
--- a/src/chrome/locale/fi/progress.dtd
+++ b/src/chrome/locale/fi/progress.dtd
@@ -1,4 +1,4 @@
-<!ENTITY torprogress.dialog.title "Torin tila">
-<!ENTITY torprogress.openSettings "Avaa Asetukset">
+<!ENTITY torprogress.dialog.title "Tor-tila">
+<!ENTITY torprogress.openSettings "Avaa asetukset">
<!ENTITY torprogress.heading "Yhdistetään Tor-verkkoon">
<!ENTITY torprogress.pleaseWait "Odota hetki yhteyden muodostamista Tor-verkkoon.">
diff --git a/src/chrome/locale/fi/torlauncher.properties b/src/chrome/locale/fi/torlauncher.properties
index b5bb23c..533f596 100644
--- a/src/chrome/locale/fi/torlauncher.properties
+++ b/src/chrome/locale/fi/torlauncher.properties
@@ -3,15 +3,15 @@
torlauncher.error_title=Tor-käynnistin
-torlauncher.tor_exited=Tor sammui odottamatta. Tämä voi olla virhe Torissa itsessään, tai toisen ohjelman järjestelmässäsi aiheuttama, tai laitteistovirhe. Tor ei kykene tavoittamaan yhtään verkkosivua, jos et käynnistä Toria uudelleen. Jos tämä ongelma jatkuu, lähetä kopio Torin lokitiedostosta tukiryhmälle.
-torlauncher.tor_exited2=Torin käynnistäminen uudestaan ei sulje selaimesi välilehtiä.
-torlauncher.tor_controlconn_failed=Yhteydenotto Torin hallintaporttiin epäonnistui.
-torlauncher.tor_failed_to_start=Torin käynnistys epäonnistui.
-torlauncher.tor_control_failed=Torin haltuun ottaminen epäonnistui.
+torlauncher.tor_exited=Tor sammui odottamatta. Tämä voi olla virhe Tor-sovelluksessa itsessään, tai toisen ohjelman järjestelmässäsi aiheuttama, tai laitteistovirhe. Tor ei kykene tavoittamaan yhtään verkkosivua, jos et käynnistä Tor-sovellusta uudelleen. Jos tämä ongelma jatkuu, lähetä kopio Tor-lokitiedostosta tukiryhmälle.
+torlauncher.tor_exited2=Tor-sovelluksen käynnistäminen uudestaan ei sulje selaimesi välilehtiä.
+torlauncher.tor_controlconn_failed=Yhteydenotto Tor-sovelluksen hallintaporttiin epäonnistui.
+torlauncher.tor_failed_to_start=Tor-sovelluksen käynnistys epäonnistui.
+torlauncher.tor_control_failed=Tor-sovelluksen haltuun ottaminen epäonnistui.
torlauncher.tor_bootstrap_failed=Yhteyden muodostaminen Tor-verkkoon epäonnistui.
torlauncher.tor_bootstrap_failed_details=%1$S epäonnistui (%2$S).
-torlauncher.unable_to_start_tor=Torin käynnistys epäonnistui.\n\n%S
+torlauncher.unable_to_start_tor=Tor-sovelluksen käynnistys epäonnistui.\n\n%S
torlauncher.tor_missing=Suoritettava Tor-tiedosto puuttuu.
torlauncher.torrc_missing=Tiedosto torrc puuttuu.
torlauncher.datadir_missing=Tor-tietohakemistoa ei ole.
@@ -21,7 +21,7 @@ torlauncher.failed_to_get_settings=Tor-asetusten noutaminen epäonnistui.\n\n%S
torlauncher.failed_to_save_settings=Tor-asetusten tallentaminen epäonnistui.\n\n%S
torlauncher.ensure_tor_is_running=Varmista, että Tor on käynnissä.
-torlauncher.error_proxy_addr_missing=Sinun on määriteltävä sekä IP-osoite että porttinumero tai sekä verkkonimi että porttinumero, jotta Tor voi yhdistää välityspalvelimen kautta Internetiin.
+torlauncher.error_proxy_addr_missing=Sinun on määriteltävä sekä IP-osoite että porttinumero tai sekä verkkonimi että porttinumero, jotta Tor-sovelluksen voi yhdistää välityspalvelimen kautta Internetiin.
torlauncher.error_proxy_type_missing=Sinun on valittava välityspalvelimen tyyppi.
torlauncher.error_bridges_missing=Määrittele yksi tai useampi silta.
torlauncher.error_default_bridges_type_missing=Sinun täytyy valita siirtotyyppi tarjotuille silloille.
@@ -35,9 +35,9 @@ torlauncher.quit=Lopeta
torlauncher.quit_win=Lopeta
torlauncher.done=Valmis
-torlauncher.forAssistance=Tukea saat ottamalla yhteyttä %S
+torlauncher.forAssistance=Tukea saat ottamalla yhteyttä osoitteeseen %S
-torlauncher.copiedNLogMessages=Kopionti suoritettu. %S Tor loki viesti on valmis kopiotavaksi textieditoriin tai sähköposti viestiin.
+torlauncher.copiedNLogMessages=Kopionti suoritettu. %S Tor-lokiviestiä on valmiina kopiotavaksi tekstimuokkaimeen tai sähköpostiviestiin.
torlauncher.bootstrapStatus.conn_dir=Yhdistetään reititinhakemistoon
torlauncher.bootstrapStatus.handshake_dir=Muodostetaan suojattu yhteys hakemistoon
@@ -47,7 +47,7 @@ torlauncher.bootstrapStatus.loading_keys=Ladataan juurivarmenteita
torlauncher.bootstrapStatus.requesting_descriptors=Pyydetään reititintietoja
torlauncher.bootstrapStatus.loading_descriptors=Ladataan reititintietoja
torlauncher.bootstrapStatus.conn_or=Yhdistetään Tor-verkkoon
-torlauncher.bootstrapStatus.handshake_or=Muodostetaan Tor-reitti
+torlauncher.bootstrapStatus.handshake_or=Muodostetaan Tor-kiertotie
torlauncher.bootstrapStatus.done=Yhdistetty Tor-verkkoon!
torlauncher.bootstrapWarning.done=valmis
diff --git a/src/chrome/locale/fr/network-settings.dtd b/src/chrome/locale/fr/network-settings.dtd
index b9c5b7d..877dc1a 100644
--- a/src/chrome/locale/fr/network-settings.dtd
+++ b/src/chrome/locale/fr/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "Laquelle des phrases suivantes décrit le mieux votre situation ?">
<!ENTITY torSettings.configurePrompt1 "Le connexion internet de cet ordinateur est bloqué ou utilise un proxy.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Je dois configurer le pont réseau ou les paramètres du proxy.">
<!ENTITY torSettings.configure "Configurer">
<!ENTITY torSettings.connectPrompt2 "Je souhaite me connecter directement au réseau Tor.">
<!ENTITY torSettings.connectPrompt3 "Cela fonctionnera dans la plupart des situations.">
<!ENTITY torSettings.connect "Se connecter">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Est-ce que cet ordinateur a besoin d'utiliser un proxy pour accéder à internet ?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Si vous n'êtes pas sure de la réponse à cette question, regardez les paramètres internet dans un autre navigateur pour voir si il est configuré pour l'utilisation d'un proxy.">
<!ENTITY torSettings.enterProxy "Entrez les paramètres de votre proxy.">
<!ENTITY torSettings.bridgeQuestion "Est-ce que votre Fournisseur d'Accès Internet (FAI) bloque les connexions au réseau Tor ?">
<!ENTITY torSettings.bridgeHelp "Si vous ne savez pas comment répondre à cette question, choisissez Non.  Si vous choisissez Oui, il vous sera demandé de configurer les bridges Tor qui sont des relais non listés et qui rendent plus difficile le blocage du réseau Tor.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Optionnel">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Cet ordinateur a besoin d'utiliser un proxy pour accéder à internet.">
<!ENTITY torsettings.useProxy.type "Type de proxy :">
<!ENTITY torsettings.useProxy.address "Adresse :">
<!ENTITY torsettings.useProxy.address.placeholder "Adresse IP ou nom d'hôte">
diff --git a/src/chrome/locale/fr/progress.dtd b/src/chrome/locale/fr/progress.dtd
index 936d220..d028d4c 100644
--- a/src/chrome/locale/fr/progress.dtd
+++ b/src/chrome/locale/fr/progress.dtd
@@ -1,4 +1,4 @@
<!ENTITY torprogress.dialog.title "État de Tor">
<!ENTITY torprogress.openSettings "Ouvrir les paramètres">
<!ENTITY torprogress.heading "Connexion au réseau Tor">
-<!ENTITY torprogress.pleaseWait "Veuillez patienter pendant que la connexion au réseau Tor est établie.">
+<!ENTITY torprogress.pleaseWait "Veuillez patienter pendant que la connexion au réseau Tor s'établit.">
diff --git a/src/chrome/locale/hi/progress.dtd b/src/chrome/locale/hi/progress.dtd
index ebd9cef..87f2f41 100644
--- a/src/chrome/locale/hi/progress.dtd
+++ b/src/chrome/locale/hi/progress.dtd
@@ -1,4 +1,4 @@
-<!ENTITY torprogress.dialog.title "Tor Status">
-<!ENTITY torprogress.openSettings "Open Settings">
-<!ENTITY torprogress.heading "Connecting to the Tor network">
-<!ENTITY torprogress.pleaseWait "Please wait while we establish a connection to the Tor network.">
+<!ENTITY torprogress.dialog.title "टोर स्थिति">
+<!ENTITY torprogress.openSettings "व्यवस्था खोलें">
+<!ENTITY torprogress.heading "टोर संजाल से जुड़ रहा है">
+<!ENTITY torprogress.pleaseWait "टोर संजाल से संचार स्थापित होने तक प्रतीक्षा करें।">
diff --git a/src/chrome/locale/hi/torlauncher.properties b/src/chrome/locale/hi/torlauncher.properties
index 2bea597..f093ec6 100644
--- a/src/chrome/locale/hi/torlauncher.properties
+++ b/src/chrome/locale/hi/torlauncher.properties
@@ -46,7 +46,7 @@ torlauncher.bootstrapStatus.loading_status=Loading network status
torlauncher.bootstrapStatus.loading_keys=Loading authority certificates
torlauncher.bootstrapStatus.requesting_descriptors=Requesting relay information
torlauncher.bootstrapStatus.loading_descriptors=Loading relay information
-torlauncher.bootstrapStatus.conn_or=Connecting to the Tor network
+torlauncher.bootstrapStatus.conn_or=टोर संजाल से जुड़ रहा है
torlauncher.bootstrapStatus.handshake_or=Establishing a Tor circuit
torlauncher.bootstrapStatus.done=Connected to the Tor network!
diff --git a/src/chrome/locale/hu/network-settings.dtd b/src/chrome/locale/hu/network-settings.dtd
index 2f95130..5d9c56a 100644
--- a/src/chrome/locale/hu/network-settings.dtd
+++ b/src/chrome/locale/hu/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "A következők közül melyik illik jobban a szituációhoz?">
<!ENTITY torSettings.configurePrompt1 "Ennek a számítógépnek a forgalma cenzorált vagy proxizott.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Szükségem van híd vagy helyi proxy beállítására.">
<!ENTITY torSettings.configure "Beállít">
<!ENTITY torSettings.connectPrompt2 "Szeretnék közvetlenül kapcsolódni a Tor hálózathoz.">
<!ENTITY torSettings.connectPrompt3 "A legtöbb esetben ez működni fog.">
<!ENTITY torSettings.connect "Csatlakozás">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Ez a számítgép helyi proxyn keresztül éri el az Internetet? ">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Ha nem biztos ennek a kérdésnek a megválaszolásában, kattintson az Internet beállításokra a másik böngészőjében, és tekintse meg, hog van-e benne beállítva helyiproxy.">
<!ENTITY torSettings.enterProxy "Adja meg a proxy beállításokat.">
<!ENTITY torSettings.bridgeQuestion "Az internet szolgáltatód (ISP) blokkolja vagy cenzúrázza a kapcsolatot a Tor hálózathoz?">
<!ENTITY torSettings.bridgeHelp "Ha nem vagy biztos a válaszban, válaszd a Nem-et.  Ha az Igen-t választod neked kell konfigurálni a Tor bridges amik nem listázott átjátszók és nehezebbé teszik a Tor hálózat kapcsolódásának a blokkolását.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Opcionális">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Ez a számítógép helyi proxyn keresztül kell éri el az Internetet">
<!ENTITY torsettings.useProxy.type "Proxy Típus:">
<!ENTITY torsettings.useProxy.address "Cím:">
<!ENTITY torsettings.useProxy.address.placeholder "IP cím vagy gépnév">
diff --git a/src/chrome/locale/id/network-settings.dtd b/src/chrome/locale/id/network-settings.dtd
index 1acf78d..428626b 100644
--- a/src/chrome/locale/id/network-settings.dtd
+++ b/src/chrome/locale/id/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "Yang mana dari di bawah ini cocok dengan situasi anda?">
<!ENTITY torSettings.configurePrompt1 "Koneksi internet komputer ini disensor atau terproksi.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Saya membutuhkan konfigurasi jembatan atau seting proksi lokal">
<!ENTITY torSettings.configure "Konfigur">
<!ENTITY torSettings.connectPrompt2 "Saya ingin menghubungkan secara langsung ke jaringan Tor.">
<!ENTITY torSettings.connectPrompt3 "Hal ini akan bekerja dalam kebanyakan situasi.">
<!ENTITY torSettings.connect "Hubungi">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Apakah komputer ini membutuhkan proksi lokal untuk dapat mengakses internet ?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Jika anda tidak yakin untuk menjawab pertanyaan ini, llihatlah pada setelan jaringan di browser lain apakah terkonfigurasi dengan proksi lokal.">
<!ENTITY torSettings.enterProxy "Masukkan pengaturan proxy.">
<!ENTITY torSettings.bridgeQuestion "Apakah Internet Service Provider (ISP) blok atau sensor koneksi lain ke Tor Jaringan?">
<!ENTITY torSettings.bridgeHelp "Jika Anda tidak yakin bagaimana untuk menjawab pertanyaan ini, pilih No.  Jika Anda memilih Ya, Anda akan diminta untuk mengkonfigurasi Tor Bridges, yang relai terdaftar yang membuat lebih sulit untuk memblokir koneksi ke jaringan Tor.">
@@ -53,7 +53,7 @@
<!ENTITY torsettings.bridgeHelpTitle "Bantuan Bridge Relay">
<!ENTITY torsettings.bridgeHelp1 "Jika Anda tidak dapat terhubung ke jaringan Tor, bisa jadi Provider Layanan Internet (ISP) atau lembaga lain yang menghalangi Tor.   Sering kali, Anda dapat mengatasi masalah ini dengan menggunakan Tor Bridges, yang relai terdaftar yang lebih sulit untuk memblokir.">
<!ENTITY torsettings.bridgeHelp1B "Anda dapat menggunakan prekonfigurasi, disediakan alamat set bridge atau Anda mungkin mendapatkan satu set kebiasaan alamat dengan menggunakan salah satu dari tiga metode ini:">
-<!ENTITY torsettings.bridgeHelp2Heading "Through the Web">
+<!ENTITY torsettings.bridgeHelp2Heading "Lewat web">
<!ENTITY torsettings.bridgeHelp2 "Use a web browser to visit https://bridges.torproject.org">
<!ENTITY torsettings.bridgeHelp3Heading "Through the Email Autoresponder">
<!ENTITY torsettings.bridgeHelp3.emailDesc "Send email to bridges(a)torproject.org with the line 'get bridges' by itself in the body of the message.  However, to make it harder for an attacker to learn a lot of bridge addresses, you must send this request from one of the following email providers (listed in order of preference):">
diff --git a/src/chrome/locale/it/network-settings.dtd b/src/chrome/locale/it/network-settings.dtd
index 3343dec..4d866db 100644
--- a/src/chrome/locale/it/network-settings.dtd
+++ b/src/chrome/locale/it/network-settings.dtd
@@ -15,9 +15,9 @@
<!ENTITY torSettings.connectPrompt3 "Questo funzionerà nella maggior parte delle situazioni.">
<!ENTITY torSettings.connect "Connetti">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Questo computer richiede l'uso di un proxy locale per accedere ad Internet?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Se non sei sicuro su come rispondere a questa domanda, guarda alle impostazioni Internet in un altro browser per vedere come è configurato per l'uso di un proxy locale.">
<!ENTITY torSettings.enterProxy "Inserisci le impostazioni del proxy.">
<!ENTITY torSettings.bridgeQuestion "Il tuo fornitore di servizi internet (ISP) blocca o censura la connessione alla rete Tor?">
<!ENTITY torSettings.bridgeHelp "Se non sei sicuro di come rispondere alla domanda, scegli No.  Se scegli Sì, ti verrà chiesto di configurare Tor Bridges, che consiste in relay non elencati che rendono più difficile bloccare le connessioni alla Rete Tor.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Facoltativo">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Questo computer richiede l'uso di un proxy locale per accedere a Internet">
<!ENTITY torsettings.useProxy.type "Tipo di proxy:">
<!ENTITY torsettings.useProxy.address "Indirizzo:">
<!ENTITY torsettings.useProxy.address.placeholder "Indirizzo IP oppure hostname">
diff --git a/src/chrome/locale/lo/torlauncher.properties b/src/chrome/locale/lo/torlauncher.properties
index a849dfe..10e34b0 100644
--- a/src/chrome/locale/lo/torlauncher.properties
+++ b/src/chrome/locale/lo/torlauncher.properties
@@ -27,7 +27,7 @@ torlauncher.error_bridges_missing=You must specify one or more bridges.
torlauncher.error_default_bridges_type_missing=You must select a transport type for the provided bridges.
torlauncher.error_bridge_bad_default_type=No provided bridges that have the transport type %S are available. Please adjust your settings.
-torlauncher.recommended_bridge=(recommended)
+torlauncher.recommended_bridge=(ແນະນໍາ)
torlauncher.connect=ເຊື່ອມຕໍ່
torlauncher.restart_tor=Restart Tor
diff --git a/src/chrome/locale/nb/network-settings.dtd b/src/chrome/locale/nb/network-settings.dtd
index 1371170..94b7875 100644
--- a/src/chrome/locale/nb/network-settings.dtd
+++ b/src/chrome/locale/nb/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "Hvilket av følgende beskriver best din situasjon?">
<!ENTITY torSettings.configurePrompt1 "Computeren's internett tilkobling er sensurert eller under proxy.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Jeg trenger å konfigurere en bro eller lokale mellomtjener innstillinger.">
<!ENTITY torSettings.configure "Konfigurer">
<!ENTITY torSettings.connectPrompt2 "Jeg vil koble direkte til Tor-nettverket.">
<!ENTITY torSettings.connectPrompt3 "Dette vil fungere i de fleste situasjoner.">
<!ENTITY torSettings.connect "Koble til">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Trenger denne maskinen å bruke en lokal mellomtjener for å nå Internett?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Dersom du er usikker på hvordan du skal svare på dette spørsmålet, sjekk Internett innstillingene i en annen nettleser for å se om den er konfigurert til å bruke en lokal mellomtjener.">
<!ENTITY torSettings.enterProxy "Skriv inn proxy-innstillingene.">
<!ENTITY torSettings.bridgeQuestion "Blokkerer eller sensurerer internettleverandøren (ISP) din tilkoblinger til Tor-nettverket?">
<!ENTITY torSettings.bridgeHelp "Hvis du er usikker på hva du skal svare på dette spørsmålet, velg Nei.  Hvis du velger Ja, vil du bli bedt om å konfigurere Tor-broer, som er ulistede reléer som gjør det vanskeligere å blokkere tilkoblinger til Tor-nettverket.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Valgfritt">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Denne maskinen trenger å bruke en mellomtjener for å nå Internett">
<!ENTITY torsettings.useProxy.type "Proxytype:">
<!ENTITY torsettings.useProxy.address "Adresse:">
<!ENTITY torsettings.useProxy.address.placeholder "IP-adresse, eller vertsnavn">
diff --git a/src/chrome/locale/pt/network-settings.dtd b/src/chrome/locale/pt/network-settings.dtd
index 68cf442..d8093f2 100644
--- a/src/chrome/locale/pt/network-settings.dtd
+++ b/src/chrome/locale/pt/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "Qual das seguintes frases melhor descreve a sua situação?">
<!ENTITY torSettings.configurePrompt1 "Esta ligação à Internet deste computador está censurada ou é efetuada via proxy.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Preciso de configurar a ponte ou as definições locais de proxy.">
<!ENTITY torSettings.configure "Configurar">
<!ENTITY torSettings.connectPrompt2 "Eu gostaria de me ligar diretamente à rede Tor.">
<!ENTITY torSettings.connectPrompt3 "Isto funciona na maior parte das situações.">
<!ENTITY torSettings.connect "Ligar">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Este computador precisa de usar um acesso proxy à Intrnet?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Se não tem a certeza da resposta, veja as definições de Internet noutro navegador para confirmar se está configurado para usar um proxy local.">
<!ENTITY torSettings.enterProxy "Insira as definições do proxy.">
<!ENTITY torSettings.bridgeQuestion "O seu fornecedor de serviços de internet bloqueia ou censura ligações à rede Tor ?">
<!ENTITY torSettings.bridgeHelp "Se não tem a certeza de como responder a esta questão, escolha o Nº.  Se escolher Sim, vai-lhe ser pedido para configurar as Tor Bridges, que são pontos de passagem não listados mais difíceis de bloquear ligações à rede Tor.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Opcional">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Este computador precisa de usar um proxy local para aceder à Internet.">
<!ENTITY torsettings.useProxy.type "Tipo de Proxy:">
<!ENTITY torsettings.useProxy.address "Endereço:">
<!ENTITY torsettings.useProxy.address.placeholder "Endereço de IP ou nome do anfitrião">
diff --git a/src/chrome/locale/pt/torlauncher.properties b/src/chrome/locale/pt/torlauncher.properties
index 78b4729..45b7a61 100644
--- a/src/chrome/locale/pt/torlauncher.properties
+++ b/src/chrome/locale/pt/torlauncher.properties
@@ -1,14 +1,14 @@
### Copyright (c) 2014, The Tor Project, Inc.
### See LICENSE for licensing information.
-torlauncher.error_title=Iniciador Tor
-
-torlauncher.tor_exited=O tor encerrou inesperadamente. Pode ser devido a erro dentro o Tor, noutro programa no seu sistema ou falha no equipamento. Até reiniciar, o Tor não será capaz de aceder a nenhum website. Se o problema persistir, por favor envie uma cópia do diário do seu Tor à equipa de assistência.
-torlauncher.tor_exited2=Reiniciar o Tor não fecha os seus separadores.
-torlauncher.tor_controlconn_failed=Não foi possível ligar ao porto de controlo do Tor.
-torlauncher.tor_failed_to_start=O Tor falhou a inicialização.
-torlauncher.tor_control_failed=Falha ao tentar controlar o Tor
-torlauncher.tor_bootstrap_failed=O Tor falhou ao estabelecer uma ligação de rede Tor.
+torlauncher.error_title=Executor Tor
+
+torlauncher.tor_exited=O Tor encerrou inesperadamente. Isto pode ter acontecido devido a erro dentro do Tor, outro programa no seu sistema ou falha de hardware. Até que reinicie o Tor, o Navegador Tor não irá poder aceder a quaisquer sítios da Web. Se o problema persistir, por favor, envie uma cópia do Registo de Eventos do seu Tor para a equipa de suporte.
+torlauncher.tor_exited2=Ao reiniciar o Tor não irá fechar os separadores do seu navegador.
+torlauncher.tor_controlconn_failed=Não foi possível conetar à porta de controlo do Tor.
+torlauncher.tor_failed_to_start=O Tor não foi iniciado.
+torlauncher.tor_control_failed=Não foi possível obter o controlo do Tor
+torlauncher.tor_bootstrap_failed=O Tor não conseguiu estabelecer uma ligação de rede Tor.
torlauncher.tor_bootstrap_failed_details=%1$S falhou (%2$S).
torlauncher.unable_to_start_tor=Não é possível iniciar o Tor.\n\n %S
@@ -19,13 +19,13 @@ torlauncher.password_hash_missing=Não foi possível obter a senha "hashed".
torlauncher.failed_to_get_settings=Não é possível obter as definições do Tor\n\n %S
torlauncher.failed_to_save_settings=Não é possível guardar as definições do Tor\n\n %S
-torlauncher.ensure_tor_is_running=Por favor, verifique se o Tor está em execução.
+torlauncher.ensure_tor_is_running=Por favor, assegure que o Tor está em execução.
-torlauncher.error_proxy_addr_missing=Deve especificar tanto um endereço IP ou nome do hospedeiro como um número de porto, para configurar o Tor para utilizar um proxy para aceder à Internet.
+torlauncher.error_proxy_addr_missing=Deve especificar ambos, um endereço de IP ou o nome de hospedeiro e um número de porta para configurar o Tor, para utilizar um proxy para aceder à Internet.
torlauncher.error_proxy_type_missing=Deve selecionar o tipo de proxy.
torlauncher.error_bridges_missing=Deve especificar uma ou mais pontes.
torlauncher.error_default_bridges_type_missing=Deve selecionar o tipo de transporte para as pontes fornecidas
-torlauncher.error_bridge_bad_default_type=Não há pontes disponíveis que tenham o tipo de transport %S. Por favor ajuste as configurações.
+torlauncher.error_bridge_bad_default_type=Não estão disponíveis as pontes fornecidas que têm o tipo de transporte %S. Por favor, ajuste as suas configurações.
torlauncher.recommended_bridge=(recomendado)
@@ -33,19 +33,19 @@ torlauncher.connect=Ligar
torlauncher.restart_tor=Reiniciar o Tor
torlauncher.quit=Sair
torlauncher.quit_win=Sair
-torlauncher.done=Completo
+torlauncher.done=Concluído
torlauncher.forAssistance=Para assistência, contacte %S
-torlauncher.copiedNLogMessages=Cópia completa. %S mensagens de diário estão prontas para ser coladas num editor de texto ou numa mensagem de correio eletrónico.
+torlauncher.copiedNLogMessages=Cópia completa. Estão prontas %S mensagens do registo de eventos do Tor para serem coladas num editor de texto ou numa mensagem de correio eletrónico.
torlauncher.bootstrapStatus.conn_dir=A ligar ao diretório do retransmissor
-torlauncher.bootstrapStatus.handshake_dir=A estabelecer uma ligação de diretório encriptada
+torlauncher.bootstrapStatus.handshake_dir=A estabelecer uma ligação de diretoria encriptada
torlauncher.bootstrapStatus.requesting_status=A obter o estado da rede
torlauncher.bootstrapStatus.loading_status=A carregar o estado da rede
torlauncher.bootstrapStatus.loading_keys=A carregar os certificados de autoridade
-torlauncher.bootstrapStatus.requesting_descriptors=A pedir informação do retransmissor
-torlauncher.bootstrapStatus.loading_descriptors=A carregar informações do retransmissor
+torlauncher.bootstrapStatus.requesting_descriptors=A solicitar a informação do retransmissor
+torlauncher.bootstrapStatus.loading_descriptors=A carregar a informação do retransmissor
torlauncher.bootstrapStatus.conn_or=A ligar à rede Tor
torlauncher.bootstrapStatus.handshake_or=A estabelecer um circuito Tor
torlauncher.bootstrapStatus.done=Ligado à rede Tor
@@ -55,7 +55,7 @@ torlauncher.bootstrapWarning.connectrefused=ligação recusada
torlauncher.bootstrapWarning.misc=diversos
torlauncher.bootstrapWarning.resourcelimit=recursos insuficientes
torlauncher.bootstrapWarning.identity=identidade não correspondente
-torlauncher.bootstrapWarning.timeout=Tempo de ligação expirado
+torlauncher.bootstrapWarning.timeout=ligação expirada
torlauncher.bootstrapWarning.noroute=sem rota para o hospedeiro
-torlauncher.bootstrapWarning.ioerror=Erro de leitura/escrita
-torlauncher.bootstrapWarning.pt_missing=Transporte de ligacao ausente
+torlauncher.bootstrapWarning.ioerror=Erro de leitura/gravação
+torlauncher.bootstrapWarning.pt_missing=transporte de ligação em falta
diff --git a/src/chrome/locale/sq/network-settings.dtd b/src/chrome/locale/sq/network-settings.dtd
index d8eafe3..85b0cae 100644
--- a/src/chrome/locale/sq/network-settings.dtd
+++ b/src/chrome/locale/sq/network-settings.dtd
@@ -1,62 +1,62 @@
-<!ENTITY torsettings.dialog.title "Parametrat e rrjetit Tor">
+<!ENTITY torsettings.dialog.title "Konfigurimi i Rrjetit të Tor">
<!-- For "first run" wizard: -->
-<!ENTITY torsettings.prompt "Before you connect to the Tor network, you need to provide information about this computer's Internet connection.">
+<!ENTITY torsettings.prompt "Përpara se të lidheni me rrjetin e Tor, ju nevojitet të ofroni informacion rreth lidhjes së Internetit të këtij kompjuteri.">
<!ENTITY torSettings.yes "Po">
<!ENTITY torSettings.no "Jo">
-<!ENTITY torSettings.firstQuestion "Cila nga këto i përshtatet më shumë situatës tuaj aktuale?">
-<!ENTITY torSettings.configurePrompt1 "This computer's Internet connection is censored or proxied.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
-<!ENTITY torSettings.configure "Konfiguro">
-<!ENTITY torSettings.connectPrompt2 "Do të dëshiroja të lidhesha direkt me rrjetin Tor.">
-<!ENTITY torSettings.connectPrompt3 "This will work in most situations.">
-<!ENTITY torSettings.connect "Lidhu">
+<!ENTITY torSettings.firstQuestion "Cila nga këto e përshkruan më mirë situatën tuaj të tanishme?">
+<!ENTITY torSettings.configurePrompt1 "Lidhja e Internetit të këtij kompjuteri është e censuruar ose me proxy">
+<!ENTITY torSettings.configurePrompt2 "Më duhet të konfiguroj urën ose parametrat e proxy-t.">
+<!ENTITY torSettings.configure "Konfiguroni">
+<!ENTITY torSettings.connectPrompt2 "Do të dëshiroja të lidhesha drejtpërdrejt me rrjetin e Tor.">
+<!ENTITY torSettings.connectPrompt3 "Kjo do të funksionojë në shumë situata.">
+<!ENTITY torSettings.connect "Lidhuni">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "A i nevojitet këtij kompjuteri që të përdorë një proxy lokal, për t'u qasur në Internet?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
-<!ENTITY torSettings.enterProxy "Jepni parametrat e përfaqësimit 'proxy'.">
-<!ENTITY torSettings.bridgeQuestion "Does your Internet Service Provider (ISP) block or otherwise censor connections to the Tor Network?">
-<!ENTITY torSettings.bridgeHelp "If you are not sure how to answer this question, choose No.  If you choose Yes, you will be asked to configure Tor Bridges, which are unlisted relays that make it more difficult to block connections to the Tor Network.">
-<!ENTITY torSettings.bridgeSettingsPrompt "You may use the provided set of bridges or you may obtain and enter a custom set of bridges.">
+<!ENTITY torSettings.proxyHelp "Nëse s'jeni i sigurt sesi t'i përgjigjeni kësaj pyetje, shikoni tek konfigurimi i Internetit në një tjetër shfletues, për të parë nëse ai është i konfiguruar për të përdorur një proxy lokal.">
+<!ENTITY torSettings.enterProxy "Futni konfigurimin e proxy-t.">
+<!ENTITY torSettings.bridgeQuestion "A i pengon ose censuron lidhjet për tek Rrjeti Tor, Ofruesi juaj i Shërbimit Internet (ISP)?">
+<!ENTITY torSettings.bridgeHelp "Nëse s'jeni i sigurt sesi t'i përgjigjeni kësaj pyetje, përzgjidhni "Jo".  Nëse përzgjidhni "Po", do t'ju kërkohet të konfiguroni Tor bridges, të cilat janë rele të palistuara, që e bëjnë më të vështirë pengimin e lidhjeve për tek Rrjeti Tor.">
+<!ENTITY torSettings.bridgeSettingsPrompt "Ju mund të përdorni grupin e dhënë të urave, ose mund të përftoni dhe futni një sasi të personalizuar urash.">
<!-- Other: -->
<!ENTITY torsettings.startingTor "Duke pritur që Tor të nisë...">
-<!ENTITY torsettings.restartTor "Restart Tor">
+<!ENTITY torsettings.restartTor "Riniseni Tor-in">
-<!ENTITY torsettings.optional "Fakultativ">
+<!ENTITY torsettings.optional "Me zgjedhje">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
-<!ENTITY torsettings.useProxy.type "Tipi i përfaqësuesit:">
+<!ENTITY torsettings.useProxy.checkbox "Ky kompjuter nevojitet që të përdorë një proxy lokal, që të ketë qasje në Internet">
+<!ENTITY torsettings.useProxy.type "Lloji i Proxy-t:">
<!ENTITY torsettings.useProxy.address "Adresa:">
<!ENTITY torsettings.useProxy.address.placeholder "Adresa IP ose emri i pritësit">
<!ENTITY torsettings.useProxy.port "Porta:">
-<!ENTITY torsettings.useProxy.username "Përdoruesi:">
-<!ENTITY torsettings.useProxy.password "Password:">
+<!ENTITY torsettings.useProxy.username "Emri i përdoruesit:">
+<!ENTITY torsettings.useProxy.password "Fjalëkalimi:">
<!ENTITY torsettings.useProxy.type.socks4 "SOCKS 4">
<!ENTITY torsettings.useProxy.type.socks5 "SOCKS 5">
<!ENTITY torsettings.useProxy.type.http "HTTP / HTTPS">
-<!ENTITY torsettings.firewall.checkbox "Ky kompjuter kalon nëpërmjet një mbrojtësi 'firewall' i cili lejon lidhje vetëm në disa porta.">
-<!ENTITY torsettings.firewall.allowedPorts "Portat e lejuara:">
-<!ENTITY torsettings.useBridges.checkbox "Ofruesi im i shërbimit të internetit (ISP) bllokon lidhjet drejt rrjetit Tor">
-<!ENTITY torsettings.useBridges.default "Connect with provided bridges">
-<!ENTITY torsettings.useBridges.type "Transport type:">
-<!ENTITY torsettings.useBridges.custom "Enter custom bridges">
-<!ENTITY torsettings.useBridges.label "Jepni një ose më shumë rele urash (një për çdo rresht)">
-<!ENTITY torsettings.useBridges.placeholder "type address:port">
-
-<!ENTITY torsettings.copyLog "Kopjo ditarin e Tor në Clipboard">
-<!ENTITY torsettings.bridgeHelpTitle "Ndihmë mbi relenë e urës">
-<!ENTITY torsettings.bridgeHelp1 "If you are unable to connect to the Tor network, it could be that your Internet Service Provider (ISP) or another agency is blocking Tor.  Often, you can work around this problem by using Tor Bridges, which are unlisted relays that are more difficult to block.">
-<!ENTITY torsettings.bridgeHelp1B "You may use the preconfigured, provided set of bridge addresses or you may obtain a custom set of addresses by using one of these three methods:">
-<!ENTITY torsettings.bridgeHelp2Heading "Through the Web">
-<!ENTITY torsettings.bridgeHelp2 "Use a web browser to visit https://bridges.torproject.org">
-<!ENTITY torsettings.bridgeHelp3Heading "Through the Email Autoresponder">
-<!ENTITY torsettings.bridgeHelp3.emailDesc "Send email to bridges(a)torproject.org with the line 'get bridges' by itself in the body of the message.  However, to make it harder for an attacker to learn a lot of bridge addresses, you must send this request from one of the following email providers (listed in order of preference):">
+<!ENTITY torsettings.firewall.checkbox "Ky kompjuter kalon përmes një muri mbrojtës, që i lejon lidhje vetëm me disa porta.">
+<!ENTITY torsettings.firewall.allowedPorts "Portat e Lejuara:">
+<!ENTITY torsettings.useBridges.checkbox "Ofruesi im i Shërbimit të Internetit (ISP) pengon lidhjet drejt rrjetit Tor">
+<!ENTITY torsettings.useBridges.default "Lidhuni me urat e ofruara">
+<!ENTITY torsettings.useBridges.type "Lloji i Transportit:">
+<!ENTITY torsettings.useBridges.custom "Futini urat e përshtatura">
+<!ENTITY torsettings.useBridges.label "Futni një ose më shumë rele urë (një për rresht)">
+<!ENTITY torsettings.useBridges.placeholder "lloji i adresës:portë">
+
+<!ENTITY torsettings.copyLog "Kopjojeni Regjistrin e Tor në Kujtesën e fragmenteve">
+<!ENTITY torsettings.bridgeHelpTitle "Ndihma mbi Relenë e Urë">
+<!ENTITY torsettings.bridgeHelp1 "Nëse s'mundeni të lidheni me rrjetin Tor, mund të jetë sepse Ofruesi juaj i Shërbimit të Internetit (ISP), ose ndonjë agjenci tjetër po pengojnë Tor.  Shpesh, ju mund ta shmangni këtë problem, duke përdorur urat e Tor, të cilat janë rele të palistuara, që janë shumë më të vështira për t'u penguar.">
+<!ENTITY torsettings.bridgeHelp1B "Ju mund të përdorni grupin e ofruar e të parakonfiguruar të adresave ura, ose mund të përftoni një grup adresash të përshtatura, duke përdorur një nga këto tre metoda:">
+<!ENTITY torsettings.bridgeHelp2Heading "Përmes Web-it">
+<!ENTITY torsettings.bridgeHelp2 "Përdorni një shfletues web-i që të vizitoni https://bridges.torproject.org">
+<!ENTITY torsettings.bridgeHelp3Heading "Përmes Vetëpërgjigjes se E-postës">
+<!ENTITY torsettings.bridgeHelp3.emailDesc "Dërgoni e-postë tek bridges(a)torproject.org me reshtin 'get bridges' të veçuar në trupin e mesazhit.  Megjithatë, për ta bërë më të vështirë që një sulmues të mësojë shumë adresa ura, ju duhet ta dërgoni këtë kërkesë nga njëri prej ofruesve të e-postës (listuar sipas rendit të parapëlqimit):">
<!ENTITY torsettings.bridgeHelp3.emailList "https://www.riseup.net, https://mail.google.com, or https://mail.yahoo.com">
-<!ENTITY torsettings.bridgeHelp4Heading "Through the Help Desk">
-<!ENTITY torsettings.bridgeHelp4 "As a last resort, you can request bridge addresses by sending a polite email message to help(a)rt.torproject.org.  Please note that a person will need to respond to each request.">
+<!ENTITY torsettings.bridgeHelp4Heading "Përmes Help Desk-ut">
+<!ENTITY torsettings.bridgeHelp4 "Si mjet të fundit, ju mund të kërkoni adresat urë, duke dërguar një mesazh e-poste me politesë tek help(a)rt.torproject.org.  Ju lutemi vini re se një person do të duhet t'i përgjigjet çdo kërkese.">
diff --git a/src/chrome/locale/sq/progress.dtd b/src/chrome/locale/sq/progress.dtd
index b127352..8138a00 100644
--- a/src/chrome/locale/sq/progress.dtd
+++ b/src/chrome/locale/sq/progress.dtd
@@ -1,4 +1,4 @@
-<!ENTITY torprogress.dialog.title "Statusi i Tor">
-<!ENTITY torprogress.openSettings "Hap parametrat">
-<!ENTITY torprogress.heading "Duke u lidhur me rrjetin e Tor">
-<!ENTITY torprogress.pleaseWait "Ju lutem prisni deri sa të vendoset nje lidhje me rrjetin e Tor">
+<!ENTITY torprogress.dialog.title "Gjendja e Tor">
+<!ENTITY torprogress.openSettings "Hapeni Konfigurimin">
+<!ENTITY torprogress.heading "Duke u lidhur me rrjetin Tor">
+<!ENTITY torprogress.pleaseWait "Ju lutemi prisni derisa të vendoset një lidhje me rrjetin Tor">
diff --git a/src/chrome/locale/sq/torlauncher.properties b/src/chrome/locale/sq/torlauncher.properties
index 0b3ae2d..b32ee99 100644
--- a/src/chrome/locale/sq/torlauncher.properties
+++ b/src/chrome/locale/sq/torlauncher.properties
@@ -1,61 +1,61 @@
### Copyright (c) 2014, The Tor Project, Inc.
### See LICENSE for licensing information.
-torlauncher.error_title=Tor Launcher
-
-torlauncher.tor_exited=Tor unexpectedly exited. This might be due to a bug in Tor itself, another program on your system, or faulty hardware. Until you restart Tor, the Tor Browser will not able to reach any websites. If the problem persists, please send a copy of your Tor Log to the support team.
-torlauncher.tor_exited2=Restarting Tor will not close your browser tabs.
-torlauncher.tor_controlconn_failed=Could not connect to Tor control port.
-torlauncher.tor_failed_to_start=Tor failed to start.
-torlauncher.tor_control_failed=Failed to take control of Tor.
-torlauncher.tor_bootstrap_failed=Tor failed to establish a Tor network connection.
-torlauncher.tor_bootstrap_failed_details=%1$S failed (%2$S).
-
-torlauncher.unable_to_start_tor=Unable to start Tor.\n\n%S
-torlauncher.tor_missing=The Tor executable is missing.
-torlauncher.torrc_missing=The torrc file is missing.
-torlauncher.datadir_missing=The Tor data directory does not exist.
-torlauncher.password_hash_missing=Failed to get hashed password.
-
-torlauncher.failed_to_get_settings=Unable to retrieve Tor settings.\n\n%S
-torlauncher.failed_to_save_settings=Unable to save Tor settings.\n\n%S
-torlauncher.ensure_tor_is_running=Please ensure that Tor is running.
-
-torlauncher.error_proxy_addr_missing=Ju duhet të përcaktoni si adresën IP ose emrin e serverit edhe numrin e portës për të konfiguruar Torin të përdori një proxy për tu lidhur në Internet.
-torlauncher.error_proxy_type_missing=You must select the proxy type.
-torlauncher.error_bridges_missing=You must specify one or more bridges.
-torlauncher.error_default_bridges_type_missing=You must select a transport type for the provided bridges.
-torlauncher.error_bridge_bad_default_type=No provided bridges that have the transport type %S are available. Please adjust your settings.
-
-torlauncher.recommended_bridge=(recommended)
-
-torlauncher.connect=Lidhu
-torlauncher.restart_tor=Restart Tor
-torlauncher.quit=Dil
-torlauncher.quit_win=Dil
-torlauncher.done=Done
-
-torlauncher.forAssistance=For assistance, contact %S
-
-torlauncher.copiedNLogMessages=Copy complete. %S Tor log messages are ready to be pasted into a text editor or an email message.
-
-torlauncher.bootstrapStatus.conn_dir=Connecting to a relay directory
-torlauncher.bootstrapStatus.handshake_dir=Establishing an encrypted directory connection
-torlauncher.bootstrapStatus.requesting_status=Retrieving network status
-torlauncher.bootstrapStatus.loading_status=Loading network status
-torlauncher.bootstrapStatus.loading_keys=Loading authority certificates
-torlauncher.bootstrapStatus.requesting_descriptors=Requesting relay information
-torlauncher.bootstrapStatus.loading_descriptors=Loading relay information
-torlauncher.bootstrapStatus.conn_or=Duke u lidhur me rrjetin Tor
-torlauncher.bootstrapStatus.handshake_or=Establishing a Tor circuit
-torlauncher.bootstrapStatus.done=Connected to the Tor network!
-
-torlauncher.bootstrapWarning.done=done
-torlauncher.bootstrapWarning.connectrefused=connection refused
-torlauncher.bootstrapWarning.misc=miscellaneous
-torlauncher.bootstrapWarning.resourcelimit=insufficient resources
-torlauncher.bootstrapWarning.identity=identity mismatch
-torlauncher.bootstrapWarning.timeout=connection timeout
-torlauncher.bootstrapWarning.noroute=no route to host
-torlauncher.bootstrapWarning.ioerror=read/write error
-torlauncher.bootstrapWarning.pt_missing=missing pluggable transport
+torlauncher.error_title=Lëshuesi Tor
+
+torlauncher.tor_exited=Tor doli papritmas. Kjo mund të jetë për shkak të një gabimi të vetë Tor, të një tjetër programi në sistemin tuaj, ose të të metave të diskut të ngurtë. Derisa ta rinisni Tor, Tor Browser nuk do mund të arrijë asnjë webfaqe. Nëse problemi vijon, ju lutemi dërgoni një kopje të Regjistrit tuaj të Tor, tek ekipi i mbështetjes.
+torlauncher.tor_exited2=Rinisja e Tor s'do t'i mbyllë skedat e shfletuesit tuaj.
+torlauncher.tor_controlconn_failed=E pamundur lidhja me portin e kontrollit të Tor.
+torlauncher.tor_failed_to_start=Tor dështoi të nisë.
+torlauncher.tor_control_failed=Dështim në marrjen në kontroll të Tor.
+torlauncher.tor_bootstrap_failed=Tor dështoi që të vendoste një lidhje me rrjetin e Tor.
+torlauncher.tor_bootstrap_failed_details=%1$S dështoi (%2$S).
+
+torlauncher.unable_to_start_tor=E pamundur që të niset Tor.\n\n%S
+torlauncher.tor_missing=Skedari i ekzekutueshëm Tor, mungon.
+torlauncher.torrc_missing=Skedari torrc mungon.
+torlauncher.datadir_missing=Direktoria e të dhënave të Tor nuk ekziston.
+torlauncher.password_hash_missing=Dështuam të përftonim fjalëkalimin me thurje.
+
+torlauncher.failed_to_get_settings=Dështuam të gjenim konfigurimin e Tor.\n\n%S
+torlauncher.failed_to_save_settings=Dështuam të ruanim konfigurimin e Tor.\n\n%S
+torlauncher.ensure_tor_is_running=Ju lutemi sigurohuni që Tor është në ekzekutim.
+
+torlauncher.error_proxy_addr_missing=Ju duhet të përcaktoni një adresë IP ose emër pritësi, si edhe një numër porte, për të konfiguruar Tor në mënyrë që të përdorë një proxy për t'u qasur në Internet.
+torlauncher.error_proxy_type_missing=Duhet të përzgjidhni tipin proxy.
+torlauncher.error_bridges_missing=Duhet të specifikoni një ose më shumë ura.
+torlauncher.error_default_bridges_type_missing=Duhet të përzgjidhni një lloj transport për urat e parashikuara
+torlauncher.error_bridge_bad_default_type=S'ka ura të parashikuara, që kanë transport të llojit %S, të disponueshme. Ju lutemi ndreqni parametrat tuaj.
+
+torlauncher.recommended_bridge=(rekomandohet)
+
+torlauncher.connect=Lidhuni
+torlauncher.restart_tor=Riniseni Tor
+torlauncher.quit=Ndërpriteni
+torlauncher.quit_win=Dilni
+torlauncher.done=Kryer
+
+torlauncher.forAssistance=Për ndihmë, kontaktoni %S
+
+torlauncher.copiedNLogMessages=Kopjimi u krye. Mesazhet e regjistrit të Tor për %S, janë gati për t'u ngjitur në një redaktues teksti, ose në një mesazh e-poste.
+
+torlauncher.bootstrapStatus.conn_dir=Lidhja me një direktori releje
+torlauncher.bootstrapStatus.handshake_dir=Krijimi i një lidhje me direktori të shifruar
+torlauncher.bootstrapStatus.requesting_status=Rigjetja e statusit të rrjetit
+torlauncher.bootstrapStatus.loading_status=Ngarkimi i statusit të rrjetit
+torlauncher.bootstrapStatus.loading_keys=Ngarkimi i certifikatave të autoritetit
+torlauncher.bootstrapStatus.requesting_descriptors=Kërkimi i informacionit të relesë
+torlauncher.bootstrapStatus.loading_descriptors=Ngarkimi i informacionit të relesë
+torlauncher.bootstrapStatus.conn_or=Të lidhesh me rrjetin Tor
+torlauncher.bootstrapStatus.handshake_or=Krijimi i një cirkuiti të Tor
+torlauncher.bootstrapStatus.done=I lidhur me rrjetin e Tor!
+
+torlauncher.bootstrapWarning.done=kryer
+torlauncher.bootstrapWarning.connectrefused=lidhja u refuzua
+torlauncher.bootstrapWarning.misc=i përzier
+torlauncher.bootstrapWarning.resourcelimit=burime të pamjaftueshme
+torlauncher.bootstrapWarning.identity=mospërputhje identiteti
+torlauncher.bootstrapWarning.timeout=pezullim i lidhjes
+torlauncher.bootstrapWarning.noroute=asnjë rrugë për tek pritësi
+torlauncher.bootstrapWarning.ioerror=gabim leximi/shkrimi
+torlauncher.bootstrapWarning.pt_missing=mungon transporti me ngulje
diff --git a/src/chrome/locale/sv/network-settings.dtd b/src/chrome/locale/sv/network-settings.dtd
index 311f336..52e22a6 100644
--- a/src/chrome/locale/sv/network-settings.dtd
+++ b/src/chrome/locale/sv/network-settings.dtd
@@ -15,9 +15,9 @@
<!ENTITY torSettings.connectPrompt3 "Detta fungerar i de flesta situationer.">
<!ENTITY torSettings.connect "Anslut">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Behöver den här datorn använda en lokal proxy för att ansluta till Internet?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Om du är osäker på svaret på frågan, titta på Internetinställningarna i en annan webbläsare för att se om den är konfigurerad att använda en lokal proxy.">
<!ENTITY torSettings.enterProxy "Ange proxyinställningarna.">
<!ENTITY torSettings.bridgeQuestion "Blockerar eller censurerar din internetleverantör anslutningar till Tor-nätverket?">
<!ENTITY torSettings.bridgeHelp "Om du är osäker på hur du ska svara på den här frågan, välj Nej.  Om du väljer Ja kommer du ombes att konfigurera Tor-bryggor, vilka är olistade reläer som gör det svårare att blockera anslutningar till Tor-nätverket.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Valfri">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Den här datorn behöver använda en lokal proxy för att ansluta till Internet">
<!ENTITY torsettings.useProxy.type "Typ av proxy:">
<!ENTITY torsettings.useProxy.address "Adress:">
<!ENTITY torsettings.useProxy.address.placeholder "IP-adress eller värdnamn">
diff --git a/src/chrome/locale/uk/network-settings.dtd b/src/chrome/locale/uk/network-settings.dtd
index a4c0644..0e62106 100644
--- a/src/chrome/locale/uk/network-settings.dtd
+++ b/src/chrome/locale/uk/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "Яке з наступних тверджень найкраще описує Вашу ситуацію?">
<!ENTITY torSettings.configurePrompt1 "Мережеве з'єднання цього комп'ютера цензурується або йде через проксі-сервер.">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "Мені потрібно налаштувати міст або локальний проксі.">
<!ENTITY torSettings.configure "Налаштування">
<!ENTITY torSettings.connectPrompt2 "Я бажаю підключатися до Tor напряму ">
<!ENTITY torSettings.connectPrompt3 "Це має працювати у більшості ситуацій.">
<!ENTITY torSettings.connect "З'єднатися">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "Чи потрібно цьому комп'ютеру використовувати локальний проксі для доступу в Інтернет?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "Якщо ви не знаєте, як відповісти на це питання, перевірте налаштування Інтернету в іншому браузері, щоб побачити чи він налаштований на використання локального проксі.">
<!ENTITY torSettings.enterProxy "Задати параметри проксі">
<!ENTITY torSettings.bridgeQuestion "Ваш Інтернет-провайдер (ISP) блокує чи яким-небудь чином цензурує підключення до Tor мережі?">
<!ENTITY torSettings.bridgeHelp "Якщо Ви не знаєте, як відповісти на це питання, виберіть Ні.  Якщо Ви виберете Так, Вам буде запропоновано налаштувати мости Tor, що є приватними трансляторами, які роблять більш важким блокування з'єднань з Tor мережі.">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "Додатково">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "Цей комп'ютер повинен використовувати локальний проксі для доступу в Інтернет">
<!ENTITY torsettings.useProxy.type "Тип проксі:">
<!ENTITY torsettings.useProxy.address "Адреса:">
<!ENTITY torsettings.useProxy.address.placeholder "ІР адреса або ім'я хосту">
diff --git a/src/chrome/locale/zh-CN/network-settings.dtd b/src/chrome/locale/zh-CN/network-settings.dtd
index 29a5f00..4e6d5e1 100644
--- a/src/chrome/locale/zh-CN/network-settings.dtd
+++ b/src/chrome/locale/zh-CN/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "以下哪个描述与你的情况最为匹配?">
<!ENTITY torSettings.configurePrompt1 "网络连接受到审查或需要代理。">
-<!ENTITY torSettings.configurePrompt2 "我需要添加网桥或对本地代理进行配置。">
+<!ENTITY torSettings.configurePrompt2 "需要添加网桥或对本地代理进行配置。">
<!ENTITY torSettings.configure "配置">
<!ENTITY torSettings.connectPrompt2 "我想要直接连接 Tor 网络。">
<!ENTITY torSettings.connectPrompt3 "通常这种方式是有效的。">
<!ENTITY torSettings.connect "连接">
-<!ENTITY torSettings.proxyQuestion "请问这台计算机需要使用一个本地代理来访问互联网吗?">
+<!ENTITY torSettings.proxyQuestion "是否需要本地代理访问互联网?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "如果您不知道如何回答这个问题,看看其他浏览器中的 Internet 设置,看它是否有配置为使用一个本地代理。">
+<!ENTITY torSettings.proxyHelp "如果不知道如何回答该问题,请检查其他浏览器中的互联网设置,查看是否使用本地代理。">
<!ENTITY torSettings.enterProxy "输入代理设置。">
<!ENTITY torSettings.bridgeQuestion "互联网服务提供商 (ISP) 是否对 Tor 网络连接进行了封锁或审查?">
<!ENTITY torSettings.bridgeHelp "如果不理解该问题,请选择“否”。如果选择“是”,那么需要对 Tor 网桥进行配置。网桥指用于连接 Tor 网络的非公开网络中继,更难于封锁。">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "可选">
-<!ENTITY torsettings.useProxy.checkbox "这台计算机需要使用一个本地代理来访问互联网">
+<!ENTITY torsettings.useProxy.checkbox "需要本地代理来访问互联网">
<!ENTITY torsettings.useProxy.type "代理类型:">
<!ENTITY torsettings.useProxy.address "地址:">
<!ENTITY torsettings.useProxy.address.placeholder "IP 地址或主机名">
diff --git a/src/chrome/locale/zh-TW/network-settings.dtd b/src/chrome/locale/zh-TW/network-settings.dtd
index 65a5d51..7abb064 100644
--- a/src/chrome/locale/zh-TW/network-settings.dtd
+++ b/src/chrome/locale/zh-TW/network-settings.dtd
@@ -9,15 +9,15 @@
<!ENTITY torSettings.firstQuestion "下列哪一項最符合您的情況?">
<!ENTITY torSettings.configurePrompt1 "這部電腦的網路連線是被審查或是有代理的。">
-<!ENTITY torSettings.configurePrompt2 "I need to configure bridge or local proxy settings.">
+<!ENTITY torSettings.configurePrompt2 "我需要設定橋接或本地代理設定">
<!ENTITY torSettings.configure "設定">
<!ENTITY torSettings.connectPrompt2 "我想直接連接到 Tor 網路。">
<!ENTITY torSettings.connectPrompt3 "這將在大多數情況下生效。">
<!ENTITY torSettings.connect "連接">
-<!ENTITY torSettings.proxyQuestion "Does this computer need to use a local proxy to access the Internet?">
+<!ENTITY torSettings.proxyQuestion "這台電腦需要使用本地代理伺服器來存取網路嗎?">
<!-- see https://www.torproject.org/docs/proxychain.html.en -->
-<!ENTITY torSettings.proxyHelp "If you are not sure how to answer this question, look at the Internet settings in another browser to see whether it is configured to use a local proxy.">
+<!ENTITY torSettings.proxyHelp "若您無法確定如何回答這個問題,請查看其他瀏覽器的網路設定,看它是否設定為透過代理伺服器連線。">
<!ENTITY torSettings.enterProxy "輸入代理伺服器設定。">
<!ENTITY torSettings.bridgeQuestion "您的網際網路服務提供者(ISP)阻擋或審查員連接到 Tor 網路?">
<!ENTITY torSettings.bridgeHelp "如果您不確定如何回答此問題,請選擇「否」。  如果您選擇「是」,您將被要求設定Tor 橋接,這讓阻止連接到 Tor 網路更加困難。">
@@ -30,7 +30,7 @@
<!ENTITY torsettings.optional "選用">
-<!ENTITY torsettings.useProxy.checkbox "This computer needs to use a local proxy to access the Internet">
+<!ENTITY torsettings.useProxy.checkbox "這台電腦需要使用代理伺服器存取網際網路">
<!ENTITY torsettings.useProxy.type "代理伺服器類型:">
<!ENTITY torsettings.useProxy.address "位址:">
<!ENTITY torsettings.useProxy.address.placeholder "IP 位址或主機名稱">
diff --git a/src/install.rdf b/src/install.rdf
index 8825190..c27be00 100644
--- a/src/install.rdf
+++ b/src/install.rdf
@@ -7,7 +7,7 @@
<em:creator>The Tor Project, Inc.</em:creator>
<em:contributor>Pearl Crescent, LLC</em:contributor>
<em:id>tor-launcher(a)torproject.org</em:id>
- <em:version>0.2.7.2</em:version>
+ <em:version>0.2.7.3</em:version>
<em:homepageURL>https://www.torproject.org/projects/torbrowser.html</em:homepageURL>
<em:updateURL>https://127.0.0.1/</em:updateURL>
<!--
1
0

[torbutton/master] Bug #14429: Quantize content window inner width, height
by mikeperry@torproject.org 27 Mar '15
by mikeperry@torproject.org 27 Mar '15
27 Mar '15
commit ddd8a6a78c56feeba2c8d5493edb6970ec148588
Author: Arthur Edelstein <arthuredelstein(a)gmail.com>
Date: Sun Feb 8 00:13:36 2015 -0800
Bug #14429: Quantize content window inner width, height
---
src/chrome/content/content-sizer.js | 286 +++++++++++++++++++++++++++++
src/chrome/content/tor-circuit-display.js | 35 +---
src/chrome/content/torbutton.js | 2 +
src/chrome/content/torbutton.xul | 1 +
src/defaults/preferences/preferences.js | 1 +
src/modules/utils.js | 43 +++++
6 files changed, 336 insertions(+), 32 deletions(-)
diff --git a/src/chrome/content/content-sizer.js b/src/chrome/content/content-sizer.js
new file mode 100644
index 0000000..af6bc80
--- /dev/null
+++ b/src/chrome/content/content-sizer.js
@@ -0,0 +1,286 @@
+// The purpose of this file is to ensure that window.innerWidth and window.innerHeight
+// always return rounded values.
+
+// This file is formatted for docco.js. Later functions call earlier ones.
+
+/* jshint esnext: true */
+
+// __quantizeBrowserSizeOnLoad(window, xStep, yStep)__.
+// Once a window is fully loaded, ensures that gBrowser width and height are multiples of
+// xStep and yStep.
+let quantizeBrowserSizeOnLoad = function (window, xStep, yStep) {
+
+// Use Task.jsm to avoid callback hell.
+Cu.import("resource://gre/modules/Task.jsm");
+
+// Make the TorButton logger available.
+let logger = Cc["@torproject.org/torbutton-logger;1"]
+ .getService(Components.interfaces.nsISupports).wrappedJSObject;
+
+// Utility function
+let { bindPrefAndInit } = Cu.import("resource://torbutton/modules/utils.js");
+
+// __largestMultipleLessThan(factor, max)__.
+// Returns the largest number that is a multiple of factor
+// and is less or equal to max.
+let largestMultipleLessThan = function (factor, max) {
+ return Math.max(1, Math.floor((1 + max) / factor, 1)) * factor;
+};
+
+// __listen(target, eventType, useCapture, timeoutMs)__.
+// Listens for a single event of eventType on target.
+// Returns a Promise that resolves to an Event object, if the event fires.
+// If a timeout occurs, then Promise is rejected with a "Timed out" error.
+let listen = function (target, eventType, useCapture, timeoutMs) {
+ return new Promise(function (resolve, reject) {
+ let listenFunction = function (event) {
+ target.removeEventListener(eventType, listenFunction, useCapture);
+ resolve(event);
+ };
+ target.addEventListener(eventType, listenFunction, useCapture);
+ if (timeoutMs !== undefined && timeoutMs !== null) {
+ window.setTimeout(function () {
+ target.removeEventListener(eventType, listenFunction, useCapture);
+ resolve(new Event("timeout"));
+ }, timeoutMs);
+ }
+ });
+};
+
+// __sleep(time_ms)__.
+// Returns a Promise that sleeps for the specified time interval,
+// and returns an Event object of type "wake".
+let sleep = function (timeoutMs) {
+ return new Promise(function (resolve, reject) {
+ window.setTimeout(function () {
+ resolve(new Event("wake"));
+ }, timeoutMs);
+ });
+};
+
+// __isNumber(value)__.
+// Returns true iff the value is a number.
+let isNumber = x => typeof x === "number";
+
+// __reshape(window, {left, top, width, height}, timeoutMs)__.
+// Reshapes the window to rectangle {left, top, width, height} and yields
+// until the window reaches its target size, or the timeout occurs.
+let reshape = function* (window, {left, top, width, height}, timeoutMs) {
+ let finishTime = Date.now() + timeoutMs,
+ x = isNumber(left) ? left : window.screenX,
+ y = isNumber(top) ? top : window.screenY,
+ w = isNumber(width) ? width : window.outerWidth,
+ h = isNumber(height) ? height : window.outerHeight;
+ // Make sure we are in a new event.
+ yield sleep(0);
+ if (w !== window.outerWidth || h !== window.outerWidth) {
+ window.resizeTo(w, h);
+ }
+ if (x !== window.screenX || y !== window.screenY) {
+ window.moveTo(x, y);
+ }
+ // Yield until we have the correct screen position and size, or
+ // we timeout. Multiple resize events often fire in a resize.
+ while (x !== window.screenX ||
+ y !== window.screenY ||
+ w !== window.outerWidth ||
+ h !== window.outerHeight) {
+ let timeLeft = finishTime - Date.now();
+ if (timeLeft <= 0) break;
+ yield listen(window, "resize", true, timeLeft);
+ }
+};
+
+// __rebuild(window)__.
+// Jog the size of the window slightly, to remind the window manager
+// to redraw the window.
+let rebuild = function* (window) {
+ let h = window.outerHeight;
+ yield reshape(window, {height : (h + 1)}, 300);
+ yield reshape(window, {height : h}, 300);
+};
+
+// __gaps(window)__.
+// Deltas between gBrowser and its container. Returns null if there is no gap.
+let gaps = function (window) {
+ let gBrowser = window.gBrowser,
+ container = gBrowser.parentElement,
+ deltaWidth = Math.max(0, container.clientWidth - gBrowser.clientWidth - 1),
+ deltaHeight = Math.max(0, container.clientHeight - gBrowser.clientHeight - 1);
+ //logger.eclog(3, "gaps " + deltaWidth + "," + deltaHeight);
+ return (deltaWidth === 0 && deltaHeight === 0) ? null
+ : { deltaWidth : deltaWidth, deltaHeight : deltaHeight };
+};
+
+// __shrinkwrap(window)__.
+// Shrinks the window so that it encloses the gBrowser with no gaps.
+let shrinkwrap = function* (window) {
+ // Maximized windows in Linux and Windows need to be demaximized first.
+ if (gaps(window) &&
+ window.windowState === 1 && /* maximized */
+ Services.appinfo.OS !== "Darwin") {
+ if (Services.appinfo.OS !== "WINNT") {
+ // Linux windows need an extra jolt out of maximized mode.
+ window.moveBy(1,1);
+ }
+ // If window has been maximized, demaximize by shrinking it to
+ // fit within the available screen area.
+ yield reshape(window,
+ {left : window.screen.availLeft + 1,
+ top : window.screen.availTop + 1,
+ width : window.screen.availWidth - 2,
+ height : window.screen.availHeight - 2},
+ 500);
+ }
+ // Figure out what size change we need.
+ let currentGaps = gaps(window);
+ if (currentGaps) {
+ // Now resize to close the gaps.
+ yield reshape(window,
+ {width : (window.outerWidth - currentGaps.deltaWidth),
+ height : (window.outerHeight - currentGaps.deltaHeight)},
+ 500);
+ }
+};
+
+// __updateContainerAppearance(container, on)__.
+// Get the color and position of margins right.
+let updateContainerAppearance = function (container, on) {
+ // Align the browser at top left, so any gray margin will be visible
+ // at right and bottom. Except in fullscreen, where we have black
+ // margins and gBrowser in top center.
+ container.align = on ? (window.fullScreen ? "center" : "start")
+ : "";
+ container.pack = on ? "start" : "";
+ container.style.backgroundColor = on ? (window.fullScreen ? "Black"
+ : "DimGray")
+ : "";
+};
+
+// __fixWindow(window)__.
+// An async function for Task.jsm. Makes sure the window looks okay
+// given the quantized browser element.
+let fixWindow = function* (window) {
+ updateContainerAppearance(window.gBrowser.parentElement, true);
+ if (!window.fullScreen) {
+ yield shrinkwrap(window);
+ if (Services.appinfo.OS !== "Darwin" && Services.appinfo.OS !== "WINNT") {
+ // Linux tends to require us to rebuild the window, or we might be
+ // left with a large useless white area on the screen.
+ yield rebuild(window);
+ }
+ }
+};
+
+// __autoresize(window, stepMs)__.
+// Do what it takes to eliminate the gray margin around the gBrowser inside
+// window. Periodically (stepMs) attempt to shrink the window. Runs
+// as a Task.jsm coroutine.
+let autoresize = function (window, stepMs) {
+ let stop = false;
+ Task.spawn(function* () {
+ while (!stop) {
+ // Do nothing until the user starts to resize window.
+ let event = yield listen(window, "resize", true);
+ // Here we wrestle with the window size. If the user has released the
+ // mouse cursor on the window's drag/resize handle, then fixWindow
+ // will resize the window on its first call. Unfortunately, on some
+ // OSs, the window resize fails if the user is still holding on
+ // to the drag-resize handle. Even more unfortunately, the
+ // only way to know that the user no longer has the mouse down
+ // on the window's drag/resize handle is if we detect the mouse
+ // cursor inside the window. So until the window fires a mousemove
+ // event, we repeatedly call fixWindow every stepMs.
+ while (event.type !== "mousemove") {
+ event = yield Promise.race(
+ [listen(window, "resize", true, stepMs),
+ listen(window, "mousemove", true, stepMs)]);
+ // If the user has stopped resizing the window after `stepMs`, then we can resize
+ // the window so no gray margin is visible.
+ if (event.type === "timeout" || event.type === "mousemove") {
+ yield fixWindow(window);
+ }
+ }
+ }
+ });
+ return () => { stop = true; };
+};
+
+// __updateDimensions(gBrowser, xStep, yStep)__.
+// Changes the width and height of the gBrowser XUL element to be a multiple of x/yStep.
+let updateDimensions = function (gBrowser, xStep, yStep) {
+ // TODO: Get zooming to work such that it doesn't cause the window
+ // to continuously shrink.
+ // We'll use something like:
+ // let winUtils = gBrowser.contentWindow
+ // .QueryInterface(Components.interfaces.nsIInterfaceRequestor)
+ // .getInterface(Components.interfaces.nsIDOMWindowUtils),
+ // zoom = winUtils.screenPixelsPerCSSPixel,
+ let zoom = 1,
+ parentWidth = gBrowser.parentElement.clientWidth,
+ parentHeight = gBrowser.parentElement.clientHeight,
+ targetContentWidth = largestMultipleLessThan(xStep, parentWidth / zoom),
+ targetContentHeight = largestMultipleLessThan(yStep, parentHeight / zoom),
+ targetBrowserWidth = targetContentWidth * zoom,
+ targetBrowserHeight = targetContentHeight * zoom;
+ // Because gBrowser is inside a vbox, width and height behave differently. It turns
+ // out we need to set `gBrowser.width` and `gBrowser.maxHeight`.
+ gBrowser.width = targetBrowserWidth;
+ gBrowser.maxHeight = targetBrowserHeight;
+ // If the content window's innerWidth/innerHeight failed to updated correctly,
+ // then jog the gBrowser width/height. (With zoom there may also be a rounding
+ // error, but we can't do much about that.)
+ if (gBrowser.contentWindow.innerWidth !== targetContentWidth ||
+ gBrowser.contentWindow.innerHeight !== targetContentHeight) {
+ gBrowser.width = targetBrowserWidth + 1;
+ gBrowser.maxHeight = gBrowser.targetBrowserHeight + 1;
+ gBrowser.width = targetBrowserWidth;
+ gBrowser.maxHeight = targetBrowserHeight;
+ }
+ logger.eclog(3, "zoom " + zoom + "X" +
+ " chromeWin " + window.outerWidth + "x" + window.outerHeight +
+ " container " + parentWidth + "x" + parentHeight +
+ " gBrowser " + gBrowser.clientWidth + "x" + gBrowser.clientHeight +
+ " content " + gBrowser.contentWindow.innerWidth + "x" + gBrowser.contentWindow.innerHeight);
+};
+
+// __quantizeBrowserSizeNow(window, xStep, yStep)__.
+// Ensures that gBrowser width and height are multiples of xStep and yStep, and always as
+// large as possible inside the chrome window.
+let quantizeBrowserSizeNow = function (window, xStep, yStep) {
+ let gBrowser = window.gBrowser,
+ container = window.gBrowser.parentElement,
+ updater = event => updateDimensions(gBrowser, xStep, yStep),
+ originalMinWidth = gBrowser.minWidth,
+ originalMinHeight = gBrowser.minHeight,
+ stopAutoresizing,
+ activate = function (on) {
+ // Don't let the browser shrink below a single xStep x yStep size.
+ gBrowser.minWidth = on ? xStep : originalMinWidth;
+ gBrowser.minHeight = on ? yStep : originalMinHeight;
+ updateContainerAppearance(container, on);
+ if (on) {
+ // Quantize browser size on activation.
+ updateDimensions(gBrowser, xStep, yStep);
+ shrinkwrap(window);
+ // Quantize browser size at subsequent resize events.
+ window.addEventListener("resize", updater, false);
+ stopAutoresizing = autoresize(window, 250);
+ } else {
+ if (stopAutoresizing) stopAutoresizing();
+ // Ignore future resize events.
+ window.removeEventListener("resize", updater, false);
+ // Let gBrowser expand with its parent vbox.
+ gBrowser.width = "";
+ gBrowser.maxHeight = "";
+ }
+ };
+ bindPrefAndInit("extensions.torbutton.resize_windows", activate);
+};
+
+let onLoad = () => quantizeBrowserSizeNow(window, xStep, yStep);
+window.gBrowser.addEventListener("load", onLoad, true);
+return () => window.gBrowser.removeEventListener("load", onLoad, true);
+
+// quantizeBrowserSizeOnLoad
+};
diff --git a/src/chrome/content/tor-circuit-display.js b/src/chrome/content/tor-circuit-display.js
index 8997757..917f1f0 100644
--- a/src/chrome/content/tor-circuit-display.js
+++ b/src/chrome/content/tor-circuit-display.js
@@ -32,6 +32,9 @@ Cu.import("resource://gre/modules/Task.jsm");
// Import the controller code.
let { controller } = Cu.import("resource://torbutton/modules/tor-control-port.js");
+// Utility functions
+let { bindPrefAndInit } = Cu.import("resource://torbutton/modules/utils.js");
+
// Make the TorButton logger available.
let logger = Cc["@torproject.org/torbutton-logger;1"]
.getService(Components.interfaces.nsISupports).wrappedJSObject;
@@ -303,38 +306,6 @@ let syncDisplayWithSelectedTab = (function() {
};
})();
-// ## Pref utils
-
-// __prefs__. A shortcut to Mozilla Services.prefs.
-let prefs = Services.prefs;
-
-// __getPrefValue(prefName)__
-// Returns the current value of a preference, regardless of its type.
-let getPrefValue = function (prefName) {
- switch(prefs.getPrefType(prefName)) {
- case prefs.PREF_BOOL: return prefs.getBoolPref(prefName);
- case prefs.PREF_INT: return prefs.getIntPref(prefName);
- case prefs.PREF_STRING: return prefs.getCharPref(prefName);
- default: return null;
- }
-};
-
-// __bindPrefAndInit(prefName, prefHandler)__
-// Applies prefHandler to the current value of pref specified by prefName.
-// Re-applies prefHandler whenever the value of the pref changes.
-// Returns a zero-arg function that unbinds the pref.
-let bindPrefAndInit = function (prefName, prefHandler) {
- let update = () => { prefHandler(getPrefValue(prefName)); },
- observer = { observe : function (subject, topic, data) {
- if (data === prefName) {
- update();
- }
- } };
- prefs.addObserver(prefName, observer, false);
- update();
- return () => { prefs.removeObserver(prefName, observer); };
-};
-
// ## Main function
// setupDisplay(host, port, password, enablePrefName)__.
diff --git a/src/chrome/content/torbutton.js b/src/chrome/content/torbutton.js
index 83ea395..44f62aa 100644
--- a/src/chrome/content/torbutton.js
+++ b/src/chrome/content/torbutton.js
@@ -636,6 +636,8 @@ function torbutton_init() {
createTorCircuitDisplay(m_tb_control_host, m_tb_control_port, m_tb_control_pass,
"extensions.torbutton.display_circuit");
+ quantizeBrowserSizeOnLoad(window, 200, 100);
+
torbutton_log(3, 'init completed');
}
diff --git a/src/chrome/content/torbutton.xul b/src/chrome/content/torbutton.xul
index 5da3439..a9d60f6 100644
--- a/src/chrome/content/torbutton.xul
+++ b/src/chrome/content/torbutton.xul
@@ -9,6 +9,7 @@
<script type="application/x-javascript" src="chrome://torbutton/content/torbutton_util.js" />
<script type="application/x-javascript" src="chrome://torbutton/content/tor-circuit-display.js" />
+ <script type="application/x-javascript" src="chrome://torbutton/content/content-sizer.js" />
<script type="application/x-javascript" src="chrome://torbutton/content/torbutton.js" />
<script language="JavaScript">
//onLoad Hander
diff --git a/src/defaults/preferences/preferences.js b/src/defaults/preferences/preferences.js
index 2c109ee..85fd953 100644
--- a/src/defaults/preferences/preferences.js
+++ b/src/defaults/preferences/preferences.js
@@ -159,6 +159,7 @@ pref("extensions.torbutton.close_newnym",true);
pref("extensions.torbutton.block_js_history",true);
pref("extensions.torbutton.resize_on_toggle",true);
pref("extensions.torbutton.resize_new_windows",true);
+pref("extensions.torbutton.resize_windows",true);
pref("extensions.torbutton.banned_ports","9050,9051,9150,9151");
pref("extensions.torbutton.block_tor_file_net",true);
pref("extensions.torbutton.block_nontor_file_net",false);
diff --git a/src/modules/utils.js b/src/modules/utils.js
new file mode 100644
index 0000000..7a27326
--- /dev/null
+++ b/src/modules/utils.js
@@ -0,0 +1,43 @@
+// # Utils.js
+// Various helpful utility functions.
+
+// ### Shortcut
+const Cu = Components.utils;
+
+// ### Import Mozilla Services
+Cu.import("resource://gre/modules/Services.jsm");
+
+// ## Pref utils
+
+// __prefs__. A shortcut to Mozilla Services.prefs.
+let prefs = Services.prefs;
+
+// __getPrefValue(prefName)__
+// Returns the current value of a preference, regardless of its type.
+let getPrefValue = function (prefName) {
+ switch(prefs.getPrefType(prefName)) {
+ case prefs.PREF_BOOL: return prefs.getBoolPref(prefName);
+ case prefs.PREF_INT: return prefs.getIntPref(prefName);
+ case prefs.PREF_STRING: return prefs.getCharPref(prefName);
+ default: return null;
+ }
+};
+
+// __bindPrefAndInit(prefName, prefHandler)__
+// Applies prefHandler to the current value of pref specified by prefName.
+// Re-applies prefHandler whenever the value of the pref changes.
+// Returns a zero-arg function that unbinds the pref.
+let bindPrefAndInit = function (prefName, prefHandler) {
+ let update = () => { prefHandler(getPrefValue(prefName)); },
+ observer = { observe : function (subject, topic, data) {
+ if (data === prefName) {
+ update();
+ }
+ } };
+ prefs.addObserver(prefName, observer, false);
+ update();
+ return () => { prefs.removeObserver(prefName, observer); };
+};
+
+// Export utility functions for external use.
+let EXPORTED_SYMBOLS = ["bindPrefAndInit", "getPrefValue"];
1
0

27 Mar '15
commit 0dbb6e57791c171c54d6aadcce56f9953e4ae7a6
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Mar 26 19:39:44 2015 -0700
Update translations for 1.9.1.0.
---
src/chrome/locale/ar/aboutTor.dtd | 28 ++--
src/chrome/locale/ar/brand.dtd | 8 +-
src/chrome/locale/ar/brand.properties | 2 +-
src/chrome/locale/ar/torbutton.dtd | 151 +++++++++++++---------
src/chrome/locale/ar/torbutton.properties | 36 ++++--
src/chrome/locale/de/aboutTor.dtd | 4 +-
src/chrome/locale/de/torbutton.dtd | 31 ++++-
src/chrome/locale/de/torbutton.properties | 20 ++-
src/chrome/locale/es/aboutTor.dtd | 12 +-
src/chrome/locale/es/torbutton.dtd | 27 ++++
src/chrome/locale/es/torbutton.properties | 14 ++
src/chrome/locale/eu/torbutton.dtd | 29 ++++-
src/chrome/locale/eu/torbutton.properties | 14 ++
src/chrome/locale/fa/aboutTor.dtd | 2 +-
src/chrome/locale/fa/torbutton.dtd | 51 ++++++--
src/chrome/locale/fa/torbutton.properties | 14 ++
src/chrome/locale/fr/torbutton.dtd | 39 +++++-
src/chrome/locale/fr/torbutton.properties | 24 +++-
src/chrome/locale/it/aboutTor.dtd | 2 +-
src/chrome/locale/it/torbutton.dtd | 39 +++++-
src/chrome/locale/it/torbutton.properties | 22 +++-
src/chrome/locale/ja/torbutton.dtd | 27 ++++
src/chrome/locale/ja/torbutton.properties | 14 ++
src/chrome/locale/ko/torbutton.dtd | 27 ++++
src/chrome/locale/ko/torbutton.properties | 22 +++-
src/chrome/locale/nl/torbutton.dtd | 27 ++++
src/chrome/locale/nl/torbutton.properties | 14 ++
src/chrome/locale/pl/torbutton.dtd | 27 ++++
src/chrome/locale/pl/torbutton.properties | 14 ++
src/chrome/locale/pt/aboutTor.dtd | 30 ++---
src/chrome/locale/pt/browser.properties | 2 +-
src/chrome/locale/pt/torbutton.dtd | 39 +++++-
src/chrome/locale/pt/torbutton.properties | 28 +++-
src/chrome/locale/ru/aboutTor.dtd | 32 ++---
src/chrome/locale/ru/brand.dtd | 2 +-
src/chrome/locale/ru/torbutton.dtd | 177 +++++++++++++++-----------
src/chrome/locale/ru/torbutton.properties | 18 ++-
src/chrome/locale/sv/torbutton.dtd | 39 +++++-
src/chrome/locale/sv/torbutton.properties | 20 ++-
src/chrome/locale/tr/torbutton.dtd | 33 ++++-
src/chrome/locale/tr/torbutton.properties | 20 ++-
src/chrome/locale/vi/torbutton.dtd | 27 ++++
src/chrome/locale/vi/torbutton.properties | 14 ++
src/chrome/locale/zh-CN/aboutTor.dtd | 2 +-
src/chrome/locale/zh-CN/torbutton.dtd | 31 ++++-
src/chrome/locale/zh-CN/torbutton.properties | 18 ++-
46 files changed, 985 insertions(+), 288 deletions(-)
diff --git a/src/chrome/locale/ar/aboutTor.dtd b/src/chrome/locale/ar/aboutTor.dtd
index da6be21..4ca0c02 100644
--- a/src/chrome/locale/ar/aboutTor.dtd
+++ b/src/chrome/locale/ar/aboutTor.dtd
@@ -6,15 +6,15 @@
<!ENTITY aboutTor.title "عن تور">
-<!ENTITY aboutTor.outOfDateTorOn.label "ومع ذلك، هذا المتصفح قديم.">
-<!ENTITY aboutTor.outOfDateTorOff.label "أيضاً، هذا المتصفح قديم.">
-<!ENTITY aboutTor.outOfDate2.label "Click on the onion and then choose Check for Tor Browser Update.">
+<!ENTITY aboutTor.outOfDateTorOn.label "ومع ذلك، هذه نسخة قديمة من المتصفح.">
+<!ENTITY aboutTor.outOfDateTorOff.label "أيضاً، هذه نسخة قديمة من المتصفح.">
+<!ENTITY aboutTor.outOfDate2.label "اضغط على رمز البصلة ثم اختر "تحقق من تحديثات متصفح تور"">
<!ENTITY aboutTor.check.label "اختبر إعدادات شبكة تور.">
<!ENTITY aboutTor.success.label "تهانينا!">
-<!ENTITY aboutTor.success2.label "هذا المتصفح معد لاستخدام شبكة تور.">
-<!ENTITY aboutTor.success3.label "انت الآن حر في تصفح شبكة الإنترنت بشكل مجهول.">
+<!ENTITY aboutTor.success2.label "هذا المتصفح معدّ لاستخدام شبكة تور.">
+<!ENTITY aboutTor.success3.label "يمكنك الآن تصفح الانترنت بشكل يحمي هويتك.">
<!ENTITY aboutTor.failure.label "حدث خطأ ما!">
<!ENTITY aboutTor.failure2.label "تور لا يعمل في هذا المتصفح.">
<!ENTITY aboutTor.failure3prefix.label "للمساعدة، يرجى مراسلة ">
@@ -25,25 +25,25 @@
<!ENTITY aboutTor.searchSPPost.link "https://startpage.com/rth/search">
<!ENTITY aboutTor.searchDDGPost.link "https://duckduckgo.com/html/">
-<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
+<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
<!ENTITY aboutTor.torInfo1.label "معلومات إضافية:">
<!ENTITY aboutTor.torInfo2.label "الدولة وعنوان الإنترنت:">
<!ENTITY aboutTor.torInfo3.label "نقطة الخروج:">
-<!ENTITY aboutTor.torInfo4.label "هذا الخادم لا يسجل أي معلومات عن الزوار.">
+<!ENTITY aboutTor.torInfo4.label "هذا المخدم لا يحتفظ بأي معلومات عن زواره.">
<!ENTITY aboutTor.whatnextQuestion.label "ماذا بعد؟">
-<!ENTITY aboutTor.whatnextAnswer.label "تور ليس كل شيء تحتاجه حتى تتصفح بصفة مجهولة! قد تحتاج لتغيير بعد عاداتك أثناء التصفح لضمان اخفاء هويتك.">
-<!ENTITY aboutTor.whatnext.label "نصائح للبقاء مجهولاً »">
+<!ENTITY aboutTor.whatnextAnswer.label "لا يمثل تور كل ما تحتاجه للتصفح بشكل يحمي هويتك! قد تحتاج لتغيير بعد عاداتك أثناء التصفّح لضمان سرية هويتك.">
+<!ENTITY aboutTor.whatnext.label "نصائح للحفاظ على سريّة هويتك »">
<!ENTITY aboutTor.whatnext.link "https://www.torproject.org/download/download.html.en#warning">
-<!ENTITY aboutTor.helpInfo1.label "يمكنك المساعدة!">
-<!ENTITY aboutTor.helpInfo2.label "يمكنك مساعدة شبكة تور و جعلها اسرع و اقوي بإحدي الطرق الآتية:">
-<!ENTITY aboutTor.helpInfo3.label "شغل نقطة تور مُرحله »">
+<!ENTITY aboutTor.helpInfo1.label "بإمكانك المساعدة!">
+<!ENTITY aboutTor.helpInfo2.label "يمكنك مساعدة شبكة تور و جعلها أكثر سرعة و قوّة بإحدي الطرق الآتية:">
+<!ENTITY aboutTor.helpInfo3.label "شغّل نقطة تور »">
<!ENTITY aboutTor.helpInfo3.link "https://www.torproject.org/docs/tor-doc-relay.html.en">
<!ENTITY aboutTor.helpInfo4.label "تبرع بخدماتك »">
<!ENTITY aboutTor.helpInfo4.link "https://www.torproject.org/getinvolved/volunteer.html.en">
<!ENTITY aboutTor.helpInfo5.label "تبرع »">
<!ENTITY aboutTor.helpInfo5.link "https://www.torproject.org/donate/donate.html.en">
-<!ENTITY aboutTor.footer.label "مشروع تور هو ‭US 501(c)(3)‬ غير ربحي مُكرس للبحث، و التطوير، و التوعية بإخفاء الهوية والخصوصية.">
-<!ENTITY aboutTor.learnMore.label "تعلم المزيد عن مشروع تور »">
+<!ENTITY aboutTor.footer.label "مشروع تور هو مشروع غير ربحي (حسب US 501(c)(3)) مُكرس للبحث، والتطوير، والتوعية حول موضوع إخفاء الهوية والخصوصية.">
+<!ENTITY aboutTor.learnMore.label "اقرأ المزيد عن مشروع تور »">
<!ENTITY aboutTor.learnMore.link "https://www.torproject.org/about/overview.html.en">
diff --git a/src/chrome/locale/ar/brand.dtd b/src/chrome/locale/ar/brand.dtd
index b599c91..4504761 100644
--- a/src/chrome/locale/ar/brand.dtd
+++ b/src/chrome/locale/ar/brand.dtd
@@ -8,7 +8,7 @@
<!ENTITY trademarkInfo.part1 "فايرفوكس وشعارات فايرفوكس علامات تجارية مسجلة لمؤسسة موزيلا.">
<!-- The following strings are for bug #10280's UI. We place them here for our translators -->
-<!ENTITY plugins.installed.find "Click to load installed system plugins">
-<!ENTITY plugins.installed.enable "Enable plugins">
-<!ENTITY plugins.installed.disable "Disable plugins">
-<!ENTITY plugins.installed.disable.tip "Click to prevent loading system plugins">
+<!ENTITY plugins.installed.find "اضغط لتحميل الإضافات المثبتة على المتصفح">
+<!ENTITY plugins.installed.enable "تمكين الإضافات">
+<!ENTITY plugins.installed.disable "تعطيل الإضافات ">
+<!ENTITY plugins.installed.disable.tip "انقر لمنع تحميل الإضافات المثبتة على المتصفح">
diff --git a/src/chrome/locale/ar/brand.properties b/src/chrome/locale/ar/brand.properties
index 8f783fa..b1b159d 100644
--- a/src/chrome/locale/ar/brand.properties
+++ b/src/chrome/locale/ar/brand.properties
@@ -10,6 +10,6 @@ homePageSingleStartMain=صفحة بدء فايرفوكس، صفحة رئيسية
homePageImport=استورد الصفحة الرئيسية من %S
homePageMigrationPageTitle=اختيار الصفحة الرئيسية
-homePageMigrationDescription=فضلاً، قم باختيار الصفحة الرئيسية التي ترغب في استعمالها:
+homePageMigrationDescription=لو سمحت، قم باختيار الصفحة الرئيسية التي ترغب في استعمالها:
syncBrandShortName=مزامنة
diff --git a/src/chrome/locale/ar/torbutton.dtd b/src/chrome/locale/ar/torbutton.dtd
index 2928c62..bf5e04f 100644
--- a/src/chrome/locale/ar/torbutton.dtd
+++ b/src/chrome/locale/ar/torbutton.dtd
@@ -1,80 +1,80 @@
<!ENTITY torbutton.prefs.title "تفضيلات زر تور">
-<!ENTITY torbutton.prefs.tor_settings "إعدادات الوسيط">
-<!ENTITY torbutton.prefs.recommended_settings "استخدم إعدادات الوسيط المحبّذة لنسختي من فيرفكس">
+<!ENTITY torbutton.prefs.tor_settings "إعدادات البروكسي">
+<!ENTITY torbutton.prefs.recommended_settings "استخدم إعدادات البروكسي المحبّذة لهذه النسخة من فايرفكس">
<!ENTITY torbutton.prefs.use_privoxy "استخدم Privoxy">
<!ENTITY torbutton.prefs.use_polipo "استخدم Polipo">
-<!ENTITY torbutton.prefs.custom_settings "استخدم إعدادات وسيط مخصصة">
-<!ENTITY torbutton.prefs.proxy.host.http "وسيط HTTP:">
-<!ENTITY torbutton.prefs.proxy.host.https "وسيط SSL:">
-<!ENTITY torbutton.prefs.proxy.host.ftp "وسيط FTP:">
-<!ENTITY torbutton.prefs.proxy.host.gopher "وسيط Gopher:">
-<!ENTITY torbutton.prefs.proxy.host.socks "وسيط SOCKS:">
-<!ENTITY torbutton.prefs.proxy.port "المنفذ:">
+<!ENTITY torbutton.prefs.custom_settings "استخدم إعدادات بروكسي مخصصة">
+<!ENTITY torbutton.prefs.proxy.host.http "بروكسي HTTP:">
+<!ENTITY torbutton.prefs.proxy.host.https "بروكسي SSL:">
+<!ENTITY torbutton.prefs.proxy.host.ftp "بروكسي FTP:">
+<!ENTITY torbutton.prefs.proxy.host.gopher "بروكسي Gopher:">
+<!ENTITY torbutton.prefs.proxy.host.socks "بروكسي SOCKS:">
+<!ENTITY torbutton.prefs.proxy.port "البوابة:">
<!ENTITY torbutton.about.title "عن زر تور">
<!ENTITY torbutton.about.version "الإصدار :">
-<!ENTITY torbutton.about.summary "إحمي خصوصية تصفحك لتور">
-<!ENTITY torbutton.about.code "المساهمون في الشفرة المصدرية :">
-<!ENTITY torbutton.about.maintainer "صائن:">
-<!ENTITY torbutton.about.security_review "المراجعة الامنية :">
-<!ENTITY torbutton.about.donate "إذا كنت تحب إستخدام تور ، قد تفكر في">
-<!ENTITY torbutton.about.make_donation "قم بالتبرع .">
-<!ENTITY torbutton.pref_connection.notice "عطل زر تور لتغيير هذه الإعدادات.">
+<!ENTITY torbutton.about.summary "يحمي خصوصية تصفحك عبر تور">
+<!ENTITY torbutton.about.code "المساهمون في كتابة وتطوير تعليمات البرمجة:">
+<!ENTITY torbutton.about.maintainer "المشرف على الصيانة:">
+<!ENTITY torbutton.about.security_review "المراجعة الأمنية :">
+<!ENTITY torbutton.about.donate "إذا كنت تحب استخدام تور، قد تفكّر في">
+<!ENTITY torbutton.about.make_donation "التبرّع.">
+<!ENTITY torbutton.pref_connection.notice "عطّل زر تور لتغيير هذه الإعدادات.">
<!ENTITY torbutton.pref_connection.more_info "مزيد من المعلومات">
<!ENTITY torbutton.pref_connection_more_info.title "التعليمات">
-<!ENTITY torbutton.pref_connection_more_info.text "زر تور مفعّل حاليًا. إن كنت تريد تغيير إعدادات الوسيط غير المتعلقة بتور، فضلاً عطل زر تور أولاً ثم عد إلى هنا. إن كنت تريد تعديل إعدادات زر تور فاستخدم نافذة تفضيلات زر تور.">
+<!ENTITY torbutton.pref_connection_more_info.text "زر تور مفعّل حاليًا. إذا كنت تريد تغيير إعدادات البروكسي غير المتعلقة بتور، فضلاً عطل زر تور أولاً ثم عد إلى هنا. إن كنت تريد تعديل إعدادات زر تور فاستخدم نافذة تفضيلات زر تور.">
<!ENTITY torbutton.context_menu.new_identity "هوية جديدة">
-<!ENTITY torbutton.context_menu.new_identity_key "أنا">
-<!ENTITY torbutton.context_menu.new_circuit "New Tor Circuit for this Site">
+<!ENTITY torbutton.context_menu.new_identity_key "I">
+<!ENTITY torbutton.context_menu.new_circuit "دائرة تور جديدة لهذا الموقع">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
-<!ENTITY torbutton.context_menu.toggle "بدّل حالة تور">
-<!ENTITY torbutton.context_menu.toggle.key "ت">
-<!ENTITY torbutton.context_menu.preferences "Privacy and Security Settings…">
-<!ENTITY torbutton.context_menu.preferences.key "ف">
+<!ENTITY torbutton.context_menu.toggle "بدّل حالة تفعيل تور">
+<!ENTITY torbutton.context_menu.toggle.key "T">
+<!ENTITY torbutton.context_menu.preferences "إعدادات الخصوصية والأمان...">
+<!ENTITY torbutton.context_menu.preferences.key "P">
<!ENTITY torbutton.context_menu.about "عن زر تور...">
-<!ENTITY torbutton.context_menu.about.key "ح">
-<!ENTITY torbutton.context_menu.networksettings "Tor Network Settings…">
-<!ENTITY torbutton.context_menu.networksettings.key "ح">
-<!ENTITY torbutton.context_menu.downloadUpdate "Check for Tor Browser Update…">
-<!ENTITY torbutton.context_menu.downloadUpdate.key "ت">
-<!ENTITY torbutton.context_menu.cookieProtections "Cookie Protections…">
+<!ENTITY torbutton.context_menu.about.key "A">
+<!ENTITY torbutton.context_menu.networksettings "إعدادات شبكة تور...">
+<!ENTITY torbutton.context_menu.networksettings.key "S">
+<!ENTITY torbutton.context_menu.downloadUpdate "تحقق من تحديثات متصفح تور...">
+<!ENTITY torbutton.context_menu.downloadUpdate.key "U">
+<!ENTITY torbutton.context_menu.cookieProtections "إعدادات أمان ملفات تعريف الارتباط...">
<!ENTITY torbutton.context_menu.cookieProtections.key "C">
<!ENTITY torbutton.context_menu.copyTor "نسخ رابط تور">
<!ENTITY torbutton.context_menu.copyTor.key "p">
-<!ENTITY torbutton.context_menu.openTorTab "فتح عنوان تور في علامة تبويب جديدة">
+<!ENTITY torbutton.context_menu.openTorTab "فتح عنوان تور في صفحة تبويب جديدة">
<!ENTITY torbutton.context_menu.openTorTab.key "r">
<!ENTITY torbutton.context_menu.openTorWindow "فتح عنوان تور في نافذة جديدة">
<!ENTITY torbutton.context_menu.openTorWindow.key "d">
<!ENTITY torbutton.button.label "زر تور">
<!ENTITY torbutton.button.tooltip "انقر لبدء زر تور">
-<!ENTITY torbutton.prefs.privacy_security_settings "إعدادات الأمان والخصوصية">
-<!ENTITY torbutton.prefs.block_thread "امنع قراءة تاريخ التصفح أثناء عمل تور (حَرِج)">
-<!ENTITY torbutton.prefs.block_thwrite "امنع كتابة تاريخ التصفح أثناء عمل تور (محبّذ)">
-<!ENTITY torbutton.prefs.block_nthread "امنع قراءة تاريخ التصفح أثناء توقف تور (اختياري)">
-<!ENTITY torbutton.prefs.block_nthwrite "امنع كتابة تاريخ التصفح أثناء توقف تور (اختياري)">
-<!ENTITY torbutton.prefs.clear_history "امسح تاريخ التصفح عند تغير حالة تور (اختياري)">
-<!ENTITY torbutton.prefs.clear_cache "امنع الاختزان على القرص مع تور وامسح كل البيانات عند تبديل حالة تور">
+<!ENTITY torbutton.prefs.privacy_security_settings "إعدادات الأمان والخصوصيّة">
+<!ENTITY torbutton.prefs.block_thread "امنع قراءة سجل التصفح أثناء عمل تور (ضروري جدا)">
+<!ENTITY torbutton.prefs.block_thwrite "امنع كتابة سجل التصفح أثناء عمل تور (محبّذ)">
+<!ENTITY torbutton.prefs.block_nthread "امنع قراءة سجل التصفح أثناء توقف تور (اختياري)">
+<!ENTITY torbutton.prefs.block_nthwrite "امنع كتابة سجل التصفح أثناء توقف تور (اختياري)">
+<!ENTITY torbutton.prefs.clear_history "امسح سجل التصفح عند تغير حالة تفعيل تور (اختياري)">
+<!ENTITY torbutton.prefs.clear_cache "امنع Tor من تخزين البيانات بشكل مؤقت على القرص وامسح كل البيانات المؤقتة عند تبديل حالة تور">
<!ENTITY torbutton.prefs.block_cache "امنع الولوج إلى بيانات تور على القرص و الذاكرة أثناء عمل تور">
-<!ENTITY torbutton.prefs.cookie_jars "احفظ كعكات سوى تور في وعاء آمن ">
-<!ENTITY torbutton.prefs.cookie_protection "استخدام حوار كعكة الحماية للاختيار">
-<!ENTITY torbutton.prefs.mmm_cookies "سأدير الكعكات يدويًا (حَرِج)">
-<!ENTITY torbutton.prefs.clear_cookies "امسح الكعكات عند تبديل حالة تور">
+<!ENTITY torbutton.prefs.cookie_jars "احفظ ملفات تعريف الارتباط (كوكيز) غير المرتبطة بتصفح تور في وعاء آمن ">
+<!ENTITY torbutton.prefs.cookie_protection "استخدام نافذة حوار إعدادات حماية ملفات تعريف الارتابط لاختيار">
+<!ENTITY torbutton.prefs.mmm_cookies "سأدير ملفات تعريف الارتباط بشكل يدوي (خطر)">
+<!ENTITY torbutton.prefs.clear_cookies "امسح ملفات تعريف الارتباط (كوكيز) عند تبديل حالة تفييل تور">
<!ENTITY torbutton.prefs.disable_plugins "عطّل الملحقات أثناء عمل التور (حَرِج)">
<!ENTITY torbutton.prefs.kill_bad_js "احجز جافاسكربت الخطرة (حَرِج)">
<!ENTITY torbutton.prefs.isolate_content "اعزل المحتوى الحركي عن حالة تور (حَرِج)">
<!ENTITY torbutton.prefs.no_updates "عطل التحديثات أثناء استخدام تور">
<!ENTITY torbutton.prefs.set_uagent "اضبط وكبل المستخدم لعمل التور (حَرِج)">
-<!ENTITY torbutton.prefs.dynamic "المحتوى الحركي">
-<!ENTITY torbutton.prefs.cookies "الكعكات">
-<!ENTITY torbutton.prefs.cache "المخبأ">
+<!ENTITY torbutton.prefs.dynamic "المحتوى الديناميكي">
+<!ENTITY torbutton.prefs.cookies "ملفات تعريف الارتباط (كوكيز)">
+<!ENTITY torbutton.prefs.cache "البيانات المخزنة بشكل مؤقت">
<!ENTITY torbutton.prefs.history "السجل">
<!ENTITY torbutton.prefs.no_search "امنع اقتراحات البحث أثناء عمل التور (محبّذ)">
<!ENTITY torbutton.prefs.shutdown "أغلق المتصفح">
-<!ENTITY torbutton.prefs.tor_shutdown "امسح الكعكات عند إغلاق المتصفح أثناء عمل التور">
-<!ENTITY torbutton.prefs.all_shutdown "امسح الكعكات عند أي إغلاق للمتصفح">
-<!ENTITY torbutton.prefs.no_shutdown "لا تمسح الكعكات عند إغلاق المتصفح">
+<!ENTITY torbutton.prefs.tor_shutdown "امسح ملفات تعريف الارتباط (كوكيز) عند إغلاق المتصفح أثناء عمل التور">
+<!ENTITY torbutton.prefs.all_shutdown "امسح ملفات تعريف الارتباط (كوكيز) عند أي إغلاق للمتصفح">
+<!ENTITY torbutton.prefs.no_shutdown "لا تمسح ملفات تعريف الارتباط (كوكيز) عند إغلاق المتصفح">
<!ENTITY torbutton.prefs.disable_sessionstore "عطّل حفظ الجلسة (محبّذ)">
<!ENTITY torbutton.prefs.headers "الترويسات">
-<!ENTITY torbutton.prefs.spoof_english "انتحل متصفحًا إنجليزيًا أمريكيًا">
+<!ENTITY torbutton.prefs.spoof_english "انتحل صفة متصفح إنجليزي أمريكي">
<!ENTITY torbutton.prefs.refererspoofing "تزييف المرجع">
<!ENTITY torbutton.prefs.spoofblank "Spoof blank referer during Tor usage (may break some sites)">
<!ENTITY torbutton.prefs.smartspoof "محاكاة ساخرة ذكية للتحويل أثناء عمل تور (سخرية المجال المرجعي المتقاطع)">
@@ -83,10 +83,10 @@
<!ENTITY torbutton.prefs.forms "الإكمال التلقائي">
<!ENTITY torbutton.prefs.block_tforms "امنع حفظ كلمات السر و والإكمال التلقائي أثناء عمل التور (محبّذ)">
<!ENTITY torbutton.prefs.block_ntforms "امنع حفظ كلمات السر والإكمال التلقائي أثناء تعطل التور (اختياري)">
-<!ENTITY torbutton.prefs.tor "التور">
+<!ENTITY torbutton.prefs.tor "تور">
<!ENTITY torbutton.prefs.non_tor "التور معطل">
<!ENTITY torbutton.prefs.restore_tor "خلال بدء استعادة الجلسة، اضبط حالة التور إلى:">
-<!ENTITY torbutton.prefs.startup_tor "عند بدء التشغيل المتصفح ، تعيين جالة تور إلى:">
+<!ENTITY torbutton.prefs.startup_tor "عند بدء التشغيل المتصفح، غيّر جالة تور إلى:">
<!ENTITY torbutton.prefs.reload_crashed_jar "أعد تحميل وعاء الكعكات/امسح الكعكات عند انهيار فيرفكس (محبّذ)">
<!ENTITY torbutton.prefs.dual_cookie_jars "احفظ الكعكات عن تفعيل تور وعند تعطيله في أوعية محمية (خطر)">
<!ENTITY torbutton.prefs.clear_http_auth "امسح جلسات المصادقة لـ HTTP (محبّذ)">
@@ -107,11 +107,11 @@
<!ENTITY torbutton.prefs.test_settings "فحص الإعدادات">
<!ENTITY torbutton.prefs.test_auto "افحص إعدادات تور بعد أول تشغيل كل مرة يتم تشغيل فيرفكس">
<!ENTITY torbutton.prefs.disable_livemarks "Disable livemarks updates during Tor usage">
-<!ENTITY torbutton.prefs.tor_memory_jar "لا تحفظ الكعكات في القرص إذا كان التور مفعلًا">
-<!ENTITY torbutton.prefs.nontor_memory_jar "لا تحفظ الكعكات في القرص إن كان تور معطلًا">
+<!ENTITY torbutton.prefs.tor_memory_jar "لا تحفظ ملفات تعريف الارتباط (كوكيز) في القرص إذا كان التور مفعلًا">
+<!ENTITY torbutton.prefs.nontor_memory_jar "لا تحفظ ملفات تعريف الارتباط (كوكيز) في القرص إن كان تور معطلًا">
<!ENTITY torbutton.prefs.session_restore "حفظ الجلسة واستعادة هذه التبويبات:">
<!ENTITY torbutton.prefs.nontor_tabs "تبويبات محملة في وضع التور معطل">
-<!ENTITY torbutton.prefs.tor_tabs "تبويبات محملة باستخدام التور">
+<!ENTITY torbutton.prefs.tor_tabs "تبويبات محملة في وضع تور مفعل">
<!ENTITY torbutton.prefs.socks_vfour "SOCKS v4">
<!ENTITY torbutton.prefs.socks_vfive "SOCKS v5">
<!ENTITY torbutton.prefs.no_proxies_on "لا وسيط ل:">
@@ -122,27 +122,27 @@
<!ENTITY torbutton.prefs.spoofroot "محاكاة ساخرة المجلد الذي يحتوي على الصفحة">
<!ENTITY torbutton.prefs.spoofdomain "محاكاة ساخرة المجال مثل المرجعية">
<!ENTITY torbutton.prefs.spoofblank "Spoof blank referer during Tor usage (may break some sites)">
-<!ENTITY torbutton.cookiedialog.title "إدارة كعكات الحماية">
+<!ENTITY torbutton.cookiedialog.title "إدارة إعدادت الحماية لملفات تعريف الارتباط">
<!ENTITY torbutton.cookiedialog.lockCol "محمية">
<!ENTITY torbutton.cookiedialog.domainCol "استضافة">
<!ENTITY torbutton.cookiedialog.nameCol "اسم">
<!ENTITY torbutton.cookiedialog.pathCol "المسار">
-<!ENTITY torbutton.cookiedialog.protectCookie "كعكة الحماية">
-<!ENTITY torbutton.cookiedialog.removeCookie "إزالة الكعك">
-<!ENTITY torbutton.cookiedialog.unprotectCookie "إلغاء كعكة الحماية">
+<!ENTITY torbutton.cookiedialog.protectCookie "احم ملف تعريف الارتباط (كوكي)">
+<!ENTITY torbutton.cookiedialog.removeCookie "إزالة ملف تعريف الارتباط (كوكي)">
+<!ENTITY torbutton.cookiedialog.unprotectCookie "إلغاء حماية ملف تعريف الارتباط (كوكي)">
<!ENTITY torbutton.cookiedialog.removeAllBut "إزالة الكل لكن استمر في الحماية">
-<!ENTITY torbutton.cookiedialog.saveAllCookies "كعكة حماية جديدة">
-<!ENTITY torbutton.cookiedialog.doNotSaveAllCookies "لا تحمي الكعكات الجديدة">
+<!ENTITY torbutton.cookiedialog.saveAllCookies "احم ملفات تعريف الارتباط الجديدة">
+<!ENTITY torbutton.cookiedialog.doNotSaveAllCookies "لا تحم ملفات تعريف الارتباط الجديدة">
<!ENTITY torbutton.prefs.disable_livemarks "Disable livemarks updates during Tor usage">
<!ENTITY torbutton.prefs.dtd_recommended "(محبّذ)">
<!ENTITY torbutton.prefs.dtd_optional "(اختياري)">
-<!ENTITY torbutton.prefs.dtd_crucial "(حَرِج)">
+<!ENTITY torbutton.prefs.dtd_crucial "(ضروري جدا)">
<!ENTITY torbutton.prefs.update_torbutton_via_tor "أعد توجيه تحديثات زر تور خلال شبكة التور">
<!ENTITY torbutton.prefs.dodge_google_captcha "تلقائياً استخدم محرك بحث بديل عندما يتم إظهار كلمة التحقق الخاصة بقوقل (Google):">
<!ENTITY torbutton.prefs.engine1 "ixquick.com">
<!ENTITY torbutton.prefs.engine2 "Bing.com">
<!ENTITY torbutton.prefs.engine3 "Yahoo.com">
-<!ENTITY torbutton.prefs.engine4 "صفحة البداية">
+<!ENTITY torbutton.prefs.engine4 "startpage.com">
<!ENTITY torbutton.prefs.engine5 "duckduckgo.com">
<!ENTITY torbutton.prefs.fix_google_srch "أزل المنصة واللغة من استفسارات محرك بحث غوغل">
<!ENTITY torbutton.prefs.transparentTor "شفافية توريفكيشن (تحتاج موجه تور أو ترانسبوكسي مخصص)">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "تغيير التفاصيل التي تميزك عن المستخدمين الآخرين لمتصفح تور">
<!ENTITY torbutton.prefs.sec_caption "مستوى الأمان">
<!ENTITY torbutton.prefs.sec_low "منخفض (افتراضي)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
<!ENTITY torbutton.prefs.sec_med_low "شبه منخفض">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is disabled.">
<!ENTITY torbutton.prefs.sec_med_high "شبه عالٍ">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "بعض ميزات إظهار الخطوط معطلة ">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG images are disabled.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "عالٍ">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is disabled by default on all sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "قيم مخصصة">
-<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+<!ENTITY torbutton.circuit_display.title "دائرة تور لهذا الموقع">
+
diff --git a/src/chrome/locale/ar/torbutton.properties b/src/chrome/locale/ar/torbutton.properties
index 8846f57..456399a 100644
--- a/src/chrome/locale/ar/torbutton.properties
+++ b/src/chrome/locale/ar/torbutton.properties
@@ -1,17 +1,19 @@
torbutton.button.tooltip.disabled = فعّل تور
torbutton.button.tooltip.enabled = عطّل تور
-torbutton.circuit_display.internet = Internet
-torbutton.circuit_display.ip_unknown = IP unknown
-torbutton.circuit_display.this_browser = This browser
-torbutton.circuit_display.tor_bridge = Bridge
-torbutton.circuit_display.unknown_country = Unknown country
+torbutton.circuit_display.internet = انترنت
+torbutton.circuit_display.ip_unknown = IP غير معروف
+torbutton.circuit_display.onion_site = Onion site
+torbutton.circuit_display.this_browser = هذا المتصفح
+torbutton.circuit_display.relay = relay
+torbutton.circuit_display.tor_bridge = جسر
+torbutton.circuit_display.unknown_country = بلد غير معروف
torbutton.panel.tooltip.disabled = انقر لتفعيل تور
torbutton.panel.tooltip.enabled = انقر لتعطيل تور
torbutton.panel.plugins.disabled = انقر لتفعيل الملحقات
torbutton.panel.plugins.enabled = انقر لتعطيل الملحقات
torbutton.panel.label.disabled = تور معطّل
torbutton.panel.label.enabled = تور مفعّل
-extensions.torbutton(a)torproject.org.description = زر تور يوفر زر لأعادة تكوين إعدادات تور وايضاً يمكنك بسهوله و بسرعة مسح بيانات التصفح الخاصة بك.
+extensions.torbutton(a)torproject.org.description = زر تور يوفر زر لتعديل إعدادات تور وايضاً لمسح بيانات التصفح الخاصة بك بسرعة وبسهولة.
torbutton.popup.history.warning = حجب مفتاح تور نشاطاً من تبويبة محملة في وضع تور مختلف.\n\nهذا الأمر للالتفاف حول مشاكل فايرفوكس رقم 409737 و417869.\n\nإذا ظهرت هذه الرسالة دون سبب، هناك إحدى تبويباتك تحاول إعادة تحميل نفسها في الخلفية، وتم حجب هذا.\n\nلإعادة تحميل التبويبة في حالة تور هذه يرجى أن تضغط 'Enter' في صندوق شريط العنوان.\n\n
torbutton.popup.plugin.warning = منع مفتاح تور تحميلا مباشراً لمحتوى برنامج إضافي بفايرفوكس.\n\nاستخدم 'احفظ باسم' كبديل.\n\n
torbutton.popup.confirm_ca_certs = ملاحظة من مفتاح تور: بما أنّك لا تملك ميثاق إصدار الشهادة الرقمي، وحيث أنّ عملية فحص قائمة مصدر الشهادة الرقمية عملية بطيئة وتسبب بطئاً في عمل مفتاح تور، فهل ترغب في تعطيل عملية عزل شهادات الإصدار الرقمي؟ (إن كنت لا تعلم او لا تفهم معنى ذلك، فإنه من المستحسن أن تختار خيار الموافقة)
@@ -23,14 +25,14 @@ torbutton.popup.test.confirm_toggle = فشل آخر اختبار لبروكسي
torbutton.popup.test.ff3_notice = اضغط "موافق" لاختبار إعدادات بروكسي تور. هذا الاختبار سيتم في الخلفية. يرجى الانتظار.
torbutton.panel.label.verified = تم التحقق والمصادقة على تور
torbutton.popup.test.auto_failed = الاختبار الآلي لبروكسي تور فشل.\n\nهل أنت متأكد أنك تريد التفعيل علي أي حال؟
-torbutton.prefs.recommended = (موصى به)
+torbutton.prefs.recommended = (محبّذ)
torbutton.prefs.optional = (إختياري)
-torbutton.prefs.crucial = (أساسي)
+torbutton.prefs.crucial = (ضروري جدا)
torbutton.popup.external.title = هل تريد تنزيل ملفاً من نوع الوصلة الخارجية؟
torbutton.popup.external.app = لا يمكن لمتصفّح تور عرض هذه الملف, يجب عليك أن تفتحه باستعمال تطبيق أخر.\n\n
torbutton.popup.external.note = بعض الأنواع من الملفات قد تعمل على إعطاء بعض التطبيقات الإمكانيّة للاتصال بالإنترنت دون استعمال تور.\n\n
torbutton.popup.external.suggest = لسلامتك, يجب عليك فتح الملفات المنزّلة مسبقاً عند كونك غير متصلاً بالإنترنت, أو استعمل قرص مضغوط لـ Tor Life , مثل Tails.\n
-torbutton.popup.launch = إنزال الملف
+torbutton.popup.launch = تحميل الملف
torbutton.popup.cancel = إلغاء
torbutton.popup.dontask = أنزل الملفات بشكلٍ أوتوماتيكيّ من الأن فصاعداً
torbutton.popup.test.no_http_proxy = فحص بروكسي تور: لا يمكن الوصول إلى بروكسي HTTP المحلي. هل يعمل Polipo بشكل صحيح؟
@@ -51,13 +53,25 @@ torbutton.popup.short_torbrowser = معلومات هامة عن زر تور \n\n
torbutton.popup.confirm_plugins = البرامج الإضافية مثل فلاش تستطيع ان تضر بخصوصيتك و تكشف هويتك.\n\nو تستطيع ايضا ان تتجنب تور و تكشف عن مكانك الحالي و عنوان الأي بي الخاص بك.\n\nهل أنت متأكد أنك تريد تفعيل البرامج الإضافية؟\n\n
torbutton.popup.never_ask_again = لا تسألني مرة اخري
-torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.popup.confirm_newnym = متصفح تور
+
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=هذا الموقع (٪ S) حاول استخراج بيانات الصورة HTML5، والتي يمكن استخدامها لتحديد مكانك وتحديد الكومبيوتر.\n\nهل تريد أن يسمح متصفح Tor لهذا الموقع لاستخراج بيانات الصورة ؟
-canvas.notNow=ليس الان
+canvas.notNow=في وقت آخر
canvas.notNowAccessKey=النون
canvas.allow=السماح في المستقبل
canvas.allowAccessKey=ا
canvas.never=ليس للموقع هذا ابداً (مستحب)
canvas.neverAccessKey=ط
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profile Problem
+profileReadOnly=You cannot run %S from a read-only file system. Please copy %S to another location before trying to use it.
+profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it.
+profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again.
diff --git a/src/chrome/locale/de/aboutTor.dtd b/src/chrome/locale/de/aboutTor.dtd
index f757363..25366b0 100644
--- a/src/chrome/locale/de/aboutTor.dtd
+++ b/src/chrome/locale/de/aboutTor.dtd
@@ -8,7 +8,7 @@
<!ENTITY aboutTor.outOfDateTorOn.label "Dieser Browser ist nicht mehr aktuell.">
<!ENTITY aboutTor.outOfDateTorOff.label "DIESER Browser ist auch veraltet.">
-<!ENTITY aboutTor.outOfDate2.label "Klicke auf die Zwiebel und dann ">
+<!ENTITY aboutTor.outOfDate2.label "Klicken Sie auf die Zwiebel and wählen Sie dann Überprüfe auf Tor-Browser Aktualisierung.">
<!ENTITY aboutTor.check.label "Tor-Netzwerkeinstellungen testen">
@@ -25,7 +25,7 @@
<!ENTITY aboutTor.searchSPPost.link "https://startpage.com/rth/search">
<!ENTITY aboutTor.searchDDGPost.link "https://duckduckgo.com/html/">
-<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
+<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
<!ENTITY aboutTor.torInfo1.label "Zusätzliche Informationen:">
<!ENTITY aboutTor.torInfo2.label "Land & IP-Adresse:">
diff --git a/src/chrome/locale/de/torbutton.dtd b/src/chrome/locale/de/torbutton.dtd
index 1772e47..622cfc1 100644
--- a/src/chrome/locale/de/torbutton.dtd
+++ b/src/chrome/locale/de/torbutton.dtd
@@ -1,6 +1,6 @@
<!ENTITY torbutton.prefs.title "Torbutton-Einstellungen">
-<!ENTITY torbutton.prefs.tor_settings "Vermittlungsservereinstellungen">
-<!ENTITY torbutton.prefs.recommended_settings "Die empfohlenen Vermittlungsservereinstellungen für meine Firefox-Version benutzen">
+<!ENTITY torbutton.prefs.tor_settings "Proxyserver-Einstellungen">
+<!ENTITY torbutton.prefs.recommended_settings "Benutze die empfohlenen Proxyserver-Einstellungen für meine Firefox-Version">
<!ENTITY torbutton.prefs.use_privoxy "Privoxy verwenden">
<!ENTITY torbutton.prefs.use_polipo "Polipo verwenden">
<!ENTITY torbutton.prefs.custom_settings "Individuelle Vermittlungsservereinstellungen verwenden">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Details ändern, die Sie von anderen Tor-Browser-Benutzern unterscheiden">
<!ENTITY torbutton.prefs.sec_caption "Sicherheitslevel">
<!ENTITY torbutton.prefs.sec_low "gering (Standard)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "Dies liefert die am meisten nutzbaren Erfahrungen.">
+<!ENTITY torbutton.prefs.sec_low_desc "Auf diesem Sicherheitsniveau sind alle Merkmale des Browsers freigegeben.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "Der SVG-OpenType-Schriftart-Renderingvorgang ist deaktiviert.">
<!ENTITY torbutton.prefs.sec_med_low "unteres Mittel">
+<!ENTITY torbutton.prefs.sec_gen_desc "Auf dieser Sicherheitsstufe gelten die folgenden Änderungen (für weitere Details mit der Maus überfahren):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5-Video- und Audiomedien werden per Click-to-Play über NoScript abspielbar.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "Auf manchen Webseiten müssen Sie möglicherweise die NoScript-Schaltfläche in der Werkzeugleiste verwenden, um diese Medienobjekte zu aktivieren.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Einige JavaScript Ausführungsoptimierungen sind unterbunden.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Typinferenz, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "JIT-Basis.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts können auf manchen seiten langsamer laufen.">
+<!ENTITY torbutton.prefs.sec_jar_desc "JAR-Dateieen sind im Web extrem selten, können aaber eine Quelle von XSS und anderen Attacken sein.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR-Dateien sind sehr selten im Internet, aber sie können eine Quelle von XSS (Webseitenübergreifendes Skripting) und anderer Angriffe sein.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Manche Vorgänge zur Anzeige von mathematischen Gleichungen sind deaktiviert.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML ist blockiert.">
<!ENTITY torbutton.prefs.sec_med_high "oberes Mittel">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "Alle JavaScript-Leistungsoptimierungen sind deaktiviert.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Einige Schriftabbildungseigenschaften sind blockiert.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "Der Graphite-Schriftart-Renderingvorgang ist deaktiviert.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Einige Arten von Bilddateien sind blockiert.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG-Bilder sind blockiert.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript ist standardmäßig auf allen Nicht-HTTPS-Webseiten deaktiviert.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript kann über die NoScript-Schaltfläche in der Werkzeugleiste für jede Webseite einzeln aktiviert werden.">
<!ENTITY torbutton.prefs.sec_high "hoch">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript ist standardmäßig auf allen Webseiten deaktiviert.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Die meisten Audio- und Videoformate sind deaktiviert.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM ist der einzige Codec, der aktiviert bleibt.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Manche Schriftarten und Symbole könnten falsch angezeigt werden.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Von Webseiten bereitgestellte Schriftartdateien sind gesperrt.">
<!ENTITY torbutton.prefs.sec_custom "Eigene Werte">
<!ENTITY torbutton.circuit_display.title "Tor-Kanal für diese Seite">
+
diff --git a/src/chrome/locale/de/torbutton.properties b/src/chrome/locale/de/torbutton.properties
index ba20cf9..ed2941d 100644
--- a/src/chrome/locale/de/torbutton.properties
+++ b/src/chrome/locale/de/torbutton.properties
@@ -1,9 +1,11 @@
torbutton.button.tooltip.disabled = Tor aktivieren
torbutton.button.tooltip.enabled = Tor deaktivieren
torbutton.circuit_display.internet = Internet
-torbutton.circuit_display.ip_unknown = IP unbekannt
+torbutton.circuit_display.ip_unknown = IP ist unbekannt
+torbutton.circuit_display.onion_site = Onion-Seite
torbutton.circuit_display.this_browser = Dieser Browser
-torbutton.circuit_display.tor_bridge = Bridge
+torbutton.circuit_display.relay = Relais
+torbutton.circuit_display.tor_bridge = Brücke
torbutton.circuit_display.unknown_country = Unbekanntes Land
torbutton.panel.tooltip.disabled = Klicken, um Tor zu aktivieren
torbutton.panel.tooltip.enabled = Klicken, um Tor zu deaktivieren
@@ -51,7 +53,12 @@ torbutton.popup.short_torbrowser = Wichtige Torbutton-Information!\n\nTorbutton
torbutton.popup.confirm_plugins = Erweiterungen wie Flash können ihre Privatsphäre und Anonymität schädigen.\n\nSie können auch das Tor-Netzwerk umgehen, und Ihren derzeitigen Aufenthaltsort und ihre IP-Adresse verraten.\n\nSind Sie sicher, dass Sie Erweiterungen aktivieren wollen?\n\n
torbutton.popup.never_ask_again = Nicht mehr nachfragen
-torbutton.popup.confirm_newnym = Tor-Browser wird alle Fenster und Tabs schließen. Alle Webseiten-Sitzungen gehen verloren.\n\nTor-Browser jetzt neu starten um Ihre Identität zurückzusetzen?\n\n
+torbutton.popup.confirm_newnym = Tor-Browser wird alle Fenster und Reiter schließen. Alle Internetseitensitzungen gehen verloren.\n\nTor-Browser jetzt neu starten, um Ihre Identität zurückzusetzen?\n\n
+
+torbutton.slider_notification = Das grüne Onion Menü hat jetzt einen Sicherheits-Regler welches Ihr Sicherheits-Level einstellt. Probier's aus!
+torbutton.slider_notification_button = Öffne Sicherheits-Einstellungen
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Die Internetseite (%S) hat versucht, HTML5-Canvas-Bilddaten zu extrahieren, die verwendet werden können, um Ihren Rechner eindeutig zu identifizieren. \n\nSoll Tor-Browser es dieser Internetseite erlauben HTML5-Canvas-Bilddaten zu extrahieren?
@@ -61,3 +68,10 @@ canvas.allow=In der Zukunft erlauben
canvas.allowAccessKey=I
canvas.never=Niemals für diese Internetseite (empfohlen)
canvas.neverAccessKey=N
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S-Profilproblem
+profileReadOnly=Es ist nicht möglich %S auf einem nur lesbaren Dateisystem zu starten. Bitte kopiere %S an einen anderen Ort bevor Sie es benutzen.
+profileReadOnlyMac=Es ist nicht möglich %S auf einem nur lesbaren Dateisystem zu starten. Bitte %S auf Ihren Schreibtisch oder den Anwendungsordner kopieren, bevor Sie es benutzen.
+profileAccessDenied=%S hat keine Berechtigung um dieses Profil abzurufen. Bitte die Berechtigungen Ihres Dateisystems einstellen und es noch einmal probieren.
diff --git a/src/chrome/locale/es/aboutTor.dtd b/src/chrome/locale/es/aboutTor.dtd
index f2c865c..77d6c3c 100644
--- a/src/chrome/locale/es/aboutTor.dtd
+++ b/src/chrome/locale/es/aboutTor.dtd
@@ -19,27 +19,27 @@
<!ENTITY aboutTor.failure2.label "Tor no está funcionando en este navegador.">
<!ENTITY aboutTor.failure3prefix.label "Para obtener asistencia, por favor contacte">
<!ENTITY aboutTor.failure3Link "help(a)rt.torproject.org">
-<!ENTITY aboutTor.failure3suffix.label ",">
+<!ENTITY aboutTor.failure3suffix.label ".">
<!ENTITY aboutTor.search.label "Buscar">
<!ENTITY aboutTor.searchSPPost.link "https://startpage.com/rth/search">
<!ENTITY aboutTor.searchDDGPost.link "https://duckduckgo.com/html/">
-<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
+<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
<!ENTITY aboutTor.torInfo1.label "Información adicional:">
<!ENTITY aboutTor.torInfo2.label "País y dirección IP:">
<!ENTITY aboutTor.torInfo3.label "Nodo de salida:">
-<!ENTITY aboutTor.torInfo4.label "Este servidor no registra información alguna de los visitantes.">
-<!ENTITY aboutTor.whatnextQuestion.label "¿Qué es lo siguiente?">
+<!ENTITY aboutTor.torInfo4.label "Este servidor no registra ninguna información sobre los visitantes.">
+<!ENTITY aboutTor.whatnextQuestion.label "¿Qué sigue?">
<!ENTITY aboutTor.whatnextAnswer.label "¡Tor NO es todo lo que necesita para navegar anónimamente! Puede necesitar cambiar alguno de sus hábitos de navegación para asegurar que su identidad permanezca segura.">
<!ENTITY aboutTor.whatnext.label "Consejos para permenecer anónimo »">
<!ENTITY aboutTor.whatnext.link "https://www.torproject.org/download/download.html.en#warning">
<!ENTITY aboutTor.helpInfo1.label "¡Usted puede ayudar!">
-<!ENTITY aboutTor.helpInfo2.label "Hay muchas formas en las puede ayudar a hacer la red Tor más rápida y fuerte.">
+<!ENTITY aboutTor.helpInfo2.label "Hay muchas formas en que las puede ayudar a hacer la red Tor más rápida y fuerte.">
<!ENTITY aboutTor.helpInfo3.label "Ejecutar un nodo de repetidor Tor »">
<!ENTITY aboutTor.helpInfo3.link "https://www.torproject.org/docs/tor-doc-relay.html.en">
-<!ENTITY aboutTor.helpInfo4.label "Ofrece voluntariamente tus servicios »">
+<!ENTITY aboutTor.helpInfo4.label "Ofrece sus servicios como voluntario »">
<!ENTITY aboutTor.helpInfo4.link "https://www.torproject.org/getinvolved/volunteer.html.en">
<!ENTITY aboutTor.helpInfo5.label "Realiza una donación »">
<!ENTITY aboutTor.helpInfo5.link "https://www.torproject.org/donate/donate.html.en">
diff --git a/src/chrome/locale/es/torbutton.dtd b/src/chrome/locale/es/torbutton.dtd
index c33695c..ac84de0 100644
--- a/src/chrome/locale/es/torbutton.dtd
+++ b/src/chrome/locale/es/torbutton.dtd
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Cambiar los detalles que le distinguen de otros usuarios de Navegador Tor">
<!ENTITY torbutton.prefs.sec_caption "Nivel de Seguridad">
<!ENTITY torbutton.prefs.sec_low "Bajo (por defecto)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "Esto proporciona la mejor experiencia de usabilidad.">
+<!ENTITY torbutton.prefs.sec_low_desc "En este nivel de seguridad, todas las funciones del navegador están habilitadas.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "El mecanismo de representación de fuentes SVG OpenType está deshabilitado.">
<!ENTITY torbutton.prefs.sec_med_low "Medio-Bajo">
+<!ENTITY torbutton.prefs.sec_gen_desc "En este nivel de seguridad, se aplican los siguientes cambios (ratón encima para detalles):">
+<!ENTITY torbutton.prefs.sec_html5_desc "Los medios de vídeo y audio HTML5 se vuelven tipo clic-para-reproducir mediante NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "En algunos sitios, podría necesitar usar el botón de barra de herramientas de NoScript para habilitar estos objetos de medios.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Algunas optimizaciones de rendimiento de JavaScript están deshabilitadas.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT (compilador JS instantáneo optimizado), Type Inference (deducción del tipo de datos por el compilador), ASM.JS (JS intermedio para alto rendimiento de otros lenguajes)">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT (compilador JS instantáneo)">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Los scripts en algunos sitios puede que se ejecuten más lentamente.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Los ficheros JAR remotos están bloqueados.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "Los ficheros JAR son extremadamente raros en la web, pero pueden ser una fuente de ataques XSS y de otros tipos.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Algunos mecanismos de representación de ecuaciones matemáticas están deshabilitados.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML está deshabilitado.">
<!ENTITY torbutton.prefs.sec_med_high "Medio-Alto">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "Todas las optimizaciones de rendimiento de JavaScript están deshabilitadas.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Algunas características de representación de fuentes están deshabilitadas.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "El mecanismo de representación de fuentes Graphite está deshabilitado.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Algunos tipos de imágenes están deshabilitados.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "Las imágenes SVG están deshabilitadas.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript está deshabilitado por defecto en todos los sitios que no usan HTTPS.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript puede habilitarse por sitios mediante el botón de barra de herramientas de NoScript.">
<!ENTITY torbutton.prefs.sec_high "Alto">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript está deshabilitado por defecto en todos los sitios.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "La mayoría de formatos de audio y vídeo están deshabilitados.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM es el único codec que permanece habilitado.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Algunas fuentes e iconos pueden mostrarse de forma incorrecta.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Los ficheros de fuentes proporcionados por el sitio web están bloqueados.">
<!ENTITY torbutton.prefs.sec_custom "Valores Personalizados">
<!ENTITY torbutton.circuit_display.title "Circuito Tor para este sitio">
+
diff --git a/src/chrome/locale/es/torbutton.properties b/src/chrome/locale/es/torbutton.properties
index 957a8f9..6edea41 100644
--- a/src/chrome/locale/es/torbutton.properties
+++ b/src/chrome/locale/es/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Habilitar Tor
torbutton.button.tooltip.enabled = Deshabilitar Tor
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = IP desconocida
+torbutton.circuit_display.onion_site = Sitio onion
torbutton.circuit_display.this_browser = Este navegador
+torbutton.circuit_display.relay = repetidor
torbutton.circuit_display.tor_bridge = Repetidor puente (bridge)
torbutton.circuit_display.unknown_country = País desconocido
torbutton.panel.tooltip.disabled = Haga clic para habilitar Tor
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Complementos (plugins) como Flash pueden daña
torbutton.popup.never_ask_again = No volver a preguntar
torbutton.popup.confirm_newnym = El Navegador Tor cerrará todas las ventanas y pestañas. Todas las sesiones de sitios web se perderán.\n\n¿Reiniciar el Navegador Tor para restablecer su identidad?\n\n
+torbutton.slider_notification = El menú de la cebolla verde incluye ahora un panel deslizante que le permite ajustar el nivel de seguridad. ¡Pruébelo!
+torbutton.slider_notification_button = Abrir ajustes de seguridad
+
+torbutton.maximize_warning = Maximizar el navegador Tor puede permitir a los sitios web determinar el tamaño de su monitor, lo que se puede usar para rastrearle. Le recomendamos que deje las ventanas del navegador Tor a su tamaño predeterminado original.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Este sitio web (%s) intentó extraer datos de imagen de un lienzo HTML5, que podrían usarse para identificar de forma única su computadora.\n\n¿Debe permitir el Navegador Tor a este sitio web extraer los datos de imagen de lienzos HTML5?
canvas.notNow=Ahora no
@@ -61,3 +68,10 @@ canvas.allow=Permitir en el futuro
canvas.allowAccessKey=P
canvas.never=Nunca para este sitio (recomendado)
canvas.neverAccessKey=u
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=Problema del perfil %S
+profileReadOnly=No puede ejecutar %S desde un sistema de ficheros de solo-lectura. Copie %S a otra ubicación antes de intentar usarlo.
+profileReadOnlyMac=No puede ejecutar %S desde un sistema de ficheros de solo-lectura. Copie %S a su escritorio o la carpeta de aplicaciones antes de intentar usarlo.
+profileAccessDenied=%S no tiene permiso para acceder al perfil. Ajuste los permisos de su sistema de ficheros e inténtelo de nuevo.
diff --git a/src/chrome/locale/eu/torbutton.dtd b/src/chrome/locale/eu/torbutton.dtd
index 14f216f..0511ec4 100644
--- a/src/chrome/locale/eu/torbutton.dtd
+++ b/src/chrome/locale/eu/torbutton.dtd
@@ -32,7 +32,7 @@
<!ENTITY torbutton.context_menu.preferences.key "P">
<!ENTITY torbutton.context_menu.about "Torbuttoni buruz...">
<!ENTITY torbutton.context_menu.about.key "A">
-<!ENTITY torbutton.context_menu.networksettings "Tor Network Settings…">
+<!ENTITY torbutton.context_menu.networksettings "Tor Sarearen Ezarpenak...">
<!ENTITY torbutton.context_menu.networksettings.key "S">
<!ENTITY torbutton.context_menu.downloadUpdate "Check for Tor Browser Update…">
<!ENTITY torbutton.context_menu.downloadUpdate.key "U">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Zu beste Tor Browser erabiltzaileengandik nabarmentzen zaituzten xehetasunak aldatu">
<!ENTITY torbutton.prefs.sec_caption "Segurtasun maila">
<!ENTITY torbutton.prefs.sec_low "Baxua (lehentsia)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
<!ENTITY torbutton.prefs.sec_med_low "Ertaina-baxua">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is disabled.">
<!ENTITY torbutton.prefs.sec_med_high "Ertaina-altua">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG images are disabled.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "Altua">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is disabled by default on all sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "Balio pertsonalizatuak">
<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+
diff --git a/src/chrome/locale/eu/torbutton.properties b/src/chrome/locale/eu/torbutton.properties
index d856bec..671940d 100644
--- a/src/chrome/locale/eu/torbutton.properties
+++ b/src/chrome/locale/eu/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Tor gaitu
torbutton.button.tooltip.enabled = Tor ezgaitu
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = IP unknown
+torbutton.circuit_display.onion_site = Onion site
torbutton.circuit_display.this_browser = This browser
+torbutton.circuit_display.relay = relay
torbutton.circuit_display.tor_bridge = Bridge
torbutton.circuit_display.unknown_country = Unknown country
torbutton.panel.tooltip.disabled = Sakatu Tor gaitzeko
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Flash bezalako pluginek zure pribatutasuna eta
torbutton.popup.never_ask_again = Ez nazazu galdetu berriz
torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Webgune hau (% S) HTML5 canvas irudi datuak ateratzen saiatu da, eta zure ordenagailua identifikatzeko erabil daitezke.\n\nTor Nabigatzailea baimendu nahi duzu webgune honetan HTML5 canvas irudiaren datuak ateratzeko?
canvas.notNow=Orain ez
@@ -61,3 +68,10 @@ canvas.allow=Etorkizunean baimendu
canvas.allowAccessKey=A
canvas.never=Inoiz ez gune honetarako (gomendatuta)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profile Problem
+profileReadOnly=You cannot run %S from a read-only file system. Please copy %S to another location before trying to use it.
+profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it.
+profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again.
diff --git a/src/chrome/locale/fa/aboutTor.dtd b/src/chrome/locale/fa/aboutTor.dtd
index aaa04be..a7bd20f 100644
--- a/src/chrome/locale/fa/aboutTor.dtd
+++ b/src/chrome/locale/fa/aboutTor.dtd
@@ -44,6 +44,6 @@
<!ENTITY aboutTor.helpInfo5.label "اهدا كنيد »">
<!ENTITY aboutTor.helpInfo5.link "https://www.torproject.org/donate/donate.html.en">
-<!ENTITY aboutTor.footer.label "پروژهٔ تور سازمان غیر انتفاعی آمریکایی ‭501(c)(3)‬ مختص پژوهش, توسعه و آموزش در زمین ناشناسی و حریم شخصی آنلاين هست.">
+<!ENTITY aboutTor.footer.label "پروژهٔ تور سازمان غیر انتفاعی آمریکایی 501(c)3 مختص پژوهش, توسعه و آموزش در زمین ناشناسی و حریم شخصی آنلاين هست.">
<!ENTITY aboutTor.learnMore.label "اطلاعات بیشتر در پروژهٔ تور كسب كنيد">
<!ENTITY aboutTor.learnMore.link "https://www.torproject.org/about/overview.html.en">
diff --git a/src/chrome/locale/fa/torbutton.dtd b/src/chrome/locale/fa/torbutton.dtd
index 3c2e698..518a836 100644
--- a/src/chrome/locale/fa/torbutton.dtd
+++ b/src/chrome/locale/fa/torbutton.dtd
@@ -9,13 +9,13 @@
<!ENTITY torbutton.prefs.proxy.host.ftp "پراکسی FTP:">
<!ENTITY torbutton.prefs.proxy.host.gopher "پراکسی Gopher:">
<!ENTITY torbutton.prefs.proxy.host.socks "ميزبان SOCKS:">
-<!ENTITY torbutton.prefs.proxy.port "درگاهی (Port):">
+<!ENTITY torbutton.prefs.proxy.port "درگاه (Port):">
<!ENTITY torbutton.about.title "دربارۀ دکمه تُر">
<!ENTITY torbutton.about.version "نسخه :">
<!ENTITY torbutton.about.summary "محافظت از حریم خصوصی در هنگام وبگردی با تُر.">
-<!ENTITY torbutton.about.code "کانون کد :">
+<!ENTITY torbutton.about.code "همکاران کد :">
<!ENTITY torbutton.about.maintainer "نگهدارنده :">
-<!ENTITY torbutton.about.security_review "دیدگاه های ایمنی :">
+<!ENTITY torbutton.about.security_review "نکات امنیتی :">
<!ENTITY torbutton.about.donate "اگر مایل به استفاده از تُر هستید، میتوانید مدنظر قرار دهید">
<!ENTITY torbutton.about.make_donation "اهداء کمک نقدی.">
<!ENTITY torbutton.pref_connection.notice "غيرفعال کردن دکمه تُر جهت تغيير دراين تنظيمات.">
@@ -23,10 +23,10 @@
<!ENTITY torbutton.pref_connection_more_info.title "راهنما">
<!ENTITY torbutton.pref_connection_more_info.text "دکمه تُرهم اکنون فعال شده است.اگر میخواهيد تنظيمات پراکسی غيرمرتبط با تُر را تغيير دهيد، لطفا دکمه تُر را غيرفعال کنيد و دوباره به اينجا بازگرديد. اگر ميخواهيد تنظيمات تُر را تغيير دهيد، از پنجره تنظيمات دکمه تُر استفاده کنيد.">
<!ENTITY torbutton.context_menu.new_identity "هویت جدید">
-<!ENTITY torbutton.context_menu.new_identity_key "من">
-<!ENTITY torbutton.context_menu.new_circuit "مدار جدید Tor برای این سایت">
+<!ENTITY torbutton.context_menu.new_identity_key "I">
+<!ENTITY torbutton.context_menu.new_circuit "شبکه جدید Tor برای این سایت">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
-<!ENTITY torbutton.context_menu.toggle "ضامن فعال/غيرفعال کردن تُر">
+<!ENTITY torbutton.context_menu.toggle "دکمه فعال/غيرفعال کردن تُر">
<!ENTITY torbutton.context_menu.toggle.key "T">
<!ENTITY torbutton.context_menu.preferences "حفظ حریم خصوصی و تنظیمات امنیتی">
<!ENTITY torbutton.context_menu.preferences.key "P">
@@ -34,7 +34,7 @@
<!ENTITY torbutton.context_menu.about.key "A">
<!ENTITY torbutton.context_menu.networksettings "تنظیمات شبکه تور">
<!ENTITY torbutton.context_menu.networksettings.key "S">
-<!ENTITY torbutton.context_menu.downloadUpdate "بررسی برای به روز رسانی Tor Browser ...">
+<!ENTITY torbutton.context_menu.downloadUpdate "بررسی بروز رسانی Tor Browser ...">
<!ENTITY torbutton.context_menu.downloadUpdate.key "U">
<!ENTITY torbutton.context_menu.cookieProtections "حفاظت کوکی ها...">
<!ENTITY torbutton.context_menu.cookieProtections.key "C">
@@ -64,14 +64,14 @@
<!ENTITY torbutton.prefs.no_updates "غیرفعال کردن بهروزرسانی در هنگام استفاده از تُر">
<!ENTITY torbutton.prefs.set_uagent "تعيين کاربر برای استفاده از تُر (بسیار مهم)">
<!ENTITY torbutton.prefs.dynamic "محتوای پویا">
-<!ENTITY torbutton.prefs.cookies "کلوچکها">
+<!ENTITY torbutton.prefs.cookies "کوکی ها">
<!ENTITY torbutton.prefs.cache "ذخيرهگاه">
<!ENTITY torbutton.prefs.history "تاریخچه">
<!ENTITY torbutton.prefs.no_search "غیرفعال کردن پیشنهادهای جستجو هنگام اجرای تُر (توصیه شده)">
-<!ENTITY torbutton.prefs.shutdown "بستن">
-<!ENTITY torbutton.prefs.tor_shutdown "پاک کردن کلوچکهای تُردرهنگام بستن مرورگری که با تُر کار میکند">
-<!ENTITY torbutton.prefs.all_shutdown "پاک کردن کلوچکها هنگام بستن هر مرورگری">
-<!ENTITY torbutton.prefs.no_shutdown "پاک نکردن کلوچکها هنگام بستن">
+<!ENTITY torbutton.prefs.shutdown "خاموش کردن">
+<!ENTITY torbutton.prefs.tor_shutdown "پاک کردن کوکی های تُردرهنگام بستن مرورگری که با تُر کار میکند">
+<!ENTITY torbutton.prefs.all_shutdown "پاک کردن کوکی ها هنگام بستن هر مرورگری">
+<!ENTITY torbutton.prefs.no_shutdown "پاک نکردن کوکی ها هنگام بستن">
<!ENTITY torbutton.prefs.disable_sessionstore "غیرفعال کردن ذخیرهسازی نشست (Session) ها (توصیه شده)">
<!ENTITY torbutton.prefs.headers "سربرگها">
<!ENTITY torbutton.prefs.spoof_english "جعل هویت یک مرورگر با زبان انگليسی آمریکایی">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "تغييردادن جزئياتى كه شمارا از كاربران ديگر تُر تميزمىكند">
<!ENTITY torbutton.prefs.sec_caption "سطح امنیت">
<!ENTITY torbutton.prefs.sec_low "پایین (به طور پیش فرض)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "این فراهم می کند بیشترین تجربه قابل استفاده.">
+<!ENTITY torbutton.prefs.sec_low_desc "در این سطح امنیتی، تمام ویژگی های مرورگر ها فعال است.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "مکانیسم رندر فونت SVG اپن تایپ غیر فعال است.">
<!ENTITY torbutton.prefs.sec_med_low "متوسط - کم">
+<!ENTITY torbutton.prefs.sec_gen_desc "در این سطح امنیتی، تغییرات زیر اعمال می شود (خلاصه شده برای جزئیات بیشتر):">
+<!ENTITY torbutton.prefs.sec_html5_desc "صدا و تصویر HTML5 از طریق دکمه NoScript نوار ابزار به حالت -کلیک برای پخش- در می آید">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "در برخی سایت ها، ممکن است شما نیاز به استفاده از دکمه NoScript نوار ابزار برای فعال کردن این اشیاء رسانه داشته باشید.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "برخی از بهینه سازی عملکرد جاوا اسکریپت غیر فعال شده است.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "JIT در شروع مطالعه.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "اسکریپت هل در برخی از سایت ها ممکن است آهسته تر اجرا شود.">
+<!ENTITY torbutton.prefs.sec_jar_desc "فایل های JAR از راه دور مسدود.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "فایل ها با پسوند JAR به ندرت در وب استفاده می شوند ، ولی می توانند مبدایی برای هک به روش XSS و دیگر حملات هکری شوند.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "برخی مکانیسم ها نمایش معادلات ریاضی غیر فعال می باشد.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML غیر فعال است.">
<!ENTITY torbutton.prefs.sec_med_high "متوسط - بالا">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "همه بهینه سازی عملکرد جاوا اسکریپت غیر فعال شده است.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "برخی از ویژگی های رندر فونت غیر فعال می باشد.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "مکانیسم گرافیت رندر فونت غیر فعال است.">
+<!ENTITY torbutton.prefs.sec_svg_desc "برخی از انواع تصاویر غیر فعال هستند.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "تصاویر SVG غیر فعال می باشد.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "جاوا اسکریپت به طور پیش فرض در تمامی سایت های غیر HTTPS غیر فعال است.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "جاوا اسکریپ برای هر وب سایت از طریق دکمه NoScript نوار ابزار فعال می شود.">
<!ENTITY torbutton.prefs.sec_high "زیاد">
+<!ENTITY torbutton.prefs.sec_all_js_desc "جاوا اسکریپت به طور پیش فرض در تمامی سایت ها غیر فعال است.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "اکثر فرمت های صوتی و تصویری غیر فعال می باشد.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM تنها کدکی است که فعال باقی می ماند.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "برخی از فونت ها و آیکون های ممکن است نمایش نادرست داشته باشند.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "فایل های فونتی که در وب سایت ارائه می شوند مسدود شده است.">
<!ENTITY torbutton.prefs.sec_custom "تنظیم سفارشی">
<!ENTITY torbutton.circuit_display.title "مدار Tor برای این سایت">
+
diff --git a/src/chrome/locale/fa/torbutton.properties b/src/chrome/locale/fa/torbutton.properties
index 3c8fc1d..2a4b86e 100644
--- a/src/chrome/locale/fa/torbutton.properties
+++ b/src/chrome/locale/fa/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = فعال کردن تُر
torbutton.button.tooltip.enabled = غيرفعال کردن تُر
torbutton.circuit_display.internet = اینترنت
torbutton.circuit_display.ip_unknown = IP ناشناخته
+torbutton.circuit_display.onion_site = سایت پیاز
torbutton.circuit_display.this_browser = این مرورگر
+torbutton.circuit_display.relay = رله
torbutton.circuit_display.tor_bridge = پل
torbutton.circuit_display.unknown_country = کشور ناشناخته
torbutton.panel.tooltip.disabled = برای فعال کردن تُرکليک کنيد
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = پلاگینها مانند فلش، میتو
torbutton.popup.never_ask_again = دیگر هیچگاه این را از من نپرس
torbutton.popup.confirm_newnym = مرورگر Tor همه پنجره ها و تب ها را می بندد. همه جلسات وب سایت شود از دست خواهد رفت\n\nآیا می خواهید راه اندازی مجدد مرورگر Tor الان انجام شود تا هویت خود را تنظیم مجدد کنید؟\n
+torbutton.slider_notification = منوی پیاز سبز در حال حاضر یک نوار لغزنده امنیتی که به شما اجازه می دهد سطح امنیتی خود را تنظیم کنید. آن را چک کنید!
+torbutton.slider_notification_button = باز کردن تنظیمات امنیتی
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=این وبسایت (%S) سعی دارد اطلاعات بوم تصویر HTML5 را دریافت کند که ممکن است برای شناسایی منحصر به فرد کامپیوتر شما استفاده شود.\n\nآیا مرورگر تور میبایست اجازه دریافت این اطلاعات را بدهد؟
canvas.notNow=نه در حال حاضر
@@ -61,3 +68,10 @@ canvas.allow=اجازه دهید در آینده
canvas.allowAccessKey=A
canvas.never=هرگز برای این سایت (توصیه شده)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S مشکل پروفایل
+profileReadOnly=شما نمی توانید اجرا %S از یک فایل سیستم فقط خواندنی. لطفا کپی کنید %S به محل دیگری قبل از تلاش برای استفاده از آن.
+profileReadOnlyMac=شما نمی توانید اجرا %S از یک فایل سیستم فقط خواندنی. لطفا کپی کنید %S به دسکتاپ خودتان یا پوشه برنامه قبل از تلاش برای استفاده از آن.
+profileAccessDenied=٪ S اجازه دسترسی به مشخصات ندارد. لطفا مجوزهای سیستم فایل خود را تنظیم و دوباره سعی کنید.
diff --git a/src/chrome/locale/fr/torbutton.dtd b/src/chrome/locale/fr/torbutton.dtd
index 0e7b345..f972f41 100644
--- a/src/chrome/locale/fr/torbutton.dtd
+++ b/src/chrome/locale/fr/torbutton.dtd
@@ -24,19 +24,19 @@
<!ENTITY torbutton.pref_connection_more_info.text "Torbutton est actuellement activé. Si vous souhaitez modifier vos paramètres proxy non-Tor, veuillez désactiver Torbutton et revenir à cette fenêtre. Si vous souhaitez modifier vos paramètres Tor, veuillez utiliser la fenêtre des préférences Torbutton.">
<!ENTITY torbutton.context_menu.new_identity "Nouvelle identité">
<!ENTITY torbutton.context_menu.new_identity_key "I">
-<!ENTITY torbutton.context_menu.new_circuit "New Tor Circuit for this Site">
+<!ENTITY torbutton.context_menu.new_circuit "Nouveau circuit Tor pour ce site">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
<!ENTITY torbutton.context_menu.toggle "Activer/Désactiver Tor">
<!ENTITY torbutton.context_menu.toggle.key "T">
-<!ENTITY torbutton.context_menu.preferences "Privacy and Security Settings…">
+<!ENTITY torbutton.context_menu.preferences "Paramètres de confidentialité et de sécurité">
<!ENTITY torbutton.context_menu.preferences.key "P">
<!ENTITY torbutton.context_menu.about "À propos de Torbutton...">
<!ENTITY torbutton.context_menu.about.key "A">
-<!ENTITY torbutton.context_menu.networksettings "Tor Network Settings…">
+<!ENTITY torbutton.context_menu.networksettings "Paramètres du réseau Tor">
<!ENTITY torbutton.context_menu.networksettings.key "S">
-<!ENTITY torbutton.context_menu.downloadUpdate "Check for Tor Browser Update…">
+<!ENTITY torbutton.context_menu.downloadUpdate "Vérifiez les mises à jour du navigateur Tor">
<!ENTITY torbutton.context_menu.downloadUpdate.key "U">
-<!ENTITY torbutton.context_menu.cookieProtections "Cookie Protections…">
+<!ENTITY torbutton.context_menu.cookieProtections "Protections contre les cookies">
<!ENTITY torbutton.context_menu.cookieProtections.key "C">
<!ENTITY torbutton.context_menu.copyTor "Copier l'URL Tor">
<!ENTITY torbutton.context_menu.copyTor.key "p">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Modifier les détails qui vous distingue des autres utilisateurs du Navigateur Tor">
<!ENTITY torbutton.prefs.sec_caption "Niveau de sécurité">
<!ENTITY torbutton.prefs.sec_low "Faible (défaut)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "Cela offre l'expérience la plus agréable.">
+<!ENTITY torbutton.prefs.sec_low_desc "A ce niveau de sécurité, toutes les fonctions de navigation sont activés.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "Le mécanisme SVG OpenType de rendu des polices est désactivé.">
<!ENTITY torbutton.prefs.sec_med_low "Moyen-Bas">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML est désactivé.">
<!ENTITY torbutton.prefs.sec_med_high "Moyen-Haut">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "Les images SVG sont désactivées.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript est désactivé par défaut sur tous les sites non-HTTPS.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "Haut">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript est désactivé par défaut sur tous les sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "Valeurs personnalisées">
-<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+<!ENTITY torbutton.circuit_display.title "Circuit Tor pour ce site">
+
diff --git a/src/chrome/locale/fr/torbutton.properties b/src/chrome/locale/fr/torbutton.properties
index 61083eb..bb5a6ae 100644
--- a/src/chrome/locale/fr/torbutton.properties
+++ b/src/chrome/locale/fr/torbutton.properties
@@ -1,10 +1,12 @@
torbutton.button.tooltip.disabled = Activer Tor
torbutton.button.tooltip.enabled = Désactiver Tor
torbutton.circuit_display.internet = Internet
-torbutton.circuit_display.ip_unknown = IP unknown
-torbutton.circuit_display.this_browser = This browser
-torbutton.circuit_display.tor_bridge = Bridge
-torbutton.circuit_display.unknown_country = Unknown country
+torbutton.circuit_display.ip_unknown = IP inconnue
+torbutton.circuit_display.onion_site = Site onion
+torbutton.circuit_display.this_browser = Ce navigateur
+torbutton.circuit_display.relay = relais
+torbutton.circuit_display.tor_bridge = Pont
+torbutton.circuit_display.unknown_country = Pays inconnu
torbutton.panel.tooltip.disabled = Cliquer pour activer Tor
torbutton.panel.tooltip.enabled = Cliquer pour désactiver Tor
torbutton.panel.plugins.disabled = Cliquer pour activer les plugins
@@ -51,7 +53,12 @@ torbutton.popup.short_torbrowser = Information importante concernant Torbutton!\
torbutton.popup.confirm_plugins = Les greffons tels que Flash peuvent nuire à votre anonymat et vie privée.\n\nIls peuvent également contourner Tor afin de révéler votre position actuelle ainsi que votre adresse IP.\n\nÊtes-vous certain de vouloir activer les greffons ?\n\n
torbutton.popup.never_ask_again = Ne plus me poser la question.
-torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.popup.confirm_newnym = Le navigateur Tor va fermer toutes les fenêtres et onglets. Tous les sessions ouvertes seront perdues.\n\nVoulez-vous redémarrer le navigateur Tor maintenant pour réinitialiser votre identité ?\n\n
+
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Ce site (%S) tente d'extraire des informations d'image canvas HTML5 qui pourraient être utilisées comme identifiant unique pour votre ordinateur.\n\nTor Browser doit-il autoriser le site à extraire les informations d'image canvas HTML5 ?
@@ -61,3 +68,10 @@ canvas.allow=Autoriser à l’avenir
canvas.allowAccessKey=A
canvas.never=Jamais pour ce site (recommandé)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=Problème de profil %S
+profileReadOnly=Vous ne pouvez pas exécuter %S à partir d'un système de fichiers en lecture seul. Veuillez copier %S vers un autre emplacement avant d'essayer de l'utiliser.
+profileReadOnlyMac=Vous ne pouvez pas exécuter %S à partir d'un système de fichiers en lecture seul. Veuillez copier %S vers votre dossier Bureau ou Applications avant d'essayer de l'utiliser.
+profileAccessDenied=%S n'a pas la permission d'accéder au profil. Veuillez ajuster les permissions de votre système de fichiers et ressayer.
diff --git a/src/chrome/locale/it/aboutTor.dtd b/src/chrome/locale/it/aboutTor.dtd
index cbeae7c..4e80cf2 100644
--- a/src/chrome/locale/it/aboutTor.dtd
+++ b/src/chrome/locale/it/aboutTor.dtd
@@ -25,7 +25,7 @@
<!ENTITY aboutTor.searchSPPost.link "https://startpage.com/rth/search">
<!ENTITY aboutTor.searchDDGPost.link "https://duckduckgo.com/html/">
-<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
+<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
<!ENTITY aboutTor.torInfo1.label "Ulteriori Info:">
<!ENTITY aboutTor.torInfo2.label "Nazione & Indirizzo IP:">
diff --git a/src/chrome/locale/it/torbutton.dtd b/src/chrome/locale/it/torbutton.dtd
index 18d0a25..418fa4c 100644
--- a/src/chrome/locale/it/torbutton.dtd
+++ b/src/chrome/locale/it/torbutton.dtd
@@ -24,19 +24,19 @@
<!ENTITY torbutton.pref_connection_more_info.text "Torbutton è attualmente attivo. Se vuoi cambiare la configurazione del proxy quando non usi Tor, disabilita Torbutton e torna qui. Se vuoi modificare la configurazione quando usi Tor, usa la finestra delle preferenze di Torbutton.">
<!ENTITY torbutton.context_menu.new_identity "Nuova identità">
<!ENTITY torbutton.context_menu.new_identity_key "I">
-<!ENTITY torbutton.context_menu.new_circuit "New Tor Circuit for this Site">
+<!ENTITY torbutton.context_menu.new_circuit "Nuovo Circuito Tor per questo Sito">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
<!ENTITY torbutton.context_menu.toggle "Cambia lo stato di Tor">
<!ENTITY torbutton.context_menu.toggle.key "T">
-<!ENTITY torbutton.context_menu.preferences "Privacy and Security Settings…">
+<!ENTITY torbutton.context_menu.preferences "Impostazioni sicurezza e privacy...">
<!ENTITY torbutton.context_menu.preferences.key "P">
<!ENTITY torbutton.context_menu.about "Informazioni su Torbutton...">
<!ENTITY torbutton.context_menu.about.key "A">
-<!ENTITY torbutton.context_menu.networksettings "Tor Network Settings…">
+<!ENTITY torbutton.context_menu.networksettings "Impostazioni di rete di Tor...">
<!ENTITY torbutton.context_menu.networksettings.key "S">
-<!ENTITY torbutton.context_menu.downloadUpdate "Check for Tor Browser Update…">
+<!ENTITY torbutton.context_menu.downloadUpdate "Controllo per aggiornamento Tor Browser...">
<!ENTITY torbutton.context_menu.downloadUpdate.key "A">
-<!ENTITY torbutton.context_menu.cookieProtections "Cookie Protections…">
+<!ENTITY torbutton.context_menu.cookieProtections "Protezioni dei Cookie...">
<!ENTITY torbutton.context_menu.cookieProtections.key "C">
<!ENTITY torbutton.context_menu.copyTor "Copia URL Tor">
<!ENTITY torbutton.context_menu.copyTor.key "p">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Cambia i dettagli che ti distinguono dagli altri utenti di Tor Browser">
<!ENTITY torbutton.prefs.sec_caption "Livello di Sicurezza">
<!ENTITY torbutton.prefs.sec_low "Basso (default)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "Questo permette la migliore esperienza di usablità.">
+<!ENTITY torbutton.prefs.sec_low_desc "A questo livello di sicurezza, tutte le features del browser sono abilitate.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "Il meccanismo di rendering SVG OpenType è disabilitato.">
<!ENTITY torbutton.prefs.sec_med_low "Medio-Basso">
+<!ENTITY torbutton.prefs.sec_gen_desc "A questo livello di sicurezza, i seguenti cambiamenti si applicano a (passa sopra con il mouse per i dettagli):">
+<!ENTITY torbutton.prefs.sec_html5_desc "I video e audio in HTML5 diventano click-to-play grazie a NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "Su alcuni siti, potresti dover usare il pulsante toolbar di NoScript per attivare quei media.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Alcune ottimizzazioni di performance JavaScript sono disabilitate.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Gli scripts su alcuni siti possono girare più lenti.">
+<!ENTITY torbutton.prefs.sec_jar_desc "I file JAR remoti sono bloccati.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "I file JAR sono molto rari nel web, ma possono essere fonte di XSS o altri attacchi.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Alcuni meccanismi di visualizzazione di equazioni matematiche sono disabilitati.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML è disabilitato.">
<!ENTITY torbutton.prefs.sec_med_high "Medio-Alto">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "Tutte le ottimizzazioni di JavaScript per le performance sono disattivate.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Alcuni rendering dei font sono disabilitati.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "Il meccanismo di rendering font Graphite è disabilitato.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Alcuni tipi di immagini sono disabilitati.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "Le immagini SVG sono disabilitate.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript è disabilitato di default su tutti i siti non-HTTPS.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript può essere attivato a seconda del sito usando il pulsante NoScript sulla barra strumenti.">
<!ENTITY torbutton.prefs.sec_high "Alto">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript è disabilitato di default su tutti i siti.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Molti formati audio e video sono disabilitati.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM è l'unico codec che rimane abilitato.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Alcuni caratteri e icone possono non essere visualizzati correttamente.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "I font provvisti dal sito sono bloccati.">
<!ENTITY torbutton.prefs.sec_custom "Valori Customizzabili">
-<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+<!ENTITY torbutton.circuit_display.title "Circuito Tor per questo sito">
+
diff --git a/src/chrome/locale/it/torbutton.properties b/src/chrome/locale/it/torbutton.properties
index 641dc07..e3929a4 100644
--- a/src/chrome/locale/it/torbutton.properties
+++ b/src/chrome/locale/it/torbutton.properties
@@ -1,10 +1,12 @@
torbutton.button.tooltip.disabled = Attiva Tor
torbutton.button.tooltip.enabled = Disattiva Tor
torbutton.circuit_display.internet = Internet
-torbutton.circuit_display.ip_unknown = IP unknown
-torbutton.circuit_display.this_browser = This browser
+torbutton.circuit_display.ip_unknown = IP sconosciuto
+torbutton.circuit_display.onion_site = sito Onion
+torbutton.circuit_display.this_browser = Questo browser
+torbutton.circuit_display.relay = relay
torbutton.circuit_display.tor_bridge = Bridge
-torbutton.circuit_display.unknown_country = Unknown country
+torbutton.circuit_display.unknown_country = Paese sconosciuto
torbutton.panel.tooltip.disabled = Fai clic per attivare Tor
torbutton.panel.tooltip.enabled = Fai clic per disattivare Tor
torbutton.panel.plugins.disabled = Fai clic per attivare i plugin
@@ -51,7 +53,12 @@ torbutton.popup.short_torbrowser = Informazioni importanti su Torbutton!\n\nTorb
torbutton.popup.confirm_plugins = Alcuni plugin come Flash possono violare la tua privacy e anonimità.\n\nPossono anche eludere Tor per rivelare la tua posizione attuale e il tuo indirizzo IP.\n\nSei sicuro di volere attivare i plugin?\n
torbutton.popup.never_ask_again = Non chiedermelo più
-torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.popup.confirm_newnym = Tor Browser chiuderà tutte le schede e finestre. Tutte le sezioni dei siti andranno perse.\n\nRiavviare ora Tor Browser per azzerare la tua identità?\n\n
+
+torbutton.slider_notification = Il menù della cipolla verde ha ora una slider di sicurezza che ti permette di regolare il livello di sicurezza. Dai un'occhiata!
+torbutton.slider_notification_button = Apri impostazioni sicurezza
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Questo sito (%S) tentato di estrarre i dati di immagine HTML5 canvas, che possono essere utilizzati per identificare in modo univoco il computer.\n\nPermettere a Tor Browser di estrarre l'immagine HTML5 canvas per questo sito?
@@ -61,3 +68,10 @@ canvas.allow=acconsenti in futuro
canvas.allowAccessKey=A
canvas.never=Mai per questo sito (raccomandato)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=Problema Profilo %S
+profileReadOnly=Non puoi avviare %S da un file system di sola lettura. Per favore copia %S in un altra posizione prima di usarlo.
+profileReadOnlyMac=Non puoi avviare %S da un file system di sola lettura. Per favore copia %S nel tuo desktop o nella cartella Applicazioni prima di usarlo.
+profileAccessDenied=%S non ha i permessi per accedere al profilo. Per favore, controlla i permessi del tuo file system e riprova.
diff --git a/src/chrome/locale/ja/torbutton.dtd b/src/chrome/locale/ja/torbutton.dtd
index 1dc7e6c..4bdafc2 100644
--- a/src/chrome/locale/ja/torbutton.dtd
+++ b/src/chrome/locale/ja/torbutton.dtd
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "あなたとほかのTorブラウザのユーザーを区別する詳細を変更">
<!ENTITY torbutton.prefs.sec_caption "セキュリティレベル">
<!ENTITY torbutton.prefs.sec_low "低い(デフォルト)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
<!ENTITY torbutton.prefs.sec_med_low "中の低">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is disabled.">
<!ENTITY torbutton.prefs.sec_med_high "中の上">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG images are disabled.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "高い">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is disabled by default on all sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "カスタム値">
<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+
diff --git a/src/chrome/locale/ja/torbutton.properties b/src/chrome/locale/ja/torbutton.properties
index 44c6155..133ad88 100644
--- a/src/chrome/locale/ja/torbutton.properties
+++ b/src/chrome/locale/ja/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Torを有効にする
torbutton.button.tooltip.enabled = Torを無効にする
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = IP unknown
+torbutton.circuit_display.onion_site = Onion site
torbutton.circuit_display.this_browser = This browser
+torbutton.circuit_display.relay = relay
torbutton.circuit_display.tor_bridge = Bridge
torbutton.circuit_display.unknown_country = Unknown country
torbutton.panel.tooltip.disabled = クリックしてTorを有効にする
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Flashなどのプラグインはあなたの
torbutton.popup.never_ask_again = 次からはたずねない
torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=このWebサイト(%S)がHTML5 canvas画像を使用しようとしています。これはあなたのコンピューターを識別するために使われる可能性があります。\n\nTor ブラウザーにHTML5 canvas画像の使用を許可しますか?
canvas.notNow=今は許可しない
@@ -61,3 +68,10 @@ canvas.allow=許可する
canvas.allowAccessKey=A
canvas.never=このサイトには許可しない(推奨)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profile Problem
+profileReadOnly=You cannot run %S from a read-only file system. Please copy %S to another location before trying to use it.
+profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it.
+profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again.
diff --git a/src/chrome/locale/ko/torbutton.dtd b/src/chrome/locale/ko/torbutton.dtd
index 9ef3362..8496505 100644
--- a/src/chrome/locale/ko/torbutton.dtd
+++ b/src/chrome/locale/ko/torbutton.dtd
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "다른 Tor browser 사용자로부터 구별되는 세부 사항 변경">
<!ENTITY torbutton.prefs.sec_caption "보안 등급">
<!ENTITY torbutton.prefs.sec_low "낮음 (기본)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
<!ENTITY torbutton.prefs.sec_med_low "중간 낮음">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is disabled.">
<!ENTITY torbutton.prefs.sec_med_high "중간 높음">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG images are disabled.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "높음">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is disabled by default on all sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "맞춤 값">
<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+
diff --git a/src/chrome/locale/ko/torbutton.properties b/src/chrome/locale/ko/torbutton.properties
index 2a72a99..df9ddbf 100644
--- a/src/chrome/locale/ko/torbutton.properties
+++ b/src/chrome/locale/ko/torbutton.properties
@@ -1,10 +1,12 @@
torbutton.button.tooltip.disabled = Tor 활성화
torbutton.button.tooltip.enabled = Tor 비활성화
-torbutton.circuit_display.internet = Internet
-torbutton.circuit_display.ip_unknown = IP unknown
+torbutton.circuit_display.internet = 인터넷
+torbutton.circuit_display.ip_unknown = 미확인 IP
+torbutton.circuit_display.onion_site = Onion site
torbutton.circuit_display.this_browser = This browser
-torbutton.circuit_display.tor_bridge = Bridge
-torbutton.circuit_display.unknown_country = Unknown country
+torbutton.circuit_display.relay = relay
+torbutton.circuit_display.tor_bridge = 브릿지
+torbutton.circuit_display.unknown_country = 미확인 국가
torbutton.panel.tooltip.disabled = Tor를 활성화하려면 클릭
torbutton.panel.tooltip.enabled = Tor를 비활성화하려면 클릭
torbutton.panel.plugins.disabled = 플러그인을 활성화하려면 클릭
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = 플래시와 같은 플러그인들은 당신
torbutton.popup.never_ask_again = 다시는 물어보지 않기
torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=This website (%S) attempted to extract HTML5 canvas image data, which may be used to uniquely identify your computer.\n\nShould Tor Browser allow this website to extract HTML5 canvas image data?
canvas.notNow=지금은 하지 않겠습니다
@@ -61,3 +68,10 @@ canvas.allow=다음에 허용함
canvas.allowAccessKey=A
canvas.never=이 사이트에는 영원히 않음 (권장)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profile Problem
+profileReadOnly=You cannot run %S from a read-only file system. Please copy %S to another location before trying to use it.
+profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it.
+profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again.
diff --git a/src/chrome/locale/nl/torbutton.dtd b/src/chrome/locale/nl/torbutton.dtd
index 4e48991..b9209b4 100644
--- a/src/chrome/locale/nl/torbutton.dtd
+++ b/src/chrome/locale/nl/torbutton.dtd
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Verander details die je onderscheiden van andere Tor Browser gebruikers">
<!ENTITY torbutton.prefs.sec_caption "Beveiligingsniveau">
<!ENTITY torbutton.prefs.sec_low "Laag (standaard)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
<!ENTITY torbutton.prefs.sec_med_low "Medium-Laag">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts kunnen op sommige websites trager zijn.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is uitgeschakeld.">
<!ENTITY torbutton.prefs.sec_med_high "Medium-Hoog">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Sommige afbeeldingtypes zijn uitgeschakeld.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG afbeeldingen zijn uitgeschakeld.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is standaard uitgeschakeld op alle niet-HTTPS websites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "Hoog">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is standaard uitgeschakeld op alle websites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Meeste audio en video formaten zijn uitgeschakeld.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM blijft de enige codec die is ingeschakeld.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Door websites aangeleverde lettertypes worden geblokkeerd.">
<!ENTITY torbutton.prefs.sec_custom "Aangepaste waarden">
<!ENTITY torbutton.circuit_display.title "Tor circuit voor deze website">
+
diff --git a/src/chrome/locale/nl/torbutton.properties b/src/chrome/locale/nl/torbutton.properties
index 4e24acf..3ed9ef3 100644
--- a/src/chrome/locale/nl/torbutton.properties
+++ b/src/chrome/locale/nl/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Tor inschakelen
torbutton.button.tooltip.enabled = Tor uitschakelen
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = Onbekend IP adres
+torbutton.circuit_display.onion_site = Onion-site
torbutton.circuit_display.this_browser = Deze browser
+torbutton.circuit_display.relay = relay
torbutton.circuit_display.tor_bridge = Bridge
torbutton.circuit_display.unknown_country = Onbekend land
torbutton.panel.tooltip.disabled = Hier klikken om Tor in te schakelen
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = plug-ins zoals flash kunnen u privacy en anoni
torbutton.popup.never_ask_again = Vraag me dit nooit meer.
torbutton.popup.confirm_newnym = De Tor Browser zal alle windows en tabs sluiten. Alle website sessies zullen verloren gaan.\n\nHerstart de Tor Browser om je identiteit te resetten?\n\n
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open de beveiligingsvoorkeuren
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=De website (%S) heeft geprobeerd HTML5 canvas image data op te vragen, wat kan gebruikt worden voor een unieke identificatie van je computer.\n\nMoet Tor Browser deze website toestaan om HTML5 canvas image data op te vragen?
canvas.notNow=Niet nu
@@ -61,3 +68,10 @@ canvas.allow=Toestaan en onthouden
canvas.allowAccessKey=A
canvas.never=Nooit toestaan voor deze site(aangeraden)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profiel probleem
+profileReadOnly=Je kan %S niet draaien vanaf een alleen-lezen bestands-systeem Kopieer %S naar een andere locatie voor je het opnieuw probeert.
+profileReadOnlyMac=Je kan %S niet draaien vanaf een alleen lezen bestands-systeem. Kopieer %S naar je Bureaublad of de Applicatie map voordat je het opnieuw probeert.
+profileAccessDenied=%S heeft niet de juiste permissies om toegang te krijgen tot het profiel. Pas de bestands-systeem permissies aan en probeer het opnieuw.
diff --git a/src/chrome/locale/pl/torbutton.dtd b/src/chrome/locale/pl/torbutton.dtd
index 0e16322..78b5062 100644
--- a/src/chrome/locale/pl/torbutton.dtd
+++ b/src/chrome/locale/pl/torbutton.dtd
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Zmień szczegóły odróżniające Cię od innych użytkowników Przeglądarki Tora">
<!ENTITY torbutton.prefs.sec_caption "Poziom bezpieczeństwa">
<!ENTITY torbutton.prefs.sec_low "Niski (domyślny)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "To zapewnia najbardziej przyjazdne dla użytkownika ustawienia.">
+<!ENTITY torbutton.prefs.sec_low_desc "Na tym poziomie zabezpieczeń, wszystkie funkcje przeglądarki są włączone.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "Mechanizm SVG OpenType renderowania czcionek jest wyłączony.">
<!ENTITY torbutton.prefs.sec_med_low "Średni-Niski">
+<!ENTITY torbutton.prefs.sec_gen_desc "Na tym poziomie bezpieczeństwa, stosuje się następujące zmiany (najedź kursorem po więcej szczegółów): ">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video oraz audio będą dostępne jako 'kliknij-aby-otworzyć' przez NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "Na niektórych stronach internetowych będziesz musiał użyć przycisku NoScript znajdującym się w pasku narzędzi, aby włączyć dane obiekty medialne.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Niektóre optymalizacje wydajności JavaScript są wyłączone.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Skrypty na niektórych stronach mogą działać wolniej.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Zdalne pliki JAR są blokowane.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "Pliki JAR są bardzo rzadkim typem plików w internecie. Mogą być one źródłem ataków XSS i innych.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Niektóre mechanizmy wyświetlania równań matematycznych są wyłączone.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML jest wyłączony.">
<!ENTITY torbutton.prefs.sec_med_high "Średni-Wysoki">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "Wszystkie optymalizacje wydajności JavaScript są wyłączone.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Niektóre funkcje renderingu czcionki są wyłączone.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "Mechanizm Graphite do renderowania czcionki jest wyłączony.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Niektóre typy obrazów są wyłączone.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "Obrazy SVG są wyłączone.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript jest wyłączone domyślnie dla wszystkich stron które nie są HTTPS.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript może być włączony dla pojedyńczych, wybranych przez Ciebie stronach używając przycisku NoScript z paska narzędzi.">
<!ENTITY torbutton.prefs.sec_high "Wysoki">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript jest domyślnie wyłączona na wszystkich stronach.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Większość formatów audio i wideo jest wyłączone.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM jest jedynym kodekiem który pozostaje włączony.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Niektóre czcionki i ikony mogą być wyświetlane niepoprawnie.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Pliki czcionek dostarczane przez strony internetowe są blokowane.">
<!ENTITY torbutton.prefs.sec_custom "Wartości niestandardowe">
<!ENTITY torbutton.circuit_display.title "Obwód Tor dla tej strony">
+
diff --git a/src/chrome/locale/pl/torbutton.properties b/src/chrome/locale/pl/torbutton.properties
index f267dbe..c04c876 100644
--- a/src/chrome/locale/pl/torbutton.properties
+++ b/src/chrome/locale/pl/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Włącz Tora
torbutton.button.tooltip.enabled = Wyłącz Tora
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = IP nieznany
+torbutton.circuit_display.onion_site = strona Onion
torbutton.circuit_display.this_browser = Ta przeglądarka
+torbutton.circuit_display.relay = przekaźnik
torbutton.circuit_display.tor_bridge = Bridge
torbutton.circuit_display.unknown_country = Nieznane państwo
torbutton.panel.tooltip.disabled = Kliknij tutaj, aby włączyć Tora
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Wtyczki takie jak Flash mogą szkodzić Twojej
torbutton.popup.never_ask_again = Nie pytaj mnie więcej
torbutton.popup.confirm_newnym = Tor Browser zamknie wszystkie otwarte okna i karty. Wszystkie sesje zostaną utracone.\n\nCzy chcesz zrestartować Tor Browser teraz, aby zmienić tożsamość?\n\n
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Ta strona internetowa (%S) próbowała wydobyć HTML5 canvas danych obrazu, które mogą być wykorzystane w celu identyfikacji Twojego komputera.\n\nCzy chcesz, aby Tor Browser pozwolił tej stronie na wydobycie danych obrazu HTML5 canvas?
canvas.notNow=Nie teraz
@@ -61,3 +68,10 @@ canvas.allow=Pozwól w przyszłości
canvas.allowAccessKey=P
canvas.never=Nigdy dla tej strony (zalecane)
canvas.neverAccessKey=i
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Problem profilu
+profileReadOnly=Nie możesz uruchomić %S z systemu plików tylko do odczytu. Prosimy o skopiowanie %S do innej lokalizacji przed ponownym jego użyciem.
+profileReadOnlyMac=Nie możesz uruchomić %S w systemie plików tylko do odczytu. Prosimy o skopiowanie %S na pulpit, lub do folderu aplikacji przed ponowną próbą uruchomienia.
+profileAccessDenied=%S nie posiada uprawnień, aby zobaczyć ten profil. Prosimy zmienić uprawnienia systemu plików i spróbować ponownie.
diff --git a/src/chrome/locale/pt/aboutTor.dtd b/src/chrome/locale/pt/aboutTor.dtd
index 3ad709e..bdfaec2 100644
--- a/src/chrome/locale/pt/aboutTor.dtd
+++ b/src/chrome/locale/pt/aboutTor.dtd
@@ -8,40 +8,40 @@
<!ENTITY aboutTor.outOfDateTorOn.label "CONTUDO, este navegador está desatualizado.">
<!ENTITY aboutTor.outOfDateTorOff.label "TAMBÉM, este navegador está desatualizado.">
-<!ENTITY aboutTor.outOfDate2.label "Click on the onion and then choose Check for Tor Browser Update.">
+<!ENTITY aboutTor.outOfDate2.label "Clique na cebola e escolha Procurar por Atualizações do Navegador Tor">
-<!ENTITY aboutTor.check.label "Testar as Definições da Rede Tor">
+<!ENTITY aboutTor.check.label "Testar as Configurações da Rede Tor">
<!ENTITY aboutTor.success.label "Parabéns!">
<!ENTITY aboutTor.success2.label "Este navegador está configurado para utilizar o Tor.">
-<!ENTITY aboutTor.success3.label "Agora já pode navegar a Internet de forma anónima.">
-<!ENTITY aboutTor.failure.label "Algo Correu Mal!">
+<!ENTITY aboutTor.success3.label "Agora já pode navegar na Internet anonimamente.">
+<!ENTITY aboutTor.failure.label "Ocorreu Algo de Errado!">
<!ENTITY aboutTor.failure2.label "O Tor não está a funcionar neste navegador.">
-<!ENTITY aboutTor.failure3prefix.label "Para assistência, por favor contacte">
+<!ENTITY aboutTor.failure3prefix.label "Para assistência, por favor, contacte">
<!ENTITY aboutTor.failure3Link "help(a)rt.torproject.org">
<!ENTITY aboutTor.failure3suffix.label ".">
-<!ENTITY aboutTor.search.label "Pesquisar">
+<!ENTITY aboutTor.search.label "Procurar">
<!ENTITY aboutTor.searchSPPost.link "https://startpage.com/rth/search">
<!ENTITY aboutTor.searchDDGPost.link "https://duckduckgo.com/html/">
<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
<!ENTITY aboutTor.torInfo1.label "Informação adicional:">
-<!ENTITY aboutTor.torInfo2.label "País e endereço IP:">
+<!ENTITY aboutTor.torInfo2.label "País e Endereço de IP:">
<!ENTITY aboutTor.torInfo3.label "Nó de saída:">
-<!ENTITY aboutTor.torInfo4.label "Este servidor não guarda informação dos visitantes.">
-<!ENTITY aboutTor.whatnextQuestion.label "O que se segue?">
+<!ENTITY aboutTor.torInfo4.label "Este servidor não regista qualquer informação sobre os visitantes.">
+<!ENTITY aboutTor.whatnextQuestion.label "E a seguir?">
<!ENTITY aboutTor.whatnextAnswer.label "O Tor NÃO é tudo o que precisa para navegar anonimamente na internet! Poderá ter que mudar alguns dos seus hábitos de navegação para ter a certeza que a sua identidade está segura.">
-<!ENTITY aboutTor.whatnext.label "Dicas sobre como se tornar anónimo »">
+<!ENTITY aboutTor.whatnext.label "Dicas Sobre Como se Manter Anónimo »">
<!ENTITY aboutTor.whatnext.link "https://www.torproject.org/download/download.html.en#warning">
-<!ENTITY aboutTor.helpInfo1.label "Você pode ajudar!">
-<!ENTITY aboutTor.helpInfo2.label "Há muitas maneiras para ajudar a rede Tor tornar-se mais rápida e forte:">
-<!ENTITY aboutTor.helpInfo3.label "Criar um Nó de Relay Tor »">
+<!ENTITY aboutTor.helpInfo1.label "Você Pode Ajudar!">
+<!ENTITY aboutTor.helpInfo2.label "Existem muitas maneiras para ajudar a tornar a rede Tor mais rápida e segura:">
+<!ENTITY aboutTor.helpInfo3.label "Execute um Nó de Retransmissão Tor »">
<!ENTITY aboutTor.helpInfo3.link "https://www.torproject.org/docs/tor-doc-relay.html.en">
-<!ENTITY aboutTor.helpInfo4.label "Voluntarie os seus serviços »">
+<!ENTITY aboutTor.helpInfo4.label "Voluntarie os Seus Serviços »">
<!ENTITY aboutTor.helpInfo4.link "https://www.torproject.org/getinvolved/volunteer.html.en">
-<!ENTITY aboutTor.helpInfo5.label "Faça um donativo »">
+<!ENTITY aboutTor.helpInfo5.label "Efetue um Donativo »">
<!ENTITY aboutTor.helpInfo5.link "https://www.torproject.org/donate/donate.html.en">
<!ENTITY aboutTor.footer.label "O Projeto Tor é uma organização sem fins lucrativos US 501(c)(3) dedicada à investigação, desenvolvimento e promoção de anonimidade e privacidade online.">
diff --git a/src/chrome/locale/pt/browser.properties b/src/chrome/locale/pt/browser.properties
index 8849b67..52ef750 100644
--- a/src/chrome/locale/pt/browser.properties
+++ b/src/chrome/locale/pt/browser.properties
@@ -2,4 +2,4 @@
browser.startup.homepage=about:tor
# Spell checker dictionary
-spellchecker.dictionary=en_US
+spellchecker.dictionary=pt_PT
diff --git a/src/chrome/locale/pt/torbutton.dtd b/src/chrome/locale/pt/torbutton.dtd
index b7cc81c..0ba6607 100644
--- a/src/chrome/locale/pt/torbutton.dtd
+++ b/src/chrome/locale/pt/torbutton.dtd
@@ -24,19 +24,19 @@
<!ENTITY torbutton.pref_connection_more_info.text "Torbutton está activo. Se deseja mudar as configurações de Proxy que não sejam do Tor, por favor desactive o Torbutton e volte aqui. Se deseja alterar as configurações do Tor, por favor, use a janela de preferências do Torbutton.">
<!ENTITY torbutton.context_menu.new_identity "Identidade Nova">
<!ENTITY torbutton.context_menu.new_identity_key "I">
-<!ENTITY torbutton.context_menu.new_circuit "New Tor Circuit for this Site">
+<!ENTITY torbutton.context_menu.new_circuit "Novo circuito Tor para este site">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
<!ENTITY torbutton.context_menu.toggle "Alterar Status Tor">
<!ENTITY torbutton.context_menu.toggle.key "T">
-<!ENTITY torbutton.context_menu.preferences "Privacy and Security Settings…">
+<!ENTITY torbutton.context_menu.preferences "Definições de segurança e privacidade...">
<!ENTITY torbutton.context_menu.preferences.key "P">
<!ENTITY torbutton.context_menu.about "Sobre o Torbutton...">
<!ENTITY torbutton.context_menu.about.key "A">
-<!ENTITY torbutton.context_menu.networksettings "Tor Network Settings…">
+<!ENTITY torbutton.context_menu.networksettings "Definições de rede do Tor...">
<!ENTITY torbutton.context_menu.networksettings.key "S">
-<!ENTITY torbutton.context_menu.downloadUpdate "Check for Tor Browser Update…">
+<!ENTITY torbutton.context_menu.downloadUpdate "Procurar por atualizações do Tor...">
<!ENTITY torbutton.context_menu.downloadUpdate.key "A">
-<!ENTITY torbutton.context_menu.cookieProtections "Cookie Protections…">
+<!ENTITY torbutton.context_menu.cookieProtections "Proteções para Cookies...">
<!ENTITY torbutton.context_menu.cookieProtections.key "C">
<!ENTITY torbutton.context_menu.copyTor "Copiar endereço do Tor">
<!ENTITY torbutton.context_menu.copyTor.key "P">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Change details that distinguish you from other Tor Browser users">
<!ENTITY torbutton.prefs.sec_caption "Nível de Segurança">
<!ENTITY torbutton.prefs.sec_low "Baixo (pré-definido)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "Isto proporciona a melhor experiência usável.">
+<!ENTITY torbutton.prefs.sec_low_desc "Neste nível de segurança, as funções do navegador estão ativadas.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "O mecanismo de renderização do tipo de letra OpenType SVG está desativado.">
<!ENTITY torbutton.prefs.sec_med_low "Médio-Baixo">
+<!ENTITY torbutton.prefs.sec_gen_desc "Neste nível de segurança, aplicam-se as seguintes alterações ('rato sobre' para os detalhes).">
+<!ENTITY torbutton.prefs.sec_html5_desc "A multimédia de áudio e vídeo HTML5 torna-se clique-par-reproduzir via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "Em alguns sítios, poderá precisar de usar o botão da barra de ferramentas NoScript para ativar estes objetos de multimédia.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Algumas otimizações de desempenho JavaScript estão desativadas.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Linha de base JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Os scripts em alguns sítios poderão funcionar muito lentamente.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Os ficheiros JAR remotos estão bloqueados.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML está desativado.">
<!ENTITY torbutton.prefs.sec_med_high "Médio-Alto">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "As imagens SVG estão desativadas.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "Alto">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript está desativado por predefinição em todos os sítios.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "Valores definidos">
-<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+<!ENTITY torbutton.circuit_display.title "Circuito Tor para este site">
+
diff --git a/src/chrome/locale/pt/torbutton.properties b/src/chrome/locale/pt/torbutton.properties
index 761001f..f343a97 100644
--- a/src/chrome/locale/pt/torbutton.properties
+++ b/src/chrome/locale/pt/torbutton.properties
@@ -1,19 +1,21 @@
-torbutton.button.tooltip.disabled = Activar Tor
+torbutton.button.tooltip.disabled = Ativar Tor
torbutton.button.tooltip.enabled = Desativar Tor
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = IP desconhecido
+torbutton.circuit_display.onion_site = Sítio do Onion
torbutton.circuit_display.this_browser = Este navegador
-torbutton.circuit_display.tor_bridge = Bridge
+torbutton.circuit_display.relay = retransmitir
+torbutton.circuit_display.tor_bridge = Ponte
torbutton.circuit_display.unknown_country = País desconhecido
torbutton.panel.tooltip.disabled = Clique para ativar o Tor
torbutton.panel.tooltip.enabled = Clique para desativar o Tor
-torbutton.panel.plugins.disabled = Clique para ativar os plug-ins
-torbutton.panel.plugins.enabled = Clique para desativar os plug-ins
+torbutton.panel.plugins.disabled = Clique para ativar os plugins
+torbutton.panel.plugins.enabled = Clique para desativar os plugins
torbutton.panel.label.disabled = Tor desativado
torbutton.panel.label.enabled = Tor ativado
-extensions.torbutton(a)torproject.org.description = Torbutton provides a button to configure Tor settings and quickly and easily clear private browsing data.
-torbutton.popup.history.warning = O Torbutton bloqueou a actividade de um separador carregado num diferente estado do Tor.\n\nIsto é para contornar os erros Firefox 409737 e 417869.\n\nSe este aviso lhe parece ter aparecido sem qualquer razão aparente, um dos separadores está a tentar recarregar-se a si próprio em segundo plano e foi bloqueado.\n\nPara recarregar o separador neste estado do Tor, seleccione 'entrar' na caixa de localização da URL.\n\n
-torbutton.popup.plugin.warning = Torbutton bloqueou o carregamento do plugin de conteúdo do Tor.\n\nUtilize o Salvar Como.\n\n
+extensions.torbutton(a)torproject.org.description = o Torbutton proporciona um botão para configurar as configurações do Tor e para limpar facilmente e rapidamente os dados de navegação privados.
+torbutton.popup.history.warning = O Torbutton bloqueou a atividade de um separador carregado num diferente estado do Tor.\n\nIsto é para contornar os erros do Firefox 409737 e 417869.\n\nSe esta janela aparecer sem qualquer motivo aparente, um dos seus separadores está a tentar recarregar-se em segundo plano, e este foi bloqueado.\n\nPara recarregar o separador neste estado do Tor, pressione 'enter' na caixa de localização do URL.\n\n
+torbutton.popup.plugin.warning = Torbutton bloqueou o carregamento direto do Tor do conteúdo do plugin.\n\nEm vez disso, utilize o Guardar Como.\n\n
torbutton.popup.confirm_ca_certs = Torbutton: Você não possui nenhum Certificado de Autenticação. Verificar a lista de Certificados de Autenticação pode ser uma operação lenta para o Tor. Gostaria de desactivar o modo de isolamento de Certificados de Autenticação? (Se você não percebeu esta mensagem, o mais seguro é pressionar OK)
torbutton.popup.ff3.warning = Aviso!\n\nO Torbutton no Firefox 3 é conhecido por dar a conhecer o seu fuso horário e os seus Live Marks, através da rede Tor.\n\nTem a certeza que deseja continuar?
torbutton.popup.toggle.warning = Precisa de alternar o Tor ou reiniciar para aplicar as suas definições.
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Plugins such as Flash can harm your privacy an
torbutton.popup.never_ask_again = Não voltar a perguntar-me
torbutton.popup.confirm_newnym = O Navegador Tor irá fechar todas as janela e separadores. Estarão perdidas todas sessões do sítio da Web.\n\nReiniciar o Navegador Tor para repor a sua identidade?\n\n
+torbutton.slider_notification = O menu cebola verde tem agora um cursor de segurança que o deixa ajustar o seu nível de segurança. Dê uma vista de olhos!
+torbutton.slider_notification_button = Abra as definições de segurança
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Este site (%S) tentou extrair informação HTML5, que pode ser usada para identificar claramente o seu computador.\n\nQuer que o navegador Tor permita que o site extraia a informação HTML5?
canvas.notNow=Agora não
@@ -61,3 +68,10 @@ canvas.allow=Permitir de futuro
canvas.allowAccessKey=A
canvas.never=Nunca para este sítio (recomendado)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S - Problema de Perfil
+profileReadOnly=Não pode executar %S a partir de um ficheiro do sistema só-de-leitura. Por favor, copie %S para outra localização antes de tentar utilizá-lo.
+profileReadOnlyMac=Não pode executar %S a partir de um ficheiro do sistema só-de-leitura. Por favor, copie %S para o seu Ambiente de Trabalho antes de tentar utilizá-lo.
+profileAccessDenied=%S não tem permissão para aceder ao perfil. Por favor, ajuste as suas permissões de ficheiro do sistema e tente de novo.
diff --git a/src/chrome/locale/ru/aboutTor.dtd b/src/chrome/locale/ru/aboutTor.dtd
index c1cdf4c..240386b 100644
--- a/src/chrome/locale/ru/aboutTor.dtd
+++ b/src/chrome/locale/ru/aboutTor.dtd
@@ -8,13 +8,13 @@
<!ENTITY aboutTor.outOfDateTorOn.label "ТЕМ НЕ МЕНЕЕ, данный браузер устарел.">
<!ENTITY aboutTor.outOfDateTorOff.label "КРОМЕ ТОГО, данный браузер устарел.">
-<!ENTITY aboutTor.outOfDate2.label "Нажмите на "лук"и затем выберите "Проверить обновления Tor Browser"">
+<!ENTITY aboutTor.outOfDate2.label "Нажмите на "луковицу"и затем выберите "Проверить обновления браузера Tor"">
-<!ENTITY aboutTor.check.label "Проверка интернет-настроек Tor">
+<!ENTITY aboutTor.check.label "Проверить настройки сети Tor">
-<!ENTITY aboutTor.success.label "Поздравления!">
+<!ENTITY aboutTor.success.label "Поздравляем!">
<!ENTITY aboutTor.success2.label "Данный браузер настроен для использования Tor.">
-<!ENTITY aboutTor.success3.label "Теперь Вы можете посещать интернет-сайты в анонимном режиме.">
+<!ENTITY aboutTor.success3.label "Теперь Вы можете просматривать интернет-сайты в анонимном режиме.">
<!ENTITY aboutTor.failure.label "Что-то пошло не так!">
<!ENTITY aboutTor.failure2.label "Tor не работает в этом браузере.">
<!ENTITY aboutTor.failure3prefix.label "Чтобы получить помощь, обращайтесь:">
@@ -25,26 +25,26 @@
<!ENTITY aboutTor.searchSPPost.link "https://startpage.com/rth/search">
<!ENTITY aboutTor.searchDDGPost.link "https://duckduckgo.com/html/">
-<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
+<!ENTITY aboutTor.searchDCPost.link "https://search.disconnect.me/searchTerms/search?ses=Google&location_opt…">
<!ENTITY aboutTor.torInfo1.label "Дополнительные сведения:">
-<!ENTITY aboutTor.torInfo2.label "Страна & IP-адрес">
-<!ENTITY aboutTor.torInfo3.label "Конечный узел">
-<!ENTITY aboutTor.torInfo4.label "Данный сервер не ведет регистр с какой-либо информацией по посетителям.">
-<!ENTITY aboutTor.whatnextQuestion.label "Что далее?">
-<!ENTITY aboutTor.whatnextAnswer.label "Tor НЕ является исчерпывающим средством для анонимного использования сети! Возможно, Вам придется изменить свои некоторые привычки интернет-серфинга, чтобы обезопасить свои личные данные.">
-<!ENTITY aboutTor.whatnext.label "Рекомендации о том, как сохранить анонимность »">
+<!ENTITY aboutTor.torInfo2.label "Страна и IP-адрес">
+<!ENTITY aboutTor.torInfo3.label "Конечный узел:">
+<!ENTITY aboutTor.torInfo4.label "Данный сервер не собирает какую-либо информацию о посетителях.">
+<!ENTITY aboutTor.whatnextQuestion.label "Что дальше?">
+<!ENTITY aboutTor.whatnextAnswer.label "Tor НЕ является исчерпывающим средством для анонимного использования сети! Возможно, чтобы обезопасить свои личные данные, Вам придется изменить некоторые привычки работы в Интернете.">
+<!ENTITY aboutTor.whatnext.label "Рекомендации для сохранения анонимности »">
<!ENTITY aboutTor.whatnext.link "https://www.torproject.org/download/download.html.en#warning">
<!ENTITY aboutTor.helpInfo1.label "Вы можете помочь!">
-<!ENTITY aboutTor.helpInfo2.label "Есть много способов сделать Сеть Tor более быстродейственной и устойчивой:">
-<!ENTITY aboutTor.helpInfo3.label "Запустите релейный узел Tor »">
+<!ENTITY aboutTor.helpInfo2.label "Есть много способов сделать сеть Tor более быстрой и устойчивой:">
+<!ENTITY aboutTor.helpInfo3.label "Запустить ретранслятор Tor »">
<!ENTITY aboutTor.helpInfo3.link "https://www.torproject.org/docs/tor-doc-relay.html#ru">
-<!ENTITY aboutTor.helpInfo4.label "Оказывайте добровольную помощь »">
+<!ENTITY aboutTor.helpInfo4.label "Станьте нашим добровольцем »">
<!ENTITY aboutTor.helpInfo4.link "https://www.torproject.org/getinvolved/volunteer.html#ru">
<!ENTITY aboutTor.helpInfo5.label "Сделайте взнос »">
<!ENTITY aboutTor.helpInfo5.link "https://www.torproject.org/donate/donate.html#ru">
-<!ENTITY aboutTor.footer.label "Проект Tor - это некоммерческая организация типа US 501(c)(3), предназначенная для исследования, развития и образования в области сохранения анонимности и личных данных.">
-<!ENTITY aboutTor.learnMore.label "Узнайте больше о Проекте Tor »">
+<!ENTITY aboutTor.footer.label "Проект Tor - это пользующаяся привилегиями США 501(c)(3) некоммерческая организация, целью которой является проведение исследований, развитие и образование в сфере анонимности и личных данных онлайн.">
+<!ENTITY aboutTor.learnMore.label "Узнайте больше о проекте Tor »">
<!ENTITY aboutTor.learnMore.link "https://www.torproject.org/about/overview.html#ru
">
diff --git a/src/chrome/locale/ru/brand.dtd b/src/chrome/locale/ru/brand.dtd
index bf81534..b23bc68 100644
--- a/src/chrome/locale/ru/brand.dtd
+++ b/src/chrome/locale/ru/brand.dtd
@@ -5,7 +5,7 @@
<!ENTITY brandShortName "Tor Browser">
<!ENTITY brandFullName "Tor Browser">
<!ENTITY vendorShortName "Проект Tor">
-<!ENTITY trademarkInfo.part1 "Firefox и его логотипы это торговые знаки Mozilla Foundation.">
+<!ENTITY trademarkInfo.part1 "Firefox и его логотипы являются торговыми знаками Mozilla Foundation.">
<!-- The following strings are for bug #10280's UI. We place them here for our translators -->
<!ENTITY plugins.installed.find "Нажмите для загрузки установленных системных плагинов">
diff --git a/src/chrome/locale/ru/torbutton.dtd b/src/chrome/locale/ru/torbutton.dtd
index b5b0f17..4d472cb 100644
--- a/src/chrome/locale/ru/torbutton.dtd
+++ b/src/chrome/locale/ru/torbutton.dtd
@@ -8,54 +8,54 @@
<!ENTITY torbutton.prefs.proxy.host.https "SSL-прокси:">
<!ENTITY torbutton.prefs.proxy.host.ftp "FTP-прокси:">
<!ENTITY torbutton.prefs.proxy.host.gopher "Gopher-прокси:">
-<!ENTITY torbutton.prefs.proxy.host.socks "SOCKS хост:">
+<!ENTITY torbutton.prefs.proxy.host.socks "SOCKS-протокол:">
<!ENTITY torbutton.prefs.proxy.port "Порт:">
-<!ENTITY torbutton.about.title "Справка">
+<!ENTITY torbutton.about.title "О Torbutton">
<!ENTITY torbutton.about.version "Версия:">
-<!ENTITY torbutton.about.summary "Защищает конфиденциальность вашего просмотра страниц через Tor.">
-<!ENTITY torbutton.about.code "Авторы программы:">
+<!ENTITY torbutton.about.summary "Защищает конфиденциальность вашего просмотра страниц с помощью Tor.">
+<!ENTITY torbutton.about.code "Разработчики программы:">
<!ENTITY torbutton.about.maintainer "Сопровождение:">
-<!ENTITY torbutton.about.security_review "Обзор безопасности:">
+<!ENTITY torbutton.about.security_review "Обзор состояния безопасности:">
<!ENTITY torbutton.about.donate "Если вам нравится использовать Tor, вы можете">
-<!ENTITY torbutton.about.make_donation "сделать пожертвование.">
-<!ENTITY torbutton.pref_connection.notice "Для изменения настроек необходимо отключить Torbutton.">
+<!ENTITY torbutton.about.make_donation "внести пожертвование.">
+<!ENTITY torbutton.pref_connection.notice "Отключить Torbutton для изменения настроек необходимо.">
<!ENTITY torbutton.pref_connection.more_info "Подробности">
-<!ENTITY torbutton.pref_connection_more_info.title "Подсказка">
-<!ENTITY torbutton.pref_connection_more_info.text "Torbutton включен. Если будут изменяться настройки прокси, не являющегося частью сети Tor, необходимо сначала отключить Torbutton и затем вернуться сюда. Если будут изменяться настройки Tor, необходимо использовать окно настроек Torbutton.">
+<!ENTITY torbutton.pref_connection_more_info.title "Помощь">
+<!ENTITY torbutton.pref_connection_more_info.text "Torbutton включен. Если вы хотите изменить настройки прокси, не являющегося частью сети Tor, необходимо сначала отключить Torbutton и затем вернуться сюда. Если вы хотите изменить настройки Tor, необходимо использовать окно настроек Torbutton.">
<!ENTITY torbutton.context_menu.new_identity "Новая личность">
<!ENTITY torbutton.context_menu.new_identity_key "Я">
-<!ENTITY torbutton.context_menu.new_circuit "Новая цепочка Tor для этого Сайта">
+<!ENTITY torbutton.context_menu.new_circuit "Новая цепочка Tor для этого cайта">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
-<!ENTITY torbutton.context_menu.toggle "Изменить состояние Tor">
+<!ENTITY torbutton.context_menu.toggle "Изменить статус Tor">
<!ENTITY torbutton.context_menu.toggle.key "T">
-<!ENTITY torbutton.context_menu.preferences "Настройки Секретности и Безопасности">
+<!ENTITY torbutton.context_menu.preferences "Настройки конфиденциальности и безопасности">
<!ENTITY torbutton.context_menu.preferences.key "Н">
<!ENTITY torbutton.context_menu.about "О Torbutton...">
-<!ENTITY torbutton.context_menu.about.key "О">
+<!ENTITY torbutton.context_menu.about.key "А">
<!ENTITY torbutton.context_menu.networksettings "Настройки сети Tor">
<!ENTITY torbutton.context_menu.networksettings.key "S">
-<!ENTITY torbutton.context_menu.downloadUpdate "Проверить обновления для Tor Browser">
+<!ENTITY torbutton.context_menu.downloadUpdate "Проверить на наличие обновлений Tor Browser">
<!ENTITY torbutton.context_menu.downloadUpdate.key "U">
-<!ENTITY torbutton.context_menu.cookieProtections "Защита Cookie">
+<!ENTITY torbutton.context_menu.cookieProtections "Защита куки-файла">
<!ENTITY torbutton.context_menu.cookieProtections.key "C">
<!ENTITY torbutton.context_menu.copyTor "Копировать URL Tor">
-<!ENTITY torbutton.context_menu.copyTor.key "p">
+<!ENTITY torbutton.context_menu.copyTor.key "П">
<!ENTITY torbutton.context_menu.openTorTab "Открыть Tor URL в новой вкладке">
-<!ENTITY torbutton.context_menu.openTorTab.key "r">
+<!ENTITY torbutton.context_menu.openTorTab.key "Р">
<!ENTITY torbutton.context_menu.openTorWindow "Открыть Tor URL в новом окне">
-<!ENTITY torbutton.context_menu.openTorWindow.key "d">
+<!ENTITY torbutton.context_menu.openTorWindow.key "Д">
<!ENTITY torbutton.button.label "Torbutton">
-<!ENTITY torbutton.button.tooltip "Инициализировать Torbutton">
-<!ENTITY torbutton.prefs.privacy_security_settings "Настройки Конфиденциальности и Безопасности">
+<!ENTITY torbutton.button.tooltip "Нажмите, чтобы инициализировать Torbutton">
+<!ENTITY torbutton.prefs.privacy_security_settings "Настройки конфиденциальности и безопасности">
<!ENTITY torbutton.prefs.block_thread "Блокировать чтение из журнала в режиме Tor (важно)">
<!ENTITY torbutton.prefs.block_thwrite "Блокировать запись в журнал в режиме Tor (желательно)">
-<!ENTITY torbutton.prefs.block_nthread "Блокировать чтение из журнала в режиме не-Tor (необяз.)">
-<!ENTITY torbutton.prefs.block_nthwrite "Блокировать запись в журнал в режиме не-Tor (необяз.)">
-<!ENTITY torbutton.prefs.clear_history "Очищать журнал при переключении режимов Tor (необяз.)">
-<!ENTITY torbutton.prefs.clear_cache "Запрещать кеширование на диск при использовании Tor и очищать весь кеш при переключении режимов Tor">
-<!ENTITY torbutton.prefs.block_cache "Полностью отключить кеш при использовании Tor">
+<!ENTITY torbutton.prefs.block_nthread "Блокировать чтение из журнала в режиме не-Tor (опционально)">
+<!ENTITY torbutton.prefs.block_nthwrite "Блокировать запись в журнал в режиме не-Tor (опционально)">
+<!ENTITY torbutton.prefs.clear_history "Очищать журнал при переключении режимов Tor (опционально)">
+<!ENTITY torbutton.prefs.clear_cache "Запрещать кэширование на диск при использовании Tor и очищать весь кэш при переключении режимов Tor">
+<!ENTITY torbutton.prefs.block_cache "Полностью отключить кэш при использовании Tor">
<!ENTITY torbutton.prefs.cookie_jars "Хранить cookies в режиме не-Tor в защищенном файле">
-<!ENTITY torbutton.prefs.cookie_protection "Используйте Диалог защиты Cookie на выбор">
+<!ENTITY torbutton.prefs.cookie_protection "Используйте диалог защиты cookie на выбор">
<!ENTITY torbutton.prefs.mmm_cookies "Ручное управление cookies (опасно)">
<!ENTITY torbutton.prefs.clear_cookies "Очищать cookies при переключении режимов Tor">
<!ENTITY torbutton.prefs.disable_plugins "Отключать плагины при использовании Tor (важно)">
@@ -63,80 +63,80 @@
<!ENTITY torbutton.prefs.isolate_content "Ограничить динамическое содержание текущим режимом Tor (важно)">
<!ENTITY torbutton.prefs.no_updates "Отключить обновления во время использования Tor">
<!ENTITY torbutton.prefs.set_uagent "Маскировать пользователя при использовании Tor (важно)">
-<!ENTITY torbutton.prefs.dynamic "Содержание">
+<!ENTITY torbutton.prefs.dynamic "Динамичное содержание">
<!ENTITY torbutton.prefs.cookies "Cookies">
<!ENTITY torbutton.prefs.cache "Кэш">
<!ENTITY torbutton.prefs.history "Журнал">
<!ENTITY torbutton.prefs.no_search "Блокировать поисковые запросы при использовании Tor (желательно)">
<!ENTITY torbutton.prefs.shutdown "Закрытие">
-<!ENTITY torbutton.prefs.tor_shutdown "Очищать cookies Tor, если браузер закрывается при включенном Tor">
-<!ENTITY torbutton.prefs.all_shutdown "Очищать cookies при любом закрытии браузера">
-<!ENTITY torbutton.prefs.no_shutdown "Не очищать cookies при закрытии браузера">
+<!ENTITY torbutton.prefs.tor_shutdown "Очищать куки-файлы Tor, если браузер закрывается при включенном Tor">
+<!ENTITY torbutton.prefs.all_shutdown "Очищать куки-файлы при любом закрытии браузера">
+<!ENTITY torbutton.prefs.no_shutdown "Не очищать куки-файлы при закрытии браузера">
<!ENTITY torbutton.prefs.disable_sessionstore "Отключить сохранение сессий (желательно)">
<!ENTITY torbutton.prefs.headers "Заголовки">
<!ENTITY torbutton.prefs.spoof_english "Заголовки как в версии браузера US English">
-<!ENTITY torbutton.prefs.refererspoofing "Подстановка ссылок (реферер)">
-<!ENTITY torbutton.prefs.spoofblank "Spoof blank referer during Tor usage (may break some sites)">
+<!ENTITY torbutton.prefs.refererspoofing "Подстановка заголовка запроса (реферер)">
+<!ENTITY torbutton.prefs.spoofblank "Имитировать пустой реферер во время использования Tor (может привести к невозможности просмотра некоторых сайтов)">
<!ENTITY torbutton.prefs.smartspoof "Ловкая подстановка реферера во время использования Tor (подмена перекрёстных доменных рефереров)">
-<!ENTITY torbutton.prefs.nospoof "No referer spoof during Tor usage (sends referers as normal)">
+<!ENTITY torbutton.prefs.nospoof "Не имитировать реферер во время использования Tor (отсылать обычные рефереры)">
<!ENTITY torbutton.prefs.disable_domstorage "Отключить DOM Storage при использовани Tor (важно)">
<!ENTITY torbutton.prefs.forms "Формы">
<!ENTITY torbutton.prefs.block_tforms "Блокировать сохранение паролей и данных форм при использовании Tor (желательно)">
-<!ENTITY torbutton.prefs.block_ntforms "Блокировать сохранение паролей и данных форм при отключенном Tor (необяз.)">
+<!ENTITY torbutton.prefs.block_ntforms "Блокировать сохранение паролей и данных форм при отключенном Tor (опционально)">
<!ENTITY torbutton.prefs.tor "Tor">
-<!ENTITY torbutton.prefs.non_tor "Не-Tor">
-<!ENTITY torbutton.prefs.restore_tor "Во время запуска, если восстанавливается сессия, установить состояние Tor в:">
-<!ENTITY torbutton.prefs.startup_tor "При запуске браузера, установить состояние Tor в:">
-<!ENTITY torbutton.prefs.reload_crashed_jar "Восстанавливать/очищать cookies после аварии Firefox (желательно)">
-<!ENTITY torbutton.prefs.dual_cookie_jars "Хранить все cookies в защищенных файлах (опасно)">
+<!ENTITY torbutton.prefs.non_tor "Вне режима Tor">
+<!ENTITY torbutton.prefs.restore_tor "Во время запуска восстановленной сессии установить состояние Tor:">
+<!ENTITY torbutton.prefs.startup_tor "При запуске браузера установить состояние Tor:">
+<!ENTITY torbutton.prefs.reload_crashed_jar "Перезагрузить/очистить куки-файлы в случае ошибок в работе Firefox (желательно)">
+<!ENTITY torbutton.prefs.dual_cookie_jars "Хранить все куки-файлы в защищенных файлах (опасно)">
<!ENTITY torbutton.prefs.clear_http_auth "Очищать сессии аутентификации HTTP (желательно)">
<!ENTITY torbutton.prefs.block_js_history "Открывать все предыдущие страницы в нынешнем режиме Tor (важно)">
<!ENTITY torbutton.prefs.resize_on_toggle "Масштабировать окна кратно 50 пикселам при использовании Tor (желательно)">
-<!ENTITY torbutton.prefs.close_tor "Закрывать все окна и вкладки Tor при переключении режимов (необяз.)">
-<!ENTITY torbutton.prefs.close_nontor "Закрывать все окна и вкладки не-Tor при переключении режимов (необяз.)">
-<!ENTITY torbutton.prefs.block_links "Блокировать щелчки по ссылкам и перезагрузку страниц из разных режимов Tor (необяз.)">
-<!ENTITY torbutton.prefs.jar_certs "Хранить SSL сертификаты в раздельных jar-файлах для Tor/не-Tor (желательно)">
-<!ENTITY torbutton.prefs.jar_ca_certs "Хранить CA сертификаты в раздельных jar-файлах для Tor/не-Tor (желательно)">
+<!ENTITY torbutton.prefs.close_tor "Закрывать все окна и вкладки Tor при переключении режимов (опционально)">
+<!ENTITY torbutton.prefs.close_nontor "Закрывать все окна и вкладки вне режима Tor при переключении режимов (опционально)">
+<!ENTITY torbutton.prefs.block_links "Блокировать щелчки по ссылкам и перезагрузку страниц из разных режимов Tor (опционально)">
+<!ENTITY torbutton.prefs.jar_certs "Хранить сертификаты SSL в раздельных jar-файлах в режиме /вне режима Tor (желательно)">
+<!ENTITY torbutton.prefs.jar_ca_certs "Хранить сертификаты CA в раздельных jar-файлах для режима /вне режима Tor (желательно)">
<!ENTITY torbutton.prefs.locked_mode "Отключить "Кнопку" и "Горячие клавиши" для предотвращеня случайного переключения режима">
-<!ENTITY torbutton.prefs.startup_state "При обычном запуске (без восстановления сессии), устанавливать состояние Tor в:">
-<!ENTITY torbutton.prefs.shutdown_state "Выключеное состояние">
+<!ENTITY torbutton.prefs.startup_state "При обычном запуске (без восстановления сессии) устанавливать состояние Tor:">
+<!ENTITY torbutton.prefs.shutdown_state "Выключенное состояние">
<!ENTITY torbutton.prefs.startup "Запуск">
-<!ENTITY torbutton.prefs.block_tor_file_net "Блокировать доступ к сети в режиме Tor, от адресов типа file:// (рекомендуется)">
-<!ENTITY torbutton.prefs.block_nontor_file_net "Блокировать доступ к сети в режиме Не-Tor, от адресов типа file://">
+<!ENTITY torbutton.prefs.block_tor_file_net "Блокировать доступ к сети в режиме Tor от адресов типа file:// (рекомендуется)">
+<!ENTITY torbutton.prefs.block_nontor_file_net "Блокировать доступ к сети вне режима Tor от адресов типа file://">
<!ENTITY torbutton.prefs.restore_defaults "Восстановить значения по умолчанию">
<!ENTITY torbutton.prefs.test_settings "Проверить настройки">
-<!ENTITY torbutton.prefs.test_auto "Проверять настройки Tor, каждый раз когда я включаю этот режим при каждом запуске Firefox">
-<!ENTITY torbutton.prefs.disable_livemarks "Disable livemarks updates during Tor usage">
-<!ENTITY torbutton.prefs.tor_memory_jar "Не писать cookies на диск в режиме Tor">
-<!ENTITY torbutton.prefs.nontor_memory_jar "Не писать cookies на диск в режиме Не-Tor">
+<!ENTITY torbutton.prefs.test_auto "Проверять настройки Tor каждый раз при включении этот режим при каждом запуске Firefox">
+<!ENTITY torbutton.prefs.disable_livemarks "Отключать обновления livemarks во время использования Tor">
+<!ENTITY torbutton.prefs.tor_memory_jar "Не писать куки-файлы на диск в режиме Tor">
+<!ENTITY torbutton.prefs.nontor_memory_jar "Не писать куки-файлы на диск вне режима Tor">
<!ENTITY torbutton.prefs.session_restore "Может ли храниться сохраняться и воссанавливаться сессия со следующими вкладками:">
-<!ENTITY torbutton.prefs.nontor_tabs "Вкладки загруженые вне режима Tor">
-<!ENTITY torbutton.prefs.tor_tabs "Вкладки загруженые в режиме Tor">
+<!ENTITY torbutton.prefs.nontor_tabs "Вкладки, загруженные вне режима Tor">
+<!ENTITY torbutton.prefs.tor_tabs "Вкладки, загруженые в режиме Tor">
<!ENTITY torbutton.prefs.socks_vfour "SOCKS 4">
<!ENTITY torbutton.prefs.socks_vfive "SOCKS 5">
<!ENTITY torbutton.prefs.no_proxies_on "Нет прокси для: ">
<!ENTITY torbutton.prefs.no_proxy_warning "Внимание: Не вносите никаких имен доменов в поле выше">
<!ENTITY torbutton.prefs.spoofreresh "Стереть правила подстановок">
<!ENTITY torbutton.prefs.refereroptions "Опции подстановок рефереров">
-<!ENTITY torbutton.prefs.nospoof "No referer spoof during Tor usage (sends referers as normal)">
+<!ENTITY torbutton.prefs.nospoof "Не имитировать реферер во время использования Tor (отсылать обычные рефереры)">
<!ENTITY torbutton.prefs.spoofroot "Подмена содержащих папки страницы">
<!ENTITY torbutton.prefs.spoofdomain "Подменить домен в качестве реферера">
-<!ENTITY torbutton.prefs.spoofblank "Spoof blank referer during Tor usage (may break some sites)">
-<!ENTITY torbutton.cookiedialog.title "Управление защитой Cookie">
+<!ENTITY torbutton.prefs.spoofblank "Имитировать пустой реферер во время использования Tor (может привести к невозможности просмотра некоторых сайтов)">
+<!ENTITY torbutton.cookiedialog.title "Управление защитой куки-файлов">
<!ENTITY torbutton.cookiedialog.lockCol "Защищено">
-<!ENTITY torbutton.cookiedialog.domainCol "Имя компьютера">
+<!ENTITY torbutton.cookiedialog.domainCol "Ведущий узел">
<!ENTITY torbutton.cookiedialog.nameCol "Имя">
<!ENTITY torbutton.cookiedialog.pathCol "Путь">
-<!ENTITY torbutton.cookiedialog.protectCookie "Защищать Cookie">
-<!ENTITY torbutton.cookiedialog.removeCookie "Удалить Cookie">
-<!ENTITY torbutton.cookiedialog.unprotectCookie "Снять защиту Cookie">
-<!ENTITY torbutton.cookiedialog.removeAllBut "Удалить все кроме защищённых">
-<!ENTITY torbutton.cookiedialog.saveAllCookies "Защищать новые Cookies">
-<!ENTITY torbutton.cookiedialog.doNotSaveAllCookies "Не защищать новые Cookies">
-<!ENTITY torbutton.prefs.disable_livemarks "Disable livemarks updates during Tor usage">
+<!ENTITY torbutton.cookiedialog.protectCookie "Защищать куки-файлы">
+<!ENTITY torbutton.cookiedialog.removeCookie "Удалить куки-файлы">
+<!ENTITY torbutton.cookiedialog.unprotectCookie "Снять защиту куки-файлов">
+<!ENTITY torbutton.cookiedialog.removeAllBut "Удалить все, кроме защищённых">
+<!ENTITY torbutton.cookiedialog.saveAllCookies "Защищать новые куки-файлы">
+<!ENTITY torbutton.cookiedialog.doNotSaveAllCookies "Не защищать новые куки-файлы">
+<!ENTITY torbutton.prefs.disable_livemarks "Отключать обновления livemarks во время использования Tor">
<!ENTITY torbutton.prefs.dtd_recommended "(рекомендуется)">
-<!ENTITY torbutton.prefs.dtd_optional "(по желанию)">
-<!ENTITY torbutton.prefs.dtd_crucial "(критично)">
+<!ENTITY torbutton.prefs.dtd_optional "(опционально)">
+<!ENTITY torbutton.prefs.dtd_crucial "(важно)">
<!ENTITY torbutton.prefs.update_torbutton_via_tor "Перенаправлять обновления Torbutton через Tor">
<!ENTITY torbutton.prefs.dodge_google_captcha "Автоматически использовать альтернативную поисковую систему при показе Google Captcha:">
<!ENTITY torbutton.prefs.engine1 "ixquick.com">
@@ -145,16 +145,43 @@
<!ENTITY torbutton.prefs.engine4 "startpage.com">
<!ENTITY torbutton.prefs.engine5 "duckduckgo.com">
<!ENTITY torbutton.prefs.fix_google_srch "Удалять сведения о платформе и языке из запросов строки поиска Google">
-<!ENTITY torbutton.prefs.transparentTor "Прозрачная торификация (Требует пользовательских transproxy или Tor-маршрутизатора)">
-<!ENTITY torbutton.prefs.priv_caption "Настройки приватности">
-<!ENTITY torbutton.prefs.block_disk "Не сохранять журнал обозревателя и данные с посещаемых сайтов (активирует функцию приватного просмотра)">
-<!ENTITY torbutton.prefs.restrict_thirdparty "Блокировать сторонние куки и другие данные слежения">
+<!ENTITY torbutton.prefs.transparentTor "Прозрачная "торификация" (требует пользовательских transproxy или Tor-маршрутизатора)">
+<!ENTITY torbutton.prefs.priv_caption "Настройки конфиденциальности">
+<!ENTITY torbutton.prefs.block_disk "Не сохранять историю журнала посещений и данные с посещаемых сайтов (активирует функцию конфиденциального просмотра)">
+<!ENTITY torbutton.prefs.restrict_thirdparty "Блокировать сторонние куки-файлы и другие данные слежения">
<!ENTITY torbutton.prefs.block_plugins "Отключить расширения браузера (такие как Flash)">
<!ENTITY torbutton.prefs.resist_fingerprinting "Изменить сведения, отличающие вас от других пользователей Tor Browser">
-<!ENTITY torbutton.prefs.sec_caption "Уровень Безопасности">
+<!ENTITY torbutton.prefs.sec_caption "Уровень безопасности">
<!ENTITY torbutton.prefs.sec_low "Низкий (по умолчанию)">
-<!ENTITY torbutton.prefs.sec_med_low "Средне-Низкий">
-<!ENTITY torbutton.prefs.sec_med_high "Средне-Высокий">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_med_low "Средний">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is disabled.">
+<!ENTITY torbutton.prefs.sec_med_high "Умеренно высокий">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG images are disabled.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "Высокий">
-<!ENTITY torbutton.prefs.sec_custom "Собственные Значения">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is disabled by default on all sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
+<!ENTITY torbutton.prefs.sec_custom "Собственные значения">
<!ENTITY torbutton.circuit_display.title "Цепочка Tor для этого сайта">
+
diff --git a/src/chrome/locale/ru/torbutton.properties b/src/chrome/locale/ru/torbutton.properties
index 5477be6..7e06f17 100644
--- a/src/chrome/locale/ru/torbutton.properties
+++ b/src/chrome/locale/ru/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Включить Tor
torbutton.button.tooltip.enabled = Отключить Tor
torbutton.circuit_display.internet = Интернет
torbutton.circuit_display.ip_unknown = IP неизвестен
+torbutton.circuit_display.onion_site = Onion site
torbutton.circuit_display.this_browser = Этот браузер
+torbutton.circuit_display.relay = relay
torbutton.circuit_display.tor_bridge = Ретранслятор
torbutton.circuit_display.unknown_country = Неизвестная страна
torbutton.panel.tooltip.disabled = Нажмите, чтобы включить Tor
@@ -12,9 +14,9 @@ torbutton.panel.plugins.enabled = Нажмите, чтобы отключить
torbutton.panel.label.disabled = Tor отключен
torbutton.panel.label.enabled = Tor включен
extensions.torbutton(a)torproject.org.description = Torbutton предусматривает кнопку, чтобы настроить Tor и быстро и легко очистить личные данные просмотра.
-torbutton.popup.history.warning = Torbutton заблокировал действия с закладки, загруженной из другого состояния Tor.\n\nЭто требуется для обхода дефектов Firefox 409737 417869.\n\nЕсли это предуреждение возникло без причины, одна из ваших закладок попыталась перезагрузиться в фоновом режиме, и эта попытка была пресечена.\n\nДля перезагрузки закладки в текущем состоянии Tor, нажмите 'enter' в адресной строке URL.\n\n
+torbutton.popup.history.warning = Torbutton заблокировал действия с закладки, загруженной из другого состояния Tor.\n\nЭто требуется для обхода дефектов Firefox 409737 417869.\n\nЕсли это предуреждение возникло без причины, одна из ваших закладок попыталась перезагрузиться в фоновом режиме, и эта попытка была пресечена.\n\nДля перезагрузки закладки в текущем состоянии Tor, нажмите "enter" в адресной строке URL.\n\n
torbutton.popup.plugin.warning = Torbutton заблокировал прямую загрузку плагинов через Tor.\n\nЗагружайте командой Сохранить как.\n\n
-torbutton.popup.confirm_ca_certs = Примечание: Очевидно у вас нет индивидуальных Сертификатов Авторизации. Проверка списка Сертификатов Авторизации медленная операция и замедляет переключение Tor. Хотите отключить изоляцию Сертификатов Авторизации? (Если Вы не понимаете о чем речь, безопасней нажать OK)
+torbutton.popup.confirm_ca_certs = Примечание: очевидно у вас нет индивидуальных сертификатов авторизации. Проверка списка сертификатов авторизации медленная операция и замедляет переключение Tor. Хотите отключить изоляцию Сертификатов Авторизации? (Если Вы не понимаете о чем речь, безопасней нажать OK)
torbutton.popup.ff3.warning = Внимание!\n\nИзвестно, что Torbutton в Firefox 3 открывает возможность утечки данных о вашем часовом поясе и livemarks посредством Tor.\n\nПродолжить?
torbutton.popup.toggle.warning = Чтобы изменения вступили в силу, нужно выключить и перезапустить Tor.
torbutton.popup.test.success = Tor proxy тест успешно пройден!
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Плагины вроде Flash могут н
torbutton.popup.never_ask_again = Больше не спрашивать
torbutton.popup.confirm_newnym = Tor Browser закроет все окна и вкладки. Все сессии веб-сайта будут потеряны.\n\nПерезапустить сейчас Tor Browser, чтобы изменить Вашу личность?\n\n
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Этот веб-сайт (%S) пытается извлечь данные изображения HTML5 canvas, что может быть использовано для получения информации о вашем компьютере.\n\nДолжен ли Tor Browser разрешить этому сайту извлечь данные изображения HTML5 canvas?
canvas.notNow=Не сейчас
@@ -61,3 +68,10 @@ canvas.allow=Разрешить в будущем
canvas.allowAccessKey=A
canvas.never=Никогда для этого сайта (рекомендуется)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profile Problem
+profileReadOnly=You cannot run %S from a read-only file system. Please copy %S to another location before trying to use it.
+profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it.
+profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again.
diff --git a/src/chrome/locale/sv/torbutton.dtd b/src/chrome/locale/sv/torbutton.dtd
index 2285c2a..d4de340 100644
--- a/src/chrome/locale/sv/torbutton.dtd
+++ b/src/chrome/locale/sv/torbutton.dtd
@@ -24,19 +24,19 @@
<!ENTITY torbutton.pref_connection_more_info.text "Torbutton är aktiverad. Om du vill ändra inställningar för proxy utan Tor, inaktivera Tor och kom tillbaka hit. Om du vill ändra inställningar för Tor, använd Torbutton-inställningarna.">
<!ENTITY torbutton.context_menu.new_identity "Ny identitet">
<!ENTITY torbutton.context_menu.new_identity_key "N">
-<!ENTITY torbutton.context_menu.new_circuit "New Tor Circuit for this Site">
+<!ENTITY torbutton.context_menu.new_circuit "Ny Tor circuit för den här sajten">
<!ENTITY torbutton.context_menu.new_circuit_key "S">
<!ENTITY torbutton.context_menu.toggle "Slå på/av Tor">
<!ENTITY torbutton.context_menu.toggle.key "T">
-<!ENTITY torbutton.context_menu.preferences "Privacy and Security Settings…">
+<!ENTITY torbutton.context_menu.preferences "Inställningar för privatliv och säkerhet...">
<!ENTITY torbutton.context_menu.preferences.key "I">
<!ENTITY torbutton.context_menu.about "Om Torbutton...">
<!ENTITY torbutton.context_menu.about.key "O">
-<!ENTITY torbutton.context_menu.networksettings "Tor Network Settings…">
+<!ENTITY torbutton.context_menu.networksettings "Tor nätverksinställningar...">
<!ENTITY torbutton.context_menu.networksettings.key "Ö">
-<!ENTITY torbutton.context_menu.downloadUpdate "Check for Tor Browser Update…">
+<!ENTITY torbutton.context_menu.downloadUpdate "Sök efter uppdateringar för Tor webbläsare...">
<!ENTITY torbutton.context_menu.downloadUpdate.key "U">
-<!ENTITY torbutton.context_menu.cookieProtections "Cookie Protections…">
+<!ENTITY torbutton.context_menu.cookieProtections "Skydd mot Cookies...">
<!ENTITY torbutton.context_menu.cookieProtections.key "S">
<!ENTITY torbutton.context_menu.copyTor "Kopiera Tor URL">
<!ENTITY torbutton.context_menu.copyTor.key "p">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Ändra detailjer som utmärker dig ifrån andra Tor Browser användare">
<!ENTITY torbutton.prefs.sec_caption "Säkerhetsnivå">
<!ENTITY torbutton.prefs.sec_low "Låg (förvald)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
<!ENTITY torbutton.prefs.sec_med_low "Medium-låg">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is disabled.">
<!ENTITY torbutton.prefs.sec_med_high "Medium-hög">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG images are disabled.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "Hög">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is disabled by default on all sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "Anpassad nivå">
-<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+<!ENTITY torbutton.circuit_display.title "Tor circuit för den här sajten">
+
diff --git a/src/chrome/locale/sv/torbutton.properties b/src/chrome/locale/sv/torbutton.properties
index 1c8a351..80da57f 100644
--- a/src/chrome/locale/sv/torbutton.properties
+++ b/src/chrome/locale/sv/torbutton.properties
@@ -2,8 +2,10 @@ torbutton.button.tooltip.disabled = Aktivera Tor
torbutton.button.tooltip.enabled = Inaktivera Tor
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = Okänd IP-adress.
-torbutton.circuit_display.this_browser = This browser
-torbutton.circuit_display.tor_bridge = Bridge
+torbutton.circuit_display.onion_site = Onion webbplats
+torbutton.circuit_display.this_browser = Denna webbläsare
+torbutton.circuit_display.relay = relä
+torbutton.circuit_display.tor_bridge = Brygga
torbutton.circuit_display.unknown_country = Okänt land
torbutton.panel.tooltip.disabled = Klicka för att aktivera Tor
torbutton.panel.tooltip.enabled = Klicka för att inaktivera Tor
@@ -51,7 +53,12 @@ torbutton.popup.short_torbrowser = Viktig information om Torbutton!\n\nTorbutton
torbutton.popup.confirm_plugins = Insticksmoduler så som Flash kan äventyra din anonymitet och personliga integritet.\n\nDe kan också kringgå Tor för att avslöja var du befinner dig och vad din IP-adress är.\n\nÄr du säker på att du vill aktivera insticksmoduler?\n\n
torbutton.popup.never_ask_again = Fråga aldrig igen
-torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.popup.confirm_newnym = Tor Browser kommer att stänga alla fönster och flikar. Alla webbplatssessioner kommer att gå förlorade.\n\nStarta om Tor Browser nu för att återställa din identitet?\n\n
+
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Denna webbsida (%S) försökte komma åt HTML5-bilddata på ett kanvas, som skulle kunna användas för att identifiera just din dator.\n\nSka Tor Browser tillåta den här webbsidan att använda HTML5-bilddata på kanvas?
@@ -61,3 +68,10 @@ canvas.allow=Ja, tillåt alltid
canvas.allowAccessKey=A
canvas.never=Aldrig för denna sida (rekommenderas)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profile Problem
+profileReadOnly=You cannot run %S from a read-only file system. Please copy %S to another location before trying to use it.
+profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it.
+profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again.
diff --git a/src/chrome/locale/tr/torbutton.dtd b/src/chrome/locale/tr/torbutton.dtd
index a4e7a21..d574801 100644
--- a/src/chrome/locale/tr/torbutton.dtd
+++ b/src/chrome/locale/tr/torbutton.dtd
@@ -18,11 +18,11 @@
<!ENTITY torbutton.about.security_review "Güvenlik özeti:">
<!ENTITY torbutton.about.donate "Tor kullanmayı seviyorsanız ayrıca şunu da düşünebilirsiniz: ">
<!ENTITY torbutton.about.make_donation "Bağış yapmak">
-<!ENTITY torbutton.pref_connection.notice "Ayarları uygulumak için Torbutonu devredışı bırak.">
+<!ENTITY torbutton.pref_connection.notice "Ayarları uygulamak için Torbuttonu devre dışı bırak.">
<!ENTITY torbutton.pref_connection.more_info "Daha fazla bilgi">
<!ENTITY torbutton.pref_connection_more_info.title "Yardım">
<!ENTITY torbutton.pref_connection_more_info.text "Torbutton şu anda devre dışı. Vekil sunucu ayarlarını değiştirmek istiyorsanız, Torbutton'ı tekrar devre dışı bırakın. Genel ayarları değiştirecekseniz, ayarlar penceresini kullanın.">
-<!ENTITY torbutton.context_menu.new_identity "Yeni Bağlantı">
+<!ENTITY torbutton.context_menu.new_identity "Yeni Kimlik">
<!ENTITY torbutton.context_menu.new_identity_key "S">
<!ENTITY torbutton.context_menu.new_circuit "Bu site için yeni Tor devresi">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
@@ -44,7 +44,7 @@
<!ENTITY torbutton.context_menu.openTorTab.key "p">
<!ENTITY torbutton.context_menu.openTorWindow "Tor URL'sini Yeni Pencerede Aç">
<!ENTITY torbutton.context_menu.openTorWindow.key "d">
-<!ENTITY torbutton.button.label "Torbuton">
+<!ENTITY torbutton.button.label "Torbutton">
<!ENTITY torbutton.button.tooltip "Başlat">
<!ENTITY torbutton.prefs.privacy_security_settings "Gizlilik ve Güvenlik Ayarları">
<!ENTITY torbutton.prefs.block_thread "Tor çalışırken geçmişi okumayı durdur(kritik)">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Diğer Tor kullanıcılardan sizi ayıran detayları değiştir">
<!ENTITY torbutton.prefs.sec_caption "Güvenlik Seviyesi">
<!ENTITY torbutton.prefs.sec_low "Düşük (varsayılan)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "Bu en kullanılabilir deneyimi sunar.">
+<!ENTITY torbutton.prefs.sec_low_desc "Bu güvenlik seviyesinde tüm tarayıcı özellikleri etkindir.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "SVG OpenType yazı tipi işleme mekanizması devre dışı.">
<!ENTITY torbutton.prefs.sec_med_low "Orta-Düşük">
+<!ENTITY torbutton.prefs.sec_gen_desc "Bu güvenlik seviyesinde, aşağıdaki değişiklikler uygulanır (ayrıntılar için fare ile üzerine gelin):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video ve ses ortamı NoScript aracılığıyla tıkla ve oynat yapıldı.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "Bazı sitelerde bu ortam nesnelerini etkinleştirebilmek için NoScript düğmesini kullanmanız gerekebilir.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Bazı JavaScript başarım iyileştirmeleri devre dışı.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Tür çıkarımı, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Sınır Çizgi JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Bazı sitelerde betikler daha yavaş çalışabilir.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Uzak JAR dosyaları engellendi.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR dosyalarına ağda oldukça ender rastlanır, ancak XSS ve diğer saldırıların kaynağı olabilir.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Matematik denklemlerini gösteren bazı mekanizmalar devre dışı.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML devre dışı.">
<!ENTITY torbutton.prefs.sec_med_high "Orta-Yüksek">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "Tüm JavaScript başarım iyileştirmeleri devre dışı.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Bazı yazı tipi işleme özellikleri devre dışı.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "Graphite yazı tipi işleme mekanizması devre dışı.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Bazı resim türleri devre dışı.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG resimleri devre dışı.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript öntanımlı olarak tüm HTTPS olmayan sitelerde devre dışı.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript, NoScript araç çubuğu düğmesi kullanılarak her site için ayrı ayrı etkinleştirilebilir.">
<!ENTITY torbutton.prefs.sec_high "Yüksek">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript öntanımlı olarak tüm sitelerde devre dışı.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Çoğu ses ve video biçimi devre dışı.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM, etkin bırakılan tek çözücü.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Bazı yazı tipi ve simgeler düzgün görüntülenemeyebilir.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Web site tarafından sağlanan yazı tipi dosyaları engellenmiş.">
<!ENTITY torbutton.prefs.sec_custom "Özel Değerler">
<!ENTITY torbutton.circuit_display.title "Bu site için Tor devresi">
+
diff --git a/src/chrome/locale/tr/torbutton.properties b/src/chrome/locale/tr/torbutton.properties
index d5d3276..59dafbd 100644
--- a/src/chrome/locale/tr/torbutton.properties
+++ b/src/chrome/locale/tr/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Tor'u Etkinleştir
torbutton.button.tooltip.enabled = Tor'u Devre Dışı Bırak
torbutton.circuit_display.internet = İnternet
torbutton.circuit_display.ip_unknown = Bilinmeyen IP
+torbutton.circuit_display.onion_site = Soğan sitesi
torbutton.circuit_display.this_browser = Bu tarayıcı
+torbutton.circuit_display.relay = ayna
torbutton.circuit_display.tor_bridge = Köprü
torbutton.circuit_display.unknown_country = Bilinmeyen ülke
torbutton.panel.tooltip.disabled = Tor'u etkinleştirmek için tıklayın
@@ -14,8 +16,8 @@ torbutton.panel.label.enabled = Tor Etkin
extensions.torbutton(a)torproject.org.description = Torbutton Tor ayarlarını yapabileceğiniz ve hızlı ve kolayca gizli tarama verilerini silebileceğiniz bir düğme sağlar.
torbutton.popup.history.warning = Torbutton, farklı bir Tor durumunda yüklenmiş bir sekmeden gelen etkinliği engelledi.\n\nBu Firefox 409737 ve 417869 nolu hata raporlarını için bir çözümdür.\n\nHiçbir sebep yokken bu uyarı aldıysanız, muhtelemelen sekme kendini yenilemeye çalıştığı için engellenmiş olabilir.\n\nSekmeyi yenilemek için lütfen adres çubuğunu tıklayıp 'enter' tuşuna basın.\n\n
torbutton.popup.plugin.warning = Torbutton Tor'un eklenti içeriğini yüklemesini blokladı.\n\nFarklı Kaydet ile yapmayı deneyin.\n\n
-torbutton.popup.confirm_ca_certs = Torbuton hatırlatma: Anlaşılan özel sertifakanız yok. Doğrulama bilgisi her zaman işlemleri yavaşlatır. Sertifika doğrulamalarını devredışı bırakmak ister misiniz? (Açıklamayı anlamadıysan, Tamam'a tıkla)\n
-torbutton.popup.ff3.warning = Dikkat!\n\nFirefox 3'teki Torbuton yerel saatinizi bazı yerel bilgilerinizi gizlice gönderebilir?\n\nDevam etmek istiyor musunuz?
+torbutton.popup.confirm_ca_certs = Torbutton hatırlatma: Anlaşılan özel sertifakanız yok. Doğrulama bilgisi her zaman işlemleri yavaşlatır. Sertifika doğrulamalarını devredışı bırakmak ister misiniz? (Açıklamayı anlamadıysan, Tamam'a tıkla)\n
+torbutton.popup.ff3.warning = Dikkat!\n\nFirefox 3'teki Torbutton yerel saatinizi ve bazı yerel bilgilerinizi gizlice gönderebilir?\n\nDevam etmek istiyor musunuz?
torbutton.popup.toggle.warning = Ayarların uygulanması için Tor'u yeniden başlatmanız gerekiyor.\n
torbutton.popup.test.success = Vekil sunucu testi başarılı!
torbutton.popup.test.failure = Vekil sunucu testi başarısız oldu! Lütfen Vekil sunucunuzu ve Polippo ayarlarını kontrol ediniz.
@@ -51,7 +53,12 @@ torbutton.popup.short_torbrowser = Önemli Torbutton bilgisi!\nTorbutton şimdi
torbutton.popup.confirm_plugins = Flash gibi eklentiler gizliliğinizi ve anonimliğinizi zedeleyebilir.\n\nAynı zaman Tor'u atlatarak geçerli konumunuzu ve IP adresinizi ortaya çıkarabilir.\n\nEklentileri aktif etmek istiyor musunuz?\n
torbutton.popup.never_ask_again = Bir daha sorma
-torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.popup.confirm_newnym = Tor Tarayıcısı tüm sekmeleri ve pencereleri kapatacak. Tüm web sitesi oturumları kaybolacaktır.\n\nOturumunuzu sıfırlamak için Tor tarayıcı yeniden başlatılsın mı?\n
+
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=Bu web sitesi (%S) bilgisayarınızı benzersiz olarak tanımlayabilmek için kullanılabilen HTML5 tuvalindeki resim verisine erişmeye çalıştı.\n\nTor Tarayıcı bu web sitesine HTML5 tuval resim verisini çıkarmasına izin vermeli mi?
@@ -61,3 +68,10 @@ canvas.allow=İleride izin ver
canvas.allowAccessKey=H
canvas.never=Bu site için asla (önerilen)
canvas.neverAccessKey=a
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profil Sorunu
+profileReadOnly=%S salt okunur bir sistemden çalıştırılamaz. Lütfen kullanmadan önce %S ögesini farklı bir konuma kopyalayın.
+profileReadOnlyMac=%S salt okunur bir sistemden çalıştırılamaz. Lütfen kullanmadan önce %S ögesini Masaüstü veya Uygulamalar klasörüne kopyalayın.
+profileAccessDenied=%S, profilinize erişemiyor. Lütfen sistem yetkilerinizi ayarlayın ve yeniden deneyin.
diff --git a/src/chrome/locale/vi/torbutton.dtd b/src/chrome/locale/vi/torbutton.dtd
index 5378f43..cd3d3ce 100644
--- a/src/chrome/locale/vi/torbutton.dtd
+++ b/src/chrome/locale/vi/torbutton.dtd
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "Change details that distinguish you from other Tor Browser users">
<!ENTITY torbutton.prefs.sec_caption "Security Level">
<!ENTITY torbutton.prefs.sec_low "Low (default)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "This provides the most usable experience.">
+<!ENTITY torbutton.prefs.sec_low_desc "At this security level, all browser features are enabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "The SVG OpenType font rendering mechanism is disabled.">
<!ENTITY torbutton.prefs.sec_med_low "Medium-Low">
+<!ENTITY torbutton.prefs.sec_gen_desc "At this security level, the following changes apply (mouseover for details):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 video and audio media become click-to-play via NoScript.">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "On some sites, you might need to use the NoScript toolbar button to enable these media objects.">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "Some JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT, Type Inference, ASM.JS.">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT.">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "Scripts on some sites may run slower.">
+<!ENTITY torbutton.prefs.sec_jar_desc "Remote JAR files are blocked.">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "JAR files are extremely rare on the web, but can be a source of XSS and other attacks.">
+<!ENTITY torbutton.prefs.sec_mathml_desc "Some mechanisms of displaying math equations are disabled.">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "MathML is disabled.">
<!ENTITY torbutton.prefs.sec_med_high "Medium-High">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "All JavaScript performance optimizations are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "Some font rendering features are disabled.">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "The Graphite font rendering mechanism is disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc "Some types of images are disabled.">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "SVG images are disabled.">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript is disabled by default on all non-HTTPS sites.">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "JavaScript can be enabled on a per-site basis via the NoScript toolbar button.">
<!ENTITY torbutton.prefs.sec_high "High">
+<!ENTITY torbutton.prefs.sec_all_js_desc "JavaScript is disabled by default on all sites.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "Most audio and video formats are disabled.">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "WebM is the only codec that remains enabled.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "Some fonts and icons may display incorrectly.">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "Website-provided font files are blocked.">
<!ENTITY torbutton.prefs.sec_custom "Custom Values">
<!ENTITY torbutton.circuit_display.title "Tor circuit for this site">
+
diff --git a/src/chrome/locale/vi/torbutton.properties b/src/chrome/locale/vi/torbutton.properties
index 9c563d4..9ae81f9 100644
--- a/src/chrome/locale/vi/torbutton.properties
+++ b/src/chrome/locale/vi/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = Bật Tor
torbutton.button.tooltip.enabled = Tắt Tor
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = IP unknown
+torbutton.circuit_display.onion_site = Onion site
torbutton.circuit_display.this_browser = This browser
+torbutton.circuit_display.relay = relay
torbutton.circuit_display.tor_bridge = Bridge
torbutton.circuit_display.unknown_country = Unknown country
torbutton.panel.tooltip.disabled = Nhấn để bật Tor
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Plugins such as Flash can harm your privacy an
torbutton.popup.never_ask_again = Never ask me again
torbutton.popup.confirm_newnym = Tor Browser will close all windows and tabs. All website sessions will be lost.\n\nRestart Tor Browser now to reset your identity?\n\n
+torbutton.slider_notification = The green onion menu has now a security slider which lets you adjust your security level. Check it out!
+torbutton.slider_notification_button = Open security settings
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=This website (%S) attempted to extract HTML5 canvas image data, which may be used to uniquely identify your computer.\n\nShould Tor Browser allow this website to extract HTML5 canvas image data?
canvas.notNow=Not Now
@@ -61,3 +68,10 @@ canvas.allow=Allow in the future
canvas.allowAccessKey=T
canvas.never=Never for this site (recommended)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S Profile Problem
+profileReadOnly=You cannot run %S from a read-only file system. Please copy %S to another location before trying to use it.
+profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it.
+profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again.
diff --git a/src/chrome/locale/zh-CN/aboutTor.dtd b/src/chrome/locale/zh-CN/aboutTor.dtd
index 8237217..5403ed9 100644
--- a/src/chrome/locale/zh-CN/aboutTor.dtd
+++ b/src/chrome/locale/zh-CN/aboutTor.dtd
@@ -8,7 +8,7 @@
<!ENTITY aboutTor.outOfDateTorOn.label "但是该浏览器并非最新版本。">
<!ENTITY aboutTor.outOfDateTorOff.label "另外,该浏览器并非最新版本。">
-<!ENTITY aboutTor.outOfDate2.label "点击洋葱,然后选择 Tor Browser 检查更新。">
+<!ENTITY aboutTor.outOfDate2.label "点击洋葱图标,然后选择“Tor Browser 检查更新”。">
<!ENTITY aboutTor.check.label "测试 Tor 网络设置">
diff --git a/src/chrome/locale/zh-CN/torbutton.dtd b/src/chrome/locale/zh-CN/torbutton.dtd
index 7da1472..90076de 100644
--- a/src/chrome/locale/zh-CN/torbutton.dtd
+++ b/src/chrome/locale/zh-CN/torbutton.dtd
@@ -24,7 +24,7 @@
<!ENTITY torbutton.pref_connection_more_info.text "Torbutton 当前已启用。如需对 Tor 之外的代理设置进行更改,请禁用 Torbutton 后再返回这里。如需更改 Tor 的设置,请在 Torbutton 首选项窗口中进行设置。">
<!ENTITY torbutton.context_menu.new_identity "新标识">
<!ENTITY torbutton.context_menu.new_identity_key "I">
-<!ENTITY torbutton.context_menu.new_circuit "对此网站使用新的 Tor 线路">
+<!ENTITY torbutton.context_menu.new_circuit "为该站点新建 Tor 线路">
<!ENTITY torbutton.context_menu.new_circuit_key "C">
<!ENTITY torbutton.context_menu.toggle "切换 Tor 状态">
<!ENTITY torbutton.context_menu.toggle.key "T">
@@ -153,8 +153,35 @@
<!ENTITY torbutton.prefs.resist_fingerprinting "请修改区别你与其他 Tor 浏览器用户的详细信息">
<!ENTITY torbutton.prefs.sec_caption "安全等级">
<!ENTITY torbutton.prefs.sec_low "低(默认)">
+<!ENTITY torbutton.prefs.sec_low_usable_desc "该选项提供最具可用性的用户体验。">
+<!ENTITY torbutton.prefs.sec_low_desc "该安全级别将启用所有浏览器功能。">
+<!ENTITY torbutton.prefs.sec_font_rend_svg_tooltip "禁用 SVG OpenType 字体渲染功能。">
<!ENTITY torbutton.prefs.sec_med_low "中低">
+<!ENTITY torbutton.prefs.sec_gen_desc "该安全级别具有以下更改(鼠标悬停可查看细节):">
+<!ENTITY torbutton.prefs.sec_html5_desc "HTML5 视频和音频媒体通过 NoScript 实现点击播放。">
+<!ENTITY torbutton.prefs.sec_html5_tooltip "在某些网站,可使用 NoScript 工具栏按钮来启用这些媒体对象。">
+<!ENTITY torbutton.prefs.sec_some_jit_desc "禁用某些 JavaScript 性能优化。">
+<!ENTITY torbutton.prefs.sec_jit_desc_tooltip "ION JIT、类型推断、ASM.JS。">
+<!ENTITY torbutton.prefs.sec_baseline_jit_desc_tooltip "Baseline JIT。">
+<!ENTITY torbutton.prefs.sec_jit_slower_desc "一些网站的脚本可能运行更慢。">
+<!ENTITY torbutton.prefs.sec_jar_desc "禁用远程 JAR 文件。">
+<!ENTITY torbutton.prefs.sec_jar_tooltip "网站上很少出现 JAR 文件,但可能成为 XSS 及其他攻击的源头。">
+<!ENTITY torbutton.prefs.sec_mathml_desc "禁用数学方程式的某些显示机制。">
+<!ENTITY torbutton.prefs.sec_mathml_desc_tooltip "禁用 MathML。">
<!ENTITY torbutton.prefs.sec_med_high "中高">
+<!ENTITY torbutton.prefs.sec_all_jit_desc "禁用全部 JavaScript 性能优化。">
+<!ENTITY torbutton.prefs.sec_font_rend_desc "禁用某些字体渲染功能。">
+<!ENTITY torbutton.prefs.sec_font_rend_graphite_tooltip "禁用 Graphite 字体渲染。">
+<!ENTITY torbutton.prefs.sec_svg_desc "禁用某些图像类型。">
+<!ENTITY torbutton.prefs.sec_svg_desc_tooltip "禁用 SVG 图像。">
+<!ENTITY torbutton.prefs.sec_js_https_desc "JavaScript 在所有非 HTTPS 网站上被禁用。">
+<!ENTITY torbutton.prefs.sec_js_desc_tooltip "可按站点通过 NoScript 工具栏按钮上启用 JavaScript。">
<!ENTITY torbutton.prefs.sec_high "高">
+<!ENTITY torbutton.prefs.sec_all_js_desc "默认禁用所有网站 JavaScript。">
+<!ENTITY torbutton.prefs.sec_audio_video_desc "禁用大多数音频和视频格式。">
+<!ENTITY torbutton.prefs.sec_audio_video_desc_tooltip "仅启用 WebM 编解码器。">
+<!ENTITY torbutton.prefs.sec_webfonts_desc "某些字体和图标可能无法正确显示。">
+<!ENTITY torbutton.prefs.sec_webfonts_desc_tooltip "禁用网站提供的字体文件。">
<!ENTITY torbutton.prefs.sec_custom "自定义">
-<!ENTITY torbutton.circuit_display.title "对此网站的 Tor 线路">
+<!ENTITY torbutton.circuit_display.title "该站点所用的 Tor 线路">
+
diff --git a/src/chrome/locale/zh-CN/torbutton.properties b/src/chrome/locale/zh-CN/torbutton.properties
index cee64a2..7461488 100644
--- a/src/chrome/locale/zh-CN/torbutton.properties
+++ b/src/chrome/locale/zh-CN/torbutton.properties
@@ -2,7 +2,9 @@ torbutton.button.tooltip.disabled = 启用 Tor
torbutton.button.tooltip.enabled = 禁用 Tor
torbutton.circuit_display.internet = 互联网
torbutton.circuit_display.ip_unknown = IP 未知
+torbutton.circuit_display.onion_site = onion 站点
torbutton.circuit_display.this_browser = 本浏览器
+torbutton.circuit_display.relay = 中继
torbutton.circuit_display.tor_bridge = 网桥
torbutton.circuit_display.unknown_country = 未知国家
torbutton.panel.tooltip.disabled = 点击启用 Tor
@@ -11,7 +13,7 @@ torbutton.panel.plugins.disabled = 点击启用插件
torbutton.panel.plugins.enabled = 点击禁用插件
torbutton.panel.label.disabled = Tor 已禁用
torbutton.panel.label.enabled = Tor 已启用
-extensions.torbutton(a)torproject.org.description = Torbutton 是一个可以配置Tor并能简单快速清理个人浏览数据的按钮。
+extensions.torbutton(a)torproject.org.description = Torbutton 是一个按钮,可对“Tor 设置”进行修改,并可快速而方便地清除浏览器隐私数据。
torbutton.popup.history.warning = Torbutton 屏蔽了在其他 Tor 状态下加载的标签的活动。\n\n这是用于暂时解决 Firefox Bug 409737 和 417869。\n如果这个弹出窗口在您不知情的情况下弹出,则您的标签之一正试图在后台重新载入自己,然而这样的行为是被屏蔽的。\n\n要刷新当前 Tor 状态下的标签,将焦点置于在地址栏并按回车键。\n\n
torbutton.popup.plugin.warning = Torbutton 阻止了浏览器戴 Tor 时直接加载需要插件支持的内容。\n\n请使用“另存为”(保存后浏览)。\n\n
torbutton.popup.confirm_ca_certs = Torbutton 注意:浏览器似乎缺少自定义的CA(证书颁发机构)。检查CA列表是一项耗时的操作,障碍Tor的切换。您是否希望禁用对CA证书的隔离?)如果您不懂,可以选择“确定”)
@@ -32,7 +34,7 @@ torbutton.popup.external.note = 部分文件类型可能会导致应用程序在
torbutton.popup.external.suggest = 为了安全起见,您应该只在离线状态下打开下载的文件,或者使用 Tor Live CD,例如 Tails。\n
torbutton.popup.launch = 下载文件
torbutton.popup.cancel = 取消
-torbutton.popup.dontask = 自动下载文件于
+torbutton.popup.dontask = 以后自动下载文件
torbutton.popup.test.no_http_proxy = Tor 代理测试:本地 HTTP 代理不可达,您的 Polipo 正常启动了吗?
torbutton.popup.captcha.title = 避免 Google Captcha?
torbutton.popup.captcha.ask = Torbutton 检测到了一个 Google Captcha,您是否愿意把本次搜索重定向到使用其他搜索引擎?
@@ -53,6 +55,11 @@ torbutton.popup.confirm_plugins = Flash 之类的插件可对用户的隐私与
torbutton.popup.never_ask_again = 不再询问
torbutton.popup.confirm_newnym = Tor Browser 将关闭所有窗口和标签页。所有网站登录状态都将丢失。\n\n重新启动 Tor Browser 以重置您的身份?\n\n
+torbutton.slider_notification = 绿色的洋葱菜单中现在有了一个安全滑块,您可以用它来调整您的安全级别。试试吧!
+torbutton.slider_notification_button = 打开安全设置
+
+torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size.
+
# Canvas permission prompt. Strings are kept here for ease of translation.
canvas.siteprompt=此网站 (%S) 试图获取 HTML5 Canva 图像数据,该数据可用作你所用计算机的唯一标识。\n\nTor Browser 是否应允许此网站获取 HTML5 Canva 图像数据?
canvas.notNow=暂不
@@ -61,3 +68,10 @@ canvas.allow=以后一直允许
canvas.allowAccessKey=A
canvas.never=永不允许此网站(推荐)
canvas.neverAccessKey=e
+
+# Profile/startup error messages. Strings are kept here for ease of translation.
+# LOCALIZATION NOTE: %S is the application name.
+profileProblemTitle=%S 配置文件问题
+profileReadOnly=您不能在一个只读文件系统上运行 %S。请在尝试使用前复制 %S 到另一个位置。
+profileReadOnlyMac=您不能在一个只读文件系统上运行 %S。请在尝试使用它前复制 %S 到您的桌面或者应用程序文件夹。
+profileAccessDenied=%S 没有权限访问配置文件。请调整您的文件系统权限然后重试。
1
0

[torbutton/master] Bump version to 1.9.1.0 and add Changelog entries.
by mikeperry@torproject.org 27 Mar '15
by mikeperry@torproject.org 27 Mar '15
27 Mar '15
commit 96b56ba026b19269c08251aa0e7e2887a10c68c2
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Mar 26 19:35:10 2015 -0700
Bump version to 1.9.1.0 and add Changelog entries.
---
src/CHANGELOG | 20 ++++++++++++++++++++
src/install.rdf | 2 +-
2 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/src/CHANGELOG b/src/CHANGELOG
index 97db954..e9b5c6b 100644
--- a/src/CHANGELOG
+++ b/src/CHANGELOG
@@ -1,3 +1,23 @@
+1.9.1.0:
+ * Bug 9387: "Security Slider 1.0"
+ * Include descriptions and tooltip hints for security levels
+ * Notify users that the security slider exists
+ * Flip slider so that "low" is on the bottom
+ * Make use of new SVG and MathML prefs
+ * Bug 13766: Set a 10 minute circuit lifespan for non-content requests
+ * Bug 15460: Ensure FTP urls use content-window circuit isolation
+ * Bug 13650: Clip initial window height to 1000px
+ * Bug 14429: Ensure windows can only be resized to 200x100px multiples
+ * Bug 15334: Display Cookie Protections menu if disk records are enabled
+ * Bug 14324: Show HS circuit in Tor circuit display
+ * Bug 15086: Handle RTL text in Tor circuit display
+ * Bug 15085: Fix about:tor RTL text alignment problems
+ * Bug 10216: Add a pref to disable the local tor control port test
+ * Bug 14937: Show meek and flashproxy bridges in tor circuit display
+ * Bugs 13891+15207: Fix exceptions/errors in circuit display with bridges
+ * Bug 13019: Change locale hiding pref to boolean
+ * Bug 7255: Warn users about maximizing windows (off by default)
+
1.9.0.0
* Bug 13882: Fix display of bridges after bridge settings have been changed
* Bug 5698: Use "Tor Browser" branding in "About Tor Browser" dialog
diff --git a/src/install.rdf b/src/install.rdf
index b5a8e88..94245a0 100644
--- a/src/install.rdf
+++ b/src/install.rdf
@@ -6,7 +6,7 @@
<em:name>Torbutton</em:name>
<em:creator>Mike Perry</em:creator>
<em:id>torbutton(a)torproject.org</em:id>
- <em:version>1.9.0.0</em:version>
+ <em:version>1.9.1.0</em:version>
<em:homepageURL>https://www.torproject.org/projects/torbrowser.html.en</em:homepageURL>
<em:optionsURL>chrome://torbutton/content/preferences.xul</em:optionsURL>
<em:iconURL>chrome://torbutton/skin/tor.png</em:iconURL>
1
0

[tor-browser-bundle/master] Changelog and versions update for 4.5a5.
by mikeperry@torproject.org 27 Mar '15
by mikeperry@torproject.org 27 Mar '15
27 Mar '15
commit 9f4ba9e7398d45797382f9eff95fc210f8d903fa
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Thu Mar 26 17:59:03 2015 -0700
Changelog and versions update for 4.5a5.
---
Bundle-Data/Docs/ChangeLog.txt | 47 +++++++++++++++++++++++++++++++++++++++-
gitian/versions.alpha | 14 ++++++------
2 files changed, 53 insertions(+), 8 deletions(-)
diff --git a/Bundle-Data/Docs/ChangeLog.txt b/Bundle-Data/Docs/ChangeLog.txt
index e7464cf..edbd748 100644
--- a/Bundle-Data/Docs/ChangeLog.txt
+++ b/Bundle-Data/Docs/ChangeLog.txt
@@ -1,7 +1,52 @@
-Tor Browser 4.0.6 -- Mar 31 2015
+Tor Browser 4.5a5 -- Mar 31 2015
* All Platforms
* Update Firefox to 31.6.0esr
* Update OpenSSL to 1.0.1m
+ * Update Tor to 0.2.6.6
+ * Update NoScript to 2.6.9.19
+ * Update meek to 0.16
+ * Update Torbutton to 1.9.1.0
+ * Bug 9387: "Security Slider 1.0"
+ * Include descriptions and tooltip hints for security levels
+ * Notify users that the security slider exists
+ * Flip slider so that "low" is on the bottom
+ * Make use of new SVG and MathML prefs
+ * Bug 13766: Set a 10 minute circuit lifespan for non-content requests
+ * Bug 15460: Ensure FTP urls use content-window circuit isolation
+ * Bug 13650: Clip initial window height to 1000px
+ * Bug 14429: Ensure windows can only be resized to 200x100px multiples
+ * Bug 15334: Display Cookie Protections menu if disk records are enabled
+ * Bug 14324: Show HS circuit in Tor circuit display
+ * Bug 15086: Handle RTL text in Tor circuit display
+ * Bug 15085: Fix about:tor RTL text alignment problems
+ * Bug 10216: Add a pref to disable the local tor control port test
+ * Bug 14937: Show meek and flashproxy bridges in tor circuit display
+ * Bugs 13891+15207: Fix exceptions/errors in circuit display with bridges
+ * Bug 13019: Change locale hiding pref to boolean
+ * Bug 7255: Warn users about maximizing windows (off by default)
+ * Pluggable Transport Dependency Updates:
+ * Bug 15448: Use golang 1.4.2 for meek and obs4proxy
+ * Bug 15265: Switch go.net repo to golang.org/x/net
+ * Bug 12535: Use a SOCKS5 listener instead of a SOCKS4a for goptlib
+ * Bug 14937: Hard-code meek and flashproxy node fingerprints
+ * Bug 13019: Prevent Javascript from leaking system locale
+ * Bug 10280: Improved fix to prevent loading plugins into address space
+ * Bug 15406: Only include addons in incremental updates if they actually update
+ * Bug 15029: Don't prompt to include missing plugins
+ * Bug 12827: Create preference to disable SVG images (for security slider)
+ * Bug 13548: Create preference to disable MathML (for security slider)
+ * Bug 14631: Improve startup error messages for filesystem permissions issues
+ * Bug 13766: Keep content window Tor circuits open for 2 hours
+ * Linux
+ * Bug 13375: Create a hybrid GUI/desktop/shell launcher wrapper
+ * Bug 12468: Only print/write log messages if launched with --debug
+ * Windows
+ * Bug 15201: Disable 'runas Administrator' codepaths in updater
+ * Bug 14688: Create shortcuts to desktop and start menu by default (optional)
+
+Tor Browser 4.0.6 -- Mar 31 2015
+ * All Platforms
+ * Update Firefox to 31.6.0esr
* Update meek to 0.16
Tor Browser 4.0.5 -- Mar 23 2015
diff --git a/gitian/versions.alpha b/gitian/versions.alpha
index 2e6cd80..12c16cc 100755
--- a/gitian/versions.alpha
+++ b/gitian/versions.alpha
@@ -4,14 +4,14 @@ BUILD_PT_BUNDLES=1
VERIFY_TAGS=1
-FIREFOX_VERSION=31.5.0esr
+FIREFOX_VERSION=31.6.0esr
TORBROWSER_UPDATE_CHANNEL=alpha
TORBROWSER_TAG=tor-browser-${FIREFOX_VERSION}-4.5-1-build1
-TOR_TAG=tor-0.2.6.3-alpha
+TOR_TAG=tor-0.2.6.6
TORLAUNCHER_TAG=0.2.7.2
-TORBUTTON_TAG=1.9.0.0
+TORBUTTON_TAG=1.9.1.0
HTTPSE_TAG=3.5.3 # XXX: HTTPSE_VER is used instead, pending #11630
NSIS_TAG=v0.3
ZLIB_TAG=v1.2.8
@@ -35,7 +35,7 @@ OBFS4_TAG=obfs4proxy-0.0.4
GITIAN_TAG=tor-browser-builder-3.x-7
-OPENSSL_VER=1.0.1l
+OPENSSL_VER=1.0.1m
GMP_VER=5.1.3
FIREFOX_LANG_VER=$FIREFOX_VERSION
FIREFOX_LANG_BUILD=build2
@@ -52,7 +52,7 @@ PY2EXE_VER=0.6.9
SETUPTOOLS_VER=1.4
LXML_VER=3.3.5
PARSLEY_VER=1.2
-HTTPSE_VER=5.0development.2
+HTTPSE_VER=5.0
GO_VER=1.4.2
## File names for the source packages
@@ -82,13 +82,13 @@ GO_PACKAGE=go${GO_VER}.src.tar.gz
GONET_PACKAGE=go.net-9c0f9daaa74b.tar.bz2
# Hashes for packages with weak sigs or no sigs
-OPENSSL_HASH=b2cf4d48fe5d49f240c61c9e624193a6f232b5ed0baf010681e725963c40d1d4
+OPENSSL_HASH=095f0b7b09116c0c5526422088058dc7e6e000aa14d22acca6a4e2babcdfef74
GMP_HASH=752079520b4690531171d0f4532e40f08600215feefede70b24fabdc6f1ab160
OSXSDK_HASH=6602d8d5ddb371fbc02e2a5967d9bd0cd7358d46f9417753c8234b923f2ea6fc
TOOLCHAIN4_HASH=7b71bfe02820409b994c5c33a7eab81a81c72550f5da85ff7af70da3da244645
TOOLCHAIN4_OLD_HASH=65c1b2d302358a6b95a26c6828a66908a199276193bb0b268f2dcc1a997731e9
NOSCRIPT_HASH=63d866458e0261d20b612193f8f446728c991dd488c59e49d8f927c63e7eb9b4
-HTTPSE_HASH=a42812dbd4b0103600ac5dce0e5f1366e8a7a7267e18743f5cd1e152615964e3
+HTTPSE_HASH=059b6141b200c18f5903550d0ee6bdec1e1b874b7e069d246466e77bf3a436c2
MSVCR100_HASH=1221a09484964a6f38af5e34ee292b9afefccb3dc6e55435fd3aaf7c235d9067
PYCRYPTO_HASH=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c
ARGPARSE_HASH=ddaf4b0a618335a32b6664d4ae038a1de8fbada3b25033f9021510ed2b3941a4
1
0

[tor-browser-bundle/master] Bug 13375: Allow Linux users to launch TBB from either GUI or shell
by mikeperry@torproject.org 26 Mar '15
by mikeperry@torproject.org 26 Mar '15
26 Mar '15
commit 3244969e9a513fb6bc2aeb34b220ba7b9a679586
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Tue Mar 17 15:15:07 2015 -0700
Bug 13375: Allow Linux users to launch TBB from either GUI or shell
Create a .desktop file that can handle relative launch, can be invoked from
the shell, and can be relocated to the dock/launcher/desktop after first
invocation.
This is some black magic right here. Screw the FreeDesktop.org people for
making this so difficult.
---
RelativeLink/execdesktop | 14 +++++++++++++
RelativeLink/start-tor-browser | 7 +++++++
RelativeLink/start-tor-browser.desktop | 30 ++++++++++++++++++++++++++++
gitian/descriptors/linux/gitian-bundle.yml | 2 +-
4 files changed, 52 insertions(+), 1 deletion(-)
diff --git a/RelativeLink/execdesktop b/RelativeLink/execdesktop
new file mode 100755
index 0000000..0dc7a42
--- /dev/null
+++ b/RelativeLink/execdesktop
@@ -0,0 +1,14 @@
+#!/bin/bash
+
+TBB_START_PROG="$(grep '^X-TorBrowser-ExecShell' $1 | tail -1 | sed 's/^X-TorBrowser-ExecShell=//' | sed 's/%.//')"
+
+shift
+
+if [ "$#" -ge 1 ]
+then
+ echo "Launching '${TBB_START_PROG} $@'..."
+else
+ echo "Launching '${TBB_START_PROG}'..."
+fi
+
+eval "${TBB_START_PROG} $@"
diff --git a/RelativeLink/start-tor-browser b/RelativeLink/start-tor-browser
index 8c51f47..071c80d 100755
--- a/RelativeLink/start-tor-browser
+++ b/RelativeLink/start-tor-browser
@@ -215,6 +215,13 @@ else
export HOME
fi
+# Fix up .desktop Icon and Exec Paths, and update the .desktop file from the
+# canonical version if it was changed by the updater.
+cp start-tor-browser.desktop ../
+sed -i -e "s,^Name=.*,Name=Tor Browser,g" ../start-tor-browser.desktop
+sed -i -e "s,^Icon=.*,Icon=$HOME/browser/icons/mozicon128.png,g" ../start-tor-browser.desktop
+sed -i -e "s,^Exec=.*,Exec=sh -c '\"$HOME/start-tor-browser\" || ([ ! -x \"$HOME/start-tor-browser\" ] \&\& \"\$(dirname \"\$*\")\"/Browser/start-tor-browser)' dummy %k,g" ../start-tor-browser.desktop
+
SYSARCHITECTURE=$(getconf LONG_BIT)
TORARCHITECTURE=$(expr "$(file TorBrowser/Tor/tor)" : '.*ELF \([[:digit:]]*\)')
diff --git a/RelativeLink/start-tor-browser.desktop b/RelativeLink/start-tor-browser.desktop
new file mode 100755
index 0000000..c8be973
--- /dev/null
+++ b/RelativeLink/start-tor-browser.desktop
@@ -0,0 +1,30 @@
+#!/usr/bin/env ./Browser/execdesktop
+#
+# This file is a self-modifying .desktop file that can be run from the shell.
+# It preserves arguments and environment for the start-tor-browser script.
+#
+# When run, it will update itself with the absolute path to the current TBB
+# location. It is therefore possible to install/relocate this file after first
+# run (for example, by copying it to ~/.local/share/applications/ so that Tor
+# Browser will appear in your desktop applications menu).
+#
+# This file will also still function if the path changes when TBB is used as a
+# portable app, so long as it is run directly from that new directory, either
+# via the shell or via the file manager.
+#
+# If you installed this file to ~/.local/share/applications/ and then relocate
+# your TBB directory, Tor Browser will no longer launch from your desktop's
+# app launcher/dock. However, if you re-run this file from inside that new
+# directory, it will correct the absolute paths, and you can then copy it back
+# into ~/.local/share/applications/ again to restore desktop launch
+# functionality.
+
+[Desktop Entry]
+Type=Application
+Name=Tor Browser Setup
+GenericName=Web Browser
+Comment=Tor Browser is +1 for privacy and -1 for mass surveillance
+Categories=Network;WebBrowser;Security;
+Exec=sh -c '"$(dirname "$*")"/Browser/start-tor-browser || ([ ! -x "$(dirname "$*")"/Browser/start-tor-browser ] && "$(dirname "$*")"/start-tor-browser)' dummy %k
+X-TorBrowser-ExecShell=./Browser/start-tor-browser
+Icon=web-browser
diff --git a/gitian/descriptors/linux/gitian-bundle.yml b/gitian/descriptors/linux/gitian-bundle.yml
index 9290b91..b6a4a26 100644
--- a/gitian/descriptors/linux/gitian-bundle.yml
+++ b/gitian/descriptors/linux/gitian-bundle.yml
@@ -119,7 +119,7 @@ script: |
cp RelativeLink/* tor-browser/Browser/
#
cd tor-browser
- ln -s Browser/start-tor-browser
+ cp Browser/start-tor-browser.desktop ./
unzip ~/build/tor-browser-linux$GBUILD_BITS-gbuilt.zip
cd Browser/TorBrowser
unzip ~/build/tor-linux$GBUILD_BITS-gbuilt.zip
1
0

[tor-browser-bundle/master] Cleanup to make the bug13375 diff easier to read.
by mikeperry@torproject.org 26 Mar '15
by mikeperry@torproject.org 26 Mar '15
26 Mar '15
commit ad8ab62794c62c7cacafd278601358b90e73a6d9
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Tue Mar 17 15:35:51 2015 -0700
Cleanup to make the bug13375 diff easier to read.
---
RelativeLink/RelativeLink.sh | 316 ----------------------------
RelativeLink/start-tor-browser | 316 ++++++++++++++++++++++++++++
gitian/descriptors/linux/gitian-bundle.yml | 2 +-
3 files changed, 317 insertions(+), 317 deletions(-)
diff --git a/RelativeLink/RelativeLink.sh b/RelativeLink/RelativeLink.sh
deleted file mode 100755
index 8c51f47..0000000
--- a/RelativeLink/RelativeLink.sh
+++ /dev/null
@@ -1,316 +0,0 @@
-#!/bin/bash
-#
-# GNU/Linux does not really require something like RelativeLink.c
-# However, we do want to have the same look and feel with similar features.
-#
-# To run in debug mode simply pass --debug
-#
-# Copyright 2015 The Tor Project. See LICENSE for licensing information.
-
-complain_dialog_title="Tor Browser"
-
-# First, make sure DISPLAY is set. If it isn't, we're hosed; scream
-# at stderr and die.
-if [ "x$DISPLAY" = "x" ]; then
- echo "$complain_dialog_title must be run within the X Window System." >&2
- echo "Exiting." >&2
- exit 1
-fi
-
-# Second, make sure this script wasn't started as 'sh start-tor-browser' or
-# similar.
-if [ "x$BASH" = "x" ]; then
- echo "$complain_dialog_title should be started as './start-tor-browser'"
- echo "Exiting." >&2
- exit 1;
-fi
-
-# Do not (try to) connect to the session manager
-unset SESSION_MANAGER
-
-# Determine whether we are running in a terminal. If we are, we
-# should send our error messages to stderr...
-ARE_WE_RUNNING_IN_A_TERMINAL=0
-if [ -t 1 -o -t 2 ]; then
- ARE_WE_RUNNING_IN_A_TERMINAL=1
-fi
-
-# ...unless we're running in the same terminal as startx or xinit. In
-# that case, the user is probably running us from a GUI file manager
-# in an X session started by typing startx at the console.
-#
-# Hopefully, the local ps command supports BSD-style options. (The ps
-# commands usually used on Linux and FreeBSD do; do any other OSes
-# support running Linux binaries?)
-ps T 2>/dev/null |grep startx 2>/dev/null |grep -v grep 2>&1 >/dev/null
-not_running_in_same_terminal_as_startx="$?"
-ps T 2>/dev/null |grep xinit 2>/dev/null |grep -v grep 2>&1 >/dev/null
-not_running_in_same_terminal_as_xinit="$?"
-
-# not_running_in_same_terminal_as_foo has the value 1 if we are *not*
-# running in the same terminal as foo.
-if [ "$not_running_in_same_terminal_as_startx" -eq 0 -o \
- "$not_running_in_same_terminal_as_xinit" -eq 0 ]; then
- ARE_WE_RUNNING_IN_A_TERMINAL=0
-fi
-
-# Complain about an error, by any means necessary.
-# Usage: complain message
-# message must not begin with a dash.
-complain () {
- # Trim leading newlines, to avoid breaking formatting in some dialogs.
- complain_message="`echo "$1" | sed '/./,$!d'`"
-
- # If we're being run in a terminal, complain there.
- if [ "$ARE_WE_RUNNING_IN_A_TERMINAL" -ne 0 ]; then
- echo "$complain_message" >&2
- return
- fi
-
- # Otherwise, we're being run by a GUI program of some sort;
- # try to pop up a message in the GUI in the nicest way
- # possible.
- #
- # In mksh, non-existent commands return 127; I'll assume all
- # other shells set the same exit code if they can't run a
- # command. (xmessage returns 1 if the user clicks the WM
- # close button, so we do need to look at the exact exit code,
- # not just assume the command failed to display a message if
- # it returns non-zero.)
-
- # First, try zenity.
- zenity --error \
- --title="$complain_dialog_title" \
- --text="$complain_message"
- if [ "$?" -ne 127 ]; then
- return
- fi
-
- # Try kdialog.
- kdialog --title "$complain_dialog_title" \
- --error "$complain_message"
- if [ "$?" -ne 127 ]; then
- return
- fi
-
- # Try xmessage.
- xmessage -title "$complain_dialog_title" \
- -center \
- -buttons OK \
- -default OK \
- -xrm '*message.scrollVertical: Never' \
- "$complain_message"
- if [ "$?" -ne 127 ]; then
- return
- fi
-
- # Try gxmessage. This one isn't installed by default on
- # Debian with the default GNOME installation, so it seems to
- # be the least likely program to have available, but it might
- # be used by one of the 'lightweight' Gtk-based desktop
- # environments.
- gxmessage -title "$complain_dialog_title" \
- -center \
- -buttons GTK_STOCK_OK \
- -default OK \
- "$complain_message"
- if [ "$?" -ne 127 ]; then
- return
- fi
-}
-
-if [ "`id -u`" -eq 0 ]; then
- complain "The Tor Browser Bundle should not be run as root. Exiting."
- exit 1
-fi
-
-debug=0
-usage_message="usage: $0 [--debug]"
-# !!! We may have more than one argument, changed -eq to -ge in if & elif clauses below
-if [ "$#" -ge 1 -a \( "x$1" = "x--debug" -o "x$1" = "x-debug" \) ]; then
- debug=1
- shift # pop the debug argument
- printf "\nDebug enabled.\n\n"
-elif [ "$#" -ge 1 -a \( "x$1" = "x--help" -o "x$1" = "x-help" \) ]; then
- echo "$usage_message"
- exit 0
-fi
-
-# If the user hasn't requested 'debug mode', close whichever of stdout
-# and stderr are not ttys, to keep Firefox and the stuff loaded by/for
-# it (including the system's shared-library loader) from printing
-# messages to $HOME/.xsession-errors . (Users wouldn't have seen
-# messages there anyway.)
-#
-# If the user has requested 'debug mode', don't muck with the FDs.
-if [ "$debug" -ne 1 ]; then
- if [ '!' -t 1 ]; then
- # stdout is not a tty
- exec >/dev/null
- fi
- if [ '!' -t 2 ]; then
- # stderr is not a tty
- exec 2>/dev/null
- fi
-fi
-
-# If XAUTHORITY is unset, set it to its default value of $HOME/.Xauthority
-# before we change HOME below. (See xauth(1) and #1945.) XDM and KDM rely
-# on applications using this default value.
-if [ -z "$XAUTHORITY" ]; then
- XAUTHORITY=~/.Xauthority
- export XAUTHORITY
-fi
-
-# If this script is being run through a symlink, we need to know where
-# in the filesystem the script itself is, not where the symlink is.
-myname="$0"
-if [ -L "$myname" ]; then
- # XXX readlink is not POSIX, but is present in GNU coreutils
- # and on FreeBSD. Unfortunately, the -f option (which follows
- # a whole chain of symlinks until it reaches a non-symlink
- # path name) is a GNUism, so we have to have a fallback for
- # FreeBSD. Fortunately, FreeBSD has realpath instead;
- # unfortunately, that's also non-POSIX and is not present in
- # GNU coreutils.
- #
- # If this launcher were a C program, we could just use the
- # realpath function, which *is* POSIX. Too bad POSIX didn't
- # make that function accessible to shell scripts.
-
- # If realpath is available, use it; it Does The Right Thing.
- possibly_my_real_name="`realpath "$myname" 2>/dev/null`"
- if [ "$?" -eq 0 ]; then
- myname="$possibly_my_real_name"
- else
- # realpath is not available; hopefully readlink -f works.
- myname="`readlink -f "$myname" 2>/dev/null`"
- if [ "$?" -ne 0 ]; then
- # Ugh.
- complain "start-tor-browser cannot be run using a symlink on this operating system."
- fi
- fi
-fi
-
-# Try to be agnostic to where we're being started from, chdir to where
-# the script is.
-mydir="`dirname "$myname"`"
-test -d "$mydir" && cd "$mydir"
-
-# This is a fix for an ibus issue on some Linux systems. See #9353 for more
-# details. The symlink needs to be created before we change HOME.
-if [ ! -d ".config/ibus" ]; then
- mkdir -p .config/ibus
- ln -nsf ~/.config/ibus/bus .config/ibus
-fi
-
-# If ${PWD} results in a zero length HOME, we can try something else...
-if [ ! "${PWD}" ]; then
- # "hacking around some braindamage"
- HOME="`pwd`"
- export HOME
- surveysays="This system has a messed up shell.\n"
-else
- HOME="${PWD}"
- export HOME
-fi
-
-SYSARCHITECTURE=$(getconf LONG_BIT)
-TORARCHITECTURE=$(expr "$(file TorBrowser/Tor/tor)" : '.*ELF \([[:digit:]]*\)')
-
-if [ $SYSARCHITECTURE -ne $TORARCHITECTURE ]; then
- complain "Wrong architecture? 32-bit vs. 64-bit."
- exit 1
-fi
-
-LD_LIBRARY_PATH="${HOME}/TorBrowser/Tor/"
-export LD_LIBRARY_PATH
-
-function setControlPortPasswd() {
- local ctrlPasswd=$1
-
- if test -z "$ctrlPasswd" -o "$ctrlPasswd" = $'\"secret\"' ; then
- unset TOR_CONTROL_PASSWD
- return
- fi
-
- if test "${ctrlPasswd:0:1}" = $'\"'; then # First 2 chars were '"
- printf "Using system Tor process.\n"
- export TOR_CONTROL_PASSWD
- else
- complain "There seems to have been a quoting problem with your \
-TOR_CONTROL_PASSWD environment variable."
- cat <<EOF
-
-The Tor ControlPort password should be given inside double quotes, inside single
-quotes, i.e. if the ControlPort password is “secret” (without curly quotes) then
-we must start this script after setting the environment variable exactly like
-this:
-
- \$ TOR_CONTROL_PASSWD='"secret"' $myname
-
-EOF
- fi
-}
-
-# Using a system-installed Tor process with Tor Browser:
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-# The Tor ControlPort password should be given inside double quotes, inside
-# single quotes, i.e. if the ControlPort password is “secret” (without
-# curly quotes) then we must set the environment variable *exactly* like
-# this:
-#
-# TOR_CONTROL_PASSWD='"secret"'
-#
-# Yes, the variable MUST be double-quoted, then single-quoted, exactly as
-# shown. This is used by TorButtom to authenticate to Tor's ControlPort, and
-# is necessary for using TBB with a with a system-installed Tor.
-#
-# Additionally, if using a system-installed Tor, the following about:config
-# options should be set (values in <> mean they are the value taken from your
-# torrc):
-#
-# SETTING NAME VALUE
-# extensions.torbutton.banned_ports [...],<SocksPort>,<ControlPort>
-# extensions.torbutton.block_disk false
-# extensions.torbutton.custom.socks_host 127.0.0.1
-# extensions.torbutton.custom.socks_port <SocksPort>
-# extensions.torbutton.inserted_button true
-# extensions.torbutton.launch_warning false
-# extensions.torbutton.loglevel 2
-# extensions.torbutton.logmethod 0
-# extensions.torbutton.settings_method custom
-# extensions.torbutton.socks_port <SocksPort>
-# extensions.torbutton.use_privoxy false
-# extensions.torlauncher.control_port <ControlPort>
-# extensions.torlauncher.loglevel 2
-# extensions.torlauncher.logmethod 0
-# extensions.torlauncher.prompt_at_startup false
-# extensions.torlauncher.start_tor false
-#
-# where the '[...]' in the banned_ports option means "leave anything that was
-# already in the preference alone, just append the things specified after it".
-
-# Either set `TOR_CONTROL_PASSWD` before running ./start-tor-browser, or put
-# your password in the following line where the word “secret” is:
-setControlPortPasswd ${TOR_CONTROL_PASSWD:='"secret"'}
-
-# XXX: Debug mode for Firefox??
-
-# not in debug mode, run proceed normally
-printf "Launching Tor Browser for Linux in ${HOME}...\n"
-cd "${HOME}"
-# XXX Someday we should pass whatever command-line arguments we got
-# (probably filenames or URLs) to Firefox.
-# !!! Dash above comment! Now we pass command-line arguments we got (except --debug) to Firefox.
-# !!! Use at your own risk!
-# Adding --class for fixing bug 11102.
-TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class "Tor Browser" \
- -profile TorBrowser/Data/Browser/profile.default "${@}"
-exitcode="$?"
-if [ "$exitcode" -ne 0 ]; then
- complain "Tor Browser exited abnormally. Exit code: $exitcode"
- exit "$exitcode"
-else
- printf '\nTor Browser exited cleanly.\n'
-fi
diff --git a/RelativeLink/start-tor-browser b/RelativeLink/start-tor-browser
new file mode 100755
index 0000000..8c51f47
--- /dev/null
+++ b/RelativeLink/start-tor-browser
@@ -0,0 +1,316 @@
+#!/bin/bash
+#
+# GNU/Linux does not really require something like RelativeLink.c
+# However, we do want to have the same look and feel with similar features.
+#
+# To run in debug mode simply pass --debug
+#
+# Copyright 2015 The Tor Project. See LICENSE for licensing information.
+
+complain_dialog_title="Tor Browser"
+
+# First, make sure DISPLAY is set. If it isn't, we're hosed; scream
+# at stderr and die.
+if [ "x$DISPLAY" = "x" ]; then
+ echo "$complain_dialog_title must be run within the X Window System." >&2
+ echo "Exiting." >&2
+ exit 1
+fi
+
+# Second, make sure this script wasn't started as 'sh start-tor-browser' or
+# similar.
+if [ "x$BASH" = "x" ]; then
+ echo "$complain_dialog_title should be started as './start-tor-browser'"
+ echo "Exiting." >&2
+ exit 1;
+fi
+
+# Do not (try to) connect to the session manager
+unset SESSION_MANAGER
+
+# Determine whether we are running in a terminal. If we are, we
+# should send our error messages to stderr...
+ARE_WE_RUNNING_IN_A_TERMINAL=0
+if [ -t 1 -o -t 2 ]; then
+ ARE_WE_RUNNING_IN_A_TERMINAL=1
+fi
+
+# ...unless we're running in the same terminal as startx or xinit. In
+# that case, the user is probably running us from a GUI file manager
+# in an X session started by typing startx at the console.
+#
+# Hopefully, the local ps command supports BSD-style options. (The ps
+# commands usually used on Linux and FreeBSD do; do any other OSes
+# support running Linux binaries?)
+ps T 2>/dev/null |grep startx 2>/dev/null |grep -v grep 2>&1 >/dev/null
+not_running_in_same_terminal_as_startx="$?"
+ps T 2>/dev/null |grep xinit 2>/dev/null |grep -v grep 2>&1 >/dev/null
+not_running_in_same_terminal_as_xinit="$?"
+
+# not_running_in_same_terminal_as_foo has the value 1 if we are *not*
+# running in the same terminal as foo.
+if [ "$not_running_in_same_terminal_as_startx" -eq 0 -o \
+ "$not_running_in_same_terminal_as_xinit" -eq 0 ]; then
+ ARE_WE_RUNNING_IN_A_TERMINAL=0
+fi
+
+# Complain about an error, by any means necessary.
+# Usage: complain message
+# message must not begin with a dash.
+complain () {
+ # Trim leading newlines, to avoid breaking formatting in some dialogs.
+ complain_message="`echo "$1" | sed '/./,$!d'`"
+
+ # If we're being run in a terminal, complain there.
+ if [ "$ARE_WE_RUNNING_IN_A_TERMINAL" -ne 0 ]; then
+ echo "$complain_message" >&2
+ return
+ fi
+
+ # Otherwise, we're being run by a GUI program of some sort;
+ # try to pop up a message in the GUI in the nicest way
+ # possible.
+ #
+ # In mksh, non-existent commands return 127; I'll assume all
+ # other shells set the same exit code if they can't run a
+ # command. (xmessage returns 1 if the user clicks the WM
+ # close button, so we do need to look at the exact exit code,
+ # not just assume the command failed to display a message if
+ # it returns non-zero.)
+
+ # First, try zenity.
+ zenity --error \
+ --title="$complain_dialog_title" \
+ --text="$complain_message"
+ if [ "$?" -ne 127 ]; then
+ return
+ fi
+
+ # Try kdialog.
+ kdialog --title "$complain_dialog_title" \
+ --error "$complain_message"
+ if [ "$?" -ne 127 ]; then
+ return
+ fi
+
+ # Try xmessage.
+ xmessage -title "$complain_dialog_title" \
+ -center \
+ -buttons OK \
+ -default OK \
+ -xrm '*message.scrollVertical: Never' \
+ "$complain_message"
+ if [ "$?" -ne 127 ]; then
+ return
+ fi
+
+ # Try gxmessage. This one isn't installed by default on
+ # Debian with the default GNOME installation, so it seems to
+ # be the least likely program to have available, but it might
+ # be used by one of the 'lightweight' Gtk-based desktop
+ # environments.
+ gxmessage -title "$complain_dialog_title" \
+ -center \
+ -buttons GTK_STOCK_OK \
+ -default OK \
+ "$complain_message"
+ if [ "$?" -ne 127 ]; then
+ return
+ fi
+}
+
+if [ "`id -u`" -eq 0 ]; then
+ complain "The Tor Browser Bundle should not be run as root. Exiting."
+ exit 1
+fi
+
+debug=0
+usage_message="usage: $0 [--debug]"
+# !!! We may have more than one argument, changed -eq to -ge in if & elif clauses below
+if [ "$#" -ge 1 -a \( "x$1" = "x--debug" -o "x$1" = "x-debug" \) ]; then
+ debug=1
+ shift # pop the debug argument
+ printf "\nDebug enabled.\n\n"
+elif [ "$#" -ge 1 -a \( "x$1" = "x--help" -o "x$1" = "x-help" \) ]; then
+ echo "$usage_message"
+ exit 0
+fi
+
+# If the user hasn't requested 'debug mode', close whichever of stdout
+# and stderr are not ttys, to keep Firefox and the stuff loaded by/for
+# it (including the system's shared-library loader) from printing
+# messages to $HOME/.xsession-errors . (Users wouldn't have seen
+# messages there anyway.)
+#
+# If the user has requested 'debug mode', don't muck with the FDs.
+if [ "$debug" -ne 1 ]; then
+ if [ '!' -t 1 ]; then
+ # stdout is not a tty
+ exec >/dev/null
+ fi
+ if [ '!' -t 2 ]; then
+ # stderr is not a tty
+ exec 2>/dev/null
+ fi
+fi
+
+# If XAUTHORITY is unset, set it to its default value of $HOME/.Xauthority
+# before we change HOME below. (See xauth(1) and #1945.) XDM and KDM rely
+# on applications using this default value.
+if [ -z "$XAUTHORITY" ]; then
+ XAUTHORITY=~/.Xauthority
+ export XAUTHORITY
+fi
+
+# If this script is being run through a symlink, we need to know where
+# in the filesystem the script itself is, not where the symlink is.
+myname="$0"
+if [ -L "$myname" ]; then
+ # XXX readlink is not POSIX, but is present in GNU coreutils
+ # and on FreeBSD. Unfortunately, the -f option (which follows
+ # a whole chain of symlinks until it reaches a non-symlink
+ # path name) is a GNUism, so we have to have a fallback for
+ # FreeBSD. Fortunately, FreeBSD has realpath instead;
+ # unfortunately, that's also non-POSIX and is not present in
+ # GNU coreutils.
+ #
+ # If this launcher were a C program, we could just use the
+ # realpath function, which *is* POSIX. Too bad POSIX didn't
+ # make that function accessible to shell scripts.
+
+ # If realpath is available, use it; it Does The Right Thing.
+ possibly_my_real_name="`realpath "$myname" 2>/dev/null`"
+ if [ "$?" -eq 0 ]; then
+ myname="$possibly_my_real_name"
+ else
+ # realpath is not available; hopefully readlink -f works.
+ myname="`readlink -f "$myname" 2>/dev/null`"
+ if [ "$?" -ne 0 ]; then
+ # Ugh.
+ complain "start-tor-browser cannot be run using a symlink on this operating system."
+ fi
+ fi
+fi
+
+# Try to be agnostic to where we're being started from, chdir to where
+# the script is.
+mydir="`dirname "$myname"`"
+test -d "$mydir" && cd "$mydir"
+
+# This is a fix for an ibus issue on some Linux systems. See #9353 for more
+# details. The symlink needs to be created before we change HOME.
+if [ ! -d ".config/ibus" ]; then
+ mkdir -p .config/ibus
+ ln -nsf ~/.config/ibus/bus .config/ibus
+fi
+
+# If ${PWD} results in a zero length HOME, we can try something else...
+if [ ! "${PWD}" ]; then
+ # "hacking around some braindamage"
+ HOME="`pwd`"
+ export HOME
+ surveysays="This system has a messed up shell.\n"
+else
+ HOME="${PWD}"
+ export HOME
+fi
+
+SYSARCHITECTURE=$(getconf LONG_BIT)
+TORARCHITECTURE=$(expr "$(file TorBrowser/Tor/tor)" : '.*ELF \([[:digit:]]*\)')
+
+if [ $SYSARCHITECTURE -ne $TORARCHITECTURE ]; then
+ complain "Wrong architecture? 32-bit vs. 64-bit."
+ exit 1
+fi
+
+LD_LIBRARY_PATH="${HOME}/TorBrowser/Tor/"
+export LD_LIBRARY_PATH
+
+function setControlPortPasswd() {
+ local ctrlPasswd=$1
+
+ if test -z "$ctrlPasswd" -o "$ctrlPasswd" = $'\"secret\"' ; then
+ unset TOR_CONTROL_PASSWD
+ return
+ fi
+
+ if test "${ctrlPasswd:0:1}" = $'\"'; then # First 2 chars were '"
+ printf "Using system Tor process.\n"
+ export TOR_CONTROL_PASSWD
+ else
+ complain "There seems to have been a quoting problem with your \
+TOR_CONTROL_PASSWD environment variable."
+ cat <<EOF
+
+The Tor ControlPort password should be given inside double quotes, inside single
+quotes, i.e. if the ControlPort password is “secret” (without curly quotes) then
+we must start this script after setting the environment variable exactly like
+this:
+
+ \$ TOR_CONTROL_PASSWD='"secret"' $myname
+
+EOF
+ fi
+}
+
+# Using a system-installed Tor process with Tor Browser:
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+# The Tor ControlPort password should be given inside double quotes, inside
+# single quotes, i.e. if the ControlPort password is “secret” (without
+# curly quotes) then we must set the environment variable *exactly* like
+# this:
+#
+# TOR_CONTROL_PASSWD='"secret"'
+#
+# Yes, the variable MUST be double-quoted, then single-quoted, exactly as
+# shown. This is used by TorButtom to authenticate to Tor's ControlPort, and
+# is necessary for using TBB with a with a system-installed Tor.
+#
+# Additionally, if using a system-installed Tor, the following about:config
+# options should be set (values in <> mean they are the value taken from your
+# torrc):
+#
+# SETTING NAME VALUE
+# extensions.torbutton.banned_ports [...],<SocksPort>,<ControlPort>
+# extensions.torbutton.block_disk false
+# extensions.torbutton.custom.socks_host 127.0.0.1
+# extensions.torbutton.custom.socks_port <SocksPort>
+# extensions.torbutton.inserted_button true
+# extensions.torbutton.launch_warning false
+# extensions.torbutton.loglevel 2
+# extensions.torbutton.logmethod 0
+# extensions.torbutton.settings_method custom
+# extensions.torbutton.socks_port <SocksPort>
+# extensions.torbutton.use_privoxy false
+# extensions.torlauncher.control_port <ControlPort>
+# extensions.torlauncher.loglevel 2
+# extensions.torlauncher.logmethod 0
+# extensions.torlauncher.prompt_at_startup false
+# extensions.torlauncher.start_tor false
+#
+# where the '[...]' in the banned_ports option means "leave anything that was
+# already in the preference alone, just append the things specified after it".
+
+# Either set `TOR_CONTROL_PASSWD` before running ./start-tor-browser, or put
+# your password in the following line where the word “secret” is:
+setControlPortPasswd ${TOR_CONTROL_PASSWD:='"secret"'}
+
+# XXX: Debug mode for Firefox??
+
+# not in debug mode, run proceed normally
+printf "Launching Tor Browser for Linux in ${HOME}...\n"
+cd "${HOME}"
+# XXX Someday we should pass whatever command-line arguments we got
+# (probably filenames or URLs) to Firefox.
+# !!! Dash above comment! Now we pass command-line arguments we got (except --debug) to Firefox.
+# !!! Use at your own risk!
+# Adding --class for fixing bug 11102.
+TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class "Tor Browser" \
+ -profile TorBrowser/Data/Browser/profile.default "${@}"
+exitcode="$?"
+if [ "$exitcode" -ne 0 ]; then
+ complain "Tor Browser exited abnormally. Exit code: $exitcode"
+ exit "$exitcode"
+else
+ printf '\nTor Browser exited cleanly.\n'
+fi
diff --git a/gitian/descriptors/linux/gitian-bundle.yml b/gitian/descriptors/linux/gitian-bundle.yml
index 19233b6..9290b91 100644
--- a/gitian/descriptors/linux/gitian-bundle.yml
+++ b/gitian/descriptors/linux/gitian-bundle.yml
@@ -116,7 +116,7 @@ script: |
cd ~/build/
#
unzip relativelink-src.zip
- cp RelativeLink/RelativeLink.sh tor-browser/Browser/start-tor-browser
+ cp RelativeLink/* tor-browser/Browser/
#
cd tor-browser
ln -s Browser/start-tor-browser
1
0

[tor-browser-bundle/master] Send all output to /dev/null and disown, unless using --debug.
by mikeperry@torproject.org 26 Mar '15
by mikeperry@torproject.org 26 Mar '15
26 Mar '15
commit f9c0f074b2a29087f8bcc9b3072902d093d28fac
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Wed Mar 18 08:16:10 2015 +0000
Send all output to /dev/null and disown, unless using --debug.
If the start-tor-browser script is called normally, this will send all
output to /dev/null and disown the firefox process.
If --debug is passed to the start-tor-browser script, then output will
go to the terminal it was called from, as well as the logfile,
'tor-browser-debug.log', in the top level of Tor Browser's $HOME
directory. In this case, we don't disown the child firefox process, and
we also pass the -jsconsole parameter to firefox.
* FIXES part of #13375: https://bugs.torproject.org/13375
---
RelativeLink/start-tor-browser | 37 +++++++++++++++++++++----------------
1 file changed, 21 insertions(+), 16 deletions(-)
diff --git a/RelativeLink/start-tor-browser b/RelativeLink/start-tor-browser
index 071c80d..d28c759 100755
--- a/RelativeLink/start-tor-browser
+++ b/RelativeLink/start-tor-browser
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
#
# GNU/Linux does not really require something like RelativeLink.c
# However, we do want to have the same look and feel with similar features.
@@ -302,22 +302,27 @@ EOF
# your password in the following line where the word “secret” is:
setControlPortPasswd ${TOR_CONTROL_PASSWD:='"secret"'}
-# XXX: Debug mode for Firefox??
-
-# not in debug mode, run proceed normally
printf "Launching Tor Browser for Linux in ${HOME}...\n"
cd "${HOME}"
-# XXX Someday we should pass whatever command-line arguments we got
-# (probably filenames or URLs) to Firefox.
-# !!! Dash above comment! Now we pass command-line arguments we got (except --debug) to Firefox.
-# !!! Use at your own risk!
-# Adding --class for fixing bug 11102.
-TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class "Tor Browser" \
- -profile TorBrowser/Data/Browser/profile.default "${@}"
-exitcode="$?"
-if [ "$exitcode" -ne 0 ]; then
- complain "Tor Browser exited abnormally. Exit code: $exitcode"
- exit "$exitcode"
+
+# We pass all command-line arguments we got (except --debug) to Firefox. Use
+# at your own risk!
+#
+# The --class parameter was added to fix bug 11102.
+#
+# When passed the --debug option, we log all the output that goes to the
+# parent terminal stdout and stderr to a file ('tor-browser-debug.log' in Tor
+# Browser's $HOME directory).
+if [ "$debug" -ne 1 ] ; then
+ TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class "Tor Browser" \
+ -profile TorBrowser/Data/Browser/profile.default "${@}" > /dev/null 2>&1 </dev/null &
+ disown "$!"
else
- printf '\nTor Browser exited cleanly.\n'
+ logfile=$(dirname ${HOME} )/tor-browser-debug.log
+ printf "Logging Tor Browser debug information to file: %s\n" "$logfile"
+ TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./firefox --class "Tor Browser" \
+ -profile TorBrowser/Data/Browser/profile.default "${@}" -jsconsole 2>&1 </dev/null | \
+ tee $logfile
fi
+
+exit $?
1
0

[tor-browser-bundle/master] Bug 12468: Send script output messages to stderr only in debug mode
by mikeperry@torproject.org 26 Mar '15
by mikeperry@torproject.org 26 Mar '15
26 Mar '15
commit b734892e76d0fd8d45fbd56da1cede14df8f86a9
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Wed Mar 18 12:59:08 2015 -0700
Bug 12468: Send script output messages to stderr only in debug mode
Unity in Ubuntu 14.04 reportedly allocates a pty for use as the stdout and
stderr of all GUI programs (including programs run from Nautilus), and
reportedly does not display messages sent to that pty to the user.
This 'feature' of Ubuntu means that complain can no longer rely on any
terminal to inform the user of an error, unless the user specifically
requests debugging output using a command-line option.
Based on patches from Robert Ransom in
https://trac.torproject.org/projects/tor/ticket/12468.
---
RelativeLink/start-tor-browser | 46 ++++++----------------------------------
1 file changed, 6 insertions(+), 40 deletions(-)
diff --git a/RelativeLink/start-tor-browser b/RelativeLink/start-tor-browser
index d28c759..31ccb83 100755
--- a/RelativeLink/start-tor-browser
+++ b/RelativeLink/start-tor-browser
@@ -28,32 +28,6 @@ fi
# Do not (try to) connect to the session manager
unset SESSION_MANAGER
-# Determine whether we are running in a terminal. If we are, we
-# should send our error messages to stderr...
-ARE_WE_RUNNING_IN_A_TERMINAL=0
-if [ -t 1 -o -t 2 ]; then
- ARE_WE_RUNNING_IN_A_TERMINAL=1
-fi
-
-# ...unless we're running in the same terminal as startx or xinit. In
-# that case, the user is probably running us from a GUI file manager
-# in an X session started by typing startx at the console.
-#
-# Hopefully, the local ps command supports BSD-style options. (The ps
-# commands usually used on Linux and FreeBSD do; do any other OSes
-# support running Linux binaries?)
-ps T 2>/dev/null |grep startx 2>/dev/null |grep -v grep 2>&1 >/dev/null
-not_running_in_same_terminal_as_startx="$?"
-ps T 2>/dev/null |grep xinit 2>/dev/null |grep -v grep 2>&1 >/dev/null
-not_running_in_same_terminal_as_xinit="$?"
-
-# not_running_in_same_terminal_as_foo has the value 1 if we are *not*
-# running in the same terminal as foo.
-if [ "$not_running_in_same_terminal_as_startx" -eq 0 -o \
- "$not_running_in_same_terminal_as_xinit" -eq 0 ]; then
- ARE_WE_RUNNING_IN_A_TERMINAL=0
-fi
-
# Complain about an error, by any means necessary.
# Usage: complain message
# message must not begin with a dash.
@@ -61,8 +35,8 @@ complain () {
# Trim leading newlines, to avoid breaking formatting in some dialogs.
complain_message="`echo "$1" | sed '/./,$!d'`"
- # If we're being run in a terminal, complain there.
- if [ "$ARE_WE_RUNNING_IN_A_TERMINAL" -ne 0 ]; then
+ # If we're being run in debug mode, complain to stderr.
+ if [ "$debug" -eq 1 ]; then
echo "$complain_message" >&2
return
fi
@@ -136,22 +110,14 @@ elif [ "$#" -ge 1 -a \( "x$1" = "x--help" -o "x$1" = "x-help" \) ]; then
exit 0
fi
-# If the user hasn't requested 'debug mode', close whichever of stdout
-# and stderr are not ttys, to keep Firefox and the stuff loaded by/for
-# it (including the system's shared-library loader) from printing
-# messages to $HOME/.xsession-errors . (Users wouldn't have seen
+# If the user hasn't requested 'debug mode', close stdout and stderr,
+# to keep Firefox and the stuff loaded by/for it (including the
+# system's shared-library loader) from printing messages to
+# $HOME/.xsession-errors or other files. (Users wouldn't have seen
# messages there anyway.)
-#
-# If the user has requested 'debug mode', don't muck with the FDs.
if [ "$debug" -ne 1 ]; then
- if [ '!' -t 1 ]; then
- # stdout is not a tty
exec >/dev/null
- fi
- if [ '!' -t 2 ]; then
- # stderr is not a tty
exec 2>/dev/null
- fi
fi
# If XAUTHORITY is unset, set it to its default value of $HOME/.Xauthority
1
0