mirror of https://github.com/iSoron/uhabits.git
parent
c380abad5a
commit
6af576c09c
@ -0,0 +1,24 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016-2019 Álinson Santos Xavier <isoron@gmail.com>
|
||||||
|
*
|
||||||
|
* This file is part of Loop Habit Tracker.
|
||||||
|
*
|
||||||
|
* Loop Habit Tracker is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version.
|
||||||
|
*
|
||||||
|
* Loop Habit Tracker is distributed in the hope that it will be useful, but
|
||||||
|
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
|
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
|
* more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.isoron.uhabits.i18n
|
||||||
|
|
||||||
|
interface LocaleHelper {
|
||||||
|
fun getStringsForCurrentLocale(): Strings
|
||||||
|
}
|
@ -1,192 +1,189 @@
|
|||||||
// --------------------------------------------------------------------------
|
|
||||||
// THIS FILE WAS AUTOMATICALLY GENERATED
|
|
||||||
//
|
|
||||||
// Please do not submit pull request to modify it. Corrections to translations
|
|
||||||
// may be submitted at https://translate.loophabits.org/
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
package org.isoron.uhabits.i18n
|
package org.isoron.uhabits.i18n
|
||||||
|
|
||||||
|
@Suppress("PropertyName", "unused")
|
||||||
open class Strings() {
|
open class Strings() {
|
||||||
open val app_name = "Loop Habit Tracker"
|
open val about = "About"
|
||||||
open val main_activity_title = "Habits"
|
open val action = "Action"
|
||||||
open val action_settings = "Settings"
|
open val action_settings = "Settings"
|
||||||
open val edit = "Edit"
|
|
||||||
open val delete = "Delete"
|
|
||||||
open val archive = "Archive"
|
|
||||||
open val unarchive = "Unarchive"
|
|
||||||
open val add_habit = "Add habit"
|
open val add_habit = "Add habit"
|
||||||
open val color_picker_default_title = "Change color"
|
open val all_time = "All time"
|
||||||
open val toast_habit_created = "Habit created"
|
open val any_day = "Any day of the week"
|
||||||
open val toast_habit_deleted = "Habits deleted"
|
open val any_weekday = "Monday to Friday"
|
||||||
open val toast_habit_restored = "Habits restored"
|
open val app_name = "Loop Habit Tracker"
|
||||||
open val toast_nothing_to_undo = "Nothing to undo"
|
open val archive = "Archive"
|
||||||
open val toast_nothing_to_redo = "Nothing to redo"
|
open val behavior = "Behavior"
|
||||||
open val toast_habit_changed = "Habit changed"
|
open val best_streaks = "Best streaks"
|
||||||
open val toast_habit_changed_back = "Habit changed back"
|
open val bug_report_failed = "Failed to generate bug report."
|
||||||
open val toast_habit_archived = "Habits archived"
|
open val by_color = "By color"
|
||||||
open val toast_habit_unarchived = "Habits unarchived"
|
open val by_name = "By name"
|
||||||
open val overview = "Overview"
|
open val by_score = "By score"
|
||||||
open val habit_strength = "Habit strength"
|
open val calendar = "Calendar"
|
||||||
open val history = "History"
|
open val cancel = "Cancel"
|
||||||
|
open val change_value = "Change value"
|
||||||
|
open val check = "Check"
|
||||||
|
open val checkmark = "Checkmark"
|
||||||
|
open val checkmark_stack_widget = "Checkmark Stack Widget"
|
||||||
open val clear = "Clear"
|
open val clear = "Clear"
|
||||||
open val description_hint = "Question (Did you … today?)"
|
open val clear_label = "Clear"
|
||||||
open val repeat = "Repeat"
|
open val color_picker_default_title = "Change color"
|
||||||
open val times_every = "times in"
|
open val could_not_export = "Failed to export data."
|
||||||
|
open val could_not_import = "Failed to import data."
|
||||||
|
open val count = "Count"
|
||||||
|
open val create_habit = "Create habit"
|
||||||
|
open val create_stackview_widget_button = "StackView Widget For All Habits"
|
||||||
|
open val current_streaks = "Current streak"
|
||||||
|
open val custom_frequency = "Custom …"
|
||||||
|
open val customize_notification = "Customize notifications"
|
||||||
|
open val customize_notification_summary = "Change sound, vibration, light and other notification settings"
|
||||||
|
open val database_repaired = "Database repaired."
|
||||||
|
open val day = "Day"
|
||||||
open val days = "days"
|
open val days = "days"
|
||||||
open val reminder = "Reminder"
|
open val delete = "Delete"
|
||||||
|
open val delete_habits = "Delete Habits"
|
||||||
|
open val delete_habits_message = "The habits will be permanently deleted. This action cannot be undone."
|
||||||
|
open val description_hint = "Question (Did you … today?)"
|
||||||
|
open val developers = "Developers"
|
||||||
open val discard = "Discard"
|
open val discard = "Discard"
|
||||||
open val save = "Save"
|
open val done_label = "Done"
|
||||||
open val streaks = "Streaks"
|
open val download = "Download"
|
||||||
open val no_habits_found = "You have no active habits"
|
open val edit = "Edit"
|
||||||
open val long_press_to_toggle = "Press-and-hold to check or uncheck"
|
|
||||||
open val reminder_off = "Off"
|
|
||||||
open val validation_name_should_not_be_blank = "Name cannot be blank."
|
|
||||||
open val validation_number_should_be_positive = "Number must be positive."
|
|
||||||
open val validation_at_most_one_rep_per_day = "You can have at most one repetition per day"
|
|
||||||
open val create_habit = "Create habit"
|
|
||||||
open val edit_habit = "Edit habit"
|
open val edit_habit = "Edit habit"
|
||||||
open val check = "Check"
|
open val every_day = "Every day"
|
||||||
open val snooze = "Later"
|
open val every_week = "Every week"
|
||||||
open val intro_title_1 = "Welcome"
|
open val every_x_days = "Every %d days"
|
||||||
open val intro_description_1 = "Loop Habit Tracker helps you create and maintain good habits."
|
open val every_x_months = "Every %d months"
|
||||||
open val intro_title_2 = "Create some new habits"
|
open val every_x_weeks = "Every %d weeks"
|
||||||
open val intro_description_2 = "Every day, after performing your habit, put a checkmark on the app."
|
open val example_question_boolean = "e.g. Did you exercise today?"
|
||||||
open val intro_title_3 = "Keep doing it"
|
open val example_question_numerical = "e.g. How many steps did you walk today?"
|
||||||
open val intro_description_3 = "Habits performed consistently for a long time will earn a full star."
|
open val example_units = "e.g. steps"
|
||||||
open val intro_title_4 = "Track your progress"
|
open val export = "Export"
|
||||||
open val intro_description_4 = "Detailed graphs show you how your habits improved over time."
|
open val export_as_csv_summary = "Generates files that can be opened by spreadsheet software such as Microsoft Excel or OpenOffice Calc. This file cannot be imported back."
|
||||||
|
open val export_full_backup = "Export full backup"
|
||||||
|
open val export_full_backup_summary = "Generates a file that contains all your data. This file can be imported back."
|
||||||
|
open val export_to_csv = "Export as CSV"
|
||||||
|
open val file_not_recognized = "File not recognized."
|
||||||
|
open val filter = "Filter"
|
||||||
|
open val five_times_per_week = "5 times per week"
|
||||||
|
open val frequency = "Frequency"
|
||||||
|
open val frequency_stack_widget = "Frequency Stack Widget"
|
||||||
|
open val full_backup_success = "Full backup successfully exported."
|
||||||
|
open val generate_bug_report = "Generate bug report"
|
||||||
|
open val habit = "Habit"
|
||||||
|
open val habit_not_found = "Habit deleted / not found"
|
||||||
|
open val habit_strength = "Habit strength"
|
||||||
|
open val habits_imported = "Habits imported successfully."
|
||||||
|
open val help = "Help & FAQ"
|
||||||
|
open val help_translate = "Help translate this app"
|
||||||
|
open val hide_archived = "Hide archived"
|
||||||
|
open val hide_completed = "Hide completed"
|
||||||
|
open val hint_drag = "To rearrange the entries, press-and-hold on the name of the habit, then drag it to the correct place."
|
||||||
|
open val hint_landscape = "You can see more days by putting your phone in landscape mode."
|
||||||
|
open val hint_title = "Did you know?"
|
||||||
|
open val history = "History"
|
||||||
|
open val history_stack_widget = "History Stack Widget"
|
||||||
|
open val import_data = "Import data"
|
||||||
|
open val import_data_summary = "Supports full backups exported by this app, as well as files generated by Tickmate, HabitBull or Rewire. See FAQ for more information."
|
||||||
|
open val interface_preferences = "Interface"
|
||||||
open val interval_15_minutes = "15 minutes"
|
open val interval_15_minutes = "15 minutes"
|
||||||
open val interval_30_minutes = "30 minutes"
|
|
||||||
open val interval_1_hour = "1 hour"
|
open val interval_1_hour = "1 hour"
|
||||||
|
open val interval_24_hour = "24 hours"
|
||||||
open val interval_2_hour = "2 hours"
|
open val interval_2_hour = "2 hours"
|
||||||
|
open val interval_30_minutes = "30 minutes"
|
||||||
open val interval_4_hour = "4 hours"
|
open val interval_4_hour = "4 hours"
|
||||||
open val interval_8_hour = "8 hours"
|
open val interval_8_hour = "8 hours"
|
||||||
open val interval_24_hour = "24 hours"
|
|
||||||
open val interval_always_ask = "Always ask"
|
open val interval_always_ask = "Always ask"
|
||||||
open val interval_custom = "Custom..."
|
open val interval_custom = "Custom..."
|
||||||
open val pref_toggle_title = "Toggle with short press"
|
open val intro_description_1 = "Loop Habit Tracker helps you create and maintain good habits."
|
||||||
open val pref_toggle_description = "Put checkmarks with a single tap instead of press-and-hold. More convenient, but might cause accidental toggles."
|
open val intro_description_2 = "Every day, after performing your habit, put a checkmark on the app."
|
||||||
open val pref_snooze_interval_title = "Snooze interval on reminders"
|
open val intro_description_3 = "Habits performed consistently for a long time will earn a full star."
|
||||||
open val pref_rate_this_app = "Rate this app on Google Play"
|
open val intro_description_4 = "Detailed graphs show you how your habits improved over time."
|
||||||
open val pref_send_feedback = "Send feedback to developer"
|
open val intro_title_1 = "Welcome"
|
||||||
open val pref_view_source_code = "View source code at GitHub"
|
open val intro_title_2 = "Create some new habits"
|
||||||
open val pref_view_app_introduction = "View app introduction"
|
open val intro_title_3 = "Keep doing it"
|
||||||
open val links = "Links"
|
open val intro_title_4 = "Track your progress"
|
||||||
open val behavior = "Behavior"
|
|
||||||
open val name = "Name"
|
|
||||||
open val settings = "Settings"
|
|
||||||
open val snooze_interval = "Snooze interval"
|
|
||||||
open val select_snooze_delay = "Select snooze delay"
|
|
||||||
open val hint_title = "Did you know?"
|
|
||||||
open val hint_drag = "To rearrange the entries, press-and-hold on the name of the habit, then drag it to the correct place."
|
|
||||||
open val hint_landscape = "You can see more days by putting your phone in landscape mode."
|
|
||||||
open val delete_habits = "Delete Habits"
|
|
||||||
open val delete_habits_message = "The habits will be permanently deleted. This action cannot be undone."
|
|
||||||
open val habit_not_found = "Habit deleted / not found"
|
|
||||||
open val weekends = "Weekends"
|
|
||||||
open val any_weekday = "Monday to Friday"
|
|
||||||
open val any_day = "Any day of the week"
|
|
||||||
open val select_weekdays = "Select days"
|
|
||||||
open val export_to_csv = "Export as CSV"
|
|
||||||
open val done_label = "Done"
|
|
||||||
open val clear_label = "Clear"
|
|
||||||
open val select_hours = "Select hours"
|
|
||||||
open val select_minutes = "Select minutes"
|
|
||||||
open val select_habit_requirement_prompt = "Please select at least one habit"
|
|
||||||
open val about = "About"
|
|
||||||
open val translators = "Translators"
|
|
||||||
open val developers = "Developers"
|
|
||||||
open val version_n = "Version %s"
|
|
||||||
open val frequency = "Frequency"
|
|
||||||
open val checkmark = "Checkmark"
|
|
||||||
open val create_stackview_widget_button = "StackView Widget For All Habits"
|
|
||||||
open val checkmark_stack_widget = "Checkmark Stack Widget"
|
|
||||||
open val frequency_stack_widget = "Frequency Stack Widget"
|
|
||||||
open val score_stack_widget = "Score Stack Widget"
|
|
||||||
open val history_stack_widget = "History Stack Widget"
|
|
||||||
open val streaks_stack_widget = "Streaks Stack Widget"
|
|
||||||
open val strength = "Strength"
|
|
||||||
open val best_streaks = "Best streaks"
|
|
||||||
open val current_streaks = "Current streak"
|
|
||||||
open val number_of_repetitions = "Number of repetitions"
|
|
||||||
open val last_x_days = "Last %d days"
|
open val last_x_days = "Last %d days"
|
||||||
open val last_x_weeks = "Last %d weeks"
|
|
||||||
open val last_x_months = "Last %d months"
|
open val last_x_months = "Last %d months"
|
||||||
|
open val last_x_weeks = "Last %d weeks"
|
||||||
open val last_x_years = "Last %d years"
|
open val last_x_years = "Last %d years"
|
||||||
open val all_time = "All time"
|
open val led_notifications = "Notification light"
|
||||||
open val every_day = "Every day"
|
open val led_notifications_description = "Shows a blinking light for reminders. Only available in phones with LED notification lights."
|
||||||
open val every_week = "Every week"
|
open val links = "Links"
|
||||||
open val two_times_per_week = "2 times per week"
|
open val long_press_to_edit = "Press-and-hold to change the value"
|
||||||
open val five_times_per_week = "5 times per week"
|
open val long_press_to_toggle = "Press-and-hold to check or uncheck"
|
||||||
open val custom_frequency = "Custom …"
|
open val main_activity_title = "Habits"
|
||||||
open val help = "Help & FAQ"
|
open val manually = "Manually"
|
||||||
open val could_not_export = "Failed to export data."
|
open val month = "Month"
|
||||||
open val could_not_import = "Failed to import data."
|
open val name = "Name"
|
||||||
open val file_not_recognized = "File not recognized."
|
|
||||||
open val habits_imported = "Habits imported successfully."
|
|
||||||
open val full_backup_success = "Full backup successfully exported."
|
|
||||||
open val import_data = "Import data"
|
|
||||||
open val export_full_backup = "Export full backup"
|
|
||||||
open val import_data_summary = "Supports full backups exported by this app, as well as files generated by Tickmate, HabitBull or Rewire. See FAQ for more information."
|
|
||||||
open val export_as_csv_summary = "Generates files that can be opened by spreadsheet software such as Microsoft Excel or OpenOffice Calc. This file cannot be imported back."
|
|
||||||
open val export_full_backup_summary = "Generates a file that contains all your data. This file can be imported back."
|
|
||||||
open val bug_report_failed = "Failed to generate bug report."
|
|
||||||
open val generate_bug_report = "Generate bug report"
|
|
||||||
open val troubleshooting = "Troubleshooting"
|
|
||||||
open val help_translate = "Help translate this app"
|
|
||||||
open val night_mode = "Night mode"
|
open val night_mode = "Night mode"
|
||||||
open val use_pure_black = "Use pure black in night mode"
|
open val no = "No"
|
||||||
|
open val no_habits_found = "You have no active habits"
|
||||||
|
open val none = "None"
|
||||||
|
open val number_of_repetitions = "Number of repetitions"
|
||||||
|
open val overview = "Overview"
|
||||||
|
open val pref_rate_this_app = "Rate this app on Google Play"
|
||||||
|
open val pref_send_feedback = "Send feedback to developer"
|
||||||
|
open val pref_snooze_interval_title = "Snooze interval on reminders"
|
||||||
|
open val pref_toggle_description = "Put checkmarks with a single tap instead of press-and-hold. More convenient, but might cause accidental toggles."
|
||||||
|
open val pref_toggle_title = "Toggle with short press"
|
||||||
|
open val pref_view_app_introduction = "View app introduction"
|
||||||
|
open val pref_view_source_code = "View source code at GitHub"
|
||||||
open val pure_black_description = "Replaces gray backgrounds with pure black in night mode. Reduces battery usage in phones with AMOLED display."
|
open val pure_black_description = "Replaces gray backgrounds with pure black in night mode. Reduces battery usage in phones with AMOLED display."
|
||||||
open val interface_preferences = "Interface"
|
open val quarter = "Quarter"
|
||||||
|
open val question = "Question"
|
||||||
|
open val reminder = "Reminder"
|
||||||
|
open val reminder_off = "Off"
|
||||||
|
open val reminder_sound = "Reminder sound"
|
||||||
|
open val repair_database = "Repair database"
|
||||||
|
open val repeat = "Repeat"
|
||||||
open val reverse_days = "Reverse order of days"
|
open val reverse_days = "Reverse order of days"
|
||||||
open val reverse_days_description = "Show days in reverse order on the main screen."
|
open val reverse_days_description = "Show days in reverse order on the main screen."
|
||||||
open val day = "Day"
|
open val save = "Save"
|
||||||
open val week = "Week"
|
|
||||||
open val month = "Month"
|
|
||||||
open val quarter = "Quarter"
|
|
||||||
open val year = "Year"
|
|
||||||
open val total = "Total"
|
|
||||||
open val time_every = "time in"
|
|
||||||
open val every_x_days = "Every %d days"
|
|
||||||
open val every_x_weeks = "Every %d weeks"
|
|
||||||
open val every_x_months = "Every %d months"
|
|
||||||
open val score = "Score"
|
open val score = "Score"
|
||||||
open val reminder_sound = "Reminder sound"
|
open val score_stack_widget = "Score Stack Widget"
|
||||||
open val none = "None"
|
open val select_habit_requirement_prompt = "Please select at least one habit"
|
||||||
open val filter = "Filter"
|
open val select_hours = "Select hours"
|
||||||
open val hide_completed = "Hide completed"
|
open val select_minutes = "Select minutes"
|
||||||
open val hide_archived = "Hide archived"
|
open val select_snooze_delay = "Select snooze delay"
|
||||||
|
open val select_weekdays = "Select days"
|
||||||
|
open val settings = "Settings"
|
||||||
|
open val show_archived = "Show archived"
|
||||||
|
open val show_completed = "Show completed"
|
||||||
|
open val snooze = "Later"
|
||||||
|
open val snooze_interval = "Snooze interval"
|
||||||
|
open val sort = "Sort"
|
||||||
open val sticky_notifications = "Make notifications sticky"
|
open val sticky_notifications = "Make notifications sticky"
|
||||||
open val sticky_notifications_description = "Prevents notifications from being swiped away."
|
open val sticky_notifications_description = "Prevents notifications from being swiped away."
|
||||||
open val led_notifications = "Notification light"
|
open val streaks = "Streaks"
|
||||||
open val led_notifications_description = "Shows a blinking light for reminders. Only available in phones with LED notification lights."
|
open val streaks_stack_widget = "Streaks Stack Widget"
|
||||||
open val repair_database = "Repair database"
|
open val strength = "Strength"
|
||||||
open val database_repaired = "Database repaired."
|
open val target = "Target"
|
||||||
open val uncheck = "Uncheck"
|
open val time_every = "time in"
|
||||||
|
open val times_every = "times in"
|
||||||
|
open val toast_habit_archived = "Habits archived"
|
||||||
|
open val toast_habit_changed = "Habit changed"
|
||||||
|
open val toast_habit_changed_back = "Habit changed back"
|
||||||
|
open val toast_habit_created = "Habit created"
|
||||||
|
open val toast_habit_deleted = "Habits deleted"
|
||||||
|
open val toast_habit_restored = "Habits restored"
|
||||||
|
open val toast_habit_unarchived = "Habits unarchived"
|
||||||
|
open val toast_nothing_to_redo = "Nothing to redo"
|
||||||
|
open val toast_nothing_to_undo = "Nothing to undo"
|
||||||
open val toggle = "Toggle"
|
open val toggle = "Toggle"
|
||||||
open val action = "Action"
|
open val total = "Total"
|
||||||
open val habit = "Habit"
|
open val translators = "Translators"
|
||||||
open val sort = "Sort"
|
open val troubleshooting = "Troubleshooting"
|
||||||
open val manually = "Manually"
|
open val two_times_per_week = "2 times per week"
|
||||||
open val by_name = "By name"
|
open val unarchive = "Unarchive"
|
||||||
open val by_color = "By color"
|
open val uncheck = "Uncheck"
|
||||||
open val by_score = "By score"
|
|
||||||
open val download = "Download"
|
|
||||||
open val export = "Export"
|
|
||||||
open val long_press_to_edit = "Press-and-hold to change the value"
|
|
||||||
open val change_value = "Change value"
|
|
||||||
open val calendar = "Calendar"
|
|
||||||
open val unit = "Unit"
|
open val unit = "Unit"
|
||||||
open val count = "Count"
|
open val use_pure_black = "Use pure black in night mode"
|
||||||
|
open val validation_at_most_one_rep_per_day = "You can have at most one repetition per day"
|
||||||
|
open val validation_name_should_not_be_blank = "Name cannot be blank."
|
||||||
|
open val validation_number_should_be_positive = "Number must be positive."
|
||||||
open val validation_show_not_be_blank = "This field should not be blank"
|
open val validation_show_not_be_blank = "This field should not be blank"
|
||||||
open val example_question_numerical = "e.g. How many steps did you walk today?"
|
open val version_n = "Version %s"
|
||||||
open val example_units = "e.g. steps"
|
open val week = "Week"
|
||||||
open val example_question_boolean = "e.g. Did you exercise today?"
|
open val weekends = "Weekends"
|
||||||
open val question = "Question"
|
open val year = "Year"
|
||||||
open val target = "Target"
|
|
||||||
open val yes = "Yes"
|
open val yes = "Yes"
|
||||||
open val no = "No"
|
|
||||||
open val customize_notification_summary = "Change sound, vibration, light and other notification settings"
|
|
||||||
open val customize_notification = "Customize notifications"
|
|
||||||
}
|
}
|
||||||
|
@ -1,165 +0,0 @@
|
|||||||
// --------------------------------------------------------------------------
|
|
||||||
// THIS FILE WAS AUTOMATICALLY GENERATED
|
|
||||||
//
|
|
||||||
// Please do not submit pull request to modify it. Corrections to translations
|
|
||||||
// may be submitted at https://translate.loophabits.org/
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
package org.isoron.uhabits.i18n
|
|
||||||
|
|
||||||
class StringsArabig : Strings() {
|
|
||||||
override val app_name = "متعقب العادة لووب"
|
|
||||||
override val main_activity_title = "عادات"
|
|
||||||
override val action_settings = "إعدادات"
|
|
||||||
override val edit = "تعديل"
|
|
||||||
override val delete = "حذف"
|
|
||||||
override val archive = "أرشفة"
|
|
||||||
override val unarchive = "إزالة من الأرشيف"
|
|
||||||
override val add_habit = "إضافة عادة"
|
|
||||||
override val color_picker_default_title = "تغيير اللون"
|
|
||||||
override val toast_habit_created = "تم إنشاء عادة"
|
|
||||||
override val toast_habit_deleted = "تم حذف العادات"
|
|
||||||
override val toast_habit_restored = "تم إستعادة العادات"
|
|
||||||
override val toast_nothing_to_undo = "لا شيء للألغاء"
|
|
||||||
override val toast_nothing_to_redo = "لا شيء للإعادة"
|
|
||||||
override val toast_habit_changed = "تم تغيير عادة"
|
|
||||||
override val toast_habit_changed_back = "تم أرجاع العادة إلى أصلها"
|
|
||||||
override val toast_habit_archived = "تم أرشفه العادات"
|
|
||||||
override val toast_habit_unarchived = "تم الغاء ارشفه العادات"
|
|
||||||
override val overview = "نظرة عامة"
|
|
||||||
override val habit_strength = "قوة العادة"
|
|
||||||
override val history = "السجل"
|
|
||||||
override val clear = "إزالة"
|
|
||||||
override val description_hint = "السؤال (هل ... اليوم؟)"
|
|
||||||
override val repeat = "كرره"
|
|
||||||
override val times_every = "مرات كل"
|
|
||||||
override val days = "أيام"
|
|
||||||
override val reminder = "التذكرة"
|
|
||||||
override val discard = "تجاهل"
|
|
||||||
override val save = "حفظ"
|
|
||||||
override val streaks = "الانجازات"
|
|
||||||
override val no_habits_found = "لا يوجد لديك عادات مفعلة"
|
|
||||||
override val long_press_to_toggle = "أضغط و إستمر لتحقق أو ازل"
|
|
||||||
override val reminder_off = "إيقاف"
|
|
||||||
override val validation_name_should_not_be_blank = "لا يمكن أن يكون الإسم فارغ"
|
|
||||||
override val validation_number_should_be_positive = "يجب أن يكون الرقم موجب."
|
|
||||||
override val validation_at_most_one_rep_per_day = "يجب أن يكون التكرار مرة واحدة فقط كل يوم"
|
|
||||||
override val create_habit = "انشاء العادة"
|
|
||||||
override val edit_habit = "تعديل العادة"
|
|
||||||
override val check = "حقق"
|
|
||||||
override val snooze = "لاحقاً"
|
|
||||||
override val intro_title_1 = "أهلا بك"
|
|
||||||
override val intro_description_1 = "لوب يساعدك في بدأ عادات جيدة والحفاظ عليها."
|
|
||||||
override val intro_title_2 = "إنشاء عادات جديدة"
|
|
||||||
override val intro_description_2 = "كل يوم، بعد أداء عادتك، ضع علامة عليها في التطبيق."
|
|
||||||
override val intro_title_3 = "حافظ على القيام بذلك"
|
|
||||||
override val intro_description_3 = "العادة المستمرة لفترة طويلة تكسب نجمة كامله."
|
|
||||||
override val intro_title_4 = "تتبع اداءك"
|
|
||||||
override val intro_description_4 = "رسوم بيانية مفصلة تُريك كيف تحسنت عاداتك مع مرور الوقت."
|
|
||||||
override val interval_15_minutes = "15 دقيقة"
|
|
||||||
override val interval_30_minutes = "30 دقيقة"
|
|
||||||
override val interval_1_hour = "ساعة واحدة"
|
|
||||||
override val interval_2_hour = "ساعتان"
|
|
||||||
override val interval_4_hour = "٤ ساعات"
|
|
||||||
override val interval_8_hour = "8 ساعات"
|
|
||||||
override val interval_24_hour = "٢٤ ساعة"
|
|
||||||
override val pref_toggle_title = "تبديل وضعية العادة بضغطة قصيرة"
|
|
||||||
override val pref_toggle_description = "أكثر سهولة، لكنه ممكن يسبب كبسات غير مقصوده"
|
|
||||||
override val pref_snooze_interval_title = "فترتي الغفوى على التذكير"
|
|
||||||
override val pref_rate_this_app = "تقييم هذا التطبيق على جوجل بلاي"
|
|
||||||
override val pref_send_feedback = "أرسل الملاحظات إلى المطور"
|
|
||||||
override val pref_view_source_code = "إفحص التعليمات البرمجية على GitHub"
|
|
||||||
override val pref_view_app_introduction = "عرض المقدمه"
|
|
||||||
override val links = "روابط"
|
|
||||||
override val behavior = "سلوك"
|
|
||||||
override val name = "اسم"
|
|
||||||
override val settings = "إعدادات"
|
|
||||||
override val snooze_interval = "فترتي الغفوه"
|
|
||||||
override val hint_title = "هل كنت تعلم؟"
|
|
||||||
override val hint_drag = "لإعادة ترتيب القوائم، أضغط اسم من هذه العادة، ثم اسحبه إلى المكان الصحيح."
|
|
||||||
override val hint_landscape = "يمكنك ان ترى المزيد أيام عن طريق وضع الهاتف في وضع أفقي."
|
|
||||||
override val delete_habits = "حذف عادات"
|
|
||||||
override val delete_habits_message = "سيتم حذف عادات بشكل دائم. هذا العمل لا يمكن التراجع عنه."
|
|
||||||
override val habit_not_found = "العادة حذفت/لم يتم العثور عليها"
|
|
||||||
override val weekends = "عطلة نهاية الأسبوع"
|
|
||||||
override val any_weekday = "أيام الأسبوع"
|
|
||||||
override val any_day = "أي يوم"
|
|
||||||
override val select_weekdays = "إختار أيام "
|
|
||||||
override val export_to_csv = "تصدير البيانات (CSV)"
|
|
||||||
override val done_label = "منجز"
|
|
||||||
override val clear_label = "نظف"
|
|
||||||
override val select_hours = "تحديد ساعات"
|
|
||||||
override val select_minutes = "تحديد دقائق "
|
|
||||||
override val about = "معلومات حول"
|
|
||||||
override val translators = "المترجمين"
|
|
||||||
override val developers = "المطورين"
|
|
||||||
override val version_n = "الإصدار %s"
|
|
||||||
override val frequency = "تردد"
|
|
||||||
override val checkmark = "علامة الاختيار"
|
|
||||||
override val strength = "القوة"
|
|
||||||
override val best_streaks = "أكثر تقدم"
|
|
||||||
override val current_streaks = "تقدم الحالي"
|
|
||||||
override val number_of_repetitions = "عدد من حالات التكرار"
|
|
||||||
override val last_x_days = "آخر %d أيام"
|
|
||||||
override val last_x_weeks = "آخر %d أسابيع"
|
|
||||||
override val last_x_months = "آخر %d أشهر"
|
|
||||||
override val last_x_years = "آخر %d سنين"
|
|
||||||
override val all_time = "كل الوقت"
|
|
||||||
override val every_day = "كل يوم"
|
|
||||||
override val every_week = "كل اسبوع"
|
|
||||||
override val two_times_per_week = "مرتين في الأسبوع"
|
|
||||||
override val five_times_per_week = "خمس مرات في الأسبوع"
|
|
||||||
override val custom_frequency = "مخصص..."
|
|
||||||
override val help = "مساعدة والأسئلة المتداولة"
|
|
||||||
override val could_not_export = "فشل في تصدير البيانات."
|
|
||||||
override val could_not_import = "فشل في استيراد البيانات."
|
|
||||||
override val file_not_recognized = "الملف غير المعترف."
|
|
||||||
override val habits_imported = "نجح إستيراد العادات."
|
|
||||||
override val full_backup_success = "نجح تصدير النسخ الاحتياطي الكامل."
|
|
||||||
override val import_data = "استيراد بيانات."
|
|
||||||
override val export_full_backup = "صدر نسخة احتياطية كاملة."
|
|
||||||
override val import_data_summary = "تدعم النسخ الاحتياطي الكامل المصدرة من هذا التطبيق، فضلا عن الملفات التي تم إنشاؤها من Tickmate, HabitBull و Rewire. انظر التعليمات لمزيد من المعلومات."
|
|
||||||
override val export_as_csv_summary = "صدر ملف التي يمكن فتحها ببرنامج جداول البيانات مثل إكسل أو وبينوفيس. لا يمكن إستيراد هذا الملف."
|
|
||||||
override val export_full_backup_summary = "إنشاء ملف يحتوي على كافة البيانات. يمكن استيراد هذا الملف نفسه."
|
|
||||||
override val bug_report_failed = "فشل في توليد تقرير الاعطال"
|
|
||||||
override val generate_bug_report = "توليد تقرير الاعطال"
|
|
||||||
override val troubleshooting = "استكشاف الأخطاء وإصلاحها"
|
|
||||||
override val help_translate = "المساعدة في ترجمة هذا البرنامج"
|
|
||||||
override val night_mode = "الوضع الليلي"
|
|
||||||
override val use_pure_black = "استخدام أسود نقي في الوضع الليلي"
|
|
||||||
override val pure_black_description = "يستبدل خلفيات رمادية مع أسود نقي في الوضع الليلي. يقلل من استهلاك البطارية في الهواتف مع شاشة AMOLED."
|
|
||||||
override val interface_preferences = "السطح البيني"
|
|
||||||
override val reverse_days = "ترتيب عكسي أيام"
|
|
||||||
override val reverse_days_description = "عرض أيام في ترتيب عكسي على الشاشة الرئيسية"
|
|
||||||
override val day = "يوم"
|
|
||||||
override val week = "أسبوع"
|
|
||||||
override val month = "شهر"
|
|
||||||
override val quarter = "ربع سنه"
|
|
||||||
override val year = "عام"
|
|
||||||
override val total = "المجموع"
|
|
||||||
override val time_every = "مرات في"
|
|
||||||
override val every_x_days = "كل %d أيام"
|
|
||||||
override val every_x_weeks = "كل %d أسابيع"
|
|
||||||
override val every_x_months = "كل %d أشهر"
|
|
||||||
override val score = "النقاط"
|
|
||||||
override val reminder_sound = "صوت تذكير"
|
|
||||||
override val none = "صامت"
|
|
||||||
override val filter = "تصنيف"
|
|
||||||
override val hide_completed = "إخفاء المكتملة"
|
|
||||||
override val hide_archived = "إخفاء المؤرشفة"
|
|
||||||
override val sticky_notifications = "جعل الإشعارات ثابتة"
|
|
||||||
override val sticky_notifications_description = "منع الإشعارات من تمريرها بعيداً."
|
|
||||||
override val repair_database = "إصلاح قاعدة البيانات"
|
|
||||||
override val database_repaired = "تم إصلاح قاعدة البيانات."
|
|
||||||
override val uncheck = "إلغاء تحديد"
|
|
||||||
override val toggle = "تبديل"
|
|
||||||
override val action = "عمل"
|
|
||||||
override val habit = "عادة"
|
|
||||||
override val sort = "فرز"
|
|
||||||
override val manually = "يدوياً"
|
|
||||||
override val by_name = "حسب الإسم"
|
|
||||||
override val by_color = "حسب اللون"
|
|
||||||
override val by_score = "حسب النقاط"
|
|
||||||
override val download = "تحميل"
|
|
||||||
override val export = "استخراج"
|
|
||||||
}
|
|
@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016-2019 Álinson Santos Xavier <isoron@gmail.com>
|
||||||
|
*
|
||||||
|
* This file is part of Loop Habit Tracker.
|
||||||
|
*
|
||||||
|
* Loop Habit Tracker is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version.
|
||||||
|
*
|
||||||
|
* Loop Habit Tracker is distributed in the hope that it will be useful, but
|
||||||
|
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
|
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
|
* more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import Foundation
|
||||||
|
|
||||||
|
class IosLocaleHelper : NSObject, LocaleHelper {
|
||||||
|
var preferredLanguages: [String]
|
||||||
|
|
||||||
|
init(_ preferredLanguages: [String]) {
|
||||||
|
self.preferredLanguages = preferredLanguages
|
||||||
|
}
|
||||||
|
|
||||||
|
func getStringsForCurrentLocale() -> Strings {
|
||||||
|
let lang = preferredLanguages.first ?? "en-US"
|
||||||
|
StandardLog().debug(tag: "IosLocale", msg: lang)
|
||||||
|
if lang.hasPrefix("ar") { return StringsArabic() }
|
||||||
|
if lang.hasPrefix("fr") { return StringsFrench() }
|
||||||
|
if lang.hasPrefix("es") { return StringsSpanish() }
|
||||||
|
if lang.hasPrefix("pt-BR") { return StringsPortugueseBR() }
|
||||||
|
if lang.hasPrefix("pt") { return StringsPortuguesePT() }
|
||||||
|
if lang.hasPrefix("it") { return StringsItalian() }
|
||||||
|
if lang.hasPrefix("de") { return StringsGerman() }
|
||||||
|
if lang.hasPrefix("zh-Hans") { return StringsChineseCN() }
|
||||||
|
if lang.hasPrefix("zh-Hant") { return StringsChineseTW() }
|
||||||
|
if lang.hasPrefix("nl") { return StringsDutch() }
|
||||||
|
if lang.hasPrefix("ja") { return StringsJapanese() }
|
||||||
|
if lang.hasPrefix("ko") { return StringsKorean() }
|
||||||
|
if lang.hasPrefix("vi") { return StringsVietnamese() }
|
||||||
|
if lang.hasPrefix("ru") { return StringsRussian() }
|
||||||
|
if lang.hasPrefix("sv") { return StringsSwedish() }
|
||||||
|
if lang.hasPrefix("da") { return StringsDanish() }
|
||||||
|
if lang.hasPrefix("fi") { return StringsFinnish() }
|
||||||
|
if lang.hasPrefix("nb") { return StringsNorwegian() }
|
||||||
|
if lang.hasPrefix("tr") { return StringsTurkish() }
|
||||||
|
if lang.hasPrefix("el") { return StringsGreek() }
|
||||||
|
if lang.hasPrefix("id") { return StringsIndonesian() }
|
||||||
|
if lang.hasPrefix("hi") { return StringsHindi() }
|
||||||
|
if lang.hasPrefix("hu") { return StringsHungarian() }
|
||||||
|
if lang.hasPrefix("pl") { return StringsPolish() }
|
||||||
|
if lang.hasPrefix("cs") { return StringsCzech() }
|
||||||
|
if lang.hasPrefix("sk") { return StringsSlovak() }
|
||||||
|
if lang.hasPrefix("ca") { return StringsCatalan() }
|
||||||
|
if lang.hasPrefix("ro") { return StringsRomanian() }
|
||||||
|
if lang.hasPrefix("hr") { return StringsCroatian() }
|
||||||
|
if lang.hasPrefix("he") { return StringsHebrew() }
|
||||||
|
return Strings()
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,27 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016-2019 Álinson Santos Xavier <isoron@gmail.com>
|
||||||
|
*
|
||||||
|
* This file is part of Loop Habit Tracker.
|
||||||
|
*
|
||||||
|
* Loop Habit Tracker is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version.
|
||||||
|
*
|
||||||
|
* Loop Habit Tracker is distributed in the hope that it will be useful, but
|
||||||
|
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
|
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
|
* more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import XCTest
|
||||||
|
@testable import uhabits
|
||||||
|
|
||||||
|
class IosLocaleTest: XCTestCase {
|
||||||
|
func testGetStringForLocale() {
|
||||||
|
//let helper = IosLocaleHelper()
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue