Fix conflicts

This commit is contained in:
Miguel Jacq 2019-03-25 13:43:08 +11:00
commit 49285e047c
No known key found for this signature in database
GPG Key ID: EEA4341C6D97A0B6
32 changed files with 1106 additions and 524 deletions

View File

@ -7,7 +7,7 @@ Comment[de]=Teile Dateien sicher und anonym über das Tor-Netzwerk
Exec=/usr/bin/onionshare-gui
Terminal=false
Type=Application
Icon=/usr/share/pixmaps/onionshare80.xpm
Icon=onionshare80
Categories=Network;FileTransfer;
Keywords=tor;anonymity;privacy;onion service;file sharing;file hosting;
Keywords[da]=tor;anonymitet;privatliv;onion-tjeneste;fildeling;filhosting;

View File

@ -57,6 +57,7 @@ def main(cwd=None):
parser.add_argument('--stay-open', action='store_true', dest='stay_open', help=strings._("help_stay_open"))
parser.add_argument('--autostart-timer', metavar='<int>', dest='autostart_timer', default=0, help=strings._("help_autostart_timer"))
parser.add_argument('--autostop-timer', metavar='<int>', dest='autostop_timer', default=0, help=strings._("help_autostop_timer"))
parser.add_argument('--connect-timeout', metavar='<int>', dest='connect_timeout', default=120, help=strings._("help_connect_timeout"))
parser.add_argument('--stealth', action='store_true', dest='stealth', help=strings._("help_stealth"))
parser.add_argument('--receive', action='store_true', dest='receive', help=strings._("help_receive"))
parser.add_argument('--config', metavar='config', default=False, help=strings._('help_config'))
@ -73,6 +74,7 @@ def main(cwd=None):
stay_open = bool(args.stay_open)
autostart_timer = int(args.autostart_timer)
autostop_timer = int(args.autostop_timer)
connect_timeout = int(args.connect_timeout)
stealth = bool(args.stealth)
receive = bool(args.receive)
config = args.config
@ -115,7 +117,7 @@ def main(cwd=None):
# Start the Onion object
onion = Onion(common)
try:
onion.connect(custom_settings=False, config=config)
onion.connect(custom_settings=False, config=config, connect_timeout=connect_timeout)
except KeyboardInterrupt:
print("")
sys.exit()

View File

@ -154,7 +154,7 @@ class Onion(object):
# Start out not connected to Tor
self.connected_to_tor = False
def connect(self, custom_settings=False, config=False, tor_status_update_func=None):
def connect(self, custom_settings=False, config=False, tor_status_update_func=None, connect_timeout=120):
self.common.log('Onion', 'connect')
# Either use settings that are passed in, or use them from common
@ -285,14 +285,16 @@ class Onion(object):
if self.settings.get('tor_bridges_use_custom_bridges') or \
self.settings.get('tor_bridges_use_obfs4') or \
self.settings.get('tor_bridges_use_meek_lite_azure'):
connect_timeout = 150
else:
# Timeout after 120 seconds
connect_timeout = 120
# Only override timeout if a custom timeout has not been passed in
if connect_timeout == 120:
connect_timeout = 150
if time.time() - start_ts > connect_timeout:
print("")
self.tor_proc.terminate()
raise BundledTorTimeout(strings._('settings_error_bundled_tor_timeout'))
try:
self.tor_proc.terminate()
raise BundledTorTimeout(strings._('settings_error_bundled_tor_timeout'))
except FileNotFoundError:
pass
elif self.settings.get('connection_type') == 'automatic':
# Automatically try to guess the right way to connect to Tor Browser

View File

@ -112,12 +112,14 @@ class ReceiveModeWeb(object):
else:
flash(msg, 'info')
else:
msg = 'Sent '
for filename in filenames:
msg = 'Sent {}'.format(filename)
if ajax:
info_flashes.append(msg)
else:
flash(msg, 'info')
msg += '{}, '.format(filename)
msg = msg.rstrip(', ')
if ajax:
info_flashes.append(msg)
else:
flash(msg, 'info')
if self.can_upload:
if ajax:
@ -297,6 +299,7 @@ class ReceiveModeRequest(Request):
new_receive_mode_dir = '{}-{}'.format(self.receive_mode_dir, i)
try:
os.makedirs(new_receive_mode_dir, 0o700, exist_ok=False)
self.receive_mode_dir = new_receive_mode_dir
break
except OSError:
pass

View File

@ -23,133 +23,133 @@
"systray_download_canceled_message": "الغى المستخدم التحميل",
"systray_upload_started_title": "بدأ الرفع",
"systray_upload_started_message": "بدأ مستخدم رفع ملفات الى حاسوبك",
"help_local_only": "",
"help_local_only": "لا تستخدم تور (فقط لغرض التطوير)",
"help_stay_open": "استمر في المشاركة بعد اول تحميل",
"help_autostop_timer": "أوقف المشاركة بعد ثواني محددة",
"help_stealth": "",
"help_receive": "",
"help_debug": "",
"help_filename": "",
"help_filename": "قائمة الملفات أو المجلدات للمشاركة",
"help_config": "",
"gui_drag_and_drop": "",
"gui_add": "إضافة",
"gui_delete": "حذف",
"gui_choose_items": "إختر",
"gui_share_start_server": "",
"gui_share_stop_server": "",
"gui_share_start_server": "ابدأ المشاركة",
"gui_share_stop_server": "أوقف المشاركة",
"gui_share_stop_server_shutdown_timeout": "",
"gui_share_stop_server_shutdown_timeout_tooltip": "",
"gui_receive_start_server": "",
"gui_receive_stop_server": "",
"gui_receive_stop_server_shutdown_timeout": "",
"gui_receive_stop_server_shutdown_timeout_tooltip": "",
"gui_copy_url": "",
"gui_copy_url": "نسخ العنوان",
"gui_copy_hidservauth": "",
"gui_downloads": "",
"gui_no_downloads": "",
"gui_canceled": "ألغى",
"gui_copied_url_title": "",
"gui_copied_url": "",
"gui_copied_url": "تم نسخ عنوان OnionShare إلى الحافظة",
"gui_copied_hidservauth_title": "",
"gui_copied_hidservauth": "",
"gui_please_wait": "",
"gui_download_upload_progress_complete": "",
"gui_download_upload_progress_starting": "",
"gui_download_upload_progress_eta": "",
"version_string": "",
"version_string": "OnionShare {0:s} | https://onionshare.org/",
"gui_quit_title": "",
"gui_share_quit_warning": "",
"gui_receive_quit_warning": "",
"gui_share_quit_warning": "إنك بصدد إرسال ملفات.هل أنت متأكد أنك تريد الخروج مِن OnionShare؟",
"gui_receive_quit_warning": "إنك بصدد تلقي ملفات.هل أنت متأكد أنك تريد الخروج مِن OnionShare؟",
"gui_quit_warning_quit": "خروج",
"gui_quit_warning_dont_quit": "إلغاء",
"error_rate_limit": "",
"zip_progress_bar_format": "",
"zip_progress_bar_format": "جاري الضغط: %p%",
"error_stealth_not_supported": "",
"error_ephemeral_not_supported": "",
"gui_settings_window_title": "الإعدادات",
"gui_settings_whats_this": "",
"gui_settings_stealth_option": "",
"gui_settings_whats_this": "<a href='{0:s}'>ما هذا؟</a>",
"gui_settings_stealth_option": "استخدام ترخيص العميل",
"gui_settings_stealth_hidservauth_string": "",
"gui_settings_autoupdate_label": "التحقق من الإصدار الجديد",
"gui_settings_autoupdate_option": "",
"gui_settings_autoupdate_timestamp": "",
"gui_settings_autoupdate_option": "قم بإشعاري عند توفر إصدار جديد",
"gui_settings_autoupdate_timestamp": "آخر فحص: {}",
"gui_settings_autoupdate_timestamp_never": "أبدا",
"gui_settings_autoupdate_check_button": "",
"gui_settings_autoupdate_check_button": "تحقق من وجود نسخة جديدة",
"gui_settings_general_label": "الإعدادات العامة",
"gui_settings_sharing_label": "",
"gui_settings_close_after_first_download_option": "",
"gui_settings_connection_type_label": "",
"gui_settings_connection_type_bundled_option": "",
"gui_settings_sharing_label": "إعدادات المشاركة",
"gui_settings_close_after_first_download_option": "إيقاف المشاركة بعد اكتمال إرسال الملفات",
"gui_settings_connection_type_label": "كيف ينبغي أن يتصل OnionShare بشبكة تور؟",
"gui_settings_connection_type_bundled_option": "استخدام إصدار تور المدمج في صلب OnionShare",
"gui_settings_connection_type_automatic_option": "",
"gui_settings_connection_type_control_port_option": "",
"gui_settings_connection_type_socket_file_option": "",
"gui_settings_connection_type_test_button": "",
"gui_settings_control_port_label": "",
"gui_settings_connection_type_test_button": "اختبار الاتصال بشبكة تور",
"gui_settings_control_port_label": "منفذ التحكم",
"gui_settings_socket_file_label": "",
"gui_settings_socks_label": "",
"gui_settings_authenticate_label": "",
"gui_settings_authenticate_label": "إعدادات المصادقة على تور",
"gui_settings_authenticate_no_auth_option": "",
"gui_settings_authenticate_password_option": "كلمة السر",
"gui_settings_password_label": "كلمة السر",
"gui_settings_tor_bridges": "",
"gui_settings_tor_bridges_no_bridges_radio_option": "",
"gui_settings_tor_bridges": "دعم جسر تور",
"gui_settings_tor_bridges_no_bridges_radio_option": "لا تستخدم الجسور",
"gui_settings_tor_bridges_obfs4_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "",
"gui_settings_meek_lite_expensive_warning": "",
"gui_settings_tor_bridges_custom_radio_option": "",
"gui_settings_tor_bridges_custom_radio_option": "استخدام جسور مخصصة",
"gui_settings_tor_bridges_custom_label": "",
"gui_settings_tor_bridges_invalid": "",
"gui_settings_button_save": "حفظ",
"gui_settings_button_cancel": "إلغاء",
"gui_settings_button_help": "مساعدة",
"gui_settings_shutdown_timeout_checkbox": "",
"gui_settings_shutdown_timeout": "",
"gui_settings_shutdown_timeout": "إيقاف المشاركة يوم:",
"settings_error_unknown": "",
"settings_error_automatic": "",
"settings_error_socket_port": "",
"settings_error_socket_port": "لا يمكن الاتصال بوحدة تحكم تور في {}:{}.",
"settings_error_socket_file": "",
"settings_error_auth": "",
"settings_error_missing_password": "",
"settings_error_missing_password": "متصل بوحدة تحكم تور، ولكنه يتطلب كلمة سرية للمصادقة.",
"settings_error_unreadable_cookie_file": "",
"settings_error_bundled_tor_not_supported": "",
"settings_error_bundled_tor_timeout": "",
"settings_error_bundled_tor_broken": "",
"settings_test_success": "",
"error_tor_protocol_error": "",
"error_tor_protocol_error_unknown": "",
"error_invalid_private_key": "",
"connecting_to_tor": "",
"error_tor_protocol_error": "هناك خطأ مع تور: {}",
"error_tor_protocol_error_unknown": "حدث خطأ مجهول مع تور",
"error_invalid_private_key": "نوع المفتاح الخاص هذا غير معتمد",
"connecting_to_tor": "جارٍ الاتصال بشبكة تور",
"update_available": "",
"update_error_check_error": "",
"update_error_invalid_latest_version": "",
"update_not_available": "",
"update_not_available": "إنك تقوم بتشغيل آخر نسخة مِن OnionShare.",
"gui_tor_connection_ask": "",
"gui_tor_connection_ask_open_settings": "نعم,",
"gui_tor_connection_ask_quit": "خروج",
"gui_tor_connection_error_settings": "",
"gui_tor_connection_canceled": "",
"gui_tor_connection_lost": "",
"gui_tor_connection_lost": "غير متصل بشبكة تور.",
"gui_server_started_after_timeout": "",
"gui_server_timeout_expired": "",
"share_via_onionshare": "",
"gui_use_legacy_v2_onions_checkbox": "",
"gui_save_private_key_checkbox": "",
"gui_use_legacy_v2_onions_checkbox": "استخدم العناوين الموروثة",
"gui_save_private_key_checkbox": "استخدم عنوانا ثابتا",
"gui_share_url_description": "",
"gui_receive_url_description": "",
"gui_url_label_persistent": "",
"gui_url_label_stay_open": "",
"gui_url_label_onetime": "",
"gui_url_label_onetime_and_persistent": "",
"gui_status_indicator_share_stopped": "",
"gui_status_indicator_share_working": "",
"gui_status_indicator_share_started": "",
"gui_status_indicator_receive_stopped": "",
"gui_status_indicator_receive_working": "",
"gui_status_indicator_share_stopped": "جاهز للمشاركة",
"gui_status_indicator_share_working": "يبدأ…",
"gui_status_indicator_share_started": "المشاركة جارية",
"gui_status_indicator_receive_stopped": "جاهز للتلقي",
"gui_status_indicator_receive_working": "يبدأ…",
"gui_status_indicator_receive_started": "جاري الإستلام",
"gui_file_info": "",
"gui_file_info_single": "",
"gui_file_info": "{} ملفات، {}",
"gui_file_info_single": "{} ملف، {}",
"history_in_progress_tooltip": "",
"history_completed_tooltip": "",
"info_in_progress_uploads_tooltip": "",
@ -159,17 +159,17 @@
"receive_mode_warning": "",
"gui_receive_mode_warning": "",
"receive_mode_upload_starting": "",
"receive_mode_received_file": "",
"gui_mode_share_button": "",
"gui_mode_receive_button": "",
"gui_settings_receiving_label": "",
"receive_mode_received_file": "تم تلقي: {}",
"gui_mode_share_button": "مشاركة الملفات",
"gui_mode_receive_button": "تلقّي ملفات",
"gui_settings_receiving_label": "إعدادات الاستلام",
"gui_settings_downloads_label": "",
"gui_settings_downloads_button": "استعراض",
"gui_settings_receive_allow_receiver_shutdown_checkbox": "",
"gui_settings_public_mode_checkbox": "",
"gui_settings_public_mode_checkbox": "الوضع العام",
"systray_close_server_title": "",
"systray_close_server_message": "",
"systray_page_loaded_title": "",
"systray_page_loaded_title": "تم تحميل الصفحة",
"systray_download_page_loaded_message": "",
"systray_upload_page_loaded_message": "",
"gui_uploads": "",
@ -180,7 +180,28 @@
"gui_upload_finished": "",
"gui_download_in_progress": "",
"gui_open_folder_error_nautilus": "",
"gui_settings_language_label": "",
"gui_settings_language_label": "اللغة المفضلة",
"gui_settings_language_changed_notice": "",
"timeout_upload_still_running": "انتظار اكتمال الرفع"
"timeout_upload_still_running": "انتظار اكتمال الرفع",
"gui_add_files": "إضافة ملفات",
"gui_add_folder": "إضافة مجلد",
"gui_settings_onion_label": "إعدادات البصل",
"gui_connect_to_tor_for_onion_settings": "اربط الاتصال بشبكة تور لترى إعدادات خدمة البصل",
"gui_settings_data_dir_label": "حفظ الملفات على",
"gui_settings_data_dir_browse_button": "تصفح",
"systray_page_loaded_message": "تم تحميل عنوان OnionShare",
"systray_share_started_title": "بدأت المشاركة",
"systray_share_started_message": "بدأت عملية إرسال الملفات إلى شخص ما",
"systray_share_completed_title": "اكتملت المشاركة",
"systray_share_completed_message": "انتهت عملية إرسال الملفات",
"systray_share_canceled_title": "ألغيت المشاركة",
"systray_share_canceled_message": "شخص ما ألغى استقبال ملفاتك",
"systray_receive_started_title": "جاري الاستلام",
"systray_receive_started_message": "شخص ما يرسل لك ملفات",
"gui_all_modes_history": "السجل الزمني",
"gui_all_modes_clear_history": "مسح الكل",
"gui_share_mode_no_files": "لم ترسل أية ملفات بعد",
"gui_share_mode_timeout_waiting": "في انتظار الانتهاء من الإرسال",
"gui_receive_mode_no_files": "لم تتلق أية ملفات بعد",
"gui_receive_mode_timeout_waiting": "في انتظار الانتهاء من الاستلام"
}

View File

@ -40,9 +40,9 @@
"gui_share_stop_server": "শেয়ার করা বন্ধ করো",
"gui_share_stop_server_shutdown_timeout": "শেয়ার করা বন্ধ করো ({} সেকেন্ড বাকি)",
"gui_share_stop_server_shutdown_timeout_tooltip": "টাইমার অনুযায়ী অটোমেটিক বন্ধ হবে {}-তে",
"gui_receive_start_server": "প্রাপ্ত মোড আরম্ভ করুন ",
"gui_receive_stop_server": "প্রাপ্ত মোড বন্ধ করুন ",
"gui_receive_stop_server_shutdown_timeout": "প্রাপ্ত মোড বন্ধ করুন ({}সে বাকি) ",
"gui_receive_start_server": "প্রাপ্ত মোড আরম্ভ করুন",
"gui_receive_stop_server": "প্রাপ্ত মোড বন্ধ করুন",
"gui_receive_stop_server_shutdown_timeout": "প্রাপ্ত মোড বন্ধ করুন ({}সে বাকি)",
"gui_receive_stop_server_shutdown_timeout_tooltip": "টাইমার অনুযায়ী অটোমেটিক বন্ধ হবে {}-তে",
"gui_copy_url": "এড্রেস কপি করো",
"gui_copy_hidservauth": "HidServAuth কপি করো",
@ -107,69 +107,69 @@
"gui_settings_button_help": "সাহায্য",
"gui_settings_shutdown_timeout_checkbox": "কানেকশন বন্ধ করার জন্য অটোমেটিক টাইমার ব্যবহার করো",
"gui_settings_shutdown_timeout": "শেয়ার বন্ধ করুন:",
"settings_error_unknown": "টর নিয়ন্ত্রকের সাথে সংযোগ করতে পারে না কারণ আপনার বিন্যাসনসমূহ বোধগম্য নয় । ",
"settings_error_unknown": "টর নিয়ন্ত্রকের সাথে সংযোগ করতে পারে না কারণ আপনার বিন্যাসনসমূহ বোধগম্য নয় ।",
"settings_error_automatic": "টর নিয়ন্ত্রকের সাথে সংযোগ স্থাপন করা যায়নি । টর ব্রাউজার (torproject.org থেকে পাওয়া যায়) ব্রাকগ্রাউন চলমান?",
"settings_error_socket_port": "{}: {} এ টর নিয়ন্ত্রকের সাথে সংযোগ করতে পারছি না । ",
"settings_error_socket_file": "সকেট ফাইল {} ব্যবহার করে টর নিয়ন্ত্রকের সাথে সংযোগ করতে পারে না । ",
"settings_error_auth": "{}: {}-এর সাথে সংযুক্ত, কিন্তু পরীক্ষা করা যাচ্ছে না । হয়তো এটা কোন টর নিয়ন্ত্রক নয়? ",
"settings_error_socket_port": "{}: {} এ টর নিয়ন্ত্রকের সাথে সংযোগ করতে পারছি না ।",
"settings_error_socket_file": "সকেট ফাইল {} ব্যবহার করে টর নিয়ন্ত্রকের সাথে সংযোগ করতে পারে না ।",
"settings_error_auth": "{}: {}-এর সাথে সংযুক্ত, কিন্তু পরীক্ষা করা যাচ্ছে না । হয়তো এটা কোন টর নিয়ন্ত্রক নয়?",
"settings_error_missing_password": "টর কন্ট্রোলার সাথে সংযুক্ত, কিন্তু তা প্রমাণীকরণ একটি পাসওয়ার্ড প্রয়োজন.",
"settings_error_unreadable_cookie_file": "টর নিয়ন্ত্রকের সাথে সংযুক্ত, কিন্তু পাসওয়ার্ড ভুল হতে পারে, অথবা আপনার ব্যবহারকারীকে কুকি ফাইলে পড়ার অনুমতি দেওয়া হয়নি। ",
"settings_error_unreadable_cookie_file": "টর নিয়ন্ত্রকের সাথে সংযুক্ত, কিন্তু পাসওয়ার্ড ভুল হতে পারে, অথবা আপনার ব্যবহারকারীকে কুকি ফাইলে পড়ার অনুমতি দেওয়া হয়নি।",
"settings_error_bundled_tor_not_supported": "OnionShare এর সাথে আসা টর সংস্করণটি ব্যবহার করে উইন্ডোজ বা ম্যাকোসে ডেভেলপার মোডে কাজ করে না।",
"settings_error_bundled_tor_timeout": "টর সাথে সংযোগ করার জন্য খুব বেশি সময় লাগছে। হয়তো আপনি ইন্টারনেটের সাথে সংযুক্ত নন, অথবা একটি ভুল সিস্টেম ঘড়ি আছে?",
"settings_error_bundled_tor_broken": "ব্যাকগ্রাউন্ডে OnionShare টর এর সাথে সংযুক্ত নয়:\n\n\n{}",
"settings_test_success": "টর কন্ট্রোলার এর সঙ্গে যুক্ত হয়েছে ।\n\nটর সংস্করণ: {}\n\nOnion Services সেবা সমর্থন করে: {}.\n\nক্লায়েন্ট প্রমাণীকরণ সমর্থন করে: {}.\n\nnext-gen .onion ঠিকানাগুলো সমর্থন করে: {} । ",
"error_tor_protocol_error": "টর-এ একটি ত্রুটি ছিল: {} ",
"settings_test_success": "টর কন্ট্রোলার এর সঙ্গে যুক্ত হয়েছে ।\n\nটর সংস্করণ: {}\nOnion Services সেবা সমর্থন করে: {}.\nক্লায়েন্ট প্রমাণীকরণ সমর্থন করে: {}.\nnext-gen .onion ঠিকানাগুলো সমর্থন করে: {} ।",
"error_tor_protocol_error": "টর-এ একটি ত্রুটি ছিল: {}",
"error_tor_protocol_error_unknown": "টর-এ একটি অজানা ত্রুটি আছে",
"error_invalid_private_key": "এই ব্যক্তিগত কী ধরন টি অসমর্থিত ",
"connecting_to_tor": "টর নেটওয়ার্কে সংযুক্ত হচ্ছে ",
"update_available": "",
"update_error_check_error": "নতুন সংস্করণের জন্য পরীক্ষা করা যায়নি: onionshare ওয়েবসাইট বলছে সাম্প্রতিক সংস্করণটি হচ্ছে অস্বীকৃত ' {} '...",
"error_invalid_private_key": "এই ব্যক্তিগত কী ধরন টি অসমর্থিত",
"connecting_to_tor": "টর নেটওয়ার্কে সংযুক্ত হচ্ছে",
"update_available": "নতুন OnionShare বের হয়েছে । এটি পেতে এখানে <a href='{}'>ক্লিক করুন</a> । <br><br>আপনি {} এবং সাম্প্রতিকতম {} ব্যবহার করছেন ।",
"update_error_check_error": "নতুন সংস্করণের জন্য পরীক্ষা করা যায়নি: onionshare ওয়েবসাইট বলছে সাম্প্রতিক সংস্করণটি হচ্ছে অস্বীকৃত ' {} '",
"update_error_invalid_latest_version": "নতুন সংস্করণের জন্য পরীক্ষা করা যায়নি: হয়তো আপনি টর-এর সাথে সংযুক্ত নন, অথবা OnionShare ওয়েবসাইট বন্ধ আছে?",
"update_not_available": "আপনি সর্বশেষ OnionShare চালাচ্ছেন ।",
"gui_tor_connection_ask": "টর থেকে সংযোগ সাজাতে সেটিংস খুলুন?",
"gui_tor_connection_ask_open_settings": "হ্যাঁ",
"gui_tor_connection_ask_quit": "প্রস্থান করুন",
"gui_tor_connection_error_settings": " কিভাবে onionshare সেটিংসে টর নেটওয়ার্ক সংযোগ করে পরিবর্তন করতে চেষ্টা করুন ।",
"gui_tor_connection_canceled": "টর-এ সংযোগ করা যায়নি ।\n\nআপনি ইন্টারনেটের সাথে সংযুক্ত আছেন কিনা তা নিশ্চিত করুন, তারপর onionshare পুনরায় খুলুন এবং টর এর সংযোগটি সেট আপ করুন । ",
"gui_tor_connection_lost": "টর থেকে বিচ্ছিন্ন । ",
"gui_server_started_after_timeout": "সার্ভার শুরু হওয়ার আগেই অটো স্টপ টাইমার শেষ হয়ে যায় ।\n\nঅনুগ্রহ করে একটি নতুন শেয়ার তৈরি করুন. ",
"gui_server_timeout_expired": "অটো-স্টপ টাইমার ইতিমধ্যেই শেষ হয়ে গিয়েছে ।\n\nঅনুগ্রহ করে শেয়ারিং শুরু করতে এটি আপডেট করুন. ",
"share_via_onionshare": "এটি OnionShare ",
"gui_use_legacy_v2_onions_checkbox": "লিগ্যাসি ঠিকানাগুলি ব্যবহার করুন ",
"gui_save_private_key_checkbox": "একটি অবিরাম ঠিকানা ব্যবহার করুন ",
"gui_share_url_description": "",
"gui_receive_url_description": "",
"gui_url_label_persistent": "",
"gui_url_label_stay_open": "এই শেয়ারটি অটো-স্টপ হবে না । ",
"gui_url_label_onetime": "এই শেয়ারটি প্রথম সমাপ্তির পরে বন্ধ হবে. ",
"gui_url_label_onetime_and_persistent": "",
"gui_status_indicator_share_stopped": "শেয়ার করার জন্য প্রস্তুত ",
"gui_status_indicator_share_working": "শুরু...",
"gui_tor_connection_error_settings": "কিভাবে onionshare সেটিংসে টর নেটওয়ার্ক সংযোগ করে পরিবর্তন করতে চেষ্টা করুন ।",
"gui_tor_connection_canceled": "টর-এ সংযোগ করা যায়নি ।\n\nআপনি ইন্টারনেটের সাথে সংযুক্ত আছেন কিনা তা নিশ্চিত করুন, তারপর onionshare পুনরায় খুলুন এবং টর এর সংযোগটি সেট আপ করুন ।",
"gui_tor_connection_lost": "টর থেকে বিচ্ছিন্ন ।",
"gui_server_started_after_timeout": "সার্ভার শুরু হওয়ার আগেই অটো স্টপ টাইমার শেষ হয়ে যায় ।\n\nঅনুগ্রহ করে একটি নতুন শেয়ার তৈরি করুন.",
"gui_server_timeout_expired": "অটো-স্টপ টাইমার ইতিমধ্যেই শেষ হয়ে গিয়েছে ।\n\nঅনুগ্রহ করে শেয়ারিং শুরু করতে এটি আপডেট করুন.",
"share_via_onionshare": "এটি OnionShare",
"gui_use_legacy_v2_onions_checkbox": "লিগ্যাসি ঠিকানাগুলি ব্যবহার করুন",
"gui_save_private_key_checkbox": "একটি অবিরাম ঠিকানা ব্যবহার করুন",
"gui_share_url_description": "এই OnionShare ঠিকানার সাথে <b>যে কেউ</b> <b>টর ব্রাউজার</b> ব্যবহার করে আপনার ফাইলগুলি <b>ডাউনলোড</b> করতে পারে:<img src='{}' />",
"gui_receive_url_description": "এই OnionShare ঠিকানার সাথে <b>যে কেউ</b> <b>টর ব্রাউজার</b> ব্যবহার করে আপনার কম্পিউটারে ফাইলগুলি <b>আপলোড</b> করতে পারে:<img src='{}' />",
"gui_url_label_persistent": "এই শেয়ার অটো-স্টপ হবে না । <br><br>প্রতিটি পরবর্তী শেয়ার পুনরায় নতুন ঠিকানা ব্যবহার করে । (অস্থায়ি ঠিকানা ব্যবহার করতে, সেটিংস-এ ' অবিরাম ঠিকানা ব্যাবহার ' বন্ধ করুন ।)",
"gui_url_label_stay_open": "এই শেয়ারটি অটো-স্টপ হবে না ।",
"gui_url_label_onetime": "এই শেয়ারটি প্রথম সমাপ্তির পরে বন্ধ হবে.",
"gui_url_label_onetime_and_persistent": "এই শেয়ার অটো-স্টপ হবে না । <br><br>প্রতিটি পরবর্তী শেয়ার পুনরায় নতুন ঠিকানা ব্যবহার করে । (অস্থায়ি ঠিকানা ব্যবহার করতে, সেটিংস-এ ' অবিরাম ঠিকানা ব্যাবহার ' বন্ধ করুন ।)",
"gui_status_indicator_share_stopped": "শেয়ার করার জন্য প্রস্তুত",
"gui_status_indicator_share_working": "শুরু",
"gui_status_indicator_share_started": "শেয়ারিং",
"gui_status_indicator_receive_stopped": "পাওয়ার জন্য প্রস্তুত ",
"gui_status_indicator_receive_working": "শুরু... ",
"gui_status_indicator_receive_stopped": "পাওয়ার জন্য প্রস্তুত",
"gui_status_indicator_receive_working": "শুরু",
"gui_status_indicator_receive_started": "গ্রহণ",
"gui_file_info": "{} ফাইল, {}",
"gui_file_info_single": "{} ফাইল, {}",
"history_in_progress_tooltip": "{} অগ্রসর হচ্ছে ",
"history_completed_tooltip": "{} সম্পূর্ণ\n",
"history_in_progress_tooltip": "{} অগ্রসর হচ্ছে",
"history_completed_tooltip": "{} সম্পূর্ণ",
"info_in_progress_uploads_tooltip": "",
"info_completed_uploads_tooltip": "",
"error_cannot_create_downloads_dir": "",
"receive_mode_downloads_dir": "",
"receive_mode_warning": "সতর্কীকরণ: প্রাপ্ত মোড লোকজনকে আপনার কম্পিউটারে ফাইল আপলোড করতে দেয় । আপনি যদি তাদের খোলেন তবে কিছু ফাইল সম্ভবত আপনার কম্পিউটারের নিয়ন্ত্রণ নিতে পারে । শুধুমাত্র আপনি যে ব্যক্তিদের বিশ্বাস করেন, অথবা আপনি যদি জানেন আপনি কি করছেন তা শুধুমাত্র খোলা জিনিস । ",
"receive_mode_warning": "সতর্কীকরণ: প্রাপ্ত মোড লোকজনকে আপনার কম্পিউটারে ফাইল আপলোড করতে দেয় । আপনি যদি তাদের খোলেন তবে কিছু ফাইল সম্ভবত আপনার কম্পিউটারের নিয়ন্ত্রণ নিতে পারে । শুধুমাত্র আপনি যে ব্যক্তিদের বিশ্বাস করেন, অথবা আপনি যদি জানেন আপনি কি করছেন তা শুধুমাত্র খোলা জিনিস ।",
"gui_receive_mode_warning": "গ্রহণ মোডে লোকজন আপনার কম্পিউটারে ফাইলগুলো আপলোড করতে দেয় । <br><br><b>আপনি যদি তাদের খোলেন তবে কিছু ফাইল সম্ভবত আপনার কম্পিউটারের নিয়ন্ত্রণ নিতে পারে । শুধুমাত্র আপনি যে ব্যক্তিদের বিশ্বাস করেন, অথবা আপনি যদি জানেন আপনি কি করছেন তা শুধুমাত্র খোলা জিনিস ।</b>",
"receive_mode_upload_starting": "মোট আকারের {} টি আপলোড শুরু হচ্ছে ",
"receive_mode_received_file": "প্রাপ্ত: {} ",
"gui_mode_share_button": "ফাইলগুলো শেয়ার করুন ",
"gui_mode_receive_button": "ফাইল গ্রহণ করা হচ্ছে ",
"gui_settings_receiving_label": "সেটিংস গ্রহণ করা হচ্ছে ",
"receive_mode_upload_starting": "মোট আকারের {} টি আপলোড শুরু হচ্ছে",
"receive_mode_received_file": "প্রাপ্ত: {}",
"gui_mode_share_button": "ফাইলগুলো শেয়ার করুন",
"gui_mode_receive_button": "ফাইল গ্রহণ করা হচ্ছে",
"gui_settings_receiving_label": "সেটিংস গ্রহণ করা হচ্ছে",
"gui_settings_downloads_label": "",
"gui_settings_downloads_button": "দেখা",
"gui_settings_public_mode_checkbox": "সর্বজনীন মোড ",
"gui_settings_public_mode_checkbox": "সর্বজনীন মোড",
"systray_close_server_title": "",
"systray_close_server_message": "",
"systray_page_loaded_title": "পৃষ্ঠা লোড করা হয়েছে ",
"systray_page_loaded_title": "পৃষ্ঠা লোড করা হয়েছে",
"systray_download_page_loaded_message": "",
"systray_upload_page_loaded_message": "",
"gui_uploads": "",
@ -179,18 +179,18 @@
"gui_upload_finished_range": "",
"gui_upload_finished": "",
"gui_download_in_progress": "",
"gui_open_folder_error_nautilus": "ফোল্ডার খোলা যাচ্ছে না কারণ nautilus বিদ্যমান নয় । ফাইলটি এখানে: {} ",
"gui_settings_language_label": "পছন্দনীয় ভাষা ",
"gui_settings_language_changed_notice": "আপনার ভাষার পরিবর্তন প্রভাব বিস্তার করার জন্য OnionShare পুনর্সূচনা করুন. ",
"gui_open_folder_error_nautilus": "ফোল্ডার খোলা যাচ্ছে না কারণ nautilus বিদ্যমান নয় । ফাইলটি এখানে: {}",
"gui_settings_language_label": "পছন্দনীয় ভাষা",
"gui_settings_language_changed_notice": "আপনার ভাষার পরিবর্তন প্রভাব বিস্তার করার জন্য OnionShare পুনর্সূচনা করুন.",
"gui_add_files": "ফাইল যোগ করো",
"gui_add_folder": "ফোল্ডার যোগ করো",
"gui_settings_onion_label": "Onion সেটিংস",
"gui_connect_to_tor_for_onion_settings": "onion সেবা সেটিংস দেখতে টর এর সাথে সংযোগ করুন ",
"error_cannot_create_data_dir": "onionshare ডাটা ফোল্ডার তৈরি করা যায়নি: {} ",
"receive_mode_data_dir": "আপনার কাছে পাঠানো ফাইলসমূহ এই ফোল্ডারে প্রদর্শিত হয়েছে: {} ",
"gui_settings_data_dir_label": "ফাইল সংরক্ষণ করুন ",
"gui_connect_to_tor_for_onion_settings": "onion সেবা সেটিংস দেখতে টর এর সাথে সংযোগ করুন",
"error_cannot_create_data_dir": "onionshare ডাটা ফোল্ডার তৈরি করা যায়নি: {}",
"receive_mode_data_dir": "আপনার কাছে পাঠানো ফাইলসমূহ এই ফোল্ডারে প্রদর্শিত হয়েছে: {}",
"gui_settings_data_dir_label": "ফাইল সংরক্ষণ করুন",
"gui_settings_data_dir_browse_button": "ব্রাউজ",
"systray_page_loaded_message": "onionshare ঠিকানা লোড করা হয়েছে ",
"systray_page_loaded_message": "onionshare ঠিকানা লোড করা হয়েছে",
"systray_share_started_title": "শেয়ারিং শুরু করা হয়েছে",
"systray_share_completed_title": "শেয়ারিং সম্পূর্ণ হয়েছে",
"systray_share_completed_message": "ফাইল পাঠানো শেষ হয়েছে",
@ -200,5 +200,17 @@
"systray_receive_started_message": "কেউ আপনার কাছে ফাইল পাঠাচ্ছে",
"gui_all_modes_history": "ইতিহাস",
"gui_all_modes_clear_history": "সব পরিষ্কার করুন",
"gui_all_modes_transfer_started": "{} শুরু হয়েছে"
"gui_all_modes_transfer_started": "{} শুরু হয়েছে",
"systray_share_started_message": "কাউকে ফাইল পাঠাতে শুরু",
"gui_all_modes_transfer_finished_range": "স্থানান্তরিত হয়েছে {} - {}",
"gui_all_modes_transfer_finished": "স্থানান্তরিত {}",
"gui_all_modes_transfer_canceled_range": "বাতিলকৃত {} - {}",
"gui_all_modes_transfer_canceled": "বাতিলকৃত {}",
"gui_all_modes_progress_complete": "%p%, {0: সে} অতিক্রান্ত হয়েছে ।",
"gui_all_modes_progress_starting": "{0:সে}, %p% (গণনা করা হচ্ছে)",
"gui_all_modes_progress_eta": "{0:সে}, ইটিএ: {1: সে}, %p%",
"gui_share_mode_no_files": "এখনও কোন ফাইল পাঠানো হয়নি",
"gui_share_mode_timeout_waiting": "প্রেরণ শেষ করার জন্য অপেক্ষা করছে",
"gui_receive_mode_no_files": "কোন ফাইল এখনও প্রাপ্ত হয়নি",
"gui_receive_mode_timeout_waiting": "প্রাপ্তির শেষ পর্যন্ত অপেক্ষা করছে"
}

View File

@ -133,7 +133,7 @@
"help_receive": "Modtager aktier i stedet for at sende dem",
"gui_share_stop_server_shutdown_timeout": "Stop deling ({}s tilbage)",
"gui_receive_quit_warning": "Du er i færd med at modtage filer. Er du sikker på du ønsker at stoppe med at OnionShare?",
"gui_settings_whats_this": "<a href='{0:s}'>Hvad er dette?</a>",
"gui_settings_whats_this": "<a href='{0:s}'>Hvad er det?</a>",
"gui_settings_general_label": "Generel opsætning",
"gui_upload_in_progress": "Upload begyndte {}",
"gui_download_in_progress": "Download begyndte {}",

View File

@ -7,7 +7,7 @@
"closing_automatically": "Gestoppt, da der Download erfolgreich beendet wurde",
"large_filesize": "Warnung: Das Hochladen von großen Dateien kann Stunden dauern",
"help_local_only": "Tor nicht verwenden (nur für Entwicklung)",
"help_stay_open": "Den OnionService nicht anhalten nachdem ein Download beendet wurde",
"help_stay_open": "Den Server weiterlaufen lassen, nachdem die Dateien verschickt wurden",
"help_debug": "Schreibe Fehler von OnionShare nach stdout und Webfehler auf die Festplatte",
"help_filename": "Liste der zu teilenden Dateien oder Ordner",
"gui_drag_and_drop": "Dateien und Ordner hierher ziehen\num sie zu teilen",
@ -42,7 +42,7 @@
"gui_settings_window_title": "Eintellungen",
"gui_settings_autoupdate_timestamp": "Letzte Überprüfung: {}",
"gui_settings_autoupdate_timestamp_never": "Niemals",
"gui_settings_close_after_first_download_option": "Server nach dem ersten Download stoppen",
"gui_settings_close_after_first_download_option": "Server nach Download der Dateien stoppen",
"gui_settings_connection_type_label": "Wie soll sich OnionShare mit Tor verbinden?",
"config_onion_service": "Richte den Onionservice auf Port {0:d} ein.",
"give_this_url_stealth": "Gib dem Empfänger diese URL und die HidServAuth-Zeile:",
@ -197,5 +197,21 @@
"systray_share_completed_title": "Freigabe erfolgt",
"systray_share_completed_message": "Dateien erfolgreich versandt",
"systray_share_canceled_title": "Freigabe abgebrochen",
"systray_share_canceled_message": "Jemand hat den Download deiner Dateien abgebrochen"
"systray_share_canceled_message": "Jemand hat den Download deiner Dateien abgebrochen",
"systray_receive_started_title": "Empfange",
"systray_receive_started_message": "Jemand sendet dir Dateien",
"gui_all_modes_history": "Verlauf",
"gui_all_modes_clear_history": "Alle löschen",
"gui_all_modes_transfer_started": "{} gestartet",
"gui_all_modes_transfer_finished_range": "{} - {} übertragen",
"gui_all_modes_transfer_finished": "{} übertragen",
"gui_all_modes_transfer_canceled_range": "{} - {} abgebrochen",
"gui_all_modes_transfer_canceled": "{} abgebrochen",
"gui_all_modes_progress_starting": "{0:s}, %p% (berechne)",
"gui_share_mode_no_files": "Bisher keine Dateien versendet",
"gui_share_mode_timeout_waiting": "Warte auf Abschluss der Sendung",
"gui_receive_mode_no_files": "Bisher keine Dateien empfangen",
"gui_receive_mode_timeout_waiting": "Warte auf Abschluss des Empfangs",
"gui_all_modes_progress_eta": "{0:s}, ETA: {1:s}, %p%",
"gui_all_modes_progress_complete": "%p%, {0:s} vergangen."
}

View File

@ -22,6 +22,7 @@
"help_stay_open": "Continue sharing after files have been sent",
"help_autostart_timer": "Schedule this share to start N seconds from now",
"help_autostop_timer": "Stop sharing after a given amount of seconds",
"help_connect_timeout": "Give up connecting to Tor after a given amount of seconds (default: 120)",
"help_stealth": "Use client authorization (advanced)",
"help_receive": "Receive shares instead of sending them",
"help_debug": "Log OnionShare errors to stdout, and web errors to disk",

View File

@ -1,25 +1,185 @@
{
"preparing_files": "Valmistellaan tiedostoja jaettavaksi.",
"preparing_files": "Pakataan tiedostoja.",
"give_this_url": "Anna tämä URL-osoite vastaanottajalle:",
"ctrlc_to_stop": "Näppäin Ctrl-C pysäyttää palvelimen",
"ctrlc_to_stop": "Pysäytä palvelin painamalla Ctrl+C",
"not_a_file": "{0:s} Ei ole tiedosto.",
"other_page_loaded": "URL-osoite ladattu",
"closing_automatically": "Lataus valmis. Suljetaan automaattisesti",
"large_filesize": "Varoitus: Isojen tiedostojen lähetys saattaa kestää tunteja",
"help_local_only": "Älä käytä Toria: vain ohjelmakehitykseen",
"help_stay_open": "Pidä piilopalvelu käynnissä latauksen jälkeen.",
"help_debug": "Tallentaa virheet levylle",
"closing_automatically": "Lähetys valmis. Suljetaan automaattisesti",
"large_filesize": "Varoitus: Ison tiedoston lähetys saattaa kestää tunteja",
"help_local_only": "Älä käytä Toria (vain kehitykseen)",
"help_stay_open": "Jatka jakoa tiedostojen lähetyksen jälkeen",
"help_debug": "Kirjaa OnionShare virheet stdout:tiin, ja verkko virheet levylle",
"help_filename": "Luettele jaettavat tiedostot tai kansiot",
"gui_drag_and_drop": "Vedä ja pudota\ntiedostot tänne",
"gui_add": "Lisää",
"gui_delete": "Poista",
"gui_choose_items": "Valitse",
"gui_share_start_server": "Käynnistä palvelin",
"gui_share_stop_server": "Pysäytä palvelin",
"gui_share_start_server": "Aloita jakaminen",
"gui_share_stop_server": "Pysäytä jakaminen",
"gui_copy_url": "Kopioi URL-osoite",
"gui_downloads": "Lataukset:",
"gui_canceled": "Peruutettu",
"gui_copied_url": "URL-osoite kopioitu leikepöydälle",
"gui_please_wait": "Odota...",
"zip_progress_bar_format": "Tiivistän tiedostoja: %p%"
"gui_copied_url": "OnionShare-osoite kopioitu leikepöydälle",
"gui_please_wait": "Käynnistyy... Peruuta napsauttamalla.",
"zip_progress_bar_format": "Pakataan: %p%",
"config_onion_service": "Onion-palvelua asetetaan porttiin {0:d}.",
"give_this_url_stealth": "Anna tämä osoite ja HidServAuth rivi vastaanottajalle:",
"give_this_url_receive": "Anna tämä osoite lähettäjälle:",
"give_this_url_receive_stealth": "Anna tämä osoite ja HidServAuth lähettäjälle:",
"not_a_readable_file": "{0:s} ei ole luettava tiedosto.",
"no_available_port": "Vapaata porttia onion palvelulle ei löydetty",
"close_on_timeout": "Pysäytetty koska auto-stop ajastin loppui",
"help_shutdown_timeout": "Lopeta jakaminen annetun sekunnin kuluttua",
"help_stealth": "Käytä asiakasvaltuutusta (edistynyt)",
"help_receive": "Vastaanota osia niiden lähettämisen sijaan",
"help_config": "Mukautettu JSON-määritystiedoston sijainti (valinnainen)",
"gui_add_files": "Lisää tiedostoja",
"gui_add_folder": "Lisää kansio",
"gui_share_stop_server_shutdown_timeout": "Lopeta jakaminen({}s jäljellä)",
"gui_share_stop_server_shutdown_timeout_tooltip": "Auto-stop ajastin loppuu {} jälkeen",
"gui_receive_start_server": "Aloita vastaanotto tila",
"gui_receive_stop_server": "Lopeta vastaanotto tila",
"gui_receive_stop_server_shutdown_timeout": "Lopeta vastaanotto tila ({}s jäljellä)",
"gui_receive_stop_server_shutdown_timeout_tooltip": "Auto-stop ajastin loppuu kello {}",
"gui_copy_hidservauth": "Kopioi HidServAuth",
"gui_copied_url_title": "Kopioi OnionShare osoite",
"gui_copied_hidservauth_title": "HidServAuth kopioitu",
"gui_copied_hidservauth": "HidServAuth rivi kopioitu leikepöydälle",
"version_string": "OnionShare {0:s} | https://onionshare.org/",
"gui_quit_title": "Ei niin nopeasti",
"gui_share_quit_warning": "Olet lähettämässä tiedostoja. Haluatko varmasti lopettaa OnionSharen?",
"gui_receive_quit_warning": "Olet vastaanottamassa tiedostoja. Haluatko varmasti lopettaa OnionSharen?",
"gui_quit_warning_quit": "Lopeta",
"gui_quit_warning_dont_quit": "Peruuta",
"error_rate_limit": "Joku on tehnyt liian monta väärää yritystä osoitteeseesi, mikä tarkoittaa, että he voisivat yrittää arvata sitä, joten OnionShare on pysäyttänyt palvelimen. Aloita jakaminen uudelleen ja lähetä vastaanottajalle uusi osoite jatkaaksesi.",
"error_stealth_not_supported": "Asiakasvaltuuden käyttämiseen tarvitaan ainakin Tor 0.2.9.1-alpha (tai Tor Browser 6.5) ja python3-stem 1.5.0.",
"error_ephemeral_not_supported": "OnionSharen käyttö vaatii ainakin Tor 0.2.7.1 ja python3-stem 1.4.0.",
"gui_settings_window_title": "Asetukset",
"gui_settings_whats_this": "<a href='{0:s}'>Mikä tämä on?</a>",
"gui_settings_stealth_option": "Käytä asiakaslupaa",
"gui_settings_stealth_hidservauth_string": "Nyt kun olet tallentanut yksityisen avaimesi uudelleenkäyttöä varten, voit kopioida HidServAuth-osoitteesi napista.",
"gui_settings_autoupdate_label": "Tarkista päivitykset",
"gui_settings_autoupdate_option": "Ilmoita minulle, kun uusi versio on saatavilla",
"gui_settings_autoupdate_timestamp": "Viimeksi tarkistettu: {}",
"gui_settings_autoupdate_timestamp_never": "ei koskaan",
"gui_settings_autoupdate_check_button": "Tarkista päivitykset",
"gui_settings_general_label": "Yleiset asetukset",
"gui_settings_onion_label": "Onion asetukset",
"gui_settings_sharing_label": "Jako asetukset",
"gui_settings_close_after_first_download_option": "Lopeta jakaminen tiedostojen lähetyksen jälkeen",
"gui_settings_connection_type_label": "Miten OnionSharen kuuluisi yhdistää Tor:iin?",
"gui_settings_connection_type_bundled_option": "Käytä OnionShareen sisäänrakennettua Tor versiota",
"gui_settings_connection_type_automatic_option": "Kokeile automaattista konfigurointia Tor-selaimella",
"gui_settings_connection_type_control_port_option": "Yhdistä käyttämällä control porttia",
"gui_settings_connection_type_socket_file_option": "Yhdistä käyttäen socket tiedostoa",
"gui_settings_connection_type_test_button": "Testaa Tor yhteyttä",
"gui_settings_control_port_label": "Control port",
"gui_settings_socket_file_label": "Socket tiedosto",
"gui_settings_socks_label": "SOCKS portti",
"gui_settings_authenticate_label": "Tor todennus asetukset",
"gui_settings_authenticate_no_auth_option": "Ei todentamista, tai evästeiden todentamista",
"gui_settings_authenticate_password_option": "Salasana",
"gui_settings_password_label": "Salasana",
"gui_settings_tor_bridges": "Tor silta-solmu tuki",
"gui_settings_tor_bridges_no_bridges_radio_option": "Älä käytä silta-solmuja",
"gui_settings_tor_bridges_obfs4_radio_option": "Käytä sisäänrakennettuja obfs4-liitettäviä kuljetuksia",
"gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "Käytä sisäänrakennettuja obfs4-liitettäviä kuljetuksia (vaatii obfs4proxyn)",
"gui_settings_tor_bridges_meek_lite_azure_radio_option": "Käytä sisäänrakennettuja meek_lite (Azure)-liitettäviä kuljetuksia",
"gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "Käytä sisäänrakennettuja meek_lite (Azure)-liitettäviä kuljetuksia (vaatii obfs4proxyn)",
"gui_settings_meek_lite_expensive_warning": "Varoitus: Meek_lite-sillat ovat Tor-projektille erittäin kalliita. <br><br> Käytä niitä vain, jos et pysty muodostamaan yhteyttä suoraan Toriin, obfs4-kuljetusten tai muiden tavallisten silta-solmujen kautta.",
"gui_settings_tor_bridges_custom_radio_option": "Käytä mukautettuja silta-solmuja",
"gui_settings_tor_bridges_custom_label": "Löydät silta-solmut osoitteesta <a href=\"https://bridges.torproject.org/options\">https://bridges.torproject.org</a>",
"gui_settings_tor_bridges_invalid": "Mikään lisäämistäsi silta-solmuista ei toiminut\nUudellen tarkista ne tai lisää muita.",
"gui_settings_button_save": "Tallenna",
"gui_settings_button_cancel": "Peruuttaa",
"gui_settings_button_help": "Apua",
"gui_settings_shutdown_timeout_checkbox": "Käytä auto-stop ajastinta",
"gui_settings_shutdown_timeout": "Lopeta jakaminen kello:",
"settings_error_unknown": "Ei voi muodostaa yhteyttä Tor-ohjaimeen, koska asetuksesi eivät ole järkeviä.",
"settings_error_automatic": "Tor-ohjaimeen ei voitu muodostaa yhteyttä. Onko Tor Browser (saatavilla osoitteesta torproject.org) avoimena taustalla?",
"settings_error_socket_port": "Ei voi muodostaa yhteyttä Tor-ohjaimeen: {}:{}.",
"settings_error_socket_file": "Ei voi muodostaa yhteyttä Tor-ohjaimeen käyttämällä socket-tiedostoa {}.",
"settings_error_auth": "Yhdistetty osoitteeseen {}:{}, mutta ei voida todentaa. Ehkä tämä ei ole Tor ohjain?",
"settings_error_missing_password": "Yhdistetty Tor ohjaimeen, mutta se vaatii salasanan todentamiseen.",
"settings_error_unreadable_cookie_file": "Yhdistetty tor ohjaimeen, mutta salasana saattaa olla väärä, tai käyttäjä ei saa lukea evästetiedostoa.",
"settings_error_bundled_tor_not_supported": "OnionSharen mukana tulevan Tor version käyttäminen ei toimi Developer-tilassa Windowsissa tai MacOSissa.",
"settings_error_bundled_tor_timeout": "Yhdistäminen Tor:iin kestää lian kauan. Ehkä et ole yhteydessä nettiin, tai järjestelmäsi kello on epätarkka?",
"settings_error_bundled_tor_broken": "OnionShare ei voinut yhdistää Tor:iin taustalla\n{}",
"settings_test_success": "Yhditetty Tor ohjaimeen.\n\nTor versio: {}\nTykee lyhytaikaista onion palvelua: {}.\nTukee asiakas todennusta: {}.\nTukee uuden sukupolven .onion osoitteita: {}.",
"error_tor_protocol_error": "Tor-verkossa tapahtui virhe: {}",
"error_tor_protocol_error_unknown": "Tor-verkossa tapahtui tuntematon virhe",
"error_invalid_private_key": "Tätä yksityisen avaimen tyyppiä ei tueta",
"connecting_to_tor": "Yhdistetään Tor-verkkoon",
"update_available": "Uusi OnionShare version on julkaistu. <a href='{}'>Paina tästä</a> ladataksesi sen.<br><br>Sinulla on versio {} ja uusin version on {}.",
"update_error_check_error": "Päivityksien tarkistaminen epäonnistui: OnionShare-sivusto kertoo, että uusin versio on tunnistamaton '{}'…",
"update_error_invalid_latest_version": "Päivityksien tarkistaminen epäonnistui: Ehkä et ole yhteydessä Tor-verkkoon, tai OnionShare-sivusto on alhaalla?",
"update_not_available": "Sinulla on OnionSharen uusin versio.",
"gui_tor_connection_ask": "Avaa asetukset Tor-yhteyden selvittämiseksi?",
"gui_tor_connection_ask_open_settings": "Kyllä",
"gui_tor_connection_ask_quit": "Lopeta",
"gui_tor_connection_error_settings": "Yritä muuttaa miten OnionShare yhdistää Tor-verkkoon asetuksista.",
"gui_tor_connection_canceled": "Tor-yhteyden muodostus epäonnistui.\n\nVarmista että sinulla on toimiva internet yhteys, jonka jälkeen uudelleen avaa OnionShare ja sen Tor-yhteys.",
"gui_tor_connection_lost": "Tor-yhteys katkaistu.",
"gui_server_started_after_timeout": "Auto-stop ajastin loppui ennen palvelimen käynnistymistä.\nLuo uusi jako.",
"gui_server_timeout_expired": "Auto-stop ajastin loppui jo.\nPäivitä se jaon aloittamiseksi.",
"share_via_onionshare": "OnionShare se",
"gui_connect_to_tor_for_onion_settings": "Yhdistä Tor-verkkoon nähdäksesi onion palvelun asetukset",
"gui_use_legacy_v2_onions_checkbox": "Käytä vanhoja osoitteita",
"gui_save_private_key_checkbox": "Käytä pysyviä osoitteita",
"gui_share_url_description": "<b>Kaikki</b> joilla on tämä OnionShare osoite voivat <b>ladata</b> tiedostojasi käyttämällä <b>Tor selainta</b>: <img src='{}' />",
"gui_receive_url_description": "<b>Kaikki</b> joilla on tämä OnionShare osoite voivat <b>lähettää</b>tiedostoja tietokoneellesi käyttämällä <b>Tor selainta</b>: <img src='{}' />",
"gui_url_label_persistent": "Tämä jako ei pysähdy automaattisesti.<br><br>Jokainen seuraava jako käyttää osoitetta uudelleen. (Jos haluat käyttää kertaluontoisia osoitteita, sammuta \"Käytä pysyvää osoitetta\" asetuksissa.)",
"gui_url_label_stay_open": "Tämä jako ei pysähdy automaattisesti.",
"gui_url_label_onetime": "Tämä jako lopetetaan ensimmäisen valmistumisen jälkeen.",
"gui_url_label_onetime_and_persistent": "Tämä jako ei pysähdy automaattisesti.<br><br>Jokainen seuraava jako käyttää osoitetta uudelleen. (Jos haluat käyttää kertaluontoisia osoitteita, sammuta \"Käytä pysyvää osoitetta\" asetuksissa.)",
"gui_status_indicator_share_stopped": "Valmis jakamaan",
"gui_status_indicator_share_working": "Aloitetaan…",
"gui_status_indicator_share_started": "Jakaa",
"gui_status_indicator_receive_stopped": "Valmis vastaanottamaan",
"gui_status_indicator_receive_working": "Vastaanotetaan…",
"gui_status_indicator_receive_started": "Vastaanotetaan",
"gui_file_info": "{} tiedostoa, {}",
"gui_file_info_single": "{} tiedosto, {}",
"history_in_progress_tooltip": "{} meneillään",
"history_completed_tooltip": "{} valmistunut",
"error_cannot_create_data_dir": "OnionShare-tietokansiota ei voitu luoda: {}",
"receive_mode_data_dir": "Sinulle lähetetyt tiedostot löytyvät tästä kansiosta: {}",
"receive_mode_warning": "Varoitus: Vastaanottotila antaa ihmisille mahdollisuuden ladata tiedostoja tietokoneeseen. Jotkin tiedostot voivat hallita tietokonettasi, jos avaat ne. Avaa vain tiedostot, joihin luotat, tai jos tiedät, mitä teet.",
"gui_receive_mode_warning": "Vastaanottotila antaa ihmisille mahdollisuuden ladata tiedostoja tietokoneellesi.<br><br><b>Jotkin tiedostot voivat hallita tietokonettasi, jos avaat ne. Avaa asioita vain ihmisiltä, joihin luotat, tai jos tiedät, mitä olet tekemässä. </b>",
"receive_mode_upload_starting": "Lähetys jonka koko on {} alkaa",
"receive_mode_received_file": "Vastaanotetaan: {}",
"gui_mode_share_button": "Jaa Tiedostoja",
"gui_mode_receive_button": "Vastaanota Tiedostoja",
"gui_settings_receiving_label": "Vastaanoton asetukset",
"gui_settings_data_dir_label": "Tallenna tiedostot",
"gui_settings_data_dir_browse_button": "Selaa",
"gui_settings_public_mode_checkbox": "Julkinen tila",
"gui_open_folder_error_nautilus": "Kansiota ei voi avata, koska nautilus ei ole käytettävissä. Tiedosto on täällä: {}",
"gui_settings_language_label": "Haluttu kieli",
"gui_settings_language_changed_notice": "Käynnistä OnionShare uudelleen, jotta kieli muuttuu.",
"systray_menu_exit": "Lopeta",
"systray_page_loaded_title": "Sivu Ladattu",
"systray_page_loaded_message": "OnionShare-osoite ladattu",
"systray_share_started_title": "Jako Aloitettu",
"systray_share_started_message": "Tiedostojen lähettäminen jollekulle aloitetaan",
"systray_share_completed_title": "Jakaminen Valmis",
"systray_share_completed_message": "Tiedostojen lähetys valmis",
"systray_share_canceled_title": "Jako keskeytetty",
"systray_share_canceled_message": "Joku keskeytti tiedostojesi vastaanottamisen",
"systray_receive_started_title": "Vastaanottaminen Aloitettu",
"systray_receive_started_message": "Joku lähettää tiedostoja sinulle",
"gui_all_modes_history": "Historia",
"gui_all_modes_clear_history": "Tyhjennä",
"gui_all_modes_transfer_started": "Aloitettu {}",
"gui_all_modes_transfer_finished_range": "Siirretty {} - {}",
"gui_all_modes_transfer_finished": "Siirretty {}",
"gui_all_modes_transfer_canceled_range": "Keskeytetty {} - {}",
"gui_all_modes_transfer_canceled": "Keskeytetty {}",
"gui_all_modes_progress_complete": "%p%, {0:s} kulunut.",
"gui_all_modes_progress_starting": "{0:s}, %p% (lasketaan)",
"gui_all_modes_progress_eta": "{0:s}, ETA: {1:s}, %p%",
"gui_share_mode_no_files": "Yhtäkään tiedostoa ei ole lähetetty vielä",
"gui_share_mode_timeout_waiting": "Odotetaan lähettämisen valmistumista",
"gui_receive_mode_no_files": "Yhtäkään tiedostoa ei ole vastaanotettu vielä",
"gui_receive_mode_timeout_waiting": "Odotetaan vastaanottamisen valmistumista"
}

View File

@ -209,7 +209,7 @@
"gui_share_mode_timeout_waiting": "En attente de la fin de lenvoi",
"gui_receive_mode_no_files": "Aucun fichier na encore été reçu",
"gui_receive_mode_timeout_waiting": "En attente de la fin de la réception",
"gui_connect_to_tor_for_onion_settings": "Connectez-vous à Tor pour voir les paramètres du service onion",
"gui_connect_to_tor_for_onion_settings": "Se connecter à Tor pour voir les paramètres du service onion",
"systray_share_completed_message": "Lenvoi de fichiers est terminé",
"gui_all_modes_transfer_canceled": "Annulé le {}",
"gui_settings_onion_label": "Paramètres onion",

184
share/locale/hi.json Normal file
View File

@ -0,0 +1,184 @@
{
"config_onion_service": "",
"preparing_files": "",
"give_this_url": "",
"give_this_url_stealth": "",
"give_this_url_receive": "",
"give_this_url_receive_stealth": "",
"ctrlc_to_stop": "",
"not_a_file": "",
"not_a_readable_file": "",
"no_available_port": "",
"other_page_loaded": "",
"close_on_timeout": "",
"closing_automatically": "",
"large_filesize": "",
"help_local_only": "",
"help_stay_open": "",
"help_shutdown_timeout": "",
"help_stealth": "",
"help_receive": "",
"help_debug": "",
"help_filename": "",
"help_config": "",
"gui_drag_and_drop": "",
"gui_add": "जोड़ें",
"gui_add_files": "",
"gui_add_folder": "",
"gui_delete": "हटाएं",
"gui_choose_items": "चुनें",
"gui_share_start_server": "",
"gui_share_stop_server": "",
"gui_share_stop_server_shutdown_timeout": "",
"gui_share_stop_server_shutdown_timeout_tooltip": "",
"gui_receive_start_server": "",
"gui_receive_stop_server": "",
"gui_receive_stop_server_shutdown_timeout": "",
"gui_receive_stop_server_shutdown_timeout_tooltip": "",
"gui_copy_url": "",
"gui_copy_hidservauth": "",
"gui_canceled": "Canceled",
"gui_copied_url_title": "",
"gui_copied_url": "",
"gui_copied_hidservauth_title": "",
"gui_copied_hidservauth": "",
"gui_please_wait": "",
"version_string": "",
"gui_quit_title": "",
"gui_share_quit_warning": "",
"gui_receive_quit_warning": "",
"gui_quit_warning_quit": "छोड़ें",
"gui_quit_warning_dont_quit": "रद्द करे",
"error_rate_limit": "",
"zip_progress_bar_format": "",
"error_stealth_not_supported": "",
"error_ephemeral_not_supported": "",
"gui_settings_window_title": "सेटिंग",
"gui_settings_whats_this": "",
"gui_settings_stealth_option": "",
"gui_settings_stealth_hidservauth_string": "",
"gui_settings_autoupdate_label": "",
"gui_settings_autoupdate_option": "",
"gui_settings_autoupdate_timestamp": "अंतिम जाँच %1",
"gui_settings_autoupdate_timestamp_never": "कभी नहीँ",
"gui_settings_autoupdate_check_button": "",
"gui_settings_general_label": "जनरल सेटिंग्स",
"gui_settings_onion_label": "",
"gui_settings_sharing_label": "",
"gui_settings_close_after_first_download_option": "",
"gui_settings_connection_type_label": "",
"gui_settings_connection_type_bundled_option": "",
"gui_settings_connection_type_automatic_option": "",
"gui_settings_connection_type_control_port_option": "",
"gui_settings_connection_type_socket_file_option": "",
"gui_settings_connection_type_test_button": "",
"gui_settings_control_port_label": "",
"gui_settings_socket_file_label": "",
"gui_settings_socks_label": "",
"gui_settings_authenticate_label": "",
"gui_settings_authenticate_no_auth_option": "",
"gui_settings_authenticate_password_option": "",
"gui_settings_password_label": "",
"gui_settings_tor_bridges": "",
"gui_settings_tor_bridges_no_bridges_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "",
"gui_settings_meek_lite_expensive_warning": "",
"gui_settings_tor_bridges_custom_radio_option": "",
"gui_settings_tor_bridges_custom_label": "",
"gui_settings_tor_bridges_invalid": "",
"gui_settings_button_save": "सहेजें",
"gui_settings_button_cancel": "रद्द करे",
"gui_settings_button_help": "मदद",
"gui_settings_shutdown_timeout_checkbox": "",
"gui_settings_shutdown_timeout": "",
"settings_error_unknown": "",
"settings_error_automatic": "",
"settings_error_socket_port": "",
"settings_error_socket_file": "",
"settings_error_auth": "",
"settings_error_missing_password": "",
"settings_error_unreadable_cookie_file": "",
"settings_error_bundled_tor_not_supported": "",
"settings_error_bundled_tor_timeout": "",
"settings_error_bundled_tor_broken": "",
"settings_test_success": "",
"error_tor_protocol_error": "",
"error_tor_protocol_error_unknown": "",
"error_invalid_private_key": "",
"connecting_to_tor": "",
"update_available": "",
"update_error_check_error": "",
"update_error_invalid_latest_version": "",
"update_not_available": "",
"gui_tor_connection_ask": "",
"gui_tor_connection_ask_open_settings": "हां",
"gui_tor_connection_ask_quit": "छोड़ें",
"gui_tor_connection_error_settings": "",
"gui_tor_connection_canceled": "",
"gui_tor_connection_lost": "",
"gui_server_started_after_timeout": "",
"gui_server_timeout_expired": "",
"share_via_onionshare": "",
"gui_connect_to_tor_for_onion_settings": "",
"gui_use_legacy_v2_onions_checkbox": "",
"gui_save_private_key_checkbox": "",
"gui_share_url_description": "",
"gui_receive_url_description": "",
"gui_url_label_persistent": "",
"gui_url_label_stay_open": "",
"gui_url_label_onetime": "",
"gui_url_label_onetime_and_persistent": "",
"gui_status_indicator_share_stopped": "",
"gui_status_indicator_share_working": "",
"gui_status_indicator_share_started": "शेयरिंग",
"gui_status_indicator_receive_stopped": "",
"gui_status_indicator_receive_working": "",
"gui_status_indicator_receive_started": "",
"gui_file_info": "",
"gui_file_info_single": "",
"history_in_progress_tooltip": "",
"history_completed_tooltip": "",
"error_cannot_create_data_dir": "",
"receive_mode_data_dir": "",
"receive_mode_warning": "",
"gui_receive_mode_warning": "",
"receive_mode_upload_starting": "",
"receive_mode_received_file": "",
"gui_mode_share_button": "",
"gui_mode_receive_button": "",
"gui_settings_receiving_label": "",
"gui_settings_data_dir_label": "",
"gui_settings_data_dir_browse_button": "ब्राउज़",
"gui_settings_public_mode_checkbox": "",
"gui_open_folder_error_nautilus": "",
"gui_settings_language_label": "",
"gui_settings_language_changed_notice": "",
"systray_menu_exit": "छोड़ें",
"systray_page_loaded_title": "",
"systray_page_loaded_message": "",
"systray_share_started_title": "",
"systray_share_started_message": "",
"systray_share_completed_title": "",
"systray_share_completed_message": "",
"systray_share_canceled_title": "",
"systray_share_canceled_message": "",
"systray_receive_started_title": "",
"systray_receive_started_message": "",
"gui_all_modes_history": "इतिहास",
"gui_all_modes_clear_history": "",
"gui_all_modes_transfer_started": "द्वारा शुरू किया गया",
"gui_all_modes_transfer_finished_range": "",
"gui_all_modes_transfer_finished": "",
"gui_all_modes_transfer_canceled_range": "",
"gui_all_modes_transfer_canceled": "",
"gui_all_modes_progress_complete": "",
"gui_all_modes_progress_starting": "",
"gui_all_modes_progress_eta": "",
"gui_share_mode_no_files": "",
"gui_share_mode_timeout_waiting": "",
"gui_receive_mode_no_files": "",
"gui_receive_mode_timeout_waiting": ""
}

View File

@ -1,19 +1,19 @@
{
"config_onion_service": "",
"preparing_files": "",
"give_this_url": "",
"give_this_url_stealth": "",
"give_this_url_receive": "",
"give_this_url_receive_stealth": "",
"ctrlc_to_stop": "",
"not_a_file": "",
"not_a_readable_file": "",
"no_available_port": "",
"other_page_loaded": "",
"config_onion_service": "Mengatur layanan onion pada port {0:d}.",
"preparing_files": "Mengompresi berkas-berkas.",
"give_this_url": "Beri alamat ini kepada penerima:",
"give_this_url_stealth": "Beri alamat ini dan baris HidServAuth kepada penerima:",
"give_this_url_receive": "Beri alamat ini kepada pengirim:",
"give_this_url_receive_stealth": "Beri alamat ini dan HidServAuth kepada pengirim:",
"ctrlc_to_stop": "Tekan Ctrl+C untuk menghentikan peladen",
"not_a_file": "{0:s} bukan berkas yang sah.",
"not_a_readable_file": "{0:s} bukan berkas yang bisa dibaca.",
"no_available_port": "Tidak dapat menemukan porta yang tersedia untuk memulai layanan onion",
"other_page_loaded": "Alamat dimuat",
"close_on_timeout": "",
"closing_automatically": "",
"closing_automatically": "Terhenti karena transfer telah tuntas",
"timeout_download_still_running": "",
"large_filesize": "",
"large_filesize": "Peringatan: Mengirim dalam jumlah besar dapat memakan waktu berjam-jam",
"systray_menu_exit": "Keluar",
"systray_download_started_title": "",
"systray_download_started_message": "",
@ -23,74 +23,74 @@
"systray_download_canceled_message": "",
"systray_upload_started_title": "",
"systray_upload_started_message": "",
"help_local_only": "",
"help_stay_open": "",
"help_autostop_timer": "",
"help_stealth": "",
"help_local_only": "Tidak menggunakan Tor (hanya untuk pengembangan)",
"help_stay_open": "Lanjutkan berbagi setelah berkas telah terkirim",
"help_autostop_timer": "Berhenti berbagi setelah beberapa detik",
"help_stealth": "Gunakan otorisasi klien (lanjutan)",
"help_receive": "",
"help_debug": "",
"help_filename": "",
"help_debug": "Catat kesalahan OnionShare ke stdout, dan kesalahan web ke disk",
"help_filename": "Daftar berkas atau folder untuk dibagikan",
"help_config": "",
"gui_drag_and_drop": "",
"gui_drag_and_drop": "Seret dan lepas berkas dan folder\nuntuk mulai berbagi",
"gui_add": "Tambahkan",
"gui_delete": "Hapus",
"gui_choose_items": "Pilih",
"gui_share_start_server": "",
"gui_share_stop_server": "",
"gui_share_stop_server_shutdown_timeout": "",
"gui_share_start_server": "Mulai berbagi",
"gui_share_stop_server": "Berhenti berbagi",
"gui_share_stop_server_shutdown_timeout": "Berhenti Berbagi ({}d tersisa)",
"gui_share_stop_server_shutdown_timeout_tooltip": "",
"gui_receive_start_server": "",
"gui_receive_stop_server": "",
"gui_receive_stop_server_shutdown_timeout": "",
"gui_receive_start_server": "Mulai Mode Menerima",
"gui_receive_stop_server": "Menghentikan Mode Menerima",
"gui_receive_stop_server_shutdown_timeout": "Menghentikan Mode Menerima ({}d tersisa)",
"gui_receive_stop_server_shutdown_timeout_tooltip": "",
"gui_copy_url": "",
"gui_copy_hidservauth": "",
"gui_copy_url": "Salin Alamat",
"gui_copy_hidservauth": "Salin HidServAuth",
"gui_downloads": "",
"gui_no_downloads": "",
"gui_canceled": "Dibatalkan",
"gui_copied_url_title": "",
"gui_copied_url": "",
"gui_copied_hidservauth_title": "",
"gui_copied_hidservauth": "",
"gui_please_wait": "",
"gui_copied_url_title": "Alamat OnionShare disalin",
"gui_copied_url": "Alamat OnionShare disalin ke papan klip",
"gui_copied_hidservauth_title": "HidServAuth disalin",
"gui_copied_hidservauth": "Baris HidServAuth disalin ke papan klip",
"gui_please_wait": "Memulai... Klik untuk membatalkan.",
"gui_download_upload_progress_complete": "",
"gui_download_upload_progress_starting": "",
"gui_download_upload_progress_eta": "",
"version_string": "",
"gui_quit_title": "",
"gui_share_quit_warning": "",
"gui_receive_quit_warning": "",
"version_string": "OnionShare {0:s} | https://onionshare.org/",
"gui_quit_title": "Tidak begitu cepat",
"gui_share_quit_warning": "Anda sedang dalam proses pengiriman berkas. Apakah Anda yakin ingin menghentikan OnionShare?",
"gui_receive_quit_warning": "Anda sedang dalam proses menerima berkas. Apakah Anda yakin ingin menghentikan OnionShare?",
"gui_quit_warning_quit": "Keluar",
"gui_quit_warning_dont_quit": "Batal",
"error_rate_limit": "",
"zip_progress_bar_format": "",
"error_stealth_not_supported": "",
"error_ephemeral_not_supported": "",
"zip_progress_bar_format": "Mengompresi: %p%",
"error_stealth_not_supported": "Untuk menggunakan otorisasi klien, Anda perlu setidaknya Tor 0.2.9.1-alpha (atau Tor Browser 6.5) dan python3-stem 1.5.0.",
"error_ephemeral_not_supported": "OnionShare memerlukan setidaknya Tor 0.2.7.1 dan python3-stem 1.4.0.",
"gui_settings_window_title": "Pengaturan",
"gui_settings_whats_this": "",
"gui_settings_stealth_option": "",
"gui_settings_stealth_hidservauth_string": "",
"gui_settings_autoupdate_label": "",
"gui_settings_autoupdate_option": "",
"gui_settings_autoupdate_timestamp": "",
"gui_settings_autoupdate_timestamp_never": "Tak pernah",
"gui_settings_autoupdate_check_button": "",
"gui_settings_whats_this": "<a href='{0:s}'>Apakah ini?</a>",
"gui_settings_stealth_option": "Gunakan otorisasi klien",
"gui_settings_stealth_hidservauth_string": "Telah menyimpan kunci privat Anda untuk digunakan kembali, berarti Anda dapat klik untuk menyalin HidServAuth Anda.",
"gui_settings_autoupdate_label": "Periksa versi terbaru",
"gui_settings_autoupdate_option": "Beritahu saya ketika versi baru tersedia",
"gui_settings_autoupdate_timestamp": "Terakhir diperiksa: {}",
"gui_settings_autoupdate_timestamp_never": "Tidak pernah",
"gui_settings_autoupdate_check_button": "Periksa Versi Terbaru",
"gui_settings_general_label": "Pengaturan umum",
"gui_settings_sharing_label": "",
"gui_settings_close_after_first_download_option": "",
"gui_settings_connection_type_label": "",
"gui_settings_sharing_label": "Pengaturan berbagi",
"gui_settings_close_after_first_download_option": "Berhenti berbagi setelah berkas telah terkirim",
"gui_settings_connection_type_label": "Bagaimana seharusnya OnionShare terhubung ke Tor?",
"gui_settings_connection_type_bundled_option": "",
"gui_settings_connection_type_automatic_option": "",
"gui_settings_connection_type_control_port_option": "",
"gui_settings_connection_type_automatic_option": "Mencoba konfigurasi otomatis dengan Tor Browser",
"gui_settings_connection_type_control_port_option": "Menghubungkan menggunakan porta kontrol",
"gui_settings_connection_type_socket_file_option": "",
"gui_settings_connection_type_test_button": "",
"gui_settings_connection_type_test_button": "Menguji sambungan ke Tor",
"gui_settings_control_port_label": "Port kontrol",
"gui_settings_socket_file_label": "",
"gui_settings_socks_label": "",
"gui_settings_authenticate_label": "",
"gui_settings_authenticate_no_auth_option": "",
"gui_settings_authenticate_password_option": "",
"gui_settings_password_label": "",
"gui_settings_socket_file_label": "Berkas soket",
"gui_settings_socks_label": "Porta SOCKS",
"gui_settings_authenticate_label": "Pengaturan otentikasi Tor",
"gui_settings_authenticate_no_auth_option": "Tidak ada otentikasi, atau otentikasi kuki",
"gui_settings_authenticate_password_option": "Sandi",
"gui_settings_password_label": "Sandi",
"gui_settings_tor_bridges": "",
"gui_settings_tor_bridges_no_bridges_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option": "",
@ -181,5 +181,8 @@
"gui_download_in_progress": "",
"gui_open_folder_error_nautilus": "",
"gui_settings_language_label": "",
"gui_settings_language_changed_notice": ""
"gui_settings_language_changed_notice": "",
"gui_add_files": "Tambahkan berkas",
"gui_add_folder": "Tambahkan Folder",
"gui_settings_onion_label": "Pengaturan Onion"
}

View File

@ -1,6 +1,6 @@
{
"preparing_files": "Compressione dei file in corso.",
"give_this_url": "Dai questa URL al destinatario:",
"give_this_url": "Dai questo indirizzo al destinatario:",
"ctrlc_to_stop": "Premi Ctrl+C per fermare il server",
"not_a_file": "{0:s} non è un file valido.",
"other_page_loaded": "URL caricato",
@ -23,7 +23,7 @@
"gui_please_wait": "Avviato... Cliccare per interrompere.",
"zip_progress_bar_format": "Compressione in corso: %p%",
"config_onion_service": "Preparando il servizio onion sulla porta {0:d}.",
"give_this_url_stealth": "Dai questa URL e la linea HidServAuth al destinatario:",
"give_this_url_stealth": "Dai questo indirizzo e la linea HidServAuth al destinatario:",
"give_this_url_receive": "Dai questo indirizzo al mittente:",
"give_this_url_receive_stealth": "Condividi questo indirizzo e la linea HideServAuth con il mittente:",
"not_a_readable_file": "{0:s} non è un file leggibile.",

184
share/locale/ms.json Normal file
View File

@ -0,0 +1,184 @@
{
"config_onion_service": "",
"preparing_files": "",
"give_this_url": "",
"give_this_url_stealth": "",
"give_this_url_receive": "",
"give_this_url_receive_stealth": "",
"ctrlc_to_stop": "",
"not_a_file": "",
"not_a_readable_file": "",
"no_available_port": "",
"other_page_loaded": "",
"close_on_timeout": "",
"closing_automatically": "",
"large_filesize": "",
"help_local_only": "",
"help_stay_open": "",
"help_shutdown_timeout": "",
"help_stealth": "",
"help_receive": "",
"help_debug": "",
"help_filename": "",
"help_config": "",
"gui_drag_and_drop": "",
"gui_add": "",
"gui_add_files": "",
"gui_add_folder": "",
"gui_delete": "",
"gui_choose_items": "",
"gui_share_start_server": "",
"gui_share_stop_server": "",
"gui_share_stop_server_shutdown_timeout": "",
"gui_share_stop_server_shutdown_timeout_tooltip": "",
"gui_receive_start_server": "",
"gui_receive_stop_server": "",
"gui_receive_stop_server_shutdown_timeout": "",
"gui_receive_stop_server_shutdown_timeout_tooltip": "",
"gui_copy_url": "",
"gui_copy_hidservauth": "",
"gui_canceled": "",
"gui_copied_url_title": "",
"gui_copied_url": "",
"gui_copied_hidservauth_title": "",
"gui_copied_hidservauth": "",
"gui_please_wait": "",
"version_string": "",
"gui_quit_title": "",
"gui_share_quit_warning": "",
"gui_receive_quit_warning": "",
"gui_quit_warning_quit": "",
"gui_quit_warning_dont_quit": "",
"error_rate_limit": "",
"zip_progress_bar_format": "",
"error_stealth_not_supported": "",
"error_ephemeral_not_supported": "",
"gui_settings_window_title": "",
"gui_settings_whats_this": "",
"gui_settings_stealth_option": "",
"gui_settings_stealth_hidservauth_string": "",
"gui_settings_autoupdate_label": "",
"gui_settings_autoupdate_option": "",
"gui_settings_autoupdate_timestamp": "",
"gui_settings_autoupdate_timestamp_never": "",
"gui_settings_autoupdate_check_button": "",
"gui_settings_general_label": "",
"gui_settings_onion_label": "",
"gui_settings_sharing_label": "",
"gui_settings_close_after_first_download_option": "",
"gui_settings_connection_type_label": "",
"gui_settings_connection_type_bundled_option": "",
"gui_settings_connection_type_automatic_option": "",
"gui_settings_connection_type_control_port_option": "",
"gui_settings_connection_type_socket_file_option": "",
"gui_settings_connection_type_test_button": "",
"gui_settings_control_port_label": "",
"gui_settings_socket_file_label": "",
"gui_settings_socks_label": "",
"gui_settings_authenticate_label": "",
"gui_settings_authenticate_no_auth_option": "",
"gui_settings_authenticate_password_option": "",
"gui_settings_password_label": "",
"gui_settings_tor_bridges": "",
"gui_settings_tor_bridges_no_bridges_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "",
"gui_settings_meek_lite_expensive_warning": "",
"gui_settings_tor_bridges_custom_radio_option": "",
"gui_settings_tor_bridges_custom_label": "",
"gui_settings_tor_bridges_invalid": "",
"gui_settings_button_save": "",
"gui_settings_button_cancel": "",
"gui_settings_button_help": "",
"gui_settings_shutdown_timeout_checkbox": "",
"gui_settings_shutdown_timeout": "",
"settings_error_unknown": "",
"settings_error_automatic": "",
"settings_error_socket_port": "",
"settings_error_socket_file": "",
"settings_error_auth": "",
"settings_error_missing_password": "",
"settings_error_unreadable_cookie_file": "",
"settings_error_bundled_tor_not_supported": "",
"settings_error_bundled_tor_timeout": "",
"settings_error_bundled_tor_broken": "",
"settings_test_success": "",
"error_tor_protocol_error": "",
"error_tor_protocol_error_unknown": "",
"error_invalid_private_key": "",
"connecting_to_tor": "",
"update_available": "",
"update_error_check_error": "",
"update_error_invalid_latest_version": "",
"update_not_available": "",
"gui_tor_connection_ask": "",
"gui_tor_connection_ask_open_settings": "",
"gui_tor_connection_ask_quit": "",
"gui_tor_connection_error_settings": "",
"gui_tor_connection_canceled": "",
"gui_tor_connection_lost": "",
"gui_server_started_after_timeout": "",
"gui_server_timeout_expired": "",
"share_via_onionshare": "",
"gui_connect_to_tor_for_onion_settings": "",
"gui_use_legacy_v2_onions_checkbox": "",
"gui_save_private_key_checkbox": "",
"gui_share_url_description": "",
"gui_receive_url_description": "",
"gui_url_label_persistent": "",
"gui_url_label_stay_open": "",
"gui_url_label_onetime": "",
"gui_url_label_onetime_and_persistent": "",
"gui_status_indicator_share_stopped": "",
"gui_status_indicator_share_working": "",
"gui_status_indicator_share_started": "",
"gui_status_indicator_receive_stopped": "",
"gui_status_indicator_receive_working": "",
"gui_status_indicator_receive_started": "",
"gui_file_info": "",
"gui_file_info_single": "",
"history_in_progress_tooltip": "",
"history_completed_tooltip": "",
"error_cannot_create_data_dir": "",
"receive_mode_data_dir": "",
"receive_mode_warning": "",
"gui_receive_mode_warning": "",
"receive_mode_upload_starting": "",
"receive_mode_received_file": "",
"gui_mode_share_button": "",
"gui_mode_receive_button": "",
"gui_settings_receiving_label": "",
"gui_settings_data_dir_label": "",
"gui_settings_data_dir_browse_button": "",
"gui_settings_public_mode_checkbox": "",
"gui_open_folder_error_nautilus": "",
"gui_settings_language_label": "",
"gui_settings_language_changed_notice": "",
"systray_menu_exit": "",
"systray_page_loaded_title": "",
"systray_page_loaded_message": "",
"systray_share_started_title": "",
"systray_share_started_message": "",
"systray_share_completed_title": "",
"systray_share_completed_message": "",
"systray_share_canceled_title": "",
"systray_share_canceled_message": "",
"systray_receive_started_title": "",
"systray_receive_started_message": "",
"gui_all_modes_history": "",
"gui_all_modes_clear_history": "",
"gui_all_modes_transfer_started": "",
"gui_all_modes_transfer_finished_range": "",
"gui_all_modes_transfer_finished": "",
"gui_all_modes_transfer_canceled_range": "",
"gui_all_modes_transfer_canceled": "",
"gui_all_modes_progress_complete": "",
"gui_all_modes_progress_starting": "",
"gui_all_modes_progress_eta": "",
"gui_share_mode_no_files": "",
"gui_share_mode_timeout_waiting": "",
"gui_receive_mode_no_files": "",
"gui_receive_mode_timeout_waiting": ""
}

View File

@ -69,7 +69,7 @@
"gui_settings_window_title": "Innstillinger",
"gui_settings_whats_this": "<a href='{0:s}'>Hva er dette?</a>",
"gui_settings_stealth_option": "Bruk klientidentifisering",
"gui_settings_stealth_hidservauth_string": "Siden du har lagret din private nøkkel for gjenbruk, kan du nå\nklikke for å kopiere din HidServAuth-linje.",
"gui_settings_stealth_hidservauth_string": "Siden du har lagret din private nøkkel for gjenbruk, kan du nå klikke for å kopiere din HidServAuth-linje.",
"gui_settings_autoupdate_label": "Se etter ny versjon",
"gui_settings_autoupdate_option": "Gi meg beskjed når en ny versjon er tilgjengelig",
"gui_settings_autoupdate_timestamp": "Sist sjekket: {}",
@ -216,5 +216,6 @@
"gui_receive_mode_no_files": "Ingen filer mottatt enda",
"gui_receive_mode_timeout_waiting": "Venter på fullføring av mottak",
"gui_all_modes_transfer_canceled_range": "Avbrutt {} - {}",
"gui_all_modes_transfer_canceled": "Avbrutt {}"
"gui_all_modes_transfer_canceled": "Avbrutt {}",
"gui_settings_onion_label": "Løk-innstillinger"
}

View File

@ -208,5 +208,10 @@
"gui_all_modes_transfer_canceled": "Cancelado {}",
"gui_share_mode_timeout_waiting": "Esperando para completar o envio",
"gui_receive_mode_no_files": "Nenhum arquivo recebido",
"gui_receive_mode_timeout_waiting": "Esperando para completar o recebimento"
"gui_receive_mode_timeout_waiting": "Esperando para completar o recebimento",
"gui_settings_onion_label": "Configurando Onion",
"systray_page_loaded_message": "Endereço OnionShare foi carregado",
"gui_all_modes_progress_complete": "%p%, {0:s} em curso.",
"gui_all_modes_progress_starting": "{0:s}, %p% (calculando)",
"gui_all_modes_progress_eta": "{0:s}, Tempo aproximado: {1:s}, %p%"
}

View File

@ -8,9 +8,9 @@
"ctrlc_to_stop": "Tryck ned Ctrl+C för att stoppa servern",
"not_a_file": "{0:s} är inte en giltig fil.",
"not_a_readable_file": "{0:s} är inte en läsbar fil.",
"no_available_port": "Kunde inte hitta en ledig kort för att börja onion-tjänsten",
"no_available_port": "Kunde inte hitta en ledig kort för att starta onion-tjänsten",
"other_page_loaded": "Adress laddad",
"close_on_timeout": "Stoppad för att automatiska stopp-timern tiden tog slut",
"close_on_timeout": "Stoppad för att tiden för den automatiska stopp-tidtagaren löpte ut",
"closing_automatically": "Stoppad för att hämtningen är klar",
"timeout_download_still_running": "Väntar på att nedladdningen ska bli klar",
"timeout_upload_still_running": "Väntar på att uppladdningen ska bli klar",
@ -26,7 +26,7 @@
"systray_upload_started_message": "En användare började ladda upp filer på din dator",
"help_local_only": "Använd inte Tor (endast för utveckling)",
"help_stay_open": "Fortsätt dela efter att filer har skickats",
"help_autostop_timer": "Avbryt delning efter ett bestämt antal sekunder",
"help_autostop_timer": "Sluta dela efter ett bestämt antal sekunder",
"help_stealth": "Använd klient-auktorisering (avancerat)",
"help_receive": "Ta emot delningar istället för att skicka dem",
"help_debug": "Logga OnionShare fel till stdout och webbfel till hårddisken",
@ -39,11 +39,11 @@
"gui_share_start_server": "Börja dela",
"gui_share_stop_server": "Avbryt delning",
"gui_share_stop_server_shutdown_timeout": "Avbryt Delning ({}s kvarstår)",
"gui_share_stop_server_shutdown_timeout_tooltip": "Automatiska stopp-timern avslutar vid {}",
"gui_receive_start_server": "Börja mottagarläge",
"gui_share_stop_server_shutdown_timeout_tooltip": "Automatiska stopp-tidtagaren avslutar vid {}",
"gui_receive_start_server": "Starta mottagarläge",
"gui_receive_stop_server": "Avsluta Mottagarläge",
"gui_receive_stop_server_shutdown_timeout": "Avsluta Mottagarläge ({}s kvarstår)",
"gui_receive_stop_server_shutdown_timeout_tooltip": "Auto-stop timer avslutas kl {}",
"gui_receive_stop_server_shutdown_timeout_tooltip": "Automatiska stopp-tidtagaren avslutar vid {}",
"gui_copy_url": "Kopiera Adress",
"gui_copy_hidservauth": "Kopiera HidServAuth",
"gui_downloads": "Nedladdningshistorik",
@ -70,7 +70,7 @@
"gui_settings_window_title": "Inställningar",
"gui_settings_whats_this": "<a href='{0:s}'>Vad är det här?</a>",
"gui_settings_stealth_option": "Använd klientauktorisering",
"gui_settings_stealth_hidservauth_string": "Efter att ha sparat din privata nyckel för återanvändning, innebär att du kan nu\nklicka för att kopiera din HidServAuth.",
"gui_settings_stealth_hidservauth_string": "Efter att ha sparat din privata nyckel för återanvändning, innebär det att du nu kan klicka för att kopiera din HidServAuth.",
"gui_settings_autoupdate_label": "Sök efter ny version",
"gui_settings_autoupdate_option": "Meddela mig när en ny version är tillgänglig",
"gui_settings_autoupdate_timestamp": "Senast kontrollerad: {}",
@ -105,7 +105,7 @@
"gui_settings_button_save": "Spara",
"gui_settings_button_cancel": "Avbryt",
"gui_settings_button_help": "Hjälp",
"gui_settings_shutdown_timeout_checkbox": "Använd automatiska stopp-timern",
"gui_settings_shutdown_timeout_checkbox": "Använd den automatiska stopp-tidtagaren",
"gui_settings_shutdown_timeout": "Stoppa delningen vid:",
"settings_error_unknown": "Kan inte ansluta till Tor-regulatorn eftersom dina inställningar inte är vettiga.",
"settings_error_automatic": "Kunde inte ansluta till Tor-regulatorn. Körs Tor Browser (tillgänglig från torproject.org) i bakgrunden?",
@ -117,7 +117,7 @@
"settings_error_bundled_tor_not_supported": "Användning av Tor-versionen som följer med OnionShare fungerar inte i utvecklarläge på Windows eller macOS.",
"settings_error_bundled_tor_timeout": "Det tar för lång tid att ansluta till Tor. Kanske är du inte ansluten till Internet, eller har en felaktig systemklocka?",
"settings_error_bundled_tor_broken": "OnionShare kunde inte ansluta till Tor i bakgrunden:\n{}",
"settings_test_success": "Ansluten till Tor-regulatorn.\n\nTor version: {}\nStöder efemära onion-tjänster: {}.\nStöder klientautentisering: {}.\nStöder nästa generations .onion-adresser: {}.",
"settings_test_success": "Ansluten till Tor-regulatorn.\n\nTor-version: {}\nStöder efemära onion-tjänster: {}.\nStöder klientautentisering: {}.\nStöder nästa generations .onion-adresser: {}.",
"error_tor_protocol_error": "Det fanns ett fel med Tor: {}",
"error_tor_protocol_error_unknown": "Det fanns ett okänt fel med Tor",
"error_invalid_private_key": "Denna privata nyckeltyp stöds inte",
@ -132,9 +132,9 @@
"gui_tor_connection_error_settings": "Försök ändra hur OnionShare ansluter till Tor-nätverket i inställningarna.",
"gui_tor_connection_canceled": "Kunde inte ansluta till Tor.\n\nSe till att du är ansluten till Internet, öppna sedan OnionShare och ställ in anslutningen till Tor.",
"gui_tor_connection_lost": "Frånkopplad från Tor.",
"gui_server_started_after_timeout": "Automatiska stopp-timern tog slut innan servern startade.\nVänligen gör en ny delning.",
"gui_server_timeout_expired": "Automatiska stopp-timern har redan slutat.\nUppdatera den för att börja dela.",
"share_via_onionshare": "OnionShare den",
"gui_server_started_after_timeout": "Tiden för den automatiska stopp-timern löpte ut innan servern startade.\nVänligen gör en ny delning.",
"gui_server_timeout_expired": "Tiden för den automatiska stopp-tidtagaren löpte redan ut.\nUppdatera den för att börja dela.",
"share_via_onionshare": "Dela den med OnionShare",
"gui_use_legacy_v2_onions_checkbox": "Använd äldre adresser",
"gui_save_private_key_checkbox": "Använd en beständig adress",
"gui_share_url_description": "<b>Alla</b> med denna OnionShare-adress kan <b>hämta</b> dina filer med hjälp av <b>Tor Browser</b>: <img src='{}' />",
@ -211,5 +211,6 @@
"gui_receive_mode_no_files": "Inga filer har mottagits ännu",
"gui_receive_mode_timeout_waiting": "Väntar på att avsluta mottagande",
"gui_all_modes_transfer_canceled_range": "Avbröt {} - {}",
"gui_all_modes_transfer_canceled": "Avbröt {}"
"gui_all_modes_transfer_canceled": "Avbröt {}",
"gui_settings_onion_label": "Inställningar för Onion"
}

View File

@ -10,7 +10,7 @@
"not_a_readable_file": "{0:s}不是可读文件.",
"no_available_port": "找不到可用于开启onion服务的端口",
"other_page_loaded": "地址已加载完成",
"close_on_timeout": "终止 原因:自动停止计时器的时间已到",
"close_on_timeout": "停止原因:自动停止计时器的时间已到",
"closing_automatically": "终止 原因:传输已完成",
"timeout_download_still_running": "",
"large_filesize": "警告:分享大文件可能会用上数小时",
@ -23,12 +23,12 @@
"systray_download_canceled_message": "",
"systray_upload_started_title": "",
"systray_upload_started_message": "",
"help_local_only": "不使用Tor(只限开发测试)",
"help_local_only": "不使用Tor(仅开发测试)",
"help_stay_open": "文件传输完成后继续分享",
"help_autostop_timer": "超过给定时间(秒)后,终止分享.",
"help_autostop_timer": "超过给定时间(秒)后终止分享",
"help_stealth": "使用服务端认证(高级选项)",
"help_receive": "仅接收分享的文件,不发送",
"help_debug": "将OnionShare错误日志记录到stdout,将web错误日志记录到磁盘",
"help_receive": "仅接收分享的文件不发送",
"help_debug": "将OnionShare错误日志记录到stdout将web错误日志记录到磁盘",
"help_filename": "要分享的文件或文件夹的列表",
"help_config": "自定义JSON配置文件的路径(可选)",
"gui_drag_and_drop": "将文件或文件夹拖动到这里来开始分享",
@ -37,7 +37,7 @@
"gui_choose_items": "选取",
"gui_share_start_server": "开始分享",
"gui_share_stop_server": "停止分享",
"gui_share_stop_server_shutdown_timeout": "停止分享(还剩{}秒)",
"gui_share_stop_server_shutdown_timeout": "停止分享(还剩{}秒)",
"gui_share_stop_server_shutdown_timeout_tooltip": "在{}自动停止",
"gui_receive_start_server": "开启接受模式",
"gui_receive_stop_server": "停止接受模式",
@ -56,20 +56,20 @@
"gui_download_upload_progress_complete": "",
"gui_download_upload_progress_starting": "",
"gui_download_upload_progress_eta": "",
"version_string": "版本: OnionShare {0:s} | https://onionshare.org/",
"version_string": "版本 OnionShare {0:s} | https://onionshare.org/",
"gui_quit_title": "再等等",
"gui_share_quit_warning": "您有文件正在传输中...您确定要退出OnionShare吗?",
"gui_receive_quit_warning": "您有文件还正在接收中...您确定要退出OnionShare吗?",
"gui_quit_warning_quit": "退出",
"gui_quit_warning_dont_quit": "取消",
"error_rate_limit": "有人您对地址发出过多错误请求,这很可能说明有人在尝试猜测您的地址.因此为了安全OinionShare已终止服务.请重新开启分享并且向收件人发送新地址.",
"error_rate_limit": "有人您对地址发出过多错误请求这很可能说明有人在尝试猜测您的地址因此为了安全OinionShare已终止服务。请重新开启分享并且向收件人发送新地址。",
"zip_progress_bar_format": "压缩中: %p%",
"error_stealth_not_supported": "要使用服务端认证您至少需要的最低版本要求是Tor 0.2.9.1-alpha (or Tor Browser 6.5)和python3-stem 1.5.0.两者缺一不可,同时需要.",
"error_ephemeral_not_supported": "OnionShare至少同时需要Tor 0.2.7.1和python3-stem 1.4.0来运行.",
"error_stealth_not_supported": "要使用服务端认证您至少需要的最低版本要求是Tor 0.2.9.1-alpha (or Tor Browser 6.5)和python3-stem 1.5.0。两者缺一不可,同时需要。",
"error_ephemeral_not_supported": "OnionShare至少同时需要Tor 0.2.7.1和python3-stem 1.4.0来运行",
"gui_settings_window_title": "设置",
"gui_settings_whats_this": "<a href='{0:s}'>这是什么?</a>",
"gui_settings_stealth_option": "使用客户端认证",
"gui_settings_stealth_hidservauth_string": "已保存了你的私钥用于重复使用,意味着您现在可以\n点击这里来复制您的HidServAuth.",
"gui_settings_stealth_hidservauth_string": "已保存了你的私钥用于重复使用,意味着您现在可以点击这里来复制您的HidServAuth。",
"gui_settings_autoupdate_label": "检查新版本",
"gui_settings_autoupdate_option": "有新版本可用时告知我",
"gui_settings_autoupdate_timestamp": "上次检查更新的时间:{}",
@ -79,12 +79,12 @@
"gui_settings_sharing_label": "分享设置",
"gui_settings_close_after_first_download_option": "文件发送完成后停止分享",
"gui_settings_connection_type_label": "OnionShare应如何连接Tor?",
"gui_settings_connection_type_bundled_option": "使用OnionShare内置的tor",
"gui_settings_connection_type_automatic_option": "尝试使用Tor Browser(Tor浏览器)的设置",
"gui_settings_connection_type_bundled_option": "使用OnionShare内置的Tor",
"gui_settings_connection_type_automatic_option": "尝试使用Tor BrowserTor浏览器的设置",
"gui_settings_connection_type_control_port_option": "用特定端口连接",
"gui_settings_connection_type_socket_file_option": "使用socket文档的设置连接",
"gui_settings_connection_type_test_button": "测试tor连接",
"gui_settings_control_port_label": "控制端口",
"gui_settings_control_port_label": "控制端口",
"gui_settings_socket_file_label": "Socket配置文档",
"gui_settings_socks_label": "SOCKS 端口",
"gui_settings_authenticate_label": "Tor认证设置",
@ -105,36 +105,36 @@
"gui_settings_button_cancel": "取消",
"gui_settings_button_help": "帮助",
"gui_settings_shutdown_timeout_checkbox": "使用自动停止计时器",
"gui_settings_shutdown_timeout": "在(时间)停止分享",
"gui_settings_shutdown_timeout": "停止分享时间:",
"settings_error_unknown": "无法连接Tor控制件因为您的设置无法被理解.",
"settings_error_automatic": "无法连接tor控制件.Tor浏览器是否在后台工作(从torproject.org可以获得Tor Browser)",
"settings_error_socket_port": "在socket端口{}:{}无法连接tor控制件.",
"settings_error_socket_file": "无法使用socket配置文档的设置连接tor控制件",
"settings_error_auth": "已连接到了{}:{},但是无法认证也许这不是tor控制件",
"settings_error_socket_file": "无法使用socket配置文档{}的设置连接Tor控制件。",
"settings_error_auth": "已连接到了{}:{}但是无法认证也许这不是tor控制件",
"settings_error_missing_password": "已连接到tor控制件但需要密码来认证.",
"settings_error_unreadable_cookie_file": "已连接到tor控制件但可能密码错误或者没有读取cookie文件的权限.",
"settings_error_bundled_tor_not_supported": "OnionShare自带的Tor无法在Windows或macOS下运行开发者模式",
"settings_error_unreadable_cookie_file": "已连接到Tor控制件但可能密码错误或者没有读取cookie文件的权限。",
"settings_error_bundled_tor_not_supported": "OnionShare自带的Tor无法在Windows或macOS下运行开发者模式",
"settings_error_bundled_tor_timeout": "尝试连接tor的用时过长也许您的网络有问题或者是系统时间不准确",
"settings_error_bundled_tor_broken": "OnionShare无法在后台连接Tor\n{}",
"settings_test_success": "已连接到Tor控制件\n\nTor版本: {}\n支持短期onion服务: {}.\n支持客户端认证: {}.\n支持新一代.onion地址: {}.",
"settings_test_success": "已连接到Tor控制件\n\nTor版本{}\n支持短期onion服务{}。\n支持客户端认证{}。\n支持新一代.onion地址{}。",
"error_tor_protocol_error": "Tor出现错误: {}",
"error_tor_protocol_error_unknown": "Tor出现未知错误",
"error_invalid_private_key": "不支持这种类型的私钥",
"connecting_to_tor": "正在连接Tor网络",
"update_available": "有新版本的OnionShare可用<a href='{}'>请点击这里</a> 来获得.<br><br>您在使用的版本为 {} 最新的可用版本为 {}.",
"update_error_check_error": "无法检查更新:OnionShare官网对最新版本无法识别'{}'…",
"update_error_check_error": "无法检查更新OnionShare官网对最新版本无法识别'{}'…",
"update_error_invalid_latest_version": "无法检查更新:也许您没有连接到Tor?或者OnionShare官网不可用?",
"update_not_available": "您现在运行的OnionShare为最新版本.",
"gui_tor_connection_ask": "打开设置来查看Tor连接",
"gui_tor_connection_ask_open_settings": "是的",
"gui_tor_connection_ask_quit": "退出",
"gui_tor_connection_error_settings": "请尝试在设置中设定OnionShare连接Tor的方式.",
"gui_tor_connection_canceled": "无法连接Tor.\n\n请确保您一连接到网络然后重启OnionShare并设置Tor连接.",
"gui_tor_connection_canceled": "无法连接Tor。\n\n请确保您一连接到网络然后重启OnionShare并设置Tor连接。",
"gui_tor_connection_lost": "已和Tor断开连接.",
"gui_server_started_after_timeout": "在服务开始之前自动停止计时器的时间已到.\n请建立新的分享.",
"gui_server_timeout_expired": "自动停止计时器的时间已到.\n请更新其设置来开始分享.",
"gui_server_timeout_expired": "自动停止计时器的时间已到。\n请更新其设置来开始分享。",
"share_via_onionshare": "用OnionShare来分享",
"gui_use_legacy_v2_onions_checkbox": "使用古老的地址",
"gui_use_legacy_v2_onions_checkbox": "使用的地址",
"gui_save_private_key_checkbox": "使用长期地址",
"gui_share_url_description": "<b>任何人</b>只要拥有这个OnionShare 地址,都可以用<b>Tor浏览器</b>来从您的设备进行文件<b>下载</b><img src='{}' />",
"gui_receive_url_description": "<b>任何人</b>只要拥有这个OnionShare 地址,都可以用<b>Tor浏览器</b>来给你的设备进行文件<b>上传</b><img src='{}' />",
@ -179,7 +179,7 @@
"gui_upload_finished_range": "",
"gui_upload_finished": "",
"gui_download_in_progress": "",
"gui_open_folder_error_nautilus": "无法打开文件夹,原因:nautilus不可用.文件在这里: {}",
"gui_open_folder_error_nautilus": "无法打开文件夹,原因nautilus不可用。文件在这里{}",
"gui_settings_language_label": "首选语言",
"gui_settings_language_changed_notice": "请重启OnionShare以使您的语言改变设定生效.",
"gui_add_files": "添加文件",
@ -203,7 +203,7 @@
"gui_all_modes_transfer_started": "已开始{}",
"gui_all_modes_transfer_finished_range": "已传输 {} - {}",
"gui_all_modes_transfer_finished": "已传输完成 {}",
"gui_all_modes_progress_complete": "%p%, {0:s} 已完成.",
"gui_all_modes_progress_complete": "%p%{0:s} 已完成。",
"gui_all_modes_progress_starting": "{0:s}, %p% (计算中)",
"gui_all_modes_progress_eta": "{0:s}, 预计完成时间: {1:s}, %p%",
"gui_share_mode_no_files": "还没有文件发出",

View File

@ -1,19 +1,19 @@
{
"config_onion_service": "",
"preparing_files": "",
"give_this_url": "",
"give_this_url_stealth": "",
"give_this_url_receive": "",
"give_this_url_receive_stealth": "",
"ctrlc_to_stop": "",
"not_a_file": "",
"not_a_readable_file": "",
"no_available_port": "",
"other_page_loaded": "",
"close_on_timeout": "",
"closing_automatically": "",
"config_onion_service": "正在端口{0:d}啟動onion服務...",
"preparing_files": "壓縮檔案中...",
"give_this_url": "請將這串地址交給接收者:",
"give_this_url_stealth": "請將這串地址以及HidServAuth交給接收者:",
"give_this_url_receive": "請將這串地址交給傳送者:",
"give_this_url_receive_stealth": "請將這串地址以及HidServAuth交給傳送者:",
"ctrlc_to_stop": "按下Ctrl+C以停止服務",
"not_a_file": "{0:s} 不是一個可用的檔案。",
"not_a_readable_file": "{0:s} 不是一個可讀取的檔案。",
"no_available_port": "找不到一個可用的端口來啟動onion服務",
"other_page_loaded": "已載入的地址",
"close_on_timeout": "因計數器超時,已停止",
"closing_automatically": "因傳輸完成,已停止",
"timeout_download_still_running": "",
"large_filesize": "",
"large_filesize": "警告:傳輸巨大的檔案將有可能耗時數小時以上",
"systray_menu_exit": "離開",
"systray_download_started_title": "",
"systray_download_started_message": "",
@ -23,114 +23,114 @@
"systray_download_canceled_message": "",
"systray_upload_started_title": "",
"systray_upload_started_message": "",
"help_local_only": "",
"help_stay_open": "",
"help_autostop_timer": "",
"help_stealth": "",
"help_receive": "",
"help_debug": "",
"help_filename": "",
"help_config": "",
"gui_drag_and_drop": "",
"help_local_only": "不要使用Tor(僅限開發使用)",
"help_stay_open": "繼續分享即使檔案已傳送",
"help_autostop_timer": "在所給定的秒數後停止分享",
"help_stealth": "使用客戶端認證 (進階選項)",
"help_receive": "接收分享的檔案而不是傳送他們",
"help_debug": "將OnionShare的錯誤日誌輸出到stdout, 並且將網路錯誤輸出到硬碟",
"help_filename": "列舉所要分享的檔案或資料夾",
"help_config": "自定義的JSON設置檔路徑(選擇性)",
"gui_drag_and_drop": "拖曳檔案及資料夾來開始分享",
"gui_add": "新增",
"gui_delete": "刪除",
"gui_choose_items": "選擇",
"gui_share_start_server": "",
"gui_share_stop_server": "",
"gui_share_stop_server_shutdown_timeout": "",
"gui_share_stop_server_shutdown_timeout_tooltip": "",
"gui_receive_start_server": "",
"gui_receive_stop_server": "",
"gui_receive_stop_server_shutdown_timeout": "",
"gui_receive_stop_server_shutdown_timeout_tooltip": "",
"gui_copy_url": "",
"gui_copy_hidservauth": "",
"gui_choose_items": "瀏覽",
"gui_share_start_server": "開始分享",
"gui_share_stop_server": "停止分享",
"gui_share_stop_server_shutdown_timeout": "停止分享 (剩餘{}秒)",
"gui_share_stop_server_shutdown_timeout_tooltip": "計數器將在{}停止",
"gui_receive_start_server": "啟動接收模式",
"gui_receive_stop_server": "停止接收模式",
"gui_receive_stop_server_shutdown_timeout": "停止接收模式 (剩餘{}秒)",
"gui_receive_stop_server_shutdown_timeout_tooltip": "計數器將在{}停止",
"gui_copy_url": "複製地址",
"gui_copy_hidservauth": "複製HidServAuth",
"gui_downloads": "",
"gui_no_downloads": "",
"gui_canceled": "取消",
"gui_copied_url_title": "",
"gui_copied_url": "",
"gui_copied_hidservauth_title": "",
"gui_copied_hidservauth": "",
"gui_please_wait": "",
"gui_canceled": "取消",
"gui_copied_url_title": "已複製OnionShare地址",
"gui_copied_url": "OnionShare地址已複製到剪貼簿",
"gui_copied_hidservauth_title": "已複製HidServAuth",
"gui_copied_hidservauth": "HidServAuth已複製到剪貼簿",
"gui_please_wait": "啟動中...點擊以取消。",
"gui_download_upload_progress_complete": "",
"gui_download_upload_progress_starting": "",
"gui_download_upload_progress_eta": "",
"version_string": "",
"gui_quit_title": "",
"gui_share_quit_warning": "",
"gui_receive_quit_warning": "",
"gui_quit_warning_quit": "離開",
"gui_quit_warning_dont_quit": "",
"error_rate_limit": "",
"zip_progress_bar_format": "",
"error_stealth_not_supported": "",
"error_ephemeral_not_supported": "",
"version_string": "OnionShare {0:s} | https://onionshare.org/",
"gui_quit_title": "確定要離開嗎",
"gui_share_quit_warning": "仍在傳送檔案您確定要結束OnionShare嗎?",
"gui_receive_quit_warning": "仍在接收檔案您確定要結束OnionShare嗎?",
"gui_quit_warning_quit": "結束",
"gui_quit_warning_dont_quit": "取消",
"error_rate_limit": "有人嘗試過多次您的地址代表他們可能是用猜的因此OnionShare已經停止服務。再次啟動分享並傳送新的地址給接收者以開始分享。",
"zip_progress_bar_format": "壓縮中: %p%",
"error_stealth_not_supported": "為了使用客戶端認證, 您至少需要 Tor 0.2.9.1-alpha (或 Tor Browser 6.5) 以及 python3-stem 1.5.0.",
"error_ephemeral_not_supported": "OnionShare 需要至少 Tor 0.2.7.1 以及 python3-stem 1.4.0.",
"gui_settings_window_title": "設定",
"gui_settings_whats_this": "",
"gui_settings_stealth_option": "",
"gui_settings_stealth_hidservauth_string": "",
"gui_settings_whats_this": "<a href='{0:s}'>這是什麼?</a>",
"gui_settings_stealth_option": "使用客戶端認證",
"gui_settings_stealth_hidservauth_string": "已經將您的私鑰存起來以便使用代表您現在可以點選以複製您的HidSerAuth。",
"gui_settings_autoupdate_label": "檢查新版本",
"gui_settings_autoupdate_option": "",
"gui_settings_autoupdate_timestamp": "",
"gui_settings_autoupdate_timestamp_never": "不使用",
"gui_settings_autoupdate_check_button": "",
"gui_settings_autoupdate_option": "當有新版本的時候提醒我",
"gui_settings_autoupdate_timestamp": "上一次檢查時間: {}",
"gui_settings_autoupdate_timestamp_never": "從未",
"gui_settings_autoupdate_check_button": "檢查新版本",
"gui_settings_general_label": "一般設定",
"gui_settings_sharing_label": "",
"gui_settings_close_after_first_download_option": "",
"gui_settings_connection_type_label": "",
"gui_settings_connection_type_bundled_option": "",
"gui_settings_connection_type_automatic_option": "",
"gui_settings_connection_type_control_port_option": "",
"gui_settings_connection_type_socket_file_option": "",
"gui_settings_connection_type_test_button": "",
"gui_settings_control_port_label": "管理連接埠",
"gui_settings_socket_file_label": "",
"gui_settings_socks_label": "",
"gui_settings_authenticate_label": "",
"gui_settings_authenticate_no_auth_option": "",
"gui_settings_authenticate_password_option": "Password",
"gui_settings_password_label": "Password",
"gui_settings_tor_bridges": "",
"gui_settings_tor_bridges_no_bridges_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option": "",
"gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option": "",
"gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "",
"gui_settings_meek_lite_expensive_warning": "",
"gui_settings_tor_bridges_custom_radio_option": "",
"gui_settings_tor_bridges_custom_label": "",
"gui_settings_tor_bridges_invalid": "",
"gui_settings_sharing_label": "分享設定",
"gui_settings_close_after_first_download_option": "當檔案已傳送時停止分享",
"gui_settings_connection_type_label": "OnionShare要如何連接到Tor?",
"gui_settings_connection_type_bundled_option": "使用OnionShare內建的Tor版本",
"gui_settings_connection_type_automatic_option": "嘗試auto-configuration with Tor Browser",
"gui_settings_connection_type_control_port_option": "使用control port",
"gui_settings_connection_type_socket_file_option": "使用Socket file",
"gui_settings_connection_type_test_button": "測試連接到Tor",
"gui_settings_control_port_label": "Control端口",
"gui_settings_socket_file_label": "Socket file",
"gui_settings_socks_label": "SOCKS端口",
"gui_settings_authenticate_label": "Tor 驗證設定",
"gui_settings_authenticate_no_auth_option": "沒有驗證或使用cookie驗證",
"gui_settings_authenticate_password_option": "密碼",
"gui_settings_password_label": "密碼",
"gui_settings_tor_bridges": "Tor bridge支援",
"gui_settings_tor_bridges_no_bridges_radio_option": "不要使用bridges",
"gui_settings_tor_bridges_obfs4_radio_option": "使用內建的obfs4 pluggable transports",
"gui_settings_tor_bridges_obfs4_radio_option_no_obfs4proxy": "使用內建的obfs4 pluggable transports (需要 obfs4proxy)",
"gui_settings_tor_bridges_meek_lite_azure_radio_option": "使用內建的 meek_lite (Azure) pluggable transports",
"gui_settings_tor_bridges_meek_lite_azure_radio_option_no_obfs4proxy": "使月內建的 meek_lite (Azure) pluggable transports (需要 obfs4proxy)",
"gui_settings_meek_lite_expensive_warning": "警告: The meek_lite bridges are very costly for the Tor Project to run.<br><br>Only use them if unable to connect to Tor directly, via obfs4 transports, or other normal bridges.",
"gui_settings_tor_bridges_custom_radio_option": "使用自定義的bridges",
"gui_settings_tor_bridges_custom_label": "你可以從 <a href=\"https://bridges.torproject.org/options\">https://bridges.torproject.org</a>取得bridges",
"gui_settings_tor_bridges_invalid": "您新增的bridges無效。\n請再次檢查他們或新增其他的。",
"gui_settings_button_save": "保存",
"gui_settings_button_cancel": "",
"gui_settings_button_help": "協助",
"gui_settings_shutdown_timeout_checkbox": "",
"gui_settings_shutdown_timeout": "",
"settings_error_unknown": "",
"settings_error_automatic": "",
"settings_error_socket_port": "",
"settings_error_socket_file": "",
"settings_error_auth": "",
"settings_error_missing_password": "",
"settings_error_unreadable_cookie_file": "",
"settings_error_bundled_tor_not_supported": "",
"settings_error_bundled_tor_timeout": "",
"settings_error_bundled_tor_broken": "",
"settings_test_success": "",
"error_tor_protocol_error": "",
"error_tor_protocol_error_unknown": "",
"error_invalid_private_key": "",
"connecting_to_tor": "",
"update_available": "",
"update_error_check_error": "",
"update_error_invalid_latest_version": "",
"update_not_available": "",
"gui_tor_connection_ask": "",
"gui_tor_connection_ask_open_settings": "",
"gui_tor_connection_ask_quit": "離開",
"gui_tor_connection_error_settings": "",
"gui_tor_connection_canceled": "",
"gui_tor_connection_lost": "",
"gui_settings_button_cancel": "取消",
"gui_settings_button_help": "說明",
"gui_settings_shutdown_timeout_checkbox": "使用自動停止計數器",
"gui_settings_shutdown_timeout": "在這個時間停止分享:",
"settings_error_unknown": "無法連接到Tor controller因為您的設定無效。",
"settings_error_automatic": "無法連機到Tor controller。Tor Browser(可以從torproject.org取得)是否正在背景運行?",
"settings_error_socket_port": "無法在{}:{}連接到Tor controller。",
"settings_error_socket_file": "無法使用Socket file {}連接到Tor controller。",
"settings_error_auth": "已連接到 {}:{} 但無法驗證。或許這個不是一個Tor controller?",
"settings_error_missing_password": "已連接到Tor controller,但是它需要密碼進行驗證。",
"settings_error_unreadable_cookie_file": "已連接到Tor controller但是密碼錯誤或是您沒有讀取cookie檔案的權限。",
"settings_error_bundled_tor_not_supported": "OnionShare附帶的Tor版本並不適用於Windows或macOS上的開發人員模式。",
"settings_error_bundled_tor_timeout": "Tor連接超時。您可能沒有連接網路或是系統時間設定錯誤?",
"settings_error_bundled_tor_broken": "OnionShare無法在背景連接到Tor:\n{}",
"settings_test_success": "已連接到Tor controller。\n\nTor版本: {}\n支援短期onion服務: {}.\n支援客戶端認證: {}.\n支援新一代.onion地址: {}.",
"error_tor_protocol_error": "Tor發生錯誤: {}",
"error_tor_protocol_error_unknown": "Tor發生了未知的錯誤",
"error_invalid_private_key": "此私鑰類型不受支援",
"connecting_to_tor": "正在連接Tor網路",
"update_available": "新版本的OnionShare已推出。 <a href='{}'>點此</a>獲取<br><br>您正在使用版本 {} 而最新版本是 {}。",
"update_error_check_error": "無法檢查新版本: OnionShare網站提示最新版本無法辨識'{}'…",
"update_error_invalid_latest_version": "無法檢查新版本:或許您尚未連接上Tor或是OnionShare官網失效?",
"update_not_available": "您正在使用最新版本的OnionShare。",
"gui_tor_connection_ask": "開啟設定來檢查Tor連接?",
"gui_tor_connection_ask_open_settings": "",
"gui_tor_connection_ask_quit": "",
"gui_tor_connection_error_settings": "試試在設定中改變OnionShare連接到Tor網路的方式。",
"gui_tor_connection_canceled": "無法連接到Tor。\n\n請確認您已連接上網路然後再重新開啟OnionShare並設定Tor連線。",
"gui_tor_connection_lost": "已斷開Tor連接。",
"gui_server_started_after_timeout": "",
"gui_server_timeout_expired": "",
"share_via_onionshare": "",
@ -181,5 +181,8 @@
"gui_download_in_progress": "",
"gui_open_folder_error_nautilus": "",
"gui_settings_language_label": "",
"gui_settings_language_changed_notice": ""
"gui_settings_language_changed_notice": "",
"gui_add_files": "新增檔案",
"gui_add_folder": "新增資料夾",
"gui_settings_onion_label": "Onion設定"
}

View File

@ -176,7 +176,7 @@ ul.flashes {
margin: 0;
padding: 0;
width: 800px;
max-width: 90%;
max-width: 500px;
margin: 0 auto;
}
@ -184,7 +184,7 @@ ul.flashes li {
margin: 0 0 5px 0;
padding: 5px;
list-style: none;
text-align: left;
text-align: center;
}
li.error {
@ -224,17 +224,15 @@ li.info {
}
div#noscript {
border: 1px solid #e55454;
text-align: left;
color: #e55454;
text-align: center;
color: #d709df;
padding: 1em;
line-height: 150%;
max-width: 900px;
margin: 100px 2em 0 2em;
margin: 0 auto;
}
div#noscript a, div#noscript a:visited {
color: #e27f7f;
color: #d709df;
}
.disable-noscript-xss-wrapper {

Binary file not shown.

After

Width:  |  Height:  |  Size: 804 B

View File

@ -1,16 +1,19 @@
<!DOCTYPE html>
<html>
<head>
<title>OnionShare: 403 Forbidden</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
<link href="/static/css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="info-wrapper">
<div class="info">
<p><img class="logo" src="/static/img/logo_large.png" title="OnionShare"></p>
<p class="info-header">You are not allowed to perform that action at this time.</p>
</div>
</div>
</body>
<head>
<title>OnionShare: 403 Forbidden</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
<link rel="stylesheet" rel="subresource" type="text/css" href="/static/css/style.css" media="all">
</head>
<body>
<div class="info-wrapper">
<div class="info">
<p><img class="logo" src="/static/img/logo_large.png" title="OnionShare"></p>
<p class="info-header">You are not allowed to perform that action at this time.</p>
</div>
</div>
</body>
</html>

View File

@ -1,16 +1,19 @@
<!DOCTYPE html>
<html>
<head>
<title>OnionShare: 404 Not Found</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
<link href="/static/css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="info-wrapper">
<div class="info">
<p><img class="logo" src="/static/img/logo_large.png" title="OnionShare"></p>
<p class="info-header">404 Not Found</p>
</div>
</div>
</body>
<head>
<title>OnionShare: 404 Not Found</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon">
<link rel="stylesheet" rel="subresource" type="text/css" href="/static/css/style.css" media="all">
</head>
<body>
<div class="info-wrapper">
<div class="info">
<p><img class="logo" src="/static/img/logo_large.png" title="OnionShare"></p>
<p class="info-header">404 Not Found</p>
</div>
</div>
</body>
</html>

View File

@ -1,10 +1,13 @@
<!DOCTYPE html>
<html>
<head>
<title>OnionShare</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
</head>
<body>
<p>OnionShare download in progress</p>
</body>
<head>
<title>OnionShare</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
</head>
<body>
<p>OnionShare download in progress</p>
</body>
</html>

View File

@ -2,8 +2,8 @@
<html>
<head>
<title>OnionShare</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
<link href="/static/css/style.css" rel="stylesheet" type="text/css" />
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon">
<link rel="stylesheet" rel="subresource" type="text/css" href="/static/css/style.css" media="all">
</head>
<body>
@ -13,16 +13,24 @@
</header>
<div class="upload-wrapper">
<!--
We are not using a <noscript> tag because it only works when the security slider is set to
Safest, not Safer: https://trac.torproject.org/projects/tor/ticket/29506
-->
<div id="noscript">
<p>
<img src="/static/img/warning.png" title="Warning" /><strong>Warning:</strong> Due to a bug in Tor Browser and Firefox, uploads
sometimes never finish. To upload reliably, either set your Tor Browser
<a rel="noreferrer" target="_blank" href="https://tb-manual.torproject.org/en-US/security-slider/">security slider</a>
to Standard or
<a target="_blank" href="/noscript-xss-instructions">turn off your Tor Browser's NoScript XSS setting</a>.</p>
</div>
<p><img class="logo" src="/static/img/logo_large.png" title="OnionShare"></p>
<p class="upload-header">Send Files</p>
<p class="upload-description">Select the files you want to send, then click "Send Files"...</p>
<form id="send" method="post" enctype="multipart/form-data" action="{{ upload_action }}">
<p><input type="file" id="file-select" name="file[]" multiple /></p>
<p><button type="submit" id="send-button" class="button">Send Files</button></p>
</form>
<div id="uploads"></div>
<div>
@ -37,22 +45,14 @@
</ul>
</div>
<!--
We are not using a <noscript> tag because it only works when the security slider is set to
Safest, not Safer: https://trac.torproject.org/projects/tor/ticket/29506
-->
<div id="noscript">
<p>
<strong>Warning:</strong> Due to a bug in Tor Browser and Firefox, uploads
sometimes never finish. To upload reliably, either set your Tor Browser
<a rel="noreferrer" target="_blank" href="https://tb-manual.torproject.org/en-US/security-slider/">security slider</a>
to Standard or
<a target="_blank" href="/noscript-xss-instructions">turn off your Tor Browser's NoScript XSS setting</a>.</p>
</div>
<script src="/static/js/receive-noscript.js"></script>
<form id="send" method="post" enctype="multipart/form-data" action="{{ upload_action }}">
<p><input type="file" id="file-select" name="file[]" multiple /></p>
<p><button type="submit" id="send-button" class="button">Send Files</button></p>
</form>
</div>
<script src="/static/js/receive-noscript.js"></script>
<script src="/static/js/jquery-3.3.1.min.js"></script>
<script src="/static/js/receive.js"></script>
<script async src="/static/js/receive.js"></script>
</body>
</html>

View File

@ -2,8 +2,8 @@
<html>
<head>
<title>OnionShare</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
<link href="/static/css/style.css" rel="stylesheet" type="text/css" />
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon">
<link rel="stylesheet" rel="subresource" type="text/css" href="/static/css/style.css" media="all">
</head>
<body>

View File

@ -1,56 +1,59 @@
<!DOCTYPE html>
<html>
<head>
<title>OnionShare</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
<link href="/static/css/style.css" rel="stylesheet" type="text/css" />
<meta name="onionshare-filename" content="{{ filename }}">
<meta name="onionshare-filesize" content="{{ filesize }}">
</head>
<body>
<header class="clearfix">
<div class="right">
<ul>
<li>Total size: <strong>{{ filesize_human }}</strong> {% if is_zipped %} (compressed){% endif %}</li>
{% if slug %}
<li><a class="button" href='/{{ slug }}/download'>Download Files</a></li>
{% else %}
<li><a class="button" href='/download'>Download Files</a></li>
{% endif %}
</ul>
</div>
<img class="logo" src="/static/img/logo.png" title="OnionShare">
<h1>OnionShare</h1>
</header>
<head>
<title>OnionShare</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon">
<link rel="stylesheet" rel="subresource" type="text/css" href="/static/css/style.css" media="all">
<meta name="onionshare-filename" content="{{ filename }}">
<meta name="onionshare-filesize" content="{{ filesize }}">
</head>
<body>
<header class="clearfix">
<div class="right">
<ul>
<li>Total size: <strong>{{ filesize_human }}</strong> {% if is_zipped %} (compressed){% endif %}</li>
{% if slug %}
<li><a class="button" href='/{{ slug }}/download'>Download Files</a></li>
{% else %}
<li><a class="button" href='/download'>Download Files</a></li>
{% endif %}
</ul>
</div>
<img class="logo" src="/static/img/logo.png" title="OnionShare">
<h1>OnionShare</h1>
</header>
<table class="file-list" id="file-list">
<tr>
<th id="filename-header">Filename</th>
<th id="size-header">Size</th>
<th></th>
</tr>
{% for info in file_info.dirs %}
<tr>
<td>
<img width="30" height="30" title="" alt="" src="/static/img/web_folder.png" />
{{ info.basename }}
</td>
<td>{{ info.size_human }}</td>
<td></td>
</tr>
{% endfor %}
{% for info in file_info.files %}
<tr>
<td>
<img width="30" height="30" title="" alt="" src="/static/img/web_file.png" />
{{ info.basename }}
</td>
<td>{{ info.size_human }}</td>
<td></td>
</tr>
{% endfor %}
</table>
<script async src="/static/js/send.js" charset="utf-8"></script>
</body>
<table class="file-list" id="file-list">
<tr>
<th id="filename-header">Filename</th>
<th id="size-header">Size</th>
<th></th>
</tr>
{% for info in file_info.dirs %}
<tr>
<td>
<img width="30" height="30" title="" alt="" src="/static/img/web_folder.png" />
{{ info.basename }}
</td>
<td>{{ info.size_human }}</td>
<td></td>
</tr>
{% endfor %}
{% for info in file_info.files %}
<tr>
<td>
<img width="30" height="30" title="" alt="" src="/static/img/web_file.png" />
{{ info.basename }}
</td>
<td>{{ info.size_human }}</td>
<td></td>
</tr>
{% endfor %}
</table>
<script src="/static/js/send.js"></script>
</body>
</html>

View File

@ -1,22 +1,25 @@
<!DOCTYPE html>
<html>
<head>
<title>OnionShare is closed</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon" />
<link href="/static/css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<header class="clearfix">
<img class="logo" src="/static/img/logo.png" title="OnionShare">
<h1>OnionShare</h1>
</header>
<div class="info-wrapper">
<div class="info">
<p><img class="logo" src="/static/img/logo_large.png" title="OnionShare"></p>
<p class="info-header">Thank you for using OnionShare</p>
<p class="info-description">You may now close this window.</p>
</div>
</div>
</body>
<head>
<title>OnionShare is closed</title>
<link href="/static/img/favicon.ico" rel="icon" type="image/x-icon">
<link rel="stylesheet" rel="subresource" type="text/css" href="/static/css/style.css" media="all">
</head>
<body>
<header class="clearfix">
<img class="logo" src="/static/img/logo.png" title="OnionShare">
<h1>OnionShare</h1>
</header>
<div class="info-wrapper">
<div class="info">
<p><img class="logo" src="/static/img/logo_large.png" title="OnionShare"></p>
<p class="info-header">Thank you for using OnionShare</p>
<p class="info-description">You may now close this window.</p>
</div>
</div>
</body>
</html>

View File

@ -5,7 +5,7 @@ from PyQt5 import QtCore, QtTest
from .GuiBaseTest import GuiBaseTest
class GuiReceiveTest(GuiBaseTest):
def upload_file(self, public_mode, file_to_upload, expected_basename):
def upload_file(self, public_mode, file_to_upload, expected_basename, identical_files_at_once=False):
'''Test that we can upload the file'''
files = {'file[]': open(file_to_upload, 'rb')}
if not public_mode:
@ -13,6 +13,9 @@ class GuiReceiveTest(GuiBaseTest):
else:
path = 'http://127.0.0.1:{}/upload'.format(self.gui.app.port)
response = requests.post(path, files=files)
if identical_files_at_once:
# Send a duplicate upload to test for collisions
response = requests.post(path, files=files)
QtTest.QTest.qWait(2000)
# Make sure the file is within the last 10 seconds worth of filenames
@ -20,7 +23,10 @@ class GuiReceiveTest(GuiBaseTest):
now = datetime.now()
for i in range(10):
date_dir = now.strftime("%Y-%m-%d")
time_dir = now.strftime("%H.%M.%S")
if identical_files_at_once:
time_dir = now.strftime("%H.%M.%S-1")
else:
time_dir = now.strftime("%H.%M.%S")
receive_mode_dir = os.path.join(self.gui.common.settings.get('data_dir'), date_dir, time_dir)
expected_filename = os.path.join(receive_mode_dir, expected_basename)
if os.path.exists(expected_filename):
@ -74,18 +80,6 @@ class GuiReceiveTest(GuiBaseTest):
self.assertEqual(mode.history.completed_count, before_completed_count)
self.assertEqual(len(mode.history.item_list.items), before_number_of_history_items)
def run_receive_mode_sender_closed_tests(self, public_mode):
'''Test that the share can be stopped by the sender in receive mode'''
if not public_mode:
path = 'http://127.0.0.1:{}/{}/close'.format(self.gui.app.port, self.gui.receive_mode.web.slug)
else:
path = 'http://127.0.0.1:{}/close'.format(self.gui.app.port)
response = requests.post(path)
self.server_is_stopped(self.gui.receive_mode, False)
self.web_server_is_stopped()
self.server_status_indicator_says_closed(self.gui.receive_mode, False)
# 'Grouped' tests follow from here
def run_all_receive_mode_setup_tests(self, public_mode):
@ -119,6 +113,9 @@ class GuiReceiveTest(GuiBaseTest):
self.counter_incremented(self.gui.receive_mode, 3)
self.upload_file(public_mode, '/tmp/testdir/test', 'test')
self.counter_incremented(self.gui.receive_mode, 4)
# Test uploading the same file twice at the same time, and make sure no collisions
self.upload_file(public_mode, '/tmp/test.txt', 'test.txt', True)
self.counter_incremented(self.gui.receive_mode, 6)
self.uploading_zero_files_shouldnt_change_ui(self.gui.receive_mode, public_mode)
self.history_indicator(self.gui.receive_mode, public_mode)
self.server_is_stopped(self.gui.receive_mode, False)

View File

@ -1,26 +0,0 @@
#!/usr/bin/env python3
import pytest
import unittest
from .GuiReceiveTest import GuiReceiveTest
class LocalReceiveModeSenderClosedTest(unittest.TestCase, GuiReceiveTest):
@classmethod
def setUpClass(cls):
test_settings = {
"receive_allow_receiver_shutdown": True
}
cls.gui = GuiReceiveTest.set_up(test_settings)
@classmethod
def tearDownClass(cls):
GuiReceiveTest.tear_down()
@pytest.mark.gui
def test_gui(self):
self.run_all_common_setup_tests()
self.run_all_receive_mode_tests(False, True)
self.run_receive_mode_sender_closed_tests(False)
if __name__ == "__main__":
unittest.main()

View File

@ -41,7 +41,7 @@ RANDOM_STR_REGEX = re.compile(r'^[a-z2-7]+$')
def web_obj(common_obj, mode, num_files=0):
""" Creates a Web object, in either share mode or receive mode, ready for testing """
common_obj.load_settings()
common_obj.settings = Settings(common_obj)
strings.load_strings(common_obj)
web = Web(common_obj, False, mode)
web.generate_slug()