1
0
Fork 0

added options to show/hide the Newline and the Tab characters in the 0-key char list

This commit is contained in:
sspanak 2025-06-12 17:47:50 +03:00 committed by Dimo Karaivanov
parent ea5da07838
commit 6edf4e18ab
20 changed files with 243 additions and 14 deletions

View file

@ -0,0 +1,63 @@
package io.github.sspanak.tt9.preferences.screens.punctuation;
import android.content.Context;
import android.util.AttributeSet;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.preference.Preference;
import androidx.preference.SwitchPreferenceCompat;
import io.github.sspanak.tt9.languages.Language;
import io.github.sspanak.tt9.preferences.settings.SettingsStore;
abstract public class AbstractIncludeCharsSwitch extends SwitchPreferenceCompat {
@Nullable private Language language = null;
@Nullable private Runnable onChangeListener = null;
public AbstractIncludeCharsSwitch(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
setOnPreferenceChangeListener(this::onSave);
}
public AbstractIncludeCharsSwitch(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
setOnPreferenceChangeListener(this::onSave);
}
public AbstractIncludeCharsSwitch(@NonNull Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
setOnPreferenceChangeListener(this::onSave);
}
public AbstractIncludeCharsSwitch(@NonNull Context context) {
super(context);
setOnPreferenceChangeListener(this::onSave);
}
abstract boolean getChecked(@NonNull SettingsStore settings, @NonNull Language language);
abstract void setChecked(@NonNull Language language, boolean checked);
public void setLanguage(@NonNull SettingsStore settings, @NonNull Language language) {
this.language = language;
setChecked(getChecked(settings, language));
}
public void setOnChange(Runnable handler) {
onChangeListener = handler;
}
private boolean onSave(Preference preference, Object newValue) {
if (language == null) {
return false;
}
boolean checked = (boolean) newValue;
setChecked(language, checked);
if (onChangeListener != null) {
onChangeListener.run();
}
return true;
}
}

View file

@ -64,7 +64,17 @@ public class PreferenceChars0 extends AbstractPreferenceCharList {
public void saveCurrentChars() { public void saveCurrentChars() {
StringBuilder all = new StringBuilder(); StringBuilder all = new StringBuilder();
for (char c : getMandatoryChars()) { for (char c : getMandatoryChars()) {
all.append(c); if (c == '\t') {
if (settings.getIncludeTabInChars0(language)) {
all.append(c);
}
} else if (c == '\n') {
if (settings.getIncludeNewlineInChars0(language)) {
all.append(c);
}
} else {
all.append(c);
}
} }
all.append(currentChars); all.append(currentChars);

View file

@ -0,0 +1,40 @@
package io.github.sspanak.tt9.preferences.screens.punctuation;
import android.content.Context;
import android.util.AttributeSet;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import io.github.sspanak.tt9.languages.Language;
import io.github.sspanak.tt9.preferences.settings.SettingsStore;
public class PreferenceIncludeNewline extends AbstractIncludeCharsSwitch {
public static final String NAME = "punctuation_order_include_newline";
public PreferenceIncludeNewline(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
}
public PreferenceIncludeNewline(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
public PreferenceIncludeNewline(@NonNull Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
public PreferenceIncludeNewline(@NonNull Context context) {
super(context);
}
@Override
boolean getChecked(@NonNull SettingsStore settings, @NonNull Language language) {
return settings.getIncludeNewlineInChars0(language);
}
@Override
void setChecked(@NonNull Language language, boolean checked) {
new SettingsStore(getContext()).setIncludeNewlineInChars0(language, checked);
}
}

View file

@ -0,0 +1,40 @@
package io.github.sspanak.tt9.preferences.screens.punctuation;
import android.content.Context;
import android.util.AttributeSet;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import io.github.sspanak.tt9.languages.Language;
import io.github.sspanak.tt9.preferences.settings.SettingsStore;
public class PreferenceIncludeTab extends AbstractIncludeCharsSwitch {
public static final String NAME = "punctuation_order_include_tab";
public PreferenceIncludeTab(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
}
public PreferenceIncludeTab(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
public PreferenceIncludeTab(@NonNull Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
public PreferenceIncludeTab(@NonNull Context context) {
super(context);
}
@Override
boolean getChecked(@NonNull SettingsStore settings, @NonNull Language language) {
return settings.getIncludeTabInChars0(language);
}
@Override
void setChecked(@NonNull Language language, boolean checked) {
new SettingsStore(getContext()).setIncludeTabInChars0(language, checked);
}
}

View file

@ -56,6 +56,7 @@ public class PunctuationScreen extends BaseScreenFragment {
Language initalLanguage = LanguageCollection.getLanguage(languageList.getValue()); Language initalLanguage = LanguageCollection.getLanguage(languageList.getValue());
initResetDefaults(initalLanguage); initResetDefaults(initalLanguage);
initSaveButton(initalLanguage); initSaveButton(initalLanguage);
initIncludeSwitches(initalLanguage);
loadCharLists(); loadCharLists();
resetFontSize(false); resetFontSize(false);
} }
@ -71,6 +72,21 @@ public class PunctuationScreen extends BaseScreenFragment {
} }
private void initIncludeSwitches(Language language) {
PreferenceIncludeTab includeTab = findPreference(PreferenceIncludeTab.NAME);
if (includeTab != null && language != null) {
includeTab.setLanguage(activity.getSettings(), language);
includeTab.setOnChange(this::onSaveOrdering);
}
PreferenceIncludeNewline includeNewline = findPreference(PreferenceIncludeNewline.NAME);
if (includeNewline != null && language != null) {
includeNewline.setLanguage(activity.getSettings(), language);
includeNewline.setOnChange(this::onSaveOrdering);
}
}
private void initSaveButton(Language initialLanguage) { private void initSaveButton(Language initialLanguage) {
Preference item = findPreference(ItemPunctuationOrderSave.NAME); Preference item = findPreference(ItemPunctuationOrderSave.NAME);
if (item != null) { if (item != null) {
@ -110,6 +126,7 @@ public class PunctuationScreen extends BaseScreenFragment {
private void onLanguageChanged(@Nullable String newLanguageId) { private void onLanguageChanged(@Nullable String newLanguageId) {
Language language = LanguageCollection.getLanguage(newLanguageId); Language language = LanguageCollection.getLanguage(newLanguageId);
initIncludeSwitches(language);
restoreDefaults.setLanguage(language); restoreDefaults.setLanguage(language);
saveOrder.setLanguage(language); saveOrder.setLanguage(language);

View file

@ -30,6 +30,11 @@ class SettingsPunctuation extends SettingsInput {
public void setDefaultCharOrder(@NonNull Language language, boolean overwrite) { public void setDefaultCharOrder(@NonNull Language language, boolean overwrite) {
if (overwrite) {
setIncludeNewlineInChars0(language, true);
setIncludeTabInChars0(language, true);
}
if (overwrite || noDefault0Chars(language)) { if (overwrite || noDefault0Chars(language)) {
String chars = new String(FORBIDDEN_CHARS_0) + String.join("", language.getKeyCharacters(0)); String chars = new String(FORBIDDEN_CHARS_0) + String.join("", language.getKeyCharacters(0));
chars = chars.replace(" ", Characters.getSpace(language)); chars = chars.replace(" ", Characters.getSpace(language));
@ -173,4 +178,22 @@ class SettingsPunctuation extends SettingsInput {
return charsList; return charsList;
} }
public boolean getIncludeNewlineInChars0(Language language) {
return prefs.getBoolean("punctuation_order_include_newline_" + language.getId(), true);
}
public void setIncludeNewlineInChars0(Language language, boolean include) {
prefsEditor.putBoolean("punctuation_order_include_newline_" + language.getId(), include);
prefsEditor.apply();
}
public boolean getIncludeTabInChars0(Language language) {
return prefs.getBoolean("punctuation_order_include_tab_" + language.getId(), true);
}
public void setIncludeTabInChars0(Language language, boolean include) {
prefsEditor.putBoolean("punctuation_order_include_tab_" + language.getId(), include);
prefsEditor.apply();
}
} }

View file

@ -198,7 +198,8 @@
<string name="pref_category_punctuation_order">Ред на пунктуацията</string> <string name="pref_category_punctuation_order">Ред на пунктуацията</string>
<string name="language_popup_title">Изберете език</string> <string name="language_popup_title">Изберете език</string>
<string name="punctuation_order_cannot_be_empty">Списъкът не може да бъде празен.</string> <string name="punctuation_order_cannot_be_empty">Списъкът не може да бъде празен.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Интервал и нов ред ще бъдат автоматично добавени в началото на списъка.</string> <string name="punctuation_order_include_tab">Добави табулация</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Символът за интервал ще бъдe добавен автоматично в началото на списъка.</string>
<string name="punctuation_order_mandatory_char_missing">Липсва задължителен символ:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Липсва задължителен символ:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Липсват задължителни символи:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Липсват задължителни символи:%1$s</string>
<string name="punctuation_order_save_error">Неуспешно запазване на реда на знаците.</string> <string name="punctuation_order_save_error">Неуспешно запазване на реда на знаците.</string>
@ -232,4 +233,5 @@
<string name="fn_key_order_column_1">Колона 1</string> <string name="fn_key_order_column_1">Колона 1</string>
<string name="punctuation_order_initial">Начални символи</string> <string name="punctuation_order_initial">Начални символи</string>
<string name="punctuation_order_group">Групирани символи (по избор)</string> <string name="punctuation_order_group">Групирани символи (по избор)</string>
<string name="punctuation_order_include_newline">Добави нов ред</string>
</resources> </resources>

View file

@ -186,7 +186,9 @@
<string name="pref_category_punctuation_order">Interpunktionsreihenfolge</string> <string name="pref_category_punctuation_order">Interpunktionsreihenfolge</string>
<string name="language_popup_title">Sprache auswählen</string> <string name="language_popup_title">Sprache auswählen</string>
<string name="punctuation_order_cannot_be_empty">Die Liste darf nicht leer sein.</string> <string name="punctuation_order_cannot_be_empty">Die Liste darf nicht leer sein.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Leer- und Zeilenumbruchzeichen werden automatisch am Anfang der Liste hinzugefügt.</string> <string name="punctuation_order_include_newline">Zeilenumbruch einfügen</string>
<string name="punctuation_order_include_tab">Tabulator einfügen</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Das Leerzeichen wird automatisch am Anfang der Liste hinzugefügt.</string>
<string name="punctuation_order_mandatory_char_missing">Fehlendes erforderliches Zeichen:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Fehlendes erforderliches Zeichen:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Fehlende erforderliche Zeichen:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Fehlende erforderliche Zeichen:%1$s</string>
<string name="punctuation_order_save_error">Zeichenreihenfolge konnte nicht gespeichert werden.</string> <string name="punctuation_order_save_error">Zeichenreihenfolge konnte nicht gespeichert werden.</string>

View file

@ -197,7 +197,9 @@
<string name="pref_category_punctuation_order">Orden de puntuación</string> <string name="pref_category_punctuation_order">Orden de puntuación</string>
<string name="language_popup_title">Seleccionar idioma</string> <string name="language_popup_title">Seleccionar idioma</string>
<string name="punctuation_order_cannot_be_empty">La lista no puede estar vacía.</string> <string name="punctuation_order_cannot_be_empty">La lista no puede estar vacía.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Los caracteres Espacio y Nueva línea se añadirán automáticamente al principio de la lista.</string> <string name="punctuation_order_include_newline">Incluir salto de línea</string>
<string name="punctuation_order_include_tab">Incluir tabulación</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">El carácter de espacio se añadirá automáticamente al principio de la lista.</string>
<string name="punctuation_order_mandatory_char_missing">Falta carácter obligatorio:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Falta carácter obligatorio:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Faltan caracteres obligatorios:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Faltan caracteres obligatorios:%1$s</string>
<string name="punctuation_order_save_error">Error al guardar el orden de los caracteres.</string> <string name="punctuation_order_save_error">Error al guardar el orden de los caracteres.</string>

View file

@ -195,7 +195,9 @@
<string name="pref_category_punctuation_order">Ordre de ponctuation</string> <string name="pref_category_punctuation_order">Ordre de ponctuation</string>
<string name="language_popup_title">Sélectionner la langue</string> <string name="language_popup_title">Sélectionner la langue</string>
<string name="punctuation_order_cannot_be_empty">La liste ne peut pas être vide.</string> <string name="punctuation_order_cannot_be_empty">La liste ne peut pas être vide.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Les caractères Espace et Retour à la ligne seront automatiquement ajoutés au début de la liste.</string> <string name="punctuation_order_include_newline">Inclure un saut de ligne</string>
<string name="punctuation_order_include_tab">Inclure une tabulation</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Le caractère espace sera automatiquement ajouté au début de la liste.</string>
<string name="punctuation_order_mandatory_char_missing">Caractère obligatoire manquant :%1$s</string> <string name="punctuation_order_mandatory_char_missing">Caractère obligatoire manquant :%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Caractères obligatoires manquants :%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Caractères obligatoires manquants :%1$s</string>
<string name="punctuation_order_save_error">Échec de lenregistrement de lordre des caractères.</string> <string name="punctuation_order_save_error">Échec de lenregistrement de lordre des caractères.</string>

View file

@ -184,7 +184,9 @@
<string name="pref_category_punctuation_order">Ordine di punteggiatura</string> <string name="pref_category_punctuation_order">Ordine di punteggiatura</string>
<string name="language_popup_title">Seleziona la lingua</string> <string name="language_popup_title">Seleziona la lingua</string>
<string name="punctuation_order_cannot_be_empty">L\'elenco non può essere vuoto.</string> <string name="punctuation_order_cannot_be_empty">L\'elenco non può essere vuoto.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">I caratteri Spazio e Nuova linea verranno automaticamente aggiunti all\'inizio dell\'elenco.</string> <string name="punctuation_order_include_newline">Includi a capo</string>
<string name="punctuation_order_include_tab">Includi tabulazione</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Il carattere spazio verrà aggiunto automaticamente allinizio dellelenco.</string>
<string name="punctuation_order_mandatory_char_missing">Carattere obbligatorio mancante:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Carattere obbligatorio mancante:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Caratteri obbligatori mancanti:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Caratteri obbligatori mancanti:%1$s</string>
<string name="punctuation_order_save_error">Salvataggio dellordine dei caratteri non riuscito.</string> <string name="punctuation_order_save_error">Salvataggio dellordine dei caratteri non riuscito.</string>

View file

@ -198,7 +198,9 @@
<string name="pref_category_punctuation_order">סדר סימני פיסוק</string> <string name="pref_category_punctuation_order">סדר סימני פיסוק</string>
<string name="language_popup_title">בחר שפה</string> <string name="language_popup_title">בחר שפה</string>
<string name="punctuation_order_cannot_be_empty">הרשימה לא יכולה להיות ריקה.</string> <string name="punctuation_order_cannot_be_empty">הרשימה לא יכולה להיות ריקה.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">תווי רווח ושורה חדשה יתווספו אוטומטית בתחילת הרשימה.</string> <string name="punctuation_order_include_newline">כלול שורת חדשה</string>
<string name="punctuation_order_include_tab">כלול טאב</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">תו הרווח יתווסף אוטומטית בתחילת הרשימה.</string>
<string name="punctuation_order_mandatory_char_missing">תו חובה חסר: %1$s</string> <string name="punctuation_order_mandatory_char_missing">תו חובה חסר: %1$s</string>
<string name="punctuation_order_mandatory_chars_missing">תווי חובה חסרים:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">תווי חובה חסרים:%1$s</string>
<string name="punctuation_order_save_error">שמירת סדר התווים נכשלה.</string> <string name="punctuation_order_save_error">שמירת סדר התווים נכשלה.</string>

View file

@ -206,7 +206,9 @@
<string name="pref_category_punctuation_order">Skyrybos ženklų tvarka</string> <string name="pref_category_punctuation_order">Skyrybos ženklų tvarka</string>
<string name="language_popup_title">Pasirinkite kalbą</string> <string name="language_popup_title">Pasirinkite kalbą</string>
<string name="punctuation_order_cannot_be_empty">Sąrašas negali būti tuščias.</string> <string name="punctuation_order_cannot_be_empty">Sąrašas negali būti tuščias.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Tarpas ir naujos eilutės simboliai bus automatiškai pridėti sąrašo pradžioje.</string> <string name="punctuation_order_include_newline">Įtraukti naują eilutę</string>
<string name="punctuation_order_include_tab">Įtraukti tabuliaciją</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Tarpas bus automatiškai pridėtas sąrašo pradžioje.</string>
<string name="punctuation_order_mandatory_char_missing">Trūksta privalomo simbolio:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Trūksta privalomo simbolio:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Trūksta privalomų simbolių:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Trūksta privalomų simbolių:%1$s</string>
<string name="punctuation_order_save_error">Nepavyko išsaugoti simbolių tvarkos.</string> <string name="punctuation_order_save_error">Nepavyko išsaugoti simbolių tvarkos.</string>

View file

@ -186,7 +186,9 @@
<string name="pref_category_punctuation_order">Interpunctievolgorde</string> <string name="pref_category_punctuation_order">Interpunctievolgorde</string>
<string name="language_popup_title">Selecteer taal</string> <string name="language_popup_title">Selecteer taal</string>
<string name="punctuation_order_cannot_be_empty">De lijst mag niet leeg zijn.</string> <string name="punctuation_order_cannot_be_empty">De lijst mag niet leeg zijn.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Spatie- en nieuwe regeltekens worden automatisch aan het begin van de lijst toegevoegd.</string> <string name="punctuation_order_include_newline">Nieuwe regel opnemen</string>
<string name="punctuation_order_include_tab">Tab opnemen</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Het spatiekarakter wordt automatisch aan het begin van de lijst toegevoegd.</string>
<string name="punctuation_order_mandatory_char_missing">Ontbrekend verplicht teken:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Ontbrekend verplicht teken:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Ontbrekende verplichte tekens:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Ontbrekende verplichte tekens:%1$s</string>
<string name="punctuation_order_save_error">Opslaan van de tekenvolgorde mislukt.</string> <string name="punctuation_order_save_error">Opslaan van de tekenvolgorde mislukt.</string>

View file

@ -199,7 +199,9 @@
<string name="pref_category_punctuation_order">Ordem de pontuação</string> <string name="pref_category_punctuation_order">Ordem de pontuação</string>
<string name="language_popup_title">Selecione o idioma</string> <string name="language_popup_title">Selecione o idioma</string>
<string name="punctuation_order_cannot_be_empty">A lista não pode estar vazia.</string> <string name="punctuation_order_cannot_be_empty">A lista não pode estar vazia.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Os caracteres de Espaço e Nova linha serão automaticamente adicionados no início da lista.</string> <string name="punctuation_order_include_newline">Incluir nova linha</string>
<string name="punctuation_order_include_tab">Incluir tabulação</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">O caractere de espaço será adicionado automaticamente no início da lista.</string>
<string name="punctuation_order_mandatory_char_missing">Caractere obrigatório ausente:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Caractere obrigatório ausente:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Caracteres obrigatórios ausentes:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Caracteres obrigatórios ausentes:%1$s</string>
<string name="punctuation_order_save_error">Falha ao salvar a ordem dos caracteres.</string> <string name="punctuation_order_save_error">Falha ao salvar a ordem dos caracteres.</string>

View file

@ -197,7 +197,9 @@
<string name="pref_category_punctuation_order">Порядок пунктуации</string> <string name="pref_category_punctuation_order">Порядок пунктуации</string>
<string name="language_popup_title">Выберите язык</string> <string name="language_popup_title">Выберите язык</string>
<string name="punctuation_order_cannot_be_empty">Список не может быть пустым.</string> <string name="punctuation_order_cannot_be_empty">Список не может быть пустым.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Пробел и символ новой строки будут автоматически добавлены в начало списка.</string> <string name="punctuation_order_include_newline">Вставить перевод строки</string>
<string name="punctuation_order_include_tab">Вставить табуляцию</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Символ пробела будет автоматически добавлен в начало списка.</string>
<string name="punctuation_order_mandatory_char_missing">Отсутствует обязательный символ:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Отсутствует обязательный символ:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Отсутствуют обязательные символы:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Отсутствуют обязательные символы:%1$s</string>
<string name="punctuation_order_save_error">е удалось сохранить порядок символов.</string> <string name="punctuation_order_save_error">е удалось сохранить порядок символов.</string>

View file

@ -199,7 +199,9 @@
<string name="pref_category_punctuation_order">Noktalama sırası</string> <string name="pref_category_punctuation_order">Noktalama sırası</string>
<string name="language_popup_title">Dil Seçin</string> <string name="language_popup_title">Dil Seçin</string>
<string name="punctuation_order_cannot_be_empty">Liste boş olamaz.</string> <string name="punctuation_order_cannot_be_empty">Liste boş olamaz.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Boşluk ve Yeni Satır karakterleri listenin başına otomatik olarak eklenecektir.</string> <string name="punctuation_order_include_newline">Satır sonu ekle</string>
<string name="punctuation_order_include_tab">Sekme ekle</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Boşluk karakteri liste başına otomatik olarak eklenecektir.</string>
<string name="punctuation_order_mandatory_char_missing">Zorunlu karakter eksik:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Zorunlu karakter eksik:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Zorunlu karakterler eksik:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Zorunlu karakterler eksik:%1$s</string>
<string name="punctuation_order_save_error">Karakter sırası kaydedilemedi.</string> <string name="punctuation_order_save_error">Karakter sırası kaydedilemedi.</string>

View file

@ -208,7 +208,9 @@
<string name="pref_category_punctuation_order">Порядок пунктуації</string> <string name="pref_category_punctuation_order">Порядок пунктуації</string>
<string name="language_popup_title">Виберіть мову</string> <string name="language_popup_title">Виберіть мову</string>
<string name="punctuation_order_cannot_be_empty">Список не може бути порожнім.</string> <string name="punctuation_order_cannot_be_empty">Список не може бути порожнім.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Пробіл і символ нового рядка буде автоматично додано на початок списку.</string> <string name="punctuation_order_include_newline">Вставити новий рядок</string>
<string name="punctuation_order_include_tab">Вставити табуляцію</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Символ пробілу буде автоматично додано на початок списку.</string>
<string name="punctuation_order_mandatory_char_missing">Відсутній обов’язковий символ:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Відсутній обов’язковий символ:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Відсутні обов’язкові символи:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Відсутні обов’язкові символи:%1$s</string>
<string name="punctuation_order_save_error">Не вдалося зберегти порядок символів.</string> <string name="punctuation_order_save_error">Не вдалося зберегти порядок символів.</string>

View file

@ -205,7 +205,10 @@
<string name="language_popup_title">Select Language</string> <string name="language_popup_title">Select Language</string>
<string name="punctuation_order_cannot_be_empty">The list can not be empty.</string> <string name="punctuation_order_cannot_be_empty">The list can not be empty.</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Space and Newline characters will be automatically added at the beginning of the list.</string> <string name="punctuation_order_include_newline">Include Newline</string>
<string name="punctuation_order_include_tab">Include Tab</string>
<string name="punctuation_order_whitespace_will_be_added_automatically">Space character will be automatically added at the beginning of the list.</string>
<string name="punctuation_order_mandatory_char_missing">Missing mandatory character:%1$s</string> <string name="punctuation_order_mandatory_char_missing">Missing mandatory character:%1$s</string>
<string name="punctuation_order_mandatory_chars_missing">Missing mandatory characters:%1$s</string> <string name="punctuation_order_mandatory_chars_missing">Missing mandatory characters:%1$s</string>
<string name="punctuation_order_forbidden_char">Forbidden character:%1$s</string> <string name="punctuation_order_forbidden_char">Forbidden character:%1$s</string>

View file

@ -23,6 +23,15 @@
<PreferenceCategory <PreferenceCategory
android:title="@string/punctuation_order_key_0"> android:title="@string/punctuation_order_key_0">
<io.github.sspanak.tt9.preferences.screens.punctuation.PreferenceIncludeNewline
android:key="punctuation_order_include_newline"
android:title="@string/punctuation_order_include_newline" />
<io.github.sspanak.tt9.preferences.screens.punctuation.PreferenceIncludeTab
android:key="punctuation_order_include_tab"
android:title="@string/punctuation_order_include_tab" />
<io.github.sspanak.tt9.preferences.screens.punctuation.PreferenceChars0 <io.github.sspanak.tt9.preferences.screens.punctuation.PreferenceChars0
android:key="punctuation_order_special_chars" android:key="punctuation_order_special_chars"
android:title="@string/punctuation_order_initial" android:title="@string/punctuation_order_initial"