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

[translation/torbutton-torbuttonproperties] Update translations for torbutton-torbuttonproperties
by translation@torproject.org 20 Mar '15
by translation@torproject.org 20 Mar '15
20 Mar '15
commit aa07e4048dae9ca385871fb832944bd698754fe2
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Mar 20 10:45:46 2015 +0000
Update translations for torbutton-torbuttonproperties
---
it/torbutton.properties | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/it/torbutton.properties b/it/torbutton.properties
index 7c358b1..14bb304 100644
--- a/it/torbutton.properties
+++ b/it/torbutton.properties
@@ -66,7 +66,7 @@ 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
+profileProblemTitle=Problema Profilo %S
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.
1
0

20 Mar '15
commit 35970c68d6af10fdec19189aae64d76e048acc4e
Author: Georg Koppen <gk(a)torproject.org>
Date: Fri Mar 20 08:13:41 2015 +0000
Bug 9387: Version 0.8 of the Security Slider
This is the first version of the slider that contains explanatory
strings to make it more clear to the user what is changed and why.
Special thanks to Mike Perry for helping out getting this part of the
UI in good shape.
---
src/chrome/content/preferences.js | 48 ++++++++
src/chrome/content/preferences.xul | 172 ++++++++++++++++++++++++++--
src/chrome/content/torbutton.js | 185 ++++++++-----------------------
src/chrome/locale/en/torbutton.dtd | 27 +++++
src/chrome/skin/preferences.css | 7 ++
src/defaults/preferences/preferences.js | 2 +-
6 files changed, 292 insertions(+), 149 deletions(-)
diff --git a/src/chrome/content/preferences.js b/src/chrome/content/preferences.js
index eaaa059..be77793 100644
--- a/src/chrome/content/preferences.js
+++ b/src/chrome/content/preferences.js
@@ -192,13 +192,18 @@ function torbutton_prefs_init(doc) {
sec_slider.value = o_torprefs.getIntPref('security_slider');
sec_custom.checked = custom_values;
sec_custom.disabled = !custom_values;
+ torbutton_set_slider_text(doc, sec_custom.checked);
// If the custom checkbox is checked and the user is done with dragging
// uncheck the checkbox to allow setting the (newly) chosen security level.
sec_slider.dragStateChanged = function(isDragging) {
if (!isDragging && sec_custom.checked) {
sec_custom.checked = false;
+ sec_custom.disabled = true;
}
}
+ sec_slider.valueChanged = function(which, newValue, userChanged) {
+ torbutton_set_slider_text(doc, false);
+ }
torbutton_prefs_set_field_attributes(doc);
}
@@ -473,6 +478,49 @@ function torbutton_toggle_slider(doc, pos) {
if (sec_custom.checked) {
sec_custom.checked = false;
}
+ torbutton_set_slider_text(doc, false);
+}
+
+function torbutton_set_slider_text(doc, custom) {
+ let level = doc.getElementById("torbutton_sec_slider").value;
+ if (custom) {
+ level = 5;
+ }
+ switch (level) {
+ case (1):
+ doc.getElementById("desc_low").collapsed = true;
+ doc.getElementById("desc_medium_low").collapsed = true;
+ doc.getElementById("desc_medium_high").collapsed = true;
+ doc.getElementById("desc_high").collapsed = false;
+ break;
+ case (2):
+ doc.getElementById("desc_low").collapsed = true;
+ doc.getElementById("desc_medium_low").collapsed = true;
+ doc.getElementById("desc_medium_high").collapsed = false;
+ doc.getElementById("desc_high").collapsed = true;
+ break;
+ case (3):
+ doc.getElementById("desc_low").collapsed = true;
+ doc.getElementById("desc_medium_low").collapsed = false;
+ doc.getElementById("desc_medium_high").collapsed = true;
+ doc.getElementById("desc_high").collapsed = true;
+ break;
+ case (4):
+ doc.getElementById("desc_low").collapsed = false;
+ doc.getElementById("desc_medium_low").collapsed = true;
+ doc.getElementById("desc_medium_high").collapsed = true;
+ doc.getElementById("desc_high").collapsed = true;
+ break;
+ case (5):
+ doc.getElementById("desc_low").collapsed = true;
+ doc.getElementById("desc_medium_low").collapsed = true;
+ doc.getElementById("desc_medium_high").collapsed = true;
+ doc.getElementById("desc_high").collapsed = true;
+ break;
+ }
+ // It can happen that the descriptions of the slider settings consume more
+ // space than originally allocated. Adapt the dialog size accordingly.
+ sizeToContent();
}
function torbutton_prefs_check_disk() {
diff --git a/src/chrome/content/preferences.xul b/src/chrome/content/preferences.xul
index 0a90f0f..d25fba4 100644
--- a/src/chrome/content/preferences.xul
+++ b/src/chrome/content/preferences.xul
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+<?xml-stylesheet href="chrome://torbutton/skin/preferences.css" type="text/css"?>
<!DOCTYPE overlay SYSTEM "chrome://torbutton/locale/torbutton.dtd">
@@ -156,36 +157,144 @@
<groupbox>
<caption label="&torbutton.prefs.sec_caption;"/>
<hbox>
- <vbox>
- <scale id="torbutton_sec_slider" height="200" min="1" max="4"
+ <vbox height="200">
+ <scale id="torbutton_sec_slider" flex="1" min="1" max="4"
movetoclick="true" orient="vertical"/>
</vbox>
<vbox height="200">
- <hbox flex="1" align="center">
- <description id="torbutton_sec_low"
+ <hbox flex="1" align="start">
+ <description id="torbutton_sec_high"
+ tooltip="high_preview"
onclick="torbutton_toggle_slider(document, 1);">
- &torbutton.prefs.sec_low;
+ &torbutton.prefs.sec_high;
</description>
</hbox>
<hbox flex="1" align="center">
- <description id="torbutton_sec_med_low"
+ <description id="torbutton_sec_med_high"
+ tooltip="mh_preview"
onclick="torbutton_toggle_slider(document, 2);">
- &torbutton.prefs.sec_med_low;
+ &torbutton.prefs.sec_med_high;
</description>
</hbox>
<hbox flex="1" align="center">
- <description id="torbutton_sec_med_high"
+ <description id="torbutton_sec_med_low"
+ tooltip="ml_preview"
onclick="torbutton_toggle_slider(document, 3);">
- &torbutton.prefs.sec_med_high;
+ &torbutton.prefs.sec_med_low;
</description>
</hbox>
- <hbox flex="1" align="center">
- <description id="torbutton_sec_high"
+ <hbox flex="1" align="end">
+ <description id="torbutton_sec_low"
+ tooltip="low_preview"
onclick="torbutton_toggle_slider(document, 4);">
- &torbutton.prefs.sec_high;
+ &torbutton.prefs.sec_low;
</description>
</hbox>
</vbox>
+ <spacer flex="1"/>
+ <!-- A width of 400 is already too much for OS X it seems. The above
+ spacer tag would basically be useless and the layout ugly. -->
+ <vbox flex="1" width="300">
+ <vbox id="desc_high" collapsed="true">
+ <description
+ class="slider-text-size, slider-text-weight">
+ &torbutton.prefs.sec_gen_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_html5_tooltip;">
+ &torbutton.prefs.sec_html5_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_jit_desc_tooltip; &torbutton.prefs.sec_baseline_jit_desc_tooltip;">
+ &torbutton.prefs.sec_all_jit_desc; &torbutton.prefs.sec_jit_slower_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_jar_tooltip;">
+ &torbutton.prefs.sec_jar_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_mathml_desc_tooltip;">
+ &torbutton.prefs.sec_mathml_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_font_rend_svg_tooltip; &torbutton.prefs.sec_font_rend_graphite_tooltip;">
+ &torbutton.prefs.sec_font_rend_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_js_desc_tooltip;">
+ &torbutton.prefs.sec_all_js_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_svg_desc_tooltip;">
+ &torbutton.prefs.sec_svg_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_webfonts_desc_tooltip;">
+ &torbutton.prefs.sec_webfonts_desc;
+ </description>
+ </vbox>
+ <vbox id="desc_medium_high" collapsed="true">
+ <description
+ class="slider-text-size, slider-text-weight">
+ &torbutton.prefs.sec_gen_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_html5_tooltip;">
+ &torbutton.prefs.sec_html5_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_jit_desc_tooltip; &torbutton.prefs.sec_baseline_jit_desc_tooltip;">
+ &torbutton.prefs.sec_all_jit_desc; &torbutton.prefs.sec_jit_slower_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_jar_tooltip;">
+ &torbutton.prefs.sec_jar_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_mathml_desc_tooltip;">
+ &torbutton.prefs.sec_mathml_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_font_rend_svg_tooltip; &torbutton.prefs.sec_font_rend_graphite_tooltip;">
+ &torbutton.prefs.sec_font_rend_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_js_desc_tooltip;">
+ &torbutton.prefs.sec_js_https_desc;
+ </description>
+ </vbox>
+ <vbox id="desc_medium_low" collapsed="true">
+ <description
+ class="slider-text-size, slider-text-weight">
+ &torbutton.prefs.sec_gen_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_html5_tooltip;">
+ &torbutton.prefs.sec_html5_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_jit_desc_tooltip;">
+ &torbutton.prefs.sec_some_jit_desc; &torbutton.prefs.sec_jit_slower_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_jar_tooltip;">
+ &torbutton.prefs.sec_jar_desc;
+ </description>
+ <description class="slider-text-size"
+ tooltiptext="&torbutton.prefs.sec_mathml_desc_tooltip;">
+ &torbutton.prefs.sec_mathml_desc;
+ </description>
+ </vbox>
+ <vbox id="desc_low" collapsed="false">
+ <description
+ class="slider-text-size, slider-text-weight">
+ &torbutton.prefs.sec_low_desc;
+ </description>
+ <description class="slider-text-size">
+ &torbutton.prefs.sec_low_usable_desc;
+ </description>
+ </vbox>
+ </vbox>
</hbox>
<hbox>
<checkbox id="torbutton_sec_custom" flex="1"
@@ -198,4 +307,43 @@
</tabpanels>
</tabbox>
+ <tooltip id="high_preview">
+ <html:b>&torbutton.prefs.sec_gen_desc;</html:b>
+ <html:br></html:br>
+ <html:br></html:br>
+ <html:div>&torbutton.prefs.sec_html5_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_some_jit_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_jar_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_mathml_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_font_rend_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_all_js_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_svg_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_webfonts_desc;</html:div>
+ </tooltip>
+ <tooltip id="mh_preview">
+ <html:b>&torbutton.prefs.sec_gen_desc;</html:b>
+ <html:br></html:br>
+ <html:br></html:br>
+ <html:div>&torbutton.prefs.sec_html5_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_some_jit_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_jar_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_mathml_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_font_rend_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_js_https_desc;</html:div>
+ </tooltip>
+ <tooltip id="ml_preview">
+ <html:b>&torbutton.prefs.sec_gen_desc;</html:b>
+ <html:br></html:br>
+ <html:br></html:br>
+ <html:div>&torbutton.prefs.sec_html5_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_some_jit_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_jar_desc;</html:div>
+ <html:div>&torbutton.prefs.sec_mathml_desc;</html:div>
+ </tooltip>
+ <tooltip id="low_preview">
+ <html:b>&torbutton.prefs.sec_low_desc;</html:b>
+ <html:br></html:br>
+ <html:br></html:br>
+ <html:div>&torbutton.prefs.sec_low_usable_desc;</html:div>
+ </tooltip>
</dialog>
diff --git a/src/chrome/content/torbutton.js b/src/chrome/content/torbutton.js
index f7e99a0..d3afef8 100644
--- a/src/chrome/content/torbutton.js
+++ b/src/chrome/content/torbutton.js
@@ -235,15 +235,12 @@ var torbutton_unique_pref_observer =
case "noscript.forbidMedia":
case "media.webaudio.enabled":
case "network.jar.block-remote-files":
+ case "mathml.disabled":
case "javascript.options.baselinejit.content":
case "noscript.forbidFonts":
case "gfx.font_rendering.graphite.enabled":
case "noscript.globalHttpsWhitelist":
case "noscript.global":
- case "media.ogg.enabled":
- case "media.opus.enabled":
- case "media.wave.enabled":
- case "media.apple.mp3.enabled":
// |m_tb_slider_update| is only set if the user updated a
// preference under control of the security slider via the
// slider on the Torbutton dialog. This in turn means we can
@@ -2197,10 +2194,6 @@ function torbutton_update_thirdparty_prefs() {
prefService.savePrefFile(null);
}
-var torbutton_sec_l_bool_prefs = {
- "gfx.font_rendering.opentype_svg.enabled" : false,
-};
-
var torbutton_sec_ml_bool_prefs = {
"javascript.options.ion.content" : false,
"javascript.options.typeinference" : false,
@@ -2208,23 +2201,21 @@ var torbutton_sec_ml_bool_prefs = {
"noscript.forbidMedia" : true,
"media.webaudio.enabled" : false,
"network.jar.block-remote-files" : true,
- // XXX: pref for disabling MathML is missing
+ "mathml.disabled" : true
};
var torbutton_sec_mh_bool_prefs = {
"javascript.options.baselinejit.content" : false,
+ "gfx.font_rendering.graphite.enabled" : false,
+ "gfx.font_rendering.opentype_svg.enabled" : false,
"noscript.global" : false,
- "noscript.globalHttpsWhitelist" : true,
- // XXX: pref for disableing SVG is missing
+ "noscript.globalHttpsWhitelist" : true
};
var torbutton_sec_h_bool_prefs = {
"noscript.forbidFonts" : true,
"noscript.global" : false,
- "media.ogg.enabled" : false,
- "media.opus.enabled" : false,
- "media.wave.enabled" : false,
- "media.apple.mp3.enabled" : false
+ // XXX: pref for disabling SVG is missing
};
function torbutton_update_security_slider() {
@@ -2233,18 +2224,20 @@ function torbutton_update_security_slider() {
let mode = m_tb_prefs.getIntPref("extensions.torbutton.security_slider");
let capValue = m_tb_prefs.getCharPref("capability.policy.maonoscript.sites");
switch (mode) {
- case 1:
- for (p in torbutton_sec_l_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_l_bool_prefs[p]);
- }
+ case 1:
for (p in torbutton_sec_ml_bool_prefs) {
- m_tb_prefs.setBoolPref(p, !torbutton_sec_ml_bool_prefs[p])
+ m_tb_prefs.setBoolPref(p, torbutton_sec_ml_bool_prefs[p])
}
for (p in torbutton_sec_mh_bool_prefs) {
- m_tb_prefs.setBoolPref(p, !torbutton_sec_mh_bool_prefs[p])
+ m_tb_prefs.setBoolPref(p, torbutton_sec_mh_bool_prefs[p])
+ // noscript.globalHttpsWhitelist is special: We don't want it in this
+ // mode.
+ if (p === "noscript.globalHttpsWhitelist") {
+ m_tb_prefs.setBoolPref(p, !torbutton_sec_mh_bool_prefs[p])
+ }
}
for (p in torbutton_sec_h_bool_prefs) {
- m_tb_prefs.setBoolPref(p, !torbutton_sec_h_bool_prefs[p])
+ m_tb_prefs.setBoolPref(p, torbutton_sec_h_bool_prefs[p])
}
// Removing "https:" is needed due to a bug in older Noscript versions.
// We leave that in for a while as there may be users that were affected
@@ -2254,18 +2247,22 @@ function torbutton_update_security_slider() {
m_tb_prefs.setCharPref("capability.policy.maonoscript.sites",
capValue.replace(" https:", ""));
}
- if (m_tb_prefs.getCharPref("general.useragent.locale") !== "ko" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "vi" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "zh-CN") {
- m_tb_prefs.setBoolPref("gfx.font_rendering.graphite.enabled", false);
- } else {
- m_tb_prefs.setBoolPref("gfx.font_rendering.graphite.enabled", true);
- }
break;
case 2:
- for (p in torbutton_sec_l_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_l_bool_prefs[p]);
+ for (p in torbutton_sec_ml_bool_prefs) {
+ m_tb_prefs.setBoolPref(p, torbutton_sec_ml_bool_prefs[p])
+ }
+ // Order matters here as both the high mode and the medium-high mode
+ // share some preferences/values. So, let's revert the high mode
+ // preferences first and set the medium-high mode ones afterwards.
+ for (p in torbutton_sec_h_bool_prefs) {
+ m_tb_prefs.setBoolPref(p, !torbutton_sec_h_bool_prefs[p])
+ }
+ for (p in torbutton_sec_mh_bool_prefs) {
+ m_tb_prefs.setBoolPref(p, torbutton_sec_mh_bool_prefs[p])
}
+ break;
+ case 3:
for (p in torbutton_sec_ml_bool_prefs) {
m_tb_prefs.setBoolPref(p, torbutton_sec_ml_bool_prefs[p])
}
@@ -2283,49 +2280,16 @@ function torbutton_update_security_slider() {
m_tb_prefs.setCharPref("capability.policy.maonoscript.sites",
capValue.replace(" https:", ""));
}
- if (m_tb_prefs.getCharPref("general.useragent.locale") !== "ko" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "vi" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "zh-CN") {
- m_tb_prefs.setBoolPref("gfx.font_rendering.graphite.enabled", false);
- } else {
- m_tb_prefs.setBoolPref("gfx.font_rendering.graphite.enabled", true);
- }
- break;
- case 3:
- for (p in torbutton_sec_l_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_l_bool_prefs[p]);
- }
- for (p in torbutton_sec_ml_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_ml_bool_prefs[p])
- }
- // Order matters here as both the high mode and the medium-high mode
- // share some preferences/values. So, let's revert the high mode
- // preferences first and set the medium-high mode ones afterwards.
- for (p in torbutton_sec_h_bool_prefs) {
- m_tb_prefs.setBoolPref(p, !torbutton_sec_h_bool_prefs[p])
- }
- for (p in torbutton_sec_mh_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_mh_bool_prefs[p])
- }
- m_tb_prefs.setBoolPref("gfx.font_rendering.graphite.enabled", false);
break;
case 4:
- for (p in torbutton_sec_l_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_l_bool_prefs[p]);
- }
for (p in torbutton_sec_ml_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_ml_bool_prefs[p])
+ m_tb_prefs.setBoolPref(p, !torbutton_sec_ml_bool_prefs[p])
}
for (p in torbutton_sec_mh_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_mh_bool_prefs[p])
- // noscript.globalHttpsWhitelist is special: We don't want it in this
- // mode.
- if (p === "noscript.globalHttpsWhitelist") {
- m_tb_prefs.setBoolPref(p, !torbutton_sec_mh_bool_prefs[p])
- }
+ m_tb_prefs.setBoolPref(p, !torbutton_sec_mh_bool_prefs[p])
}
for (p in torbutton_sec_h_bool_prefs) {
- m_tb_prefs.setBoolPref(p, torbutton_sec_h_bool_prefs[p])
+ m_tb_prefs.setBoolPref(p, !torbutton_sec_h_bool_prefs[p])
}
// Removing "https:" is needed due to a bug in older Noscript versions.
// We leave that in for a while as there may be users that were affected
@@ -2335,7 +2299,6 @@ function torbutton_update_security_slider() {
m_tb_prefs.setCharPref("capability.policy.maonoscript.sites",
capValue.replace(" https:", ""));
}
- m_tb_prefs.setBoolPref("gfx.font_rendering.graphite.enabled", true);
break;
}
m_tb_sliderUpdate = false;
@@ -2348,35 +2311,23 @@ function torbutton_security_slider_custom_check(mode) {
let capValue = m_tb_prefs.getCharPref("capability.policy.maonoscript.sites");
switch (mode) {
case 1:
- for (p in torbutton_sec_l_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_l_bool_prefs[p]) {
- return;
- }
- }
for (p in torbutton_sec_ml_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) === torbutton_sec_ml_bool_prefs[p]) {
+ if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_ml_bool_prefs[p]) {
return;
}
}
for (p in torbutton_sec_mh_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) === torbutton_sec_mh_bool_prefs[p]) {
+ if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_mh_bool_prefs[p]) {
+ // We don't want to have the whitelist in high mode. JavaScript is
+ // disabled globally.
+ if (p === "noscript.globalHttpsWhitelist") {
+ continue;
+ }
return;
}
}
for (p in torbutton_sec_h_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) === torbutton_sec_h_bool_prefs[p]) {
- return;
- }
- }
- if (m_tb_prefs.getCharPref("general.useragent.locale") !== "ko" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "vi" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "zh-CN") {
-
- if (m_tb_prefs.getBoolPref("gfx.font_rendering.graphite.enabled")) {
- return;
- }
- } else {
- if (!m_tb_prefs.getBoolPref("gfx.font_rendering.graphite.enabled")) {
+ if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_h_bool_prefs[p]) {
return;
}
}
@@ -2385,35 +2336,23 @@ function torbutton_security_slider_custom_check(mode) {
m_tb_prefs.setBoolPref("extensions.torbutton.security_custom", false);
break;
case 2:
- for (p in torbutton_sec_l_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_l_bool_prefs[p]) {
- return;
- }
- }
for (p in torbutton_sec_ml_bool_prefs) {
if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_ml_bool_prefs[p]) {
return;
}
}
for (p in torbutton_sec_mh_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) === torbutton_sec_mh_bool_prefs[p]) {
+ if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_mh_bool_prefs[p]) {
return;
}
}
for (p in torbutton_sec_h_bool_prefs) {
if (m_tb_prefs.getBoolPref(p) === torbutton_sec_h_bool_prefs[p]) {
- return;
- }
- }
- if (m_tb_prefs.getCharPref("general.useragent.locale") !== "ko" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "vi" ||
- m_tb_prefs.getCharPref("general.useragent.locale") !== "zh-CN") {
-
- if (m_tb_prefs.getBoolPref("gfx.font_rendering.graphite.enabled")) {
- return;
- }
- } else {
- if (!m_tb_prefs.getBoolPref("gfx.font_rendering.graphite.enabled")) {
+ // We have the whitelist and JavaScript is disabled in medium-high
+ // mode as well.
+ if (p === "noscript.global") {
+ continue;
+ }
return;
}
}
@@ -2422,67 +2361,41 @@ function torbutton_security_slider_custom_check(mode) {
m_tb_prefs.setBoolPref("extensions.torbutton.security_custom", false);
break;
case 3:
- for (p in torbutton_sec_l_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_l_bool_prefs[p]) {
- return;
- }
- }
for (p in torbutton_sec_ml_bool_prefs) {
if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_ml_bool_prefs[p]) {
return;
}
}
for (p in torbutton_sec_mh_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_mh_bool_prefs[p]) {
+ if (m_tb_prefs.getBoolPref(p) === torbutton_sec_mh_bool_prefs[p]) {
return;
}
}
for (p in torbutton_sec_h_bool_prefs) {
if (m_tb_prefs.getBoolPref(p) === torbutton_sec_h_bool_prefs[p]) {
- // We have the whitelist and JavaScript is disabled in medium-high
- // mode as well.
- if (p === "noscript.global") {
- continue;
- }
return;
}
}
- if (m_tb_prefs.getBoolPref("gfx.font_rendering.graphite.enabled")) {
- return;
- }
// We are still here which means all preferences are properly reset. Leave
// custom mode.
m_tb_prefs.setBoolPref("extensions.torbutton.security_custom", false);
break;
case 4:
- for (p in torbutton_sec_l_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_l_bool_prefs[p]) {
- return;
- }
- }
for (p in torbutton_sec_ml_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_ml_bool_prefs[p]) {
+ if (m_tb_prefs.getBoolPref(p) === torbutton_sec_ml_bool_prefs[p]) {
return;
}
}
for (p in torbutton_sec_mh_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_mh_bool_prefs[p]) {
- // We don't want to have the whitelist in high mode. JavaScript is
- // disabled globally.
- if (p === "noscript.globalHttpsWhitelist") {
- continue;
- }
+ if (m_tb_prefs.getBoolPref(p) === torbutton_sec_mh_bool_prefs[p]) {
return;
}
}
for (p in torbutton_sec_h_bool_prefs) {
- if (m_tb_prefs.getBoolPref(p) !== torbutton_sec_h_bool_prefs[p]) {
+ if (m_tb_prefs.getBoolPref(p) === torbutton_sec_h_bool_prefs[p]) {
return;
}
}
- if (!m_tb_prefs.getBoolPref("gfx.font_rendering.graphite.enabled")) {
- return;
- }
// We are still here which means all preferences are properly reset. Leave
// custom mode.
m_tb_prefs.setBoolPref("extensions.torbutton.security_custom", false);
diff --git a/src/chrome/locale/en/torbutton.dtd b/src/chrome/locale/en/torbutton.dtd
index 15ae1e6..4a7bf7e 100644
--- a/src/chrome/locale/en/torbutton.dtd
+++ b/src/chrome/locale/en/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/skin/preferences.css b/src/chrome/skin/preferences.css
new file mode 100644
index 0000000..013b367
--- /dev/null
+++ b/src/chrome/skin/preferences.css
@@ -0,0 +1,7 @@
+.slider-text-weight {
+ font-weight: bold;
+}
+
+.slider-text-size {
+ font-size: 95%;
+}
diff --git a/src/defaults/preferences/preferences.js b/src/defaults/preferences/preferences.js
index fb1a702..677447b 100644
--- a/src/defaults/preferences/preferences.js
+++ b/src/defaults/preferences/preferences.js
@@ -176,7 +176,7 @@ pref("extensions.torbutton.block_disk", true);
pref("extensions.torbutton.resist_fingerprinting", true);
pref("extensions.torbutton.restrict_thirdparty", true);
// Security Slider
-pref("extensions.torbutton.security_slider", 1);
+pref("extensions.torbutton.security_slider", 4);
pref("extensions.torbutton.security_custom", false);
// Google Captcha prefs
1
0

[translation/torbutton-torbuttonproperties] Update translations for torbutton-torbuttonproperties
by translation@torproject.org 20 Mar '15
by translation@torproject.org 20 Mar '15
20 Mar '15
commit 3b081091f8d23ecda7201aa313307777a6c0785e
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Mar 20 07:45:45 2015 +0000
Update translations for torbutton-torbuttonproperties
---
sq/torbutton.properties | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/sq/torbutton.properties b/sq/torbutton.properties
index 5a86303..9be0aac 100644
--- a/sq/torbutton.properties
+++ b/sq/torbutton.properties
@@ -1,4 +1,4 @@
-torbutton.button.tooltip.disabled = Aftësoni Tor
+torbutton.button.tooltip.disabled = Aktivizoni Tor
torbutton.button.tooltip.enabled = Paaftësoni Tor
torbutton.circuit_display.internet = Internet
torbutton.circuit_display.ip_unknown = IP e panjohur
@@ -66,7 +66,7 @@ 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.
+profileProblemTitle=Problem me Profilin %S
+profileReadOnly=Ju s'mund ta ekzekutoni %S nga një skedar vetëm-për-lexim i sistemit. Ju lutemi kopjojeni %S në një vendndodhje tjetër, përpara se të përpiqeni që ta përdorni.
+profileReadOnlyMac=Ju s'mund ta ekzekutoni %S nga një skedar vetëm-për-lexim i sistemit. Ju lutemi kopjojeni %S në Desktopin tuja ose në dosjen e Aplikacioneve, përpara se të përpiqeni që ta përdorni.
+profileAccessDenied=%S nuk ka leje që t'i qaset profilit. Ju lutemi ndreqeni sistemin e lejeve të skedarit tuaj dhe përpiquni sërish.
1
0

[bridgedb/develop] Add unittest for crypto.removePKCS1Padding() when identifier is missing.
by isis@torproject.org 20 Mar '15
by isis@torproject.org 20 Mar '15
20 Mar '15
commit f6d33af50ed6031ead7be7149902e92a507d31de
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Fri Mar 20 04:53:02 2015 +0000
Add unittest for crypto.removePKCS1Padding() when identifier is missing.
---
lib/bridgedb/test/test_crypto.py | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/lib/bridgedb/test/test_crypto.py b/lib/bridgedb/test/test_crypto.py
index da93f07..c2010ca 100644
--- a/lib/bridgedb/test/test_crypto.py
+++ b/lib/bridgedb/test/test_crypto.py
@@ -283,6 +283,14 @@ class RemovePKCS1PaddingTests(unittest.TestCase):
crypto.removePKCS1Padding,
self.blob)
+ def test_crypto_removePKCS1Padding_missing_padding(self):
+ """removePKCS1Padding() with a blob with a missing PKCS#1 identifier
+ mark should raise PKCS1PaddingError.
+ """
+ self.assertRaises(crypto.PKCS1PaddingError,
+ crypto.removePKCS1Padding,
+ b'\x99' + self.blob)
+
class SSLVerifyingContextFactoryTests(unittest.TestCase,
txtagent.FakeReactorAndConnectMixin):
1
0

20 Mar '15
commit 32d71db8be75d878d36dea7c48c3db726c832018
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Fri Mar 20 05:26:24 2015 +0000
Update CHANGELOG entries for BridgeDB-0.3.0.
---
CHANGELOG | 160 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 160 insertions(+)
diff --git a/CHANGELOG b/CHANGELOG
index 27aeed0..081c79d 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -18,6 +18,18 @@ Changes in version 0.3.0 - XXX
Bridge/PluggableTransport classes all have 100% unittest and
integration test coverage.
+ * FIXES #10385 https://bugs.torproject.org/10385
+ BridgeDB now uses python-gnupg (https://pypi.python.org/gnupg)
+ instead of GPGME (libgpgme11 and pygpgme). Previously, when using
+ GPGME, BridgeDB was unable to sign emails with a subkey whose
+ master private key was not present, causing all signing to be
+ broken. Additionally, GPGME tried to access and modify the
+ BridgeDB users $HOME directory, and GPGME would also try to create
+ signatures with encryption-only subkeys, and try to
+ encrypt/decrypt with signing-only subkeys. All of these issues are
+ no more, because the writhing tangled mass of bugs known ad GPGME
+ is gone for good.
+
* FIXES #11216 https://bugs.torproject.org/11216
BridgeDB no longer parses any extrainfo descriptor files
cumulatively. Before, a Bridge which had a descriptor in
@@ -30,12 +42,21 @@ Changes in version 0.3.0 - XXX
the Mechanize-based integrations tests in
lib/bridgedb/test/test_https.py. hotfix/0.2.4-mechanize-tags
+ * FIXES #12843 https://bugs.torproject.org/12843
+ BridgeDB will no longer distribute bridges which it believes are
+ located in Iran or Syria.
+
* FIXES #12872 https://bugs.torproject.org/12872
BridgeDB now has geolocational information for Bridges, telling it
which country each Bridge's primary ORAddress is within, as well
as geolocational information for each PluggableTransport address.
Thanks to Alden S. Page for the patches.
+ * FIXES #15155 https://bugs.torproject.org/15155
+ The instructions for obtaining a copy of Tor Browser should now be
+ more clear.
+ Thanks to Jens Kubieziel, Nick Mathewson, and Peter Palfrader.
+
And includes the following general changes:
* CHANGES BridgeDB's continuous integration infrastructure to run
tests for:
@@ -50,6 +71,145 @@ And includes the following general changes:
* FIXES an issue with the $PYTHON_EGG_CACHE directory being group
writable on Travis-CI build machines.
+ * UPDATE English (en_US) translations.
+
+ * UPDATE English (en) translations.
+
+ * ADD Tamil (ta) translations.
+ Thanks to git12a.
+
+ * ADD Albanian (sq) translations.
+ Thanks to Bujar Tafili.
+
+ * ADD Slovenian (sl_SI) translations.
+ Thanks to Dušan, marko, and Nwolfy.
+
+ * ADD Slovak (sk_SK) translations.
+ Thanks to once.
+
+ * ADD Esperanto (eo) translations.
+ Thanks to identity, Rico Chan, and trio.
+
+ * ADD Bulgarian (bg) translations.
+ Thanks to aramaic.
+
+ * ADD Azerbaijani (az) translations.
+ Thanks to E.
+
+ * UPDATE Chinese (zh_TW) translations.
+ Thanks to LNDDYL.
+
+ * UPDATE Chinese (zh_CN) translations.
+ Thanks to Wu Ming Shi and YF.
+
+ * UPDATE Ukranian (uk) translations.
+ Thanks to Eugene ghostishev, LinuxChata, Oleksii Golub, and
+ Андрій Бандура.
+
+ * UPDATE Turkish (tr) translations.
+ Thanks to eromytsatiffird, Emir Sarı, Idil Yuksel, ozkansib,
+ Volkan Gezer, and zeki.
+
+ * UPDATE Swedish (sv) translations.
+ Thanks to Anders Jensen-Urstad, Emil Johansson, GabSeb, ph AA, phst,
+ and leveebreaks.
+
+ * UPDATE Slovak (sk) translations.
+ Thanks to elo, FooBar, Michal Slovák, Roman 'Kaktuxista' Benji, and
+ StefanH.
+
+ * UPDATE Russian (ru) translations.
+ Thanks to Andrey Yoker Ogurchikov, Evgrafov Denis, foo,
+ joshuaridney, Oleg, Sergey Briskin, Valid Olov, and Vitaliy Grishenko.
+
+ * UPDATE Romanian (ro) translations.
+ Thanks to Isus Satanescu, laura berindei, and clopotel.
+
+ * UPDATE Portuguese (pt_BR) translations.
+ Thanks to João Paulo S.S.
+
+ * UPDATE Portuguese (pt) translations.
+ Thanks to alfalb.as, André Monteiro, kagazz, Manuela Silva,
+ alfalb_mansil, Andrew_Melim, Pedro Albuquerque, Sérgio Marques, and
+ TiagoJMMC.
+
+ * UPDATE Polish (pl) translations.
+ Thanks to Aron, JerBen, bogdrozd, Dawid, Rikson, Krzysztof Łojowski,
+ oirpos, and seb.
+
+ * UPDATE Dutch (nl) translations.
+ Thanks to Adriaan Callaerts, Ann Boen, Cleveridge, Dick,
+ Johann Behrens, Shondoit Walker, Marco Brohet, guryman, Marco
+ Brohet, Tom Becht, Tonko Mulder, math1985, and BBLN.
+
+ * UPDATE Norwegian Bokmål (nb) translations.
+ Thanks to Allan Nordhøy, Harald, lateralus, Per Thorsheim,
+ and thor574.
+
+ * UPDATE Latvian (lv) translations.
+ Thanks to Ojārs Balcers and ThePirateDuck.
+
+ * UPDATE Khmer (km) translations.
+ Thanks to Seng Sutha, Sokhem Khoem, and Sok Sophea.
+
+ * UPDATE Japanese (ja) translations.
+ Thanks to brt, ABE Tsunehiko, タカハシ, Masaki Saito, and
+ 藤前 甲.
+
+ * UPDATE Italian (it) translations.
+ Thanks to fetidyoo, Francesca Ciceri, HostFat, ironbishop, and
+ Jacob Appelbaum.
+
+ * UPDATE Hungarian (hu) translations.
+ Thanks to Blackywantscookies, Lajos Pasztor, Cerbo, and vargaviktor.
+
+ * UPDATE Croatian (hr) translations.
+ Thanks to Ana B, Armando Vega, skiddiep, Tomislav Siroglavić,
+ and gogo.
+
+ * UPDATE French (fr_CA) translations.
+ Thanks to Lunar, mehditaileb, Onizuka, and yahoe.001.
+
+ * UPDATE French (fr) translations.
+ Thanks to apaddlingduck, fayçal fatihi, Boubou, Cryptie,
+ Frisson Reynald, hpatte, Lucas Leroy, Lunar, Onizuka, and mehditaileb.
+
+ * UPDATE Finnish (fi) translations.
+ Thanks to Jorma Karvonen, Spacha, Ossi Kallunki, Sami Kuusisto,
+ viljaminojonen, and Finland355.
+
+ * UPDATE Farsi (fa) translations.
+ Thanks to arashaalaei, signal89, ardeshir, Gilberto, johnholzer,
+ Mohammad Hossein, perspolis, and Setareh.
+
+ * UPDATE Spanish (es) translations.
+ Thanks to dark_yoshi, toypurina, BL, NinjaTuna, Noel Torres,
+ Paola Falcon, strel, and Jonis.
+
+ * UPDATE English (en_GB) translations.
+ Thanks to Andi Chandler, Richard Shaylor, and ronnietse.
+
+ * UPDATE Greek (el) translations.
+ Thanks to Adrian Pappas, andromeas, oahanx, isv31, and kotkotkot.
+
+ * UPDATE German (de) translations.
+ Thanks to trantor, Ettore Atalan, unknwon_anonymous, konstibae,
+ Locke, Tobias Bannert, qbi, Sebastian, and debakel.
+
+ * UPDATE Danish (da) translations.
+ Thanks to Christian Villum, David Nielsen, OliverMller, torebjornson,
+ Thomas Pryds, and Tore Bjørnson.
+
+ * UPDATE Czech (cs) translations.
+ Thanks to A5h8d0wf0x, Adam Slovacek, Elisa, Sanky, Jiří Vírava,
+ mxsedlacek, and Radek Bensch.
+
+ * UPDATE Catalan (ca) translations.
+ Thanks to Albert, Assumpta Anglada, Eloi García i Fargas, Humbert,
+ and laia_.
+
+ * UPDATE Arabic (ar) translations.
+ Thanks to Ash and Valetudinarian.
Changes in version 0.2.4 - 2015-02-03
1
0
commit eeb2684e51cde91b3ae90396cad14e622a46bc7d
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Fri Mar 20 04:04:26 2015 +0000
Add Albanian (sq) translations.
* THANKS to Bujar Tafili.
---
lib/bridgedb/i18n/sq/LC_MESSAGES/bridgedb.po | 380 ++++++++++++++++++++++++++
1 file changed, 380 insertions(+)
diff --git a/lib/bridgedb/i18n/sq/LC_MESSAGES/bridgedb.po b/lib/bridgedb/i18n/sq/LC_MESSAGES/bridgedb.po
new file mode 100644
index 0000000..8bb85b4
--- /dev/null
+++ b/lib/bridgedb/i18n/sq/LC_MESSAGES/bridgedb.po
@@ -0,0 +1,380 @@
+# Translations template for BridgeDB.
+# Copyright (C) 2015 'The Tor Project, Inc.'
+# This file is distributed under the same license as the BridgeDB project.
+#
+# Translators:
+# Bujar Tafili, 2015
+msgid ""
+msgstr ""
+"Project-Id-Version: The Tor Project\n"
+"Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywo…'\n"
+"POT-Creation-Date: 2015-02-03 03:24+0000\n"
+"PO-Revision-Date: 2015-02-23 22:51+0000\n"
+"Last-Translator: Bujar Tafili\n"
+"Language-Team: Albanian (http://www.transifex.com/projects/p/torproject/language/sq/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 0.9.6\n"
+"Language: sq\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. TRANSLATORS: Please DO NOT translate the following words and/or phrases in
+#. any string (regardless of capitalization and/or punctuation):
+#. "BridgeDB"
+#. "pluggable transport"
+#. "pluggable transports"
+#. "obfs2"
+#. "obfs3"
+#. "scramblesuit"
+#. "fteproxy"
+#. "Tor"
+#. "Tor Browser"
+#: lib/bridgedb/HTTPServer.py:122
+msgid "Sorry! Something went wrong with your request."
+msgstr "Kërkojmë ndjesë! Diçka shkoi keq me kërkesën tuaj."
+
+#: lib/bridgedb/strings.py:18
+msgid "[This is an automated message; please do not reply.]"
+msgstr "[Ky është një mesazh automatik; ju lutemi mos u përgjigjni.]"
+
+#: lib/bridgedb/strings.py:20
+msgid "Here are your bridges:"
+msgstr "Këtu janë urat tuaja:"
+
+#: lib/bridgedb/strings.py:22
+#, python-format
+msgid ""
+"You have exceeded the rate limit. Please slow down! The minimum time between\n"
+"emails is %s hours. All further emails during this time period will be ignored."
+msgstr "Ju e keni kapërcyer kufirin. Ju lutemi, më ngadalë! Koha minimum midis \ne-postave është %s orë. Të gjitha e-postat e tjera gjatë kësaj periudhe kohe do të injorohen."
+
+#: lib/bridgedb/strings.py:25
+msgid ""
+"COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
+msgstr "COMMANDs: (kombinojini COMMANDs për të specifikuar zgjedhje të shumëfishta njëkohësisht)"
+
+#. TRANSLATORS: Please DO NOT translate the word "BridgeDB".
+#: lib/bridgedb/strings.py:28
+msgid "Welcome to BridgeDB!"
+msgstr "Mirë se erdhët tek BridgeDB!"
+
+#. TRANSLATORS: Please DO NOT translate the words "transport" or "TYPE".
+#: lib/bridgedb/strings.py:30
+msgid "Currently supported transport TYPEs:"
+msgstr "Transport TYPEs të mbështetura këtë çast: "
+
+#: lib/bridgedb/strings.py:31
+#, python-format
+msgid "Hey, %s!"
+msgstr "Hej, %s!"
+
+#: lib/bridgedb/strings.py:32
+msgid "Hello, friend!"
+msgstr "Përshëndetje mik!"
+
+#: lib/bridgedb/strings.py:33 lib/bridgedb/templates/base.html:100
+msgid "Public Keys"
+msgstr "Kyça Publikë"
+
+#. TRANSLATORS: This string will end up saying something like:
+#. "This email was generated with rainbows, unicorns, and sparkles
+#. for alice(a)example.com on Friday, 09 May, 2014 at 18:59:39."
+#: lib/bridgedb/strings.py:37
+#, python-format
+msgid ""
+"This email was generated with rainbows, unicorns, and sparkles\n"
+"for %s on %s at %s."
+msgstr "Kjo e-postë është gjeneruar me ylberë, njëbrirësha dhe shkëndija\npër %s, më %s, në orën %s."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#. TRANSLATORS: Please DO NOT translate "Tor Network".
+#: lib/bridgedb/strings.py:47
+#, python-format
+msgid ""
+"BridgeDB can provide bridges with several %stypes of Pluggable Transports%s,\n"
+"which can help obfuscate your connections to the Tor Network, making it more\n"
+"difficult for anyone watching your internet traffic to determine that you are\n"
+"using Tor.\n"
+"\n"
+msgstr "BridgeDB mund të ofrojë ura me shumë %slloje të Pluggable Transports%s,\nqë mund të ndihmojë fshehjen e lidhjeve tuaja për Tor Network, duke e bërë atë më \ntë vështirë për këdo që vëzhgon trafikun tuaj të internetit, për të përcaktuar nëse ju jeni\nduke përdorur Tor.\n\n"
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#: lib/bridgedb/strings.py:54
+msgid ""
+"Some bridges with IPv6 addresses are also available, though some Pluggable\n"
+"Transports aren't IPv6 compatible.\n"
+"\n"
+msgstr "Disa ura me adresa IPv6 janë po ashtu të mundshme, ndonëse disa Pluggable\nTransports s'janë të përputhshëm me IPv6.\n\n"
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: The phrase "plain-ol'-vanilla" means "plain, boring,
+#. regular, or unexciting". Like vanilla ice cream. It refers to bridges
+#. which do not have Pluggable Transports, and only speak the regular,
+#. boring Tor protocol. Translate it as you see fit. Have fun with it.
+#: lib/bridgedb/strings.py:63
+#, python-format
+msgid ""
+"Additionally, BridgeDB has plenty of plain-ol'-vanilla bridges %s without any\n"
+"Pluggable Transports %s which maybe doesn't sound as cool, but they can still\n"
+"help to circumvent internet censorship in many cases.\n"
+"\n"
+msgstr "Përveç kësaj, BridgeDB ka shumë ura %s të bezdisshme, pa ndonjë\nPluggable Transports %s, çka ndoshta nuk do të tingëllojë mirë, por ata ende\nmund të ndihmojnë që ta anashkaloni censurën e internetit në shumë raste.\n\n"
+
+#: lib/bridgedb/strings.py:76
+msgid "What are bridges?"
+msgstr "Ç'janë urat?"
+
+#: lib/bridgedb/strings.py:77
+#, python-format
+msgid "%s Bridges %s are Tor relays that help you circumvent censorship."
+msgstr "%s Urat %s janë rele Tor, që ju ndihmojnë të anashkaloni censurën."
+
+#: lib/bridgedb/strings.py:82
+msgid "I need an alternative way of getting bridges!"
+msgstr "Më nevojitet një mënyrë alternative për përftimin e urave!"
+
+#: lib/bridgedb/strings.py:83
+#, python-format
+msgid ""
+"Another way to get bridges is to send an email to %s. Please note that you must\n"
+"send the email using an address from one of the following email providers:\n"
+"%s, %s or %s."
+msgstr "NJë mënyrë tjetër për të përftuar ura është të dërgoni një e-postë tek %s. ju lutemi vini re se ju duhet\nta dërgoni e-postën, duke përdorur një adresë nga njëri prej ofruesve të e-postës në vijim:\n%s, %s ose %s."
+
+#: lib/bridgedb/strings.py:90
+msgid "My bridges don't work! I need help!"
+msgstr "Urat e mia nuk punojnë! Më duhet ndihmë!"
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:92
+#, python-format
+msgid "If your Tor doesn't work, you should email %s."
+msgstr "Nëse Tor i juaj nuk punon, ju duhet t'i dërgoni e-postë %s."
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:96
+msgid ""
+"Try including as much info about your case as you can, including the list of\n"
+"bridges and Pluggable Transports you tried to use, your Tor Browser version,\n"
+"and any messages which Tor gave out, etc."
+msgstr "Përpiquni të përfshini sa më shumë informacion që të mundeni rreth rastit tuaj, duke vendosur edhe listën e\nurave dhe Pluggable Transports që provuat të përdorni, versionin tuaj të Tor Browser,\nsi dhe çdo mesazh që ka dhënë Tor, etj."
+
+#: lib/bridgedb/strings.py:103
+msgid "Here are your bridge lines:"
+msgstr "Këtu janë linjat e urave tuaja:"
+
+#: lib/bridgedb/strings.py:104
+msgid "Get Bridges!"
+msgstr "Merrni Ura!"
+
+#: lib/bridgedb/strings.py:108
+msgid "Please select options for bridge type:"
+msgstr "Ju lutemi përzgjidhni mundësitë për llojin e urës:"
+
+#: lib/bridgedb/strings.py:109
+msgid "Do you need IPv6 addresses?"
+msgstr "A ju nevojiten adresat IPv6?"
+
+#: lib/bridgedb/strings.py:110
+#, python-format
+msgid "Do you need a %s?"
+msgstr "A ju nevojitet një %s?"
+
+#: lib/bridgedb/strings.py:114
+msgid "Your browser is not displaying images properly."
+msgstr "Shfletuesi juaj nuk po i shfaq si duhet imazhet."
+
+#: lib/bridgedb/strings.py:115
+msgid "Enter the characters from the image above..."
+msgstr "Futini karakteret nga imazhi më sipër..."
+
+#: lib/bridgedb/strings.py:119
+msgid "How to start using your bridges"
+msgstr "Si të nisni t'i përdorni urat tuaja"
+
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#: lib/bridgedb/strings.py:121
+#, python-format
+msgid ""
+"To enter bridges into Tor Browser, follow the instructions on the %s Tor\n"
+"Browser download page %s to start Tor Browser."
+msgstr "Për t'i futur urat në Tor Browser, ndiqini instruksionet në %s faqen e shkarkimit të Tor\nBrowser %s, që ta nisni Tor Browser."
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:125
+msgid ""
+"When the 'Tor Network Settings' dialogue pops up, click 'Configure' and follow\n"
+"the wizard until it asks:"
+msgstr "Kur dialogu i \"Konfigurimit të Rrjetit Tor\" të kërcejë, klikoni \"Konfiguroni\" dhe ndiqni\nasistentin derisa ta kërkojë ai:"
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:129
+msgid ""
+"Does your Internet Service Provider (ISP) block or otherwise censor connections\n"
+"to the Tor network?"
+msgstr "A i pengon apo i censuron Ofruesi juaj i Shërbimt Internet (ISP) lidhjet\ntek rrjeti Tor?"
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:133
+msgid ""
+"Select 'Yes' and then click 'Next'. To configure your new bridges, copy and\n"
+"paste the bridge lines into the text input box. Finally, click 'Connect', and\n"
+"you should be good to go! If you experience trouble, try clicking the 'Help'\n"
+"button in the 'Tor Network Settings' wizard for further assistance."
+msgstr "Përzgjidhni \"Po\" dhe më pas klikoni \"Tjetri\". Që të konfiguroni urat tuaja të reja, kopjojini dhe\nngjitini linjat e urave në kutinë e futjes së tekstit. Më në fund, klikoni \"Lidhuni\", dhe\ndo të jeni gati për t'ia nisur! Nëse do të përjetoni probleme, përpiquni të klikoni butonin \"Ndihmë\" \ntek asistenti i \"Konfigurimit të Rrjetit Tor\", për më shumë mbështetje."
+
+#: lib/bridgedb/strings.py:141
+msgid "Displays this message."
+msgstr "Shfaq këtë mesazh."
+
+#. TRANSLATORS: Please try to make it clear that "vanilla" here refers to the
+#. same non-Pluggable Transport bridges described above as being
+#. "plain-ol'-vanilla" bridges.
+#: lib/bridgedb/strings.py:145
+msgid "Request vanilla bridges."
+msgstr "Kërkoni urat vanilje ose non-Pluggable Transport."
+
+#: lib/bridgedb/strings.py:146
+msgid "Request IPv6 bridges."
+msgstr "Kërkoni urat IPv6."
+
+#. TRANSLATORS: Please DO NOT translate the word the word "TYPE".
+#: lib/bridgedb/strings.py:148
+msgid "Request a Pluggable Transport by TYPE."
+msgstr "Kërkoni një Pluggable Transport nëpërmjet TYPE."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "GnuPG".
+#: lib/bridgedb/strings.py:151
+msgid "Get a copy of BridgeDB's public GnuPG key."
+msgstr "Merrni një kopje të kyçit publik GnuPG të BridgeDB."
+
+#: lib/bridgedb/templates/base.html:89
+msgid "Report a Bug"
+msgstr "Raportoni një gabim"
+
+#: lib/bridgedb/templates/base.html:92
+msgid "Source Code"
+msgstr "Kodi Burimor"
+
+#: lib/bridgedb/templates/base.html:95
+msgid "Changelog"
+msgstr "Regjistri i ndryshimeve"
+
+#: lib/bridgedb/templates/base.html:98
+msgid "Contact"
+msgstr "Kontakt"
+
+#: lib/bridgedb/templates/bridges.html:81
+msgid "Select All"
+msgstr "Përzgjidhini të Gjitha"
+
+#: lib/bridgedb/templates/bridges.html:87
+msgid "Show QRCode"
+msgstr "Tregoni Kodin QR"
+
+#: lib/bridgedb/templates/bridges.html:100
+msgid "QRCode for your bridge lines"
+msgstr "Kodi QR përlinjat e urave tuaja"
+
+#. TRANSLATORS: Please translate this into some silly way to say
+#. "There was a problem!" in your language. For example,
+#. for Italian, you might translate this into "Mama mia!",
+#. or for French: "Sacrebleu!". :)
+#: lib/bridgedb/templates/bridges.html:115
+#: lib/bridgedb/templates/bridges.html:175
+msgid "Uh oh, spaghettios!"
+msgstr "Çfarë tersi!"
+
+#: lib/bridgedb/templates/bridges.html:116
+msgid "It seems there was an error getting your QRCode."
+msgstr "Duket se u has një gabim, duke marrë Kodin tuaj QR."
+
+#: lib/bridgedb/templates/bridges.html:121
+msgid ""
+"This QRCode contains your bridge lines. Scan it with a QRCode reader to copy"
+" your bridge lines onto mobile and other devices."
+msgstr "Ky Kod QR përmban linja urash. Skanojeni me një lexues Kodi QR, që t'i kopjoni linjat e urave tuaja në celular, apo në pajisje të tjera."
+
+#: lib/bridgedb/templates/bridges.html:181
+msgid "There currently aren't any bridges available..."
+msgstr "Këtë çast s'ka asnjë urë të disponueshme..."
+
+#: lib/bridgedb/templates/bridges.html:182
+#, python-format
+msgid ""
+" Perhaps you should try %s going back %s and choosing a different bridge "
+"type!"
+msgstr " Ndoshta duhet të provoni të %s shkoni prapa %s dhe të zgjidhni një lloj të ndryshëm ure!"
+
+#: lib/bridgedb/templates/index.html:11
+#, python-format
+msgid "Step %s1%s"
+msgstr "Hapi %s1%s"
+
+#: lib/bridgedb/templates/index.html:13
+#, python-format
+msgid "Download %s Tor Browser %s"
+msgstr "Shkarkoni %s Tor Browser %s"
+
+#: lib/bridgedb/templates/index.html:25
+#, python-format
+msgid "Step %s2%s"
+msgstr "Hapi %s2%s"
+
+#: lib/bridgedb/templates/index.html:27
+#, python-format
+msgid "Get %s bridges %s"
+msgstr "Merrni %s ura %s"
+
+#: lib/bridgedb/templates/index.html:36
+#, python-format
+msgid "Step %s3%s"
+msgstr "Hapi %s3%s"
+
+#: lib/bridgedb/templates/index.html:38
+#, python-format
+msgid "Now %s add the bridges to Tor Browser %s"
+msgstr "Tani %s shtojini urat tek Tor Browser %s"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. (These are used to insert HTML5 underlining tags, to mark accesskeys
+#. for disabled users.)
+#: lib/bridgedb/templates/options.html:38
+#, python-format
+msgid "%sJ%sust give me bridges!"
+msgstr "%sM%së jepni urat!"
+
+#: lib/bridgedb/templates/options.html:52
+msgid "Advanced Options"
+msgstr "Opsionet e Përparuara"
+
+#: lib/bridgedb/templates/options.html:88
+msgid "No"
+msgstr "Jo"
+
+#: lib/bridgedb/templates/options.html:89
+msgid "none"
+msgstr "asnjë"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Translate "Yes!" as in "Yes! I do need IPv6 addresses."
+#: lib/bridgedb/templates/options.html:127
+#, python-format
+msgid "%sY%ses!"
+msgstr "%sP%so!"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Please do NOT translate the word "bridge"!
+#: lib/bridgedb/templates/options.html:151
+#, python-format
+msgid "%sG%set Bridges"
+msgstr "%sM%serrni Urat"
1
0
commit b891ce8baff4d13f476cc221bd81a57df88f0d35
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Fri Mar 20 04:06:38 2015 +0000
Add Tamil (ta) translations.
* THANKS to git12a.
---
lib/bridgedb/i18n/ta/LC_MESSAGES/bridgedb.po | 357 ++++++++++++++++++++++++++
1 file changed, 357 insertions(+)
diff --git a/lib/bridgedb/i18n/ta/LC_MESSAGES/bridgedb.po b/lib/bridgedb/i18n/ta/LC_MESSAGES/bridgedb.po
new file mode 100644
index 0000000..94444e6
--- /dev/null
+++ b/lib/bridgedb/i18n/ta/LC_MESSAGES/bridgedb.po
@@ -0,0 +1,357 @@
+# Translations template for BridgeDB.
+# Copyright (C) 2014 'The Tor Project, Inc.'
+# This file is distributed under the same license as the BridgeDB project.
+#
+# Translators:
+# git12a <git12(a)openmailbox.org>, 2015
+msgid ""
+msgstr ""
+"Project-Id-Version: The Tor Project\n"
+"Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywo…'\n"
+"POT-Creation-Date: 2014-07-26 02:11+0000\n"
+"PO-Revision-Date: 2015-02-13 10:18+0000\n"
+"Last-Translator: git12a <git12(a)openmailbox.org>\n"
+"Language-Team: Tamil (http://www.transifex.com/projects/p/torproject/language/ta/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 0.9.6\n"
+"Language: ta\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. TRANSLATORS: Please DO NOT translate the following words and/or phrases in
+#. any string (regardless of capitalization and/or punctuation):
+#. "BridgeDB"
+#. "pluggable transport"
+#. "pluggable transports"
+#. "obfs2"
+#. "obfs3"
+#. "scramblesuit"
+#. "fteproxy"
+#. "Tor"
+#. "Tor Browser"
+#: lib/bridgedb/HTTPServer.py:121
+msgid "Sorry! Something went wrong with your request."
+msgstr "மன்னிக்கவும்! உங்கள் வேண்டுகோளிற்கு ஏதோஒரு தவறு நேர்ந்துள்ளது."
+
+#: lib/bridgedb/strings.py:18
+msgid "[This is an automated message; please do not reply.]"
+msgstr "[ இது ஒரு தானியங்கி செய்தி; தயவு செய்து பதில் அனுப்ப வேண்டாம்.]"
+
+#: lib/bridgedb/strings.py:20
+msgid "Here are your bridges:"
+msgstr "இதோ உங்கள் bridges:"
+
+#: lib/bridgedb/strings.py:22
+#, python-format
+msgid ""
+"You have exceeded the rate limit. Please slow down! The minimum time between\n"
+"emails is %s hours. All further emails during this time period will be ignored."
+msgstr "நீங்கள் வீத வரம்பு மீறி விட்டீர்கள். தயவு செய்து மெதுவடையவும்! மின்னஞ்சல்களின் இடையே குறைந்தபட்ச நேரம் %s மணிகள். இந்த நேரத்தினுள் அனைத்து மின்னஞ்சல்களும் நிராகரிக்கப்படும்."
+
+#: lib/bridgedb/strings.py:25
+msgid ""
+"COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
+msgstr "கட்டளைகள்: (பல விருப்பங்களை குறிப்பிட கட்டளைகளை ஒரேசமயத்தில் ஒன்றியினைகவும்)"
+
+#. TRANSLATORS: Please DO NOT translate the word "BridgeDB".
+#: lib/bridgedb/strings.py:28
+msgid "Welcome to BridgeDB!"
+msgstr "BridgeDB-யினுள் நல்வரவு"
+
+#. TRANSLATORS: Please DO NOT translate the words "transport" or "TYPE".
+#: lib/bridgedb/strings.py:30
+msgid "Currently supported transport TYPEs:"
+msgstr "தற்போது ஆதரவு உள்ள Transport TYPE-கள் "
+
+#: lib/bridgedb/strings.py:31
+#, python-format
+msgid "Hey, %s!"
+msgstr "ஹே, %s!"
+
+#: lib/bridgedb/strings.py:32
+msgid "Hello, friend!"
+msgstr "ஹலோ, தோழா!"
+
+#: lib/bridgedb/strings.py:33 lib/bridgedb/templates/base.html:101
+msgid "Public Keys"
+msgstr "பொது சாவிகள்"
+
+#. TRANSLATORS: This string will end up saying something like:
+#. "This email was generated with rainbows, unicorns, and sparkles
+#. for alice(a)example.com on Friday, 09 May, 2014 at 18:59:39."
+#: lib/bridgedb/strings.py:37
+#, python-format
+msgid ""
+"This email was generated with rainbows, unicorns, and sparkles\n"
+"for %s on %s at %s."
+msgstr "இந்த மின்னஞ்சல் வானவில், யூனிகார்ன்கள் மற்றும் சிறுதீப்பொறிகள் கொண்டு \n%s -காக %s அன்று %s நேரத்தில் உருவாக்கப்பட்டது."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#. TRANSLATORS: Please DO NOT translate "Tor Network".
+#: lib/bridgedb/strings.py:47
+#, python-format
+msgid ""
+"BridgeDB can provide bridges with several %stypes of Pluggable Transports%s,\n"
+"which can help obfuscate your connections to the Tor Network, making it more\n"
+"difficult for anyone watching your internet traffic to determine that you are\n"
+"using Tor.\n"
+"\n"
+msgstr "BridgeDB-யால் %sபலவகையான Pluggable Transports%s bridge-களை தரமுடியும்,\nஇவை உங்கள் Tor Network இணைப்புகளை விளங்காதவண்ணம் ஆக்கவுதவி, உங்களின் \nஇணைய போக்குவரத்தை கண்கானிப்பவருக்கு நீங்கள் Tor பயன்படுத்துகிறீர்கள் எனக்கன்டறிய மேலும்\nகடினம் ஆக்கும்.\n\n"
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#: lib/bridgedb/strings.py:54
+msgid ""
+"Some bridges with IPv6 addresses are also available, though some Pluggable\n"
+"Transports aren't IPv6 compatible.\n"
+"\n"
+msgstr "சில IPv6 முகவரிக்கொண்ட bridge-களும் உள்ளன, எனினும் சில Pluggable\nTransports-கள் IPv6 உடன் பொருந்தக்கூடிவது இல்லை.\n\n"
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: The phrase "plain-ol'-vanilla" means "plain, boring,
+#. regular, or unexciting". Like vanilla ice cream. It refers to bridges
+#. which do not have Pluggable Transports, and only speak the regular,
+#. boring Tor protocol. Translate it as you see fit. Have fun with it.
+#: lib/bridgedb/strings.py:63
+#, python-format
+msgid ""
+"Additionally, BridgeDB has plenty of plain-ol'-vanilla bridges %s without any\n"
+"Pluggable Transports %s which maybe doesn't sound as cool, but they can still\n"
+"help to circumvent internet censorship in many cases.\n"
+"\n"
+msgstr "கூடுதலாக, BridgeDB-யினுள் ஏராளமான பழையமுறை bridge-கள் \n%s Pluggable Transports வசதியில்லாமல் உள்ளது %s உணர்ச்சி ஊட்டுகிறவாறு இல்லாவிட்டாலும், \nஇவையால் பல சந்தர்ப்பங்களில் இனைய தணிக்கையை கடக்க உதவும்.\n\n"
+
+#: lib/bridgedb/strings.py:76
+msgid "What are bridges?"
+msgstr "Bridges என்றால் என்ன?"
+
+#: lib/bridgedb/strings.py:77
+#, python-format
+msgid "%s Bridges %s are Tor relays that help you circumvent censorship."
+msgstr "%s Bridge-கள் %s எனும் Tor Relay-கள் தணிக்கையை கடக்க உதவும்"
+
+#: lib/bridgedb/strings.py:82
+msgid "I need an alternative way of getting bridges!"
+msgstr "எனக்கு Bridge-களை பெறுவதற்கு ஓர் மாற்று வழி வேண்டும்"
+
+#: lib/bridgedb/strings.py:83
+#, python-format
+msgid ""
+"Another way to get bridges is to send an email to %s. Please note that you must\n"
+"send the email using an address from one of the following email providers:\n"
+"%s, %s or %s."
+msgstr "Bridge-களை பெறுவதற்கு ஓர் மாற்றுவழி %s முகவரிக்கு ஒரு மின்னஞ்சல் அனுப்பலாம்.\nதயவு செய்யது கவனிக்கவும், நீங்கள் கட்டாயமாக கீழ்கண்ட மின்னஞ்சல் சேவைகளின் முகவரியிலிருந்து மட்டுமே மின்னஞ்சல் அனுப்பலாம் :\n%s, %s or %s."
+
+#: lib/bridgedb/strings.py:90
+msgid "My bridges don't work! I need help!"
+msgstr "என் Bridge-கள் வேலை செய்யவில்லை! எனக்கு உதவி தேவை!"
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:92
+#, python-format
+msgid "If your Tor doesn't work, you should email %s."
+msgstr "உங்கள் Tor வேலை செய்யவில்லை எனில், நீங்கள் %s தொடர்புகொள்க "
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:96
+msgid ""
+"Try including as much info about your case as you can, including the list of\n"
+"bridges and Pluggable Transports you tried to use, your Tor Browser version,\n"
+"and any messages which Tor gave out, etc."
+msgstr "உங்கள் வழக்கு குறித்து அதிகபட்ச தகவல்களை சேருங்கள், இதில் நீங்கள் பயன்படுத்த முயற்சித்த bridges\nமற்றும் Pluggable Transports, தங்களின் Tor Browser பதிப்பு எண் ஆகியவை அடங்கும், மற்றும் Tor\nகூரியதகவல்கள் போன்றவற்றையும் சேர்க்கவும்."
+
+#: lib/bridgedb/strings.py:103
+msgid "Here are your bridge lines:"
+msgstr "இதோ உங்கள் bridge வரிசைகள்: "
+
+#: lib/bridgedb/strings.py:104
+msgid "Get Bridges!"
+msgstr "Bridge-களை பெறுக!"
+
+#: lib/bridgedb/strings.py:108
+msgid "Please select options for bridge type:"
+msgstr "Bridge வகை விருப்பங்களை தேர்ந்தெடுக்கவும்:"
+
+#: lib/bridgedb/strings.py:109
+msgid "Do you need IPv6 addresses?"
+msgstr "உங்களுக்கு IPv6 முகவரிகள் வேண்டுமா?"
+
+#: lib/bridgedb/strings.py:110
+#, python-format
+msgid "Do you need a %s?"
+msgstr "உங்களுக்கு ஒரு %s தேவையா?"
+
+#: lib/bridgedb/strings.py:114
+msgid "Your browser is not displaying images properly."
+msgstr " தங்களின் browser படங்களை சரியாக காட்டவில்லை."
+
+#: lib/bridgedb/strings.py:115
+msgid "Enter the characters from the image above..."
+msgstr "மேலே உள்ள படத்தில் இருக்கும் எழுத்துக்கள் உள்ளிடவும்..."
+
+#: lib/bridgedb/strings.py:119
+msgid "How to start using your bridges"
+msgstr "தங்களின் bridge-களை பயன்படுத்த தொடங்குவது எப்படி"
+
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#: lib/bridgedb/strings.py:121
+#, python-format
+msgid ""
+"To enter bridges into Tor Browser, follow the instructions on the %s Tor\n"
+"Browser download page %s to start Tor Browser."
+msgstr "Bridge-களை Tor Browser-னுள் உள்ளிட, %s Tor Browser பதிவிறக்க பக்கத்தில் %s உள்ள வழிமுறைகளை பின்பற்றி Tor Browser-ஐ தொடக்கம் செய்யவும். "
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:125
+msgid ""
+"When the 'Tor Network Settings' dialogue pops up, click 'Configure' and follow\n"
+"the wizard until it asks:"
+msgstr "'Tor நெட்வொர்க் அமைப்புகள்' உரையாடல் மேல்தோன்றும் பொழுது, 'கட்டமைக்க' கிளிக்செய்து \nவழிகாட்டியை அது கேட்கும்வரை பின்பற்றவும்:"
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:129
+msgid ""
+"Does your Internet Service Provider (ISP) block or otherwise censor connections\n"
+"to the Tor network?"
+msgstr "உங்களின் இணைய சேவை வழங்கும் (ISP) நிறுவனம் Tor நெட்வொர்கை தடுக்கிறதா அல்லது \nவேறுவழியில் தணிக்கை செய்கிறதா? "
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:133
+msgid ""
+"Select 'Yes' and then click 'Next'. To configure your new bridges, copy and\n"
+"paste the bridge lines into the text input box. Finally, click 'Connect', and\n"
+"you should be good to go! If you experience trouble, try clicking the 'Help'\n"
+"button in the 'Tor Network Settings' wizard for further assistance."
+msgstr "'ஆம்' தேர்ந்தெடுத்து பின்னர் 'அடுத்து' கிளிக் செய்யவும். தங்களின் புதிய bridge-களை கட்டமைக்க, \nவரிசைகளை வாக்கியம் உள்ளீtடு பெட்டியில் நகல்எடுத்து பேஸ்ட் செய்யவும். இறுதியாக, 'இணைக்க' கிளிக் \nசெய்தவுடன், நீங்கள் செல்ல தயார்! நீங்கள் பிரச்சினையை சந்தித்தால், 'Tor நெட்வொர்க் அமைப்புகள்' \nவழிகாட்டியில் உள்ள 'உதவி' பொத்தானை கிளிக் செய்து மேலும் உதவி பெறவும்."
+
+#: lib/bridgedb/strings.py:141
+msgid "Displays this message."
+msgstr "இந்த செய்தியை காட்டவும் "
+
+#. TRANSLATORS: Please try to make it clear that "vanilla" here refers to the
+#. same non-Pluggable Transport bridges described above as being
+#. "plain-ol'-vanilla" bridges.
+#: lib/bridgedb/strings.py:145
+msgid "Request vanilla bridges."
+msgstr "பழையமுறையான bridge-களை விண்ணப்பிக்கவும்."
+
+#: lib/bridgedb/strings.py:146
+msgid "Request IPv6 bridges."
+msgstr "IPv6 bridge-களை விண்ணப்பிக்கவும்."
+
+#. TRANSLATORS: Please DO NOT translate the word the word "TYPE".
+#: lib/bridgedb/strings.py:148
+msgid "Request a Pluggable Transport by TYPE."
+msgstr "Pluggable Transport bridge-களை TYPE வகையில் விண்ணப்பிக்கவும்."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "GnuPG".
+#: lib/bridgedb/strings.py:151
+msgid "Get a copy of BridgeDB's public GnuPG key."
+msgstr " BridgeDB-யுடைய பொது GnuPG சாவியின் ஒரு நகலை பெறவும்."
+
+#: lib/bridgedb/templates/base.html:92
+msgid "Report a Bug"
+msgstr "ஒரு பிழையை அறிக்கைசெய்க"
+
+#: lib/bridgedb/templates/base.html:94
+msgid "Source Code"
+msgstr "மூல தொகுப்பு"
+
+#: lib/bridgedb/templates/base.html:97
+msgid "Changelog"
+msgstr "மாற்றம்குறிக்கும் கோப்பு"
+
+#: lib/bridgedb/templates/base.html:99
+msgid "Contact"
+msgstr "தொடர்பு கொள்"
+
+#. TRANSLATORS: Please translate this into some silly way to say
+#. "There was a problem!" in your language. For example,
+#. for Italian, you might translate this into "Mama mia!",
+#. or for French: "Sacrebleu!". :)
+#: lib/bridgedb/templates/bridges.html:66
+msgid "Uh oh, spaghettios!"
+msgstr " ஹோ, பிரச்சனை!"
+
+#: lib/bridgedb/templates/bridges.html:72
+msgid "There currently aren't any bridges available..."
+msgstr "தற்சமயம் Bridge-கள் யேதும் இல்லை..."
+
+#: lib/bridgedb/templates/bridges.html:73
+#, python-format
+msgid ""
+" Perhaps you should try %s going back %s and choosing a different bridge "
+"type!"
+msgstr "ஒருவேளை நீங்கள் %s முயற்சிக்க பின்னே சென்று %s வேறொரு வகை தேர்வு செய்யலாம்!"
+
+#: lib/bridgedb/templates/index.html:11
+#, python-format
+msgid "Step %s1%s"
+msgstr "அடி %s1%s"
+
+#: lib/bridgedb/templates/index.html:13
+#, python-format
+msgid "Download %s Tor Browser %s"
+msgstr "பதிவிறக்கவும் %s Tor Browser %s"
+
+#: lib/bridgedb/templates/index.html:25
+#, python-format
+msgid "Step %s2%s"
+msgstr "அடி %s2%s"
+
+#: lib/bridgedb/templates/index.html:27
+#, python-format
+msgid "Get %s bridges %s"
+msgstr "%s Bridge-களை %s பெறுக"
+
+#: lib/bridgedb/templates/index.html:36
+#, python-format
+msgid "Step %s3%s"
+msgstr "அடி %s3%s"
+
+#: lib/bridgedb/templates/index.html:38
+#, python-format
+msgid "Now %s add the bridges to Tor Browser %s"
+msgstr "இப்பொழுது %s bridge-களை Tor Browser-உள் %s சேர்க்கவும்"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. (These are used to insert HTML5 underlining tags, to mark accesskeys
+#. for disabled users.)
+#: lib/bridgedb/templates/options.html:38
+#, python-format
+msgid "%sJ%sust give me bridges!"
+msgstr "%sநே%sரயடியாக bridge-களை கொடுக்கவும்!"
+
+#: lib/bridgedb/templates/options.html:52
+msgid "Advanced Options"
+msgstr "மேம்பட்ட விருப்பங்கள்"
+
+#: lib/bridgedb/templates/options.html:88
+msgid "No"
+msgstr "இல்லை"
+
+#: lib/bridgedb/templates/options.html:89
+msgid "none"
+msgstr "எதுவுமில்லை"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Translate "Yes!" as in "Yes! I do need IPv6 addresses."
+#: lib/bridgedb/templates/options.html:130
+#, python-format
+msgid "%sY%ses!"
+msgstr "%sஆ%sம்!"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Please do NOT translate the word "bridge"!
+#: lib/bridgedb/templates/options.html:154
+#, python-format
+msgid "%sG%set Bridges"
+msgstr "%sபெ%sருக Bridge-களை"
1
0
commit 52704f84e468800975879b81eaa956effad22534
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Fri Mar 20 04:19:17 2015 +0000
Update English (en) translations.
By hand. Because Transifex and all the rest of the translation software
sucks.
---
lib/bridgedb/i18n/en/LC_MESSAGES/bridgedb.po | 445 ++++++++++++++++++++++----
1 file changed, 385 insertions(+), 60 deletions(-)
diff --git a/lib/bridgedb/i18n/en/LC_MESSAGES/bridgedb.po b/lib/bridgedb/i18n/en/LC_MESSAGES/bridgedb.po
index 6f7fd31..9248ec3 100644
--- a/lib/bridgedb/i18n/en/LC_MESSAGES/bridgedb.po
+++ b/lib/bridgedb/i18n/en/LC_MESSAGES/bridgedb.po
@@ -1,108 +1,433 @@
# English translations for BridgeDB.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2015 'The Tor Project, Inc.'
# This file is distributed under the same license as the BridgeDB project.
+# Isis Lovecruft <isis(a)torproject.org>, 2015.
+#
+#, fuzzy
#
# Translators:
# runasand <runa.sandvik(a)gmail.com>, 2011
+# Isis Lovecruft <isis(a)torproject.org>, 2012-2015
msgid ""
msgstr ""
-"Project-Id-Version: The Tor Project\n"
-"Report-Msgid-Bugs-To: https://trac.torproject.org/projects/tor\n"
-"POT-Creation-Date: 2013-03-27 21:41+0000\n"
-"PO-Revision-Date: 2013-04-29 09:24+0000\n"
-"Last-Translator: runasand <runa.sandvik(a)gmail.com>\n"
-"Language-Team: en <LL(a)li.org>\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Project-Id-Version: bridgedb 0.2.4-234-g193c80a-dirty\n"
+"Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywo…'
+"POT-Creation-Date: 2015-03-19 22:13+0000\n"
+"PO-Revision-Date: 2015-03-20 04:13+0000\n"
+"Last-Translator: Isis Lovecruft <isis(a)torproject.org>\n"
+"Language-Team: English (http://www.transifex.com/projects/p/torproject/language/en/)\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
+"Language: en\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. TRANSLATORS: Please DO NOT translate the following words and/or phrases in
+#. any string (regardless of capitalization and/or punctuation):
+#. "BridgeDB"
+#. "pluggable transport"
+#. "pluggable transports"
+#. "obfs2"
+#. "obfs3"
+#. "scramblesuit"
+#. "fteproxy"
+#. "Tor"
+#. "Tor Browser"
+#: lib/bridgedb/HTTPServer.py:107
+msgid "Sorry! Something went wrong with your request."
+msgstr "Sorry! Something went wrong with your request."
+
+#: lib/bridgedb/strings.py:18
+msgid "[This is an automated message; please do not reply.]"
+msgstr "[This is an automated message; please do not reply.]"
+
+#: lib/bridgedb/strings.py:20
+msgid "Here are your bridges:"
+msgstr "Here are your bridges:"
+
+#: lib/bridgedb/strings.py:22
+#, python-format
+msgid ""
+"You have exceeded the rate limit. Please slow down! The minimum time between\n"
+"emails is %s hours. All further emails during this time period will be "
+"ignored."
+msgstr ""
+"You have exceeded the rate limit. Please slow down! The minimum time between\n"
+"emails is %s hours. All further emails during this time period will be "
+"ignored."
+
+#: lib/bridgedb/strings.py:25
+msgid "COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
+msgstr "COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
+
+#. TRANSLATORS: Please DO NOT translate the word "BridgeDB".
+#: lib/bridgedb/strings.py:28
+msgid "Welcome to BridgeDB!"
+msgstr "Welcome to BridgeDB!"
-#: lib/bridgedb/templates/base.html:33
+#. TRANSLATORS: Please DO NOT translate the words "transport" or "TYPE".
+#: lib/bridgedb/strings.py:30
+msgid "Currently supported transport TYPEs:"
+msgstr "Currently supported transport TYPEs:"
+
+#: lib/bridgedb/strings.py:31
+#, python-format
+msgid "Hey, %s!"
+msgstr "Hey, %s!"
+
+#: lib/bridgedb/strings.py:32
+msgid "Hello, friend!"
+msgstr "Hello, friend!"
+
+#: lib/bridgedb/strings.py:33 lib/bridgedb/templates/base.html:100
+msgid "Public Keys"
+msgstr "Public Keys"
+
+#. TRANSLATORS: This string will end up saying something like:
+#. "This email was generated with rainbows, unicorns, and sparkles
+#. for alice(a)example.com on Friday, 09 May, 2014 at 18:59:39."
+#: lib/bridgedb/strings.py:37
+#, python-format
+msgid ""
+"This email was generated with rainbows, unicorns, and sparkles\n"
+"for %s on %s at %s."
+msgstr ""
+"This email was generated with rainbows, unicorns, and sparkles\n"
+"for %s on %s at %s."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#. TRANSLATORS: Please DO NOT translate "Tor Network".
+#: lib/bridgedb/strings.py:47
+#, python-format
+msgid ""
+"BridgeDB can provide bridges with several %stypes of Pluggable Transports%s,\n"
+"which can help obfuscate your connections to the Tor Network, making it more\n"
+"difficult for anyone watching your internet traffic to determine that you are"
+"\n"
+"using Tor.\n"
+"\n"
+msgstr ""
+"BridgeDB can provide bridges with several %stypes of Pluggable Transports%s,\n"
+"which can help obfuscate your connections to the Tor Network, making it more\n"
+"difficult for anyone watching your internet traffic to determine that you are"
+"\n"
+"using Tor.\n"
+"\n"
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#: lib/bridgedb/strings.py:54
+msgid ""
+"Some bridges with IPv6 addresses are also available, though some Pluggable\n"
+"Transports aren't IPv6 compatible.\n"
+"\n"
+msgstr ""
+"Some bridges with IPv6 addresses are also available, though some Pluggable\n"
+"Transports aren't IPv6 compatible.\n"
+"\n"
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: The phrase "plain-ol'-vanilla" means "plain, boring,
+#. regular, or unexciting". Like vanilla ice cream. It refers to bridges
+#. which do not have Pluggable Transports, and only speak the regular,
+#. boring Tor protocol. Translate it as you see fit. Have fun with it.
+#: lib/bridgedb/strings.py:63
+#, python-format
+msgid ""
+"Additionally, BridgeDB has plenty of plain-ol'-vanilla bridges %s without any"
+"\n"
+"Pluggable Transports %s which maybe doesn't sound as cool, but they can still"
+"\n"
+"help to circumvent internet censorship in many cases.\n"
+"\n"
+msgstr ""
+"Additionally, BridgeDB has plenty of plain-ol'-vanilla bridges %s without any"
+"\n"
+"Pluggable Transports %s which maybe doesn't sound as cool, but they can still"
+"\n"
+"help to circumvent internet censorship in many cases.\n"
+"\n"
+
+#: lib/bridgedb/strings.py:76
msgid "What are bridges?"
msgstr "What are bridges?"
-#: lib/bridgedb/templates/base.html:34
+#: lib/bridgedb/strings.py:77
#, python-format
-msgid "%s Bridge relays %s are Tor relays that help you circumvent censorship."
-msgstr "%s Bridge relays %s are Tor relays that help you circumvent censorship."
+msgid "%s Bridges %s are Tor relays that help you circumvent censorship."
+msgstr "%s Bridges %s are Tor relays that help you circumvent censorship."
-#: lib/bridgedb/templates/base.html:39
+#: lib/bridgedb/strings.py:82
msgid "I need an alternative way of getting bridges!"
msgstr "I need an alternative way of getting bridges!"
-#: lib/bridgedb/templates/base.html:40
+#: lib/bridgedb/strings.py:83
#, python-format
msgid ""
-"Another way to find public bridge addresses is to send an email (from a "
-"%s or a %s address) to %s with the line 'get bridges' by itself in the "
-"body of the mail."
+"Another way to get bridges is to send an email to %s. Please note that you "
+"must\n"
+"send the email using an address from one of the following email providers:\n"
+"%s, %s or %s."
msgstr ""
-"Another way to find public bridge addresses is to send an email (from a "
-"%s or a %s address) to %s with the line 'get bridges' by itself in the "
-"body of the mail."
+"Another way to get bridges is to send an email to %s. Please note that you "
+"must\n"
+"send the email using an address from one of the following email providers:\n"
+"%s, %s or %s."
-#: lib/bridgedb/templates/base.html:48
+#: lib/bridgedb/strings.py:90
msgid "My bridges don't work! I need help!"
msgstr "My bridges don't work! I need help!"
-#: lib/bridgedb/templates/base.html:49
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:92
+#, python-format
+msgid "If your Tor doesn't work, you should email %s."
+msgstr "If your Tor doesn't work, you should email %s."
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:96
+msgid ""
+"Try including as much info about your case as you can, including the list of\n"
+"bridges and Pluggable Transports you tried to use, your Tor Browser version,\n"
+"and any messages which Tor gave out, etc."
+msgstr ""
+"Try including as much info about your case as you can, including the list of\n"
+"bridges and Pluggable Transports you tried to use, your Tor Browser version,\n"
+"and any messages which Tor gave out, etc."
+
+#: lib/bridgedb/strings.py:103
+msgid "Here are your bridge lines:"
+msgstr "Here are your bridge lines:"
+
+#: lib/bridgedb/strings.py:104
+msgid "Get Bridges!"
+msgstr "Get Bridges!"
+
+#: lib/bridgedb/strings.py:108
+msgid "Please select options for bridge type:"
+msgstr "Please select options for bridge type:"
+
+#: lib/bridgedb/strings.py:109
+msgid "Do you need IPv6 addresses?"
+msgstr "Do you need IPv6 addresses?"
+
+#: lib/bridgedb/strings.py:110
#, python-format
+msgid "Do you need a %s?"
+msgstr "Do you need a %s?"
+
+#: lib/bridgedb/strings.py:114
+msgid "Your browser is not displaying images properly."
+msgstr "Your browser is not displaying images properly."
+
+#: lib/bridgedb/strings.py:115
+msgid "Enter the characters from the image above..."
+msgstr "Enter the characters from the image above..."
+
+#: lib/bridgedb/strings.py:119
+msgid "How to start using your bridges"
+msgstr "How to start using your bridges"
+
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#: lib/bridgedb/strings.py:121
+#, python-format
+msgid ""
+"To enter bridges into Tor Browser, first go to the %s Tor Browser download\n"
+"page %s and then follow the instructions there for downloading and starting\n"
+"Tor Browser."
+msgstr ""
+"To enter bridges into Tor Browser, first go to the %s Tor Browser download\n"
+"page %s and then follow the instructions there for downloading and starting\n"
+"Tor Browser."
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:126
+msgid ""
+"When the 'Tor Network Settings' dialogue pops up, click 'Configure' and "
+"follow\n"
+"the wizard until it asks:"
+msgstr ""
+"When the 'Tor Network Settings' dialogue pops up, click 'Configure' and "
+"follow\n"
+"the wizard until it asks:"
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:130
msgid ""
-"If your Tor doesn't work, you should email %s. Try including as much info"
-" about your case as you can, including the list of bridges you used, the "
-"bundle filename/version you used, the messages that Tor gave out, etc."
+"Does your Internet Service Provider (ISP) block or otherwise censor "
+"connections\n"
+"to the Tor network?"
msgstr ""
-"If your Tor doesn't work, you should email %s. Try including as much info"
-" about your case as you can, including the list of bridges you used, the "
-"bundle filename/version you used, the messages that Tor gave out, etc."
+"Does your Internet Service Provider (ISP) block or otherwise censor "
+"connections\n"
+"to the Tor network?"
-#: lib/bridgedb/templates/bridges.html:10
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:134
msgid ""
-"To use the above lines, go to Vidalia's Network settings page, and click "
-"\"My ISP blocks connections to the Tor network\". Then add each bridge "
-"address one at a time."
+"Select 'Yes' and then click 'Next'. To configure your new bridges, copy and\n"
+"paste the bridge lines into the text input box. Finally, click 'Connect', and"
+"\n"
+"you should be good to go! If you experience trouble, try clicking the 'Help'\n"
+"button in the 'Tor Network Settings' wizard for further assistance."
msgstr ""
-"To use the above lines, go to Vidalia's Network settings page, and click "
-"\"My ISP blocks connections to the Tor network\". Then add each bridge "
-"address one at a time."
+"Select 'Yes' and then click 'Next'. To configure your new bridges, copy and\n"
+"paste the bridge lines into the text input box. Finally, click 'Connect', and"
+"\n"
+"you should be good to go! If you experience trouble, try clicking the 'Help'\n"
+"button in the 'Tor Network Settings' wizard for further assistance."
+
+#: lib/bridgedb/strings.py:142
+msgid "Displays this message."
+msgstr "Displays this message."
+
+#. TRANSLATORS: Please try to make it clear that "vanilla" here refers to the
+#. same non-Pluggable Transport bridges described above as being
+#. "plain-ol'-vanilla" bridges.
+#: lib/bridgedb/strings.py:146
+msgid "Request vanilla bridges."
+msgstr "Request vanilla bridges."
+
+#: lib/bridgedb/strings.py:147
+msgid "Request IPv6 bridges."
+msgstr "Request IPv6 bridges."
+
+#. TRANSLATORS: Please DO NOT translate the word the word "TYPE".
+#: lib/bridgedb/strings.py:149
+msgid "Request a Pluggable Transport by TYPE."
+msgstr "Request a Pluggable Transport by TYPE."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "GnuPG".
+#: lib/bridgedb/strings.py:152
+msgid "Get a copy of BridgeDB's public GnuPG key."
+msgstr "Get a copy of BridgeDB's public GnuPG key."
+
+#: lib/bridgedb/templates/base.html:89
+msgid "Report a Bug"
+msgstr "Report a Bug"
+
+#: lib/bridgedb/templates/base.html:92
+msgid "Source Code"
+msgstr "Source Code"
+
+#: lib/bridgedb/templates/base.html:95
+msgid "Changelog"
+msgstr "Changelog"
+
+#: lib/bridgedb/templates/base.html:98
+msgid "Contact"
+msgstr "Contact"
-#: lib/bridgedb/templates/bridges.html:13
-msgid "No bridges currently available"
-msgstr "No bridges currently available"
+#: lib/bridgedb/templates/bridges.html:81
+msgid "Select All"
+msgstr "Select All"
-#: lib/bridgedb/templates/captcha.html:6
-msgid "Upgrade your browser to Firefox"
-msgstr "Upgrade your browser to Firefox"
+#: lib/bridgedb/templates/bridges.html:87
+msgid "Show QRCode"
+msgstr "Show QRCode"
-#: lib/bridgedb/templates/captcha.html:8
-msgid "Type the two words"
-msgstr "Type the two words"
+#: lib/bridgedb/templates/bridges.html:100
+msgid "QRCode for your bridge lines"
+msgstr "QRCode for your bridge lines"
-#: lib/bridgedb/templates/index.html:6
-msgid "Step 1"
-msgstr "Step 1"
+#. TRANSLATORS: Please translate this into some silly way to say
+#. "There was a problem!" in your language. For example,
+#. for Italian, you might translate this into "Mama mia!",
+#. or for French: "Sacrebleu!". :)
+#: lib/bridgedb/templates/bridges.html:115
+#: lib/bridgedb/templates/bridges.html:175
+msgid "Uh oh, spaghettios!"
+msgstr "Uh oh, spaghettios!"
-#: lib/bridgedb/templates/index.html:8
+#: lib/bridgedb/templates/bridges.html:116
+msgid "It seems there was an error getting your QRCode."
+msgstr "It seems there was an error getting your QRCode."
+
+#: lib/bridgedb/templates/bridges.html:121
+msgid ""
+"This QRCode contains your bridge lines. Scan it with a QRCode reader to copy "
+"your bridge lines onto mobile and other devices."
+msgstr ""
+"This QRCode contains your bridge lines. Scan it with a QRCode reader to copy "
+"your bridge lines onto mobile and other devices."
+
+#: lib/bridgedb/templates/bridges.html:181
+msgid "There currently aren't any bridges available..."
+msgstr "There currently aren't any bridges available..."
+
+#: lib/bridgedb/templates/bridges.html:182
#, python-format
-msgid "Get %s Tor Browser Bundle %s"
-msgstr "Get %s Tor Browser Bundle %s"
+msgid " Perhaps you should try %s going back %s and choosing a different bridge type!"
+msgstr " Perhaps you should try %s going back %s and choosing a different bridge type!"
+
+#: lib/bridgedb/templates/index.html:11
+#, python-format
+msgid "Step %s1%s"
+msgstr "Step %s1%s"
#: lib/bridgedb/templates/index.html:13
-msgid "Step 2"
-msgstr "Step 2"
+#, python-format
+msgid "Download %s Tor Browser %s"
+msgstr "Download %s Tor Browser %s"
+
+#: lib/bridgedb/templates/index.html:25
+#, python-format
+msgid "Step %s2%s"
+msgstr "Step %s2%s"
-#: lib/bridgedb/templates/index.html:15
+#: lib/bridgedb/templates/index.html:27
#, python-format
msgid "Get %s bridges %s"
msgstr "Get %s bridges %s"
-#: lib/bridgedb/templates/index.html:19
-msgid "Step 3"
-msgstr "Step 3"
+#: lib/bridgedb/templates/index.html:36
+#, python-format
+msgid "Step %s3%s"
+msgstr "Step %s3%s"
+
+#: lib/bridgedb/templates/index.html:38
+#, python-format
+msgid "Now %s add the bridges to Tor Browser %s"
+msgstr "Now %s add the bridges to Tor Browser %s"
-#: lib/bridgedb/templates/index.html:21
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. (These are used to insert HTML5 underlining tags, to mark accesskeys
+#. for disabled users.)
+#: lib/bridgedb/templates/options.html:38
#, python-format
-msgid "Now %s add the bridges to Tor %s"
-msgstr "Now %s add the bridges to Tor %s"
+msgid "%sJ%sust give me bridges!"
+msgstr "%sJ%sust give me bridges!"
+
+#: lib/bridgedb/templates/options.html:52
+msgid "Advanced Options"
+msgstr "Advanced Options"
+
+#: lib/bridgedb/templates/options.html:88
+msgid "No"
+msgstr "No"
+#: lib/bridgedb/templates/options.html:89
+msgid "none"
+msgstr "none"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Translate "Yes!" as in "Yes! I do need IPv6 addresses."
+#: lib/bridgedb/templates/options.html:127
+#, python-format
+msgid "%sY%ses!"
+msgstr "%sY%ses!"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Please do NOT translate the word "bridge"!
+#: lib/bridgedb/templates/options.html:151
+#, python-format
+msgid "%sG%set Bridges"
+msgstr "%sG%set Bridges"
1
0

[bridgedb/develop] Merge branch 'translations/2015-03-19-update' into develop
by isis@torproject.org 20 Mar '15
by isis@torproject.org 20 Mar '15
20 Mar '15
commit e4bcb8fbe150b476fd21d6b530929353e0d35814
Merge: 83bdce5 f283a67
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Fri Mar 20 04:23:47 2015 +0000
Merge branch 'translations/2015-03-19-update' into develop
lib/bridgedb/i18n/ar/LC_MESSAGES/bridgedb.po | 21 +-
lib/bridgedb/i18n/az/LC_MESSAGES/bridgedb.po | 357 ++++++++++++++++++
lib/bridgedb/i18n/bg/LC_MESSAGES/bridgedb.po | 357 ++++++++++++++++++
lib/bridgedb/i18n/ca/LC_MESSAGES/bridgedb.po | 391 +++++++++++++++++---
lib/bridgedb/i18n/cs/LC_MESSAGES/bridgedb.po | 367 ++++++++++++++++---
lib/bridgedb/i18n/da/LC_MESSAGES/bridgedb.po | 169 +++++----
lib/bridgedb/i18n/de/LC_MESSAGES/bridgedb.po | 103 ++++--
lib/bridgedb/i18n/el/LC_MESSAGES/bridgedb.po | 20 +-
lib/bridgedb/i18n/en/LC_MESSAGES/bridgedb.po | 445 +++++++++++++++++++---
lib/bridgedb/i18n/en_GB/LC_MESSAGES/bridgedb.po | 387 +++++++++++++++++---
lib/bridgedb/i18n/en_US/LC_MESSAGES/bridgedb.po | 447 +++++++++++++++++++----
lib/bridgedb/i18n/eo/LC_MESSAGES/bridgedb.po | 359 ++++++++++++++++++
lib/bridgedb/i18n/es/LC_MESSAGES/bridgedb.po | 79 ++--
lib/bridgedb/i18n/fa/LC_MESSAGES/bridgedb.po | 63 +++-
lib/bridgedb/i18n/fi/LC_MESSAGES/bridgedb.po | 63 +++-
lib/bridgedb/i18n/fr/LC_MESSAGES/bridgedb.po | 61 +++-
lib/bridgedb/i18n/fr_CA/LC_MESSAGES/bridgedb.po | 64 ++--
lib/bridgedb/i18n/hr_HR/LC_MESSAGES/bridgedb.po | 72 ++--
lib/bridgedb/i18n/hu/LC_MESSAGES/bridgedb.po | 59 ++-
lib/bridgedb/i18n/it/LC_MESSAGES/bridgedb.po | 161 +++++---
lib/bridgedb/i18n/ja/LC_MESSAGES/bridgedb.po | 145 +++++---
lib/bridgedb/i18n/km/LC_MESSAGES/bridgedb.po | 19 +-
lib/bridgedb/i18n/lv/LC_MESSAGES/bridgedb.po | 20 +-
lib/bridgedb/i18n/nb/LC_MESSAGES/bridgedb.po | 161 +++++---
lib/bridgedb/i18n/nl/LC_MESSAGES/bridgedb.po | 170 +++++----
lib/bridgedb/i18n/pl/LC_MESSAGES/bridgedb.po | 100 +++--
lib/bridgedb/i18n/pt/LC_MESSAGES/bridgedb.po | 64 +++-
lib/bridgedb/i18n/pt_BR/LC_MESSAGES/bridgedb.po | 53 ++-
lib/bridgedb/i18n/ro/LC_MESSAGES/bridgedb.po | 21 +-
lib/bridgedb/i18n/ru/LC_MESSAGES/bridgedb.po | 65 +++-
lib/bridgedb/i18n/sk/LC_MESSAGES/bridgedb.po | 367 ++++++++++++++++---
lib/bridgedb/i18n/sk_SK/LC_MESSAGES/bridgedb.po | 357 ++++++++++++++++++
lib/bridgedb/i18n/sl_SI/LC_MESSAGES/bridgedb.po | 359 ++++++++++++++++++
lib/bridgedb/i18n/sq/LC_MESSAGES/bridgedb.po | 380 +++++++++++++++++++
lib/bridgedb/i18n/sv/LC_MESSAGES/bridgedb.po | 61 +++-
lib/bridgedb/i18n/ta/LC_MESSAGES/bridgedb.po | 357 ++++++++++++++++++
lib/bridgedb/i18n/templates/bridgedb.pot | 17 +-
lib/bridgedb/i18n/tr/LC_MESSAGES/bridgedb.po | 97 +++--
lib/bridgedb/i18n/uk/LC_MESSAGES/bridgedb.po | 184 ++++++----
lib/bridgedb/i18n/zh_CN/LC_MESSAGES/bridgedb.po | 121 +++---
lib/bridgedb/i18n/zh_TW/LC_MESSAGES/bridgedb.po | 22 +-
41 files changed, 6036 insertions(+), 1149 deletions(-)
1
0

20 Mar '15
commit f283a67e554c4987212414ac2b75c2f99ee7b2c4
Author: Isis Lovecruft <isis(a)torproject.org>
Date: Fri Mar 20 04:21:08 2015 +0000
Update English (en_US) translations.
---
lib/bridgedb/i18n/en_US/LC_MESSAGES/bridgedb.po | 447 +++++++++++++++++++----
1 file changed, 386 insertions(+), 61 deletions(-)
diff --git a/lib/bridgedb/i18n/en_US/LC_MESSAGES/bridgedb.po b/lib/bridgedb/i18n/en_US/LC_MESSAGES/bridgedb.po
index d791275..48c0ad8 100644
--- a/lib/bridgedb/i18n/en_US/LC_MESSAGES/bridgedb.po
+++ b/lib/bridgedb/i18n/en_US/LC_MESSAGES/bridgedb.po
@@ -1,108 +1,433 @@
-# English (United States) translations for BridgeDB.
-# Copyright (C) 2013 ORGANIZATION
+# English translations for BridgeDB.
+# Copyright (C) 2015 'The Tor Project, Inc.'
# This file is distributed under the same license as the BridgeDB project.
+# Isis Lovecruft <isis(a)torproject.org>, 2015.
+#
+#, fuzzy
#
# Translators:
# runasand <runa.sandvik(a)gmail.com>, 2011
+# Isis Lovecruft <isis(a)torproject.org>, 2012-2015
msgid ""
msgstr ""
-"Project-Id-Version: The Tor Project\n"
-"Report-Msgid-Bugs-To: https://trac.torproject.org/projects/tor\n"
-"POT-Creation-Date: 2013-03-27 21:41+0000\n"
-"PO-Revision-Date: 2013-04-29 09:24+0000\n"
-"Last-Translator: runasand <runa.sandvik(a)gmail.com>\n"
-"Language-Team: en_US <LL(a)li.org>\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Project-Id-Version: bridgedb 0.2.4-234-g193c80a-dirty\n"
+"Report-Msgid-Bugs-To: 'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywo…'
+"POT-Creation-Date: 2015-03-19 22:13+0000\n"
+"PO-Revision-Date: 2015-03-20 04:13+0000\n"
+"Last-Translator: Isis Lovecruft <isis(a)torproject.org>\n"
+"Language-Team: English (US) (http://www.transifex.com/projects/p/torproject/language/en_US/)\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
+"Language: en_US\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. TRANSLATORS: Please DO NOT translate the following words and/or phrases in
+#. any string (regardless of capitalization and/or punctuation):
+#. "BridgeDB"
+#. "pluggable transport"
+#. "pluggable transports"
+#. "obfs2"
+#. "obfs3"
+#. "scramblesuit"
+#. "fteproxy"
+#. "Tor"
+#. "Tor Browser"
+#: lib/bridgedb/HTTPServer.py:107
+msgid "Sorry! Something went wrong with your request."
+msgstr "Sorry! Something went wrong with your request."
+
+#: lib/bridgedb/strings.py:18
+msgid "[This is an automated message; please do not reply.]"
+msgstr "[This is an automated message; please do not reply.]"
+
+#: lib/bridgedb/strings.py:20
+msgid "Here are your bridges:"
+msgstr "Here are your bridges:"
+
+#: lib/bridgedb/strings.py:22
+#, python-format
+msgid ""
+"You have exceeded the rate limit. Please slow down! The minimum time between\n"
+"emails is %s hours. All further emails during this time period will be "
+"ignored."
+msgstr ""
+"You have exceeded the rate limit. Please slow down! The minimum time between\n"
+"emails is %s hours. All further emails during this time period will be "
+"ignored."
+
+#: lib/bridgedb/strings.py:25
+msgid "COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
+msgstr "COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
+
+#. TRANSLATORS: Please DO NOT translate the word "BridgeDB".
+#: lib/bridgedb/strings.py:28
+msgid "Welcome to BridgeDB!"
+msgstr "Welcome to BridgeDB!"
-#: lib/bridgedb/templates/base.html:33
+#. TRANSLATORS: Please DO NOT translate the words "transport" or "TYPE".
+#: lib/bridgedb/strings.py:30
+msgid "Currently supported transport TYPEs:"
+msgstr "Currently supported transport TYPEs:"
+
+#: lib/bridgedb/strings.py:31
+#, python-format
+msgid "Hey, %s!"
+msgstr "Hey, %s!"
+
+#: lib/bridgedb/strings.py:32
+msgid "Hello, friend!"
+msgstr "Hello, friend!"
+
+#: lib/bridgedb/strings.py:33 lib/bridgedb/templates/base.html:100
+msgid "Public Keys"
+msgstr "Public Keys"
+
+#. TRANSLATORS: This string will end up saying something like:
+#. "This email was generated with rainbows, unicorns, and sparkles
+#. for alice(a)example.com on Friday, 09 May, 2014 at 18:59:39."
+#: lib/bridgedb/strings.py:37
+#, python-format
+msgid ""
+"This email was generated with rainbows, unicorns, and sparkles\n"
+"for %s on %s at %s."
+msgstr ""
+"This email was generated with rainbows, unicorns, and sparkles\n"
+"for %s on %s at %s."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#. TRANSLATORS: Please DO NOT translate "Tor Network".
+#: lib/bridgedb/strings.py:47
+#, python-format
+msgid ""
+"BridgeDB can provide bridges with several %stypes of Pluggable Transports%s,\n"
+"which can help obfuscate your connections to the Tor Network, making it more\n"
+"difficult for anyone watching your internet traffic to determine that you are"
+"\n"
+"using Tor.\n"
+"\n"
+msgstr ""
+"BridgeDB can provide bridges with several %stypes of Pluggable Transports%s,\n"
+"which can help obfuscate your connections to the Tor Network, making it more\n"
+"difficult for anyone watching your internet traffic to determine that you are"
+"\n"
+"using Tor.\n"
+"\n"
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#: lib/bridgedb/strings.py:54
+msgid ""
+"Some bridges with IPv6 addresses are also available, though some Pluggable\n"
+"Transports aren't IPv6 compatible.\n"
+"\n"
+msgstr ""
+"Some bridges with IPv6 addresses are also available, though some Pluggable\n"
+"Transports aren't IPv6 compatible.\n"
+"\n"
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: The phrase "plain-ol'-vanilla" means "plain, boring,
+#. regular, or unexciting". Like vanilla ice cream. It refers to bridges
+#. which do not have Pluggable Transports, and only speak the regular,
+#. boring Tor protocol. Translate it as you see fit. Have fun with it.
+#: lib/bridgedb/strings.py:63
+#, python-format
+msgid ""
+"Additionally, BridgeDB has plenty of plain-ol'-vanilla bridges %s without any"
+"\n"
+"Pluggable Transports %s which maybe doesn't sound as cool, but they can still"
+"\n"
+"help to circumvent internet censorship in many cases.\n"
+"\n"
+msgstr ""
+"Additionally, BridgeDB has plenty of plain-ol'-vanilla bridges %s without any"
+"\n"
+"Pluggable Transports %s which maybe doesn't sound as cool, but they can still"
+"\n"
+"help to circumvent internet censorship in many cases.\n"
+"\n"
+
+#: lib/bridgedb/strings.py:76
msgid "What are bridges?"
msgstr "What are bridges?"
-#: lib/bridgedb/templates/base.html:34
+#: lib/bridgedb/strings.py:77
#, python-format
-msgid "%s Bridge relays %s are Tor relays that help you circumvent censorship."
-msgstr "%s Bridge relays %s are Tor relays that help you circumvent censorship."
+msgid "%s Bridges %s are Tor relays that help you circumvent censorship."
+msgstr "%s Bridges %s are Tor relays that help you circumvent censorship."
-#: lib/bridgedb/templates/base.html:39
+#: lib/bridgedb/strings.py:82
msgid "I need an alternative way of getting bridges!"
msgstr "I need an alternative way of getting bridges!"
-#: lib/bridgedb/templates/base.html:40
+#: lib/bridgedb/strings.py:83
#, python-format
msgid ""
-"Another way to find public bridge addresses is to send an email (from a "
-"%s or a %s address) to %s with the line 'get bridges' by itself in the "
-"body of the mail."
+"Another way to get bridges is to send an email to %s. Please note that you "
+"must\n"
+"send the email using an address from one of the following email providers:\n"
+"%s, %s or %s."
msgstr ""
-"Another way to find public bridge addresses is to send an email (from a "
-"%s or a %s address) to %s with the line 'get bridges' by itself in the "
-"body of the mail."
+"Another way to get bridges is to send an email to %s. Please note that you "
+"must\n"
+"send the email using an address from one of the following email providers:\n"
+"%s, %s or %s."
-#: lib/bridgedb/templates/base.html:48
+#: lib/bridgedb/strings.py:90
msgid "My bridges don't work! I need help!"
msgstr "My bridges don't work! I need help!"
-#: lib/bridgedb/templates/base.html:49
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:92
+#, python-format
+msgid "If your Tor doesn't work, you should email %s."
+msgstr "If your Tor doesn't work, you should email %s."
+
+#. TRANSLATORS: Please DO NOT translate "Pluggable Transports".
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:96
+msgid ""
+"Try including as much info about your case as you can, including the list of\n"
+"bridges and Pluggable Transports you tried to use, your Tor Browser version,\n"
+"and any messages which Tor gave out, etc."
+msgstr ""
+"Try including as much info about your case as you can, including the list of\n"
+"bridges and Pluggable Transports you tried to use, your Tor Browser version,\n"
+"and any messages which Tor gave out, etc."
+
+#: lib/bridgedb/strings.py:103
+msgid "Here are your bridge lines:"
+msgstr "Here are your bridge lines:"
+
+#: lib/bridgedb/strings.py:104
+msgid "Get Bridges!"
+msgstr "Get Bridges!"
+
+#: lib/bridgedb/strings.py:108
+msgid "Please select options for bridge type:"
+msgstr "Please select options for bridge type:"
+
+#: lib/bridgedb/strings.py:109
+msgid "Do you need IPv6 addresses?"
+msgstr "Do you need IPv6 addresses?"
+
+#: lib/bridgedb/strings.py:110
#, python-format
+msgid "Do you need a %s?"
+msgstr "Do you need a %s?"
+
+#: lib/bridgedb/strings.py:114
+msgid "Your browser is not displaying images properly."
+msgstr "Your browser is not displaying images properly."
+
+#: lib/bridgedb/strings.py:115
+msgid "Enter the characters from the image above..."
+msgstr "Enter the characters from the image above..."
+
+#: lib/bridgedb/strings.py:119
+msgid "How to start using your bridges"
+msgstr "How to start using your bridges"
+
+#. TRANSLATORS: Please DO NOT translate "Tor Browser".
+#: lib/bridgedb/strings.py:121
+#, python-format
+msgid ""
+"To enter bridges into Tor Browser, first go to the %s Tor Browser download\n"
+"page %s and then follow the instructions there for downloading and starting\n"
+"Tor Browser."
+msgstr ""
+"To enter bridges into Tor Browser, first go to the %s Tor Browser download\n"
+"page %s and then follow the instructions there for downloading and starting\n"
+"Tor Browser."
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:126
+msgid ""
+"When the 'Tor Network Settings' dialogue pops up, click 'Configure' and "
+"follow\n"
+"the wizard until it asks:"
+msgstr ""
+"When the 'Tor Network Settings' dialogue pops up, click 'Configure' and "
+"follow\n"
+"the wizard until it asks:"
+
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:130
msgid ""
-"If your Tor doesn't work, you should email %s. Try including as much info"
-" about your case as you can, including the list of bridges you used, the "
-"bundle filename/version you used, the messages that Tor gave out, etc."
+"Does your Internet Service Provider (ISP) block or otherwise censor "
+"connections\n"
+"to the Tor network?"
msgstr ""
-"If your Tor doesn't work, you should email %s. Try including as much info"
-" about your case as you can, including the list of bridges you used, the "
-"bundle filename/version you used, the messages that Tor gave out, etc."
+"Does your Internet Service Provider (ISP) block or otherwise censor "
+"connections\n"
+"to the Tor network?"
-#: lib/bridgedb/templates/bridges.html:10
+#. TRANSLATORS: Please DO NOT translate "Tor".
+#: lib/bridgedb/strings.py:134
msgid ""
-"To use the above lines, go to Vidalia's Network settings page, and click "
-"\"My ISP blocks connections to the Tor network\". Then add each bridge "
-"address one at a time."
+"Select 'Yes' and then click 'Next'. To configure your new bridges, copy and\n"
+"paste the bridge lines into the text input box. Finally, click 'Connect', and"
+"\n"
+"you should be good to go! If you experience trouble, try clicking the 'Help'\n"
+"button in the 'Tor Network Settings' wizard for further assistance."
msgstr ""
-"To use the above lines, go to Vidalia's Network settings page, and click "
-"\"My ISP blocks connections to the Tor network\". Then add each bridge "
-"address one at a time."
+"Select 'Yes' and then click 'Next'. To configure your new bridges, copy and\n"
+"paste the bridge lines into the text input box. Finally, click 'Connect', and"
+"\n"
+"you should be good to go! If you experience trouble, try clicking the 'Help'\n"
+"button in the 'Tor Network Settings' wizard for further assistance."
+
+#: lib/bridgedb/strings.py:142
+msgid "Displays this message."
+msgstr "Displays this message."
+
+#. TRANSLATORS: Please try to make it clear that "vanilla" here refers to the
+#. same non-Pluggable Transport bridges described above as being
+#. "plain-ol'-vanilla" bridges.
+#: lib/bridgedb/strings.py:146
+msgid "Request vanilla bridges."
+msgstr "Request vanilla bridges."
+
+#: lib/bridgedb/strings.py:147
+msgid "Request IPv6 bridges."
+msgstr "Request IPv6 bridges."
+
+#. TRANSLATORS: Please DO NOT translate the word the word "TYPE".
+#: lib/bridgedb/strings.py:149
+msgid "Request a Pluggable Transport by TYPE."
+msgstr "Request a Pluggable Transport by TYPE."
+
+#. TRANSLATORS: Please DO NOT translate "BridgeDB".
+#. TRANSLATORS: Please DO NOT translate "GnuPG".
+#: lib/bridgedb/strings.py:152
+msgid "Get a copy of BridgeDB's public GnuPG key."
+msgstr "Get a copy of BridgeDB's public GnuPG key."
+
+#: lib/bridgedb/templates/base.html:89
+msgid "Report a Bug"
+msgstr "Report a Bug"
+
+#: lib/bridgedb/templates/base.html:92
+msgid "Source Code"
+msgstr "Source Code"
+
+#: lib/bridgedb/templates/base.html:95
+msgid "Changelog"
+msgstr "Changelog"
+
+#: lib/bridgedb/templates/base.html:98
+msgid "Contact"
+msgstr "Contact"
-#: lib/bridgedb/templates/bridges.html:13
-msgid "No bridges currently available"
-msgstr "No bridges currently available"
+#: lib/bridgedb/templates/bridges.html:81
+msgid "Select All"
+msgstr "Select All"
-#: lib/bridgedb/templates/captcha.html:6
-msgid "Upgrade your browser to Firefox"
-msgstr "Upgrade your browser to Firefox"
+#: lib/bridgedb/templates/bridges.html:87
+msgid "Show QRCode"
+msgstr "Show QRCode"
-#: lib/bridgedb/templates/captcha.html:8
-msgid "Type the two words"
-msgstr "Type the two words"
+#: lib/bridgedb/templates/bridges.html:100
+msgid "QRCode for your bridge lines"
+msgstr "QRCode for your bridge lines"
-#: lib/bridgedb/templates/index.html:6
-msgid "Step 1"
-msgstr "Step 1"
+#. TRANSLATORS: Please translate this into some silly way to say
+#. "There was a problem!" in your language. For example,
+#. for Italian, you might translate this into "Mama mia!",
+#. or for French: "Sacrebleu!". :)
+#: lib/bridgedb/templates/bridges.html:115
+#: lib/bridgedb/templates/bridges.html:175
+msgid "Uh oh, spaghettios!"
+msgstr "Uh oh, spaghettios!"
-#: lib/bridgedb/templates/index.html:8
+#: lib/bridgedb/templates/bridges.html:116
+msgid "It seems there was an error getting your QRCode."
+msgstr "It seems there was an error getting your QRCode."
+
+#: lib/bridgedb/templates/bridges.html:121
+msgid ""
+"This QRCode contains your bridge lines. Scan it with a QRCode reader to copy "
+"your bridge lines onto mobile and other devices."
+msgstr ""
+"This QRCode contains your bridge lines. Scan it with a QRCode reader to copy "
+"your bridge lines onto mobile and other devices."
+
+#: lib/bridgedb/templates/bridges.html:181
+msgid "There currently aren't any bridges available..."
+msgstr "There currently aren't any bridges available..."
+
+#: lib/bridgedb/templates/bridges.html:182
#, python-format
-msgid "Get %s Tor Browser Bundle %s"
-msgstr "Get %s Tor Browser Bundle %s"
+msgid " Perhaps you should try %s going back %s and choosing a different bridge type!"
+msgstr " Perhaps you should try %s going back %s and choosing a different bridge type!"
+
+#: lib/bridgedb/templates/index.html:11
+#, python-format
+msgid "Step %s1%s"
+msgstr "Step %s1%s"
#: lib/bridgedb/templates/index.html:13
-msgid "Step 2"
-msgstr "Step 2"
+#, python-format
+msgid "Download %s Tor Browser %s"
+msgstr "Download %s Tor Browser %s"
+
+#: lib/bridgedb/templates/index.html:25
+#, python-format
+msgid "Step %s2%s"
+msgstr "Step %s2%s"
-#: lib/bridgedb/templates/index.html:15
+#: lib/bridgedb/templates/index.html:27
#, python-format
msgid "Get %s bridges %s"
msgstr "Get %s bridges %s"
-#: lib/bridgedb/templates/index.html:19
-msgid "Step 3"
-msgstr "Step 3"
+#: lib/bridgedb/templates/index.html:36
+#, python-format
+msgid "Step %s3%s"
+msgstr "Step %s3%s"
+
+#: lib/bridgedb/templates/index.html:38
+#, python-format
+msgid "Now %s add the bridges to Tor Browser %s"
+msgstr "Now %s add the bridges to Tor Browser %s"
-#: lib/bridgedb/templates/index.html:21
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. (These are used to insert HTML5 underlining tags, to mark accesskeys
+#. for disabled users.)
+#: lib/bridgedb/templates/options.html:38
#, python-format
-msgid "Now %s add the bridges to Tor %s"
-msgstr "Now %s add the bridges to Tor %s"
+msgid "%sJ%sust give me bridges!"
+msgstr "%sJ%sust give me bridges!"
+
+#: lib/bridgedb/templates/options.html:52
+msgid "Advanced Options"
+msgstr "Advanced Options"
+
+#: lib/bridgedb/templates/options.html:88
+msgid "No"
+msgstr "No"
+#: lib/bridgedb/templates/options.html:89
+msgid "none"
+msgstr "none"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Translate "Yes!" as in "Yes! I do need IPv6 addresses."
+#: lib/bridgedb/templates/options.html:127
+#, python-format
+msgid "%sY%ses!"
+msgstr "%sY%ses!"
+
+#. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
+#. beginning of words are present in your final translation. Thanks!
+#. TRANSLATORS: Please do NOT translate the word "bridge"!
+#: lib/bridgedb/templates/options.html:151
+#, python-format
+msgid "%sG%set Bridges"
+msgstr "%sG%set Bridges"
1
0