A fork of https://github.com/crosspoint-reader/crosspoint-reader
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: add turkish translation (#1192)

Description
This Pull Request introduces Turkish language support to CrossPoint
Reader firmware.


Key Changes:
- Translation File: Added lib/I18n/translations/turkish.yaml with 315
translated
string keys, covering all system UI elements.
- I18N Script Update: Modified scripts/gen_i18n.py to include the "TR"
abbreviation mapping for Turkish.
- System Integration: Regenerated I18N C++ files to include the new
Language::TR
enum and STRINGS_TR array.
- UI Availability: The language is now selectable in the Settings menu
and
correctly handles Turkish-specific characters (ç, ğ, ı, ö, ş, ü).
- Documentation: Updated docs/i18n.md to include Turkish in the list of
supported languages.

Testing:
- Verified the build locally with PlatformIO.
- Flashed the firmware to an Xteink X4 device and confirmed the Turkish
UI
renders correctly.
---

### AI Usage

Did you use AI tools to help write this code? Yes Gemini

---------

Co-authored-by: Baris Albayrak <baris@Bariss-MacBook-Pro.local>
Co-authored-by: Barış Albayrak <barisa@pop-os.lan>

authored by

Baris Albayrak
Baris Albayrak
Barış Albayrak
and committed by
GitHub
4ef433e3 a5d7e03f

+346 -1
+1
docs/i18n.md
··· 15 15 - Ukrainian 16 16 - Polish 17 17 - Danish 18 + - Turkish 18 19 19 20 --- 20 21
+344
lib/I18n/translations/turkish.yaml
··· 1 + _language_name: "Türkçe" 2 + _language_code: "TR" 3 + _order: "17" 4 + 5 + STR_CROSSPOINT: "CrossPoint" 6 + STR_BOOTING: "BAŞLATILIYOR" 7 + STR_SLEEPING: "UYKU MODU" 8 + STR_ENTERING_SLEEP: "Uyku moduna geçiliyor" 9 + STR_BROWSE_FILES: "Dosyalara Göz At" 10 + STR_FILE_TRANSFER: "Dosya Transferi" 11 + STR_SETTINGS_TITLE: "Ayarlar" 12 + STR_CALIBRE_LIBRARY: "Calibre Kütüphanesi" 13 + STR_CONTINUE_READING: "Okumaya Devam Et" 14 + STR_NO_OPEN_BOOK: "Açık kitap yok" 15 + STR_START_READING: "Aşağıdan okumaya başlayın" 16 + STR_BOOKS: "Kitaplar" 17 + STR_SELECT_CHAPTER: "Bölüm Seç" 18 + STR_NO_CHAPTERS: "Bölüm yok" 19 + STR_END_OF_BOOK: "Kitabın sonu" 20 + STR_EMPTY_CHAPTER: "Boş bölüm" 21 + STR_INDEXING: "Endeksleniyor" 22 + STR_MEMORY_ERROR: "Bellek hatası" 23 + STR_PAGE_LOAD_ERROR: "Sayfa yükleme hatası" 24 + STR_EMPTY_FILE: "Boş dosya" 25 + STR_OUT_OF_BOUNDS: "Sınırların dışında" 26 + STR_LOADING: "Yükleniyor..." 27 + STR_LOADING_POPUP: "Yükleniyor" 28 + STR_LOAD_XTC_FAILED: "XTC yüklenemedi" 29 + STR_LOAD_TXT_FAILED: "TXT yüklenemedi" 30 + STR_LOAD_EPUB_FAILED: "EPUB yüklenemedi" 31 + STR_SD_CARD_ERROR: "SD card hatası" 32 + STR_WIFI_NETWORKS: "WiFi Ağları" 33 + STR_NO_NETWORKS: "Ağ bulunamadı" 34 + STR_NETWORKS_FOUND: "%zu ağ bulundu" 35 + STR_SCANNING: "Tarıyor..." 36 + STR_CONNECTING: "Bağlanıyor..." 37 + STR_CONNECTED: "Bağlandı!" 38 + STR_CONNECTION_FAILED: "Bağlantı Başarısız" 39 + STR_CONNECTION_TIMEOUT: "Bağlantı zaman aşımı" 40 + STR_FORGET_NETWORK: "Ağı Unut?" 41 + STR_SAVE_PASSWORD: "Şifre kaydedilsin mi?" 42 + STR_REMOVE_PASSWORD: "Kayıtlı şifre silinsin mi?" 43 + STR_PRESS_OK_SCAN: "Tekrar taramak için OK'e basın" 44 + STR_PRESS_ANY_CONTINUE: "Devam etmek için bir tuşa basın" 45 + STR_SELECT_HINT: "SOL/SAĞ: Seç | OK: Onayla" 46 + STR_HOW_CONNECT: "Nasıl bağlanmak istersiniz?" 47 + STR_JOIN_NETWORK: "Bir Ağa Katıl" 48 + STR_CREATE_HOTSPOT: "Erişim Noktası Oluştur" 49 + STR_JOIN_DESC: "Mevcut bir WiFi ağına bağlan" 50 + STR_HOTSPOT_DESC: "Başkalarının katılabileceği ağ oluştur" 51 + STR_STARTING_HOTSPOT: "Erişim Noktası Başlatılıyor..." 52 + STR_HOTSPOT_MODE: "Erişim Noktası Modu" 53 + STR_CONNECT_WIFI_HINT: "Cihazınızı bu WiFi ağına bağlayın" 54 + STR_OPEN_URL_HINT: "Tarayıcınızda bu adresi açın" 55 + STR_OR_HTTP_PREFIX: "veya http://" 56 + STR_SCAN_QR_HINT: "veya telefonunuzla QR kodu tarayın:" 57 + STR_CALIBRE_WIRELESS: "Calibre Kablosuz" 58 + STR_CALIBRE_WEB_URL: "Calibre Web Adresi" 59 + STR_CONNECT_WIRELESS: "Kablosuz Cihaz Olarak Bağlan" 60 + STR_NETWORK_LEGEND: "* = Şifreli | + = Kayıtlı" 61 + STR_MAC_ADDRESS: "MAC adresi:" 62 + STR_CHECKING_WIFI: "WiFi kontrol ediliyor..." 63 + STR_ENTER_WIFI_PASSWORD: "WiFi Şifresini Girin" 64 + STR_ENTER_TEXT: "Metin Girin" 65 + STR_TO_PREFIX: "Ağ: " 66 + STR_CALIBRE_DISCOVERING: "Calibre aranıyor..." 67 + STR_CALIBRE_CONNECTING_TO: "Bağlanılıyor: " 68 + STR_CALIBRE_CONNECTED_TO: "Bağlandı: " 69 + STR_CALIBRE_WAITING_COMMANDS: "Komutlar bekleniyor..." 70 + STR_CONNECTION_FAILED_RETRYING: "(Bağlantı başarısız, tekrar deneniyor)" 71 + STR_CALIBRE_DISCONNECTED: "Calibre bağlantısı kesildi" 72 + STR_CALIBRE_WAITING_TRANSFER: "Transfer bekleniyor..." 73 + STR_CALIBRE_TRANSFER_HINT: "Transfer başarısız olursa, Calibre\nSmartDevice eklenti ayarlarından\n'Ignore free space'i etkinleştirin." 74 + STR_CALIBRE_RECEIVING: "Alınıyor: " 75 + STR_CALIBRE_RECEIVED: "Alındı: " 76 + STR_CALIBRE_WAITING_MORE: "Devamı bekleniyor..." 77 + STR_CALIBRE_FAILED_CREATE_FILE: "Dosya oluşturulamadı" 78 + STR_CALIBRE_PASSWORD_REQUIRED: "Şifre gerekli" 79 + STR_CALIBRE_TRANSFER_INTERRUPTED: "Transfer kesintiye uğradı" 80 + STR_CALIBRE_INSTRUCTION_1: "1) CrossPoint Reader eklentisini kurun" 81 + STR_CALIBRE_INSTRUCTION_2: "2) Aynı WiFi ağında olun" 82 + STR_CALIBRE_INSTRUCTION_3: "3) Calibre'de: \"Cihaza gönder\"" 83 + STR_CALIBRE_INSTRUCTION_4: "\"Gönderim sırasında bu ekranı açık tutun\"" 84 + STR_CAT_DISPLAY: "Ekran" 85 + STR_CAT_READER: "Okuyucu" 86 + STR_CAT_CONTROLS: "Kontroller" 87 + STR_CAT_SYSTEM: "Sistem" 88 + STR_SLEEP_SCREEN: "Uyku Ekranı" 89 + STR_SLEEP_COVER_MODE: "Uyku Ekranı Kapak Modu" 90 + STR_STATUS_BAR: "Durum Çubuğu" 91 + STR_HIDE_BATTERY: "Pil Yüzdesini Gizle" 92 + STR_EXTRA_SPACING: "Ekstra Paragraf Boşluğu" 93 + STR_TEXT_AA: "Metin Yumuşatma (AA)" 94 + STR_SHORT_PWR_BTN: "Kısa Güç Tuşu Tıklaması" 95 + STR_ORIENTATION: "Okuma Yönü" 96 + STR_FRONT_BTN_LAYOUT: "Ön Tuş Dizilimi" 97 + STR_SIDE_BTN_LAYOUT: "Yan Tuş Dizilimi (okuyucu)" 98 + STR_LONG_PRESS_SKIP: "Uzun Basışla Bölüm Atla" 99 + STR_FONT_FAMILY: "Okuyucu Yazı Tipi Ailesi" 100 + STR_EXT_READER_FONT: "Harici Okuyucu Yazı Tipi" 101 + STR_EXT_CHINESE_FONT: "Okuyucu Yazı Tipi" 102 + STR_EXT_UI_FONT: "Arayüz Yazı Tipi" 103 + STR_FONT_SIZE: "Arayüz Yazı Boyutu" 104 + STR_LINE_SPACING: "Okuyucu Satır Aralığı" 105 + STR_ASCII_LETTER_SPACING: "ASCII Harf Aralığı" 106 + STR_ASCII_DIGIT_SPACING: "ASCII Rakam Aralığı" 107 + STR_CJK_SPACING: "CJK Aralığı" 108 + STR_COLOR_MODE: "Renk Modu" 109 + STR_SCREEN_MARGIN: "Okuyucu Ekran Kenar Boşluğu" 110 + STR_PARA_ALIGNMENT: "Okuyucu Paragraf Hizalaması" 111 + STR_HYPHENATION: "Hecelerden Ayırma" 112 + STR_TIME_TO_SLEEP: "Uykuya Geçme Süresi" 113 + STR_REFRESH_FREQ: "Yenileme Sıklığı" 114 + STR_CALIBRE_SETTINGS: "Calibre Ayarları" 115 + STR_KOREADER_SYNC: "KOReader Senkronizasyonu" 116 + STR_CHECK_UPDATES: "Güncellemeleri denetle" 117 + STR_LANGUAGE: "Dil" 118 + STR_SELECT_WALLPAPER: "Duvar Kağıdı Seç" 119 + STR_CLEAR_READING_CACHE: "Okuma Önbelleğini Temizle" 120 + STR_CALIBRE: "Calibre" 121 + STR_USERNAME: "Kullanıcı Adı" 122 + STR_PASSWORD: "Şifre" 123 + STR_SYNC_SERVER_URL: "Senkronizasyon Sunucu Adresi" 124 + STR_DOCUMENT_MATCHING: "Belge Eşleştirme" 125 + STR_AUTHENTICATE: "Kimlik Doğrula" 126 + STR_KOREADER_USERNAME: "KOReader Kullanıcı Adı" 127 + STR_KOREADER_PASSWORD: "KOReader Şifresi" 128 + STR_FILENAME: "Dosya Adı" 129 + STR_BINARY: "İkili" 130 + STR_SET_CREDENTIALS_FIRST: "Önce kimlik bilgilerini ayarlayın" 131 + STR_WIFI_CONN_FAILED: "WiFi bağlantısı başarısız" 132 + STR_AUTHENTICATING: "Kimlik doğrulanıyor..." 133 + STR_AUTH_SUCCESS: "Kimlik doğrulama başarılı!" 134 + STR_KOREADER_AUTH: "KOReader Doğrulaması" 135 + STR_SYNC_READY: "KOReader senkronizasyonu hazır" 136 + STR_AUTH_FAILED: "Kimlik Doğrulama Başarısız" 137 + STR_DONE: "Tamamlandı" 138 + STR_CLEAR_CACHE_WARNING_1: "Bu işlem tüm önbelleğe alınmış verileri siler." 139 + STR_CLEAR_CACHE_WARNING_2: "Tüm okuma ilerlemesi kaybolacak!" 140 + STR_CLEAR_CACHE_WARNING_3: "Kitapların tekrar açıldığında yeniden" 141 + STR_CLEAR_CACHE_WARNING_4: "endekslenmesi gerekecek." 142 + STR_CLEARING_CACHE: "Önbellek temizleniyor..." 143 + STR_CACHE_CLEARED: "Önbellek Temizlendi" 144 + STR_ITEMS_REMOVED: "öğe kaldırıldı" 145 + STR_FAILED_LOWER: "başarısız" 146 + STR_CLEAR_CACHE_FAILED: "Önbellek temizlenemedi" 147 + STR_CHECK_SERIAL_OUTPUT: "Detaylar için seri çıktıya bakın" 148 + STR_DARK: "Koyu" 149 + STR_LIGHT: "Açık" 150 + STR_CUSTOM: "Özel" 151 + STR_COVER: "Kapak" 152 + STR_NONE_OPT: "Yok" 153 + STR_FIT: "Sığdır" 154 + STR_CROP: "Kırp" 155 + STR_NO_PROGRESS: "İlerleme Yok" 156 + STR_FULL_OPT: "Tam" 157 + STR_NEVER: "Asla" 158 + STR_IN_READER: "Okuyucuda" 159 + STR_ALWAYS: "Her Zaman" 160 + STR_IGNORE: "Yoksay" 161 + STR_SLEEP: "Uyku" 162 + STR_PAGE_TURN: "Sayfa Çevirme" 163 + STR_PORTRAIT: "Dikey" 164 + STR_LANDSCAPE_CW: "Yatay (Saat Yönü)" 165 + STR_INVERTED: "Ters" 166 + STR_LANDSCAPE_CCW: "Yatay (Saat Yönü Tersi)" 167 + STR_FRONT_LAYOUT_BCLR: "Geri, Onayla, Sol, Sağ" 168 + STR_FRONT_LAYOUT_LRBC: "Sol, Sağ, Geri, Onayla" 169 + STR_FRONT_LAYOUT_LBCR: "Sol, Geri, Onayla, Sağ" 170 + STR_PREV_NEXT: "Önceki/Sonraki" 171 + STR_NEXT_PREV: "Sonraki/Önceki" 172 + STR_BOOKERLY: "Bookerly" 173 + STR_NOTO_SANS: "Noto Sans" 174 + STR_OPEN_DYSLEXIC: "Open Dyslexic" 175 + STR_SMALL: "Küçük" 176 + STR_MEDIUM: "Orta" 177 + STR_LARGE: "Büyük" 178 + STR_X_LARGE: "Çok Büyük" 179 + STR_TIGHT: "Dar" 180 + STR_NORMAL: "Normal" 181 + STR_WIDE: "Geniş" 182 + STR_JUSTIFY: "İki Yana Yasla" 183 + STR_ALIGN_LEFT: "Sola Yasla" 184 + STR_CENTER: "Ortala" 185 + STR_ALIGN_RIGHT: "Sağa Yasla" 186 + STR_MIN_1: "1 dak" 187 + STR_MIN_5: "5 dak" 188 + STR_MIN_10: "10 dak" 189 + STR_MIN_15: "15 dak" 190 + STR_MIN_30: "30 dak" 191 + STR_PAGES_1: "1 sayfa" 192 + STR_PAGES_5: "5 sayfa" 193 + STR_PAGES_10: "10 sayfa" 194 + STR_PAGES_15: "15 sayfa" 195 + STR_PAGES_30: "30 sayfa" 196 + STR_UPDATE: "Güncelle" 197 + STR_CHECKING_UPDATE: "Güncelleme denetleniyor..." 198 + STR_NEW_UPDATE: "Yeni güncelleme mevcut!" 199 + STR_CURRENT_VERSION: "Mevcut Sürüm: " 200 + STR_NEW_VERSION: "Yeni Sürüm: " 201 + STR_UPDATING: "Güncelleniyor..." 202 + STR_NO_UPDATE: "Güncelleme yok" 203 + STR_UPDATE_FAILED: "Güncelleme başarısız" 204 + STR_UPDATE_COMPLETE: "Güncelleme tamamlandı" 205 + STR_POWER_ON_HINT: "Açmak için güç tuşuna basılı tutun" 206 + STR_EXTERNAL_FONT: "Harici Yazı Tipi" 207 + STR_BUILTIN_DISABLED: "Yerleşik (Devre Dışı)" 208 + STR_NO_ENTRIES: "Girdi bulunamadı" 209 + STR_DOWNLOADING: "İndiriliyor..." 210 + STR_DOWNLOAD_FAILED: "İndirme başarısız" 211 + STR_ERROR_MSG: "Hata:" 212 + STR_UNNAMED: "İsimsiz" 213 + STR_NO_SERVER_URL: "Sunucu adresi ayarlanmamış" 214 + STR_FETCH_FEED_FAILED: "Akış alınamadı" 215 + STR_PARSE_FEED_FAILED: "Akış ayrıştırılamadı" 216 + STR_NETWORK_PREFIX: "Ağ: " 217 + STR_IP_ADDRESS_PREFIX: "IP Adresi: " 218 + STR_SCAN_QR_WIFI_HINT: "veya WiFi'ye bağlanmak için QR kodu tarayın." 219 + STR_ERROR_GENERAL_FAILURE: "Hata: Genel hata" 220 + STR_ERROR_NETWORK_NOT_FOUND: "Hata: Ağ bulunamadı" 221 + STR_ERROR_CONNECTION_TIMEOUT: "Hata: Bağlantı zaman aşımı" 222 + STR_SD_CARD: "SD kart" 223 + STR_BACK: "« Geri" 224 + STR_EXIT: "« Çıkış" 225 + STR_HOME: "« Ana Sayfa" 226 + STR_SAVE: "« Kaydet" 227 + STR_SELECT: "Seç" 228 + STR_TOGGLE: "Değiştir" 229 + STR_CONFIRM: "Onayla" 230 + STR_CANCEL: "İptal" 231 + STR_CONNECT: "Bağlan" 232 + STR_OPEN: "Aç" 233 + STR_DOWNLOAD: "İndir" 234 + STR_RETRY: "Tekrar Dene" 235 + STR_YES: "Evet" 236 + STR_NO: "Hayır" 237 + STR_STATE_ON: "AÇIK" 238 + STR_STATE_OFF: "KAPALI" 239 + STR_NOT_SET: "Ayarlanmadı" 240 + STR_DIR_LEFT: "Sol" 241 + STR_DIR_RIGHT: "Sağ" 242 + STR_DIR_UP: "Yukarı" 243 + STR_DIR_DOWN: "Aşağı" 244 + STR_CAPS_ON: "BÜYÜK" 245 + STR_CAPS_OFF: "küçük" 246 + STR_OK_BUTTON: "Tamam" 247 + STR_SLEEP_COVER_FILTER: "Uyku Ekranı Kapak Filtresi" 248 + STR_FILTER_CONTRAST: "Kontrast" 249 + STR_UI_THEME: "Arayüz Teması" 250 + STR_THEME_CLASSIC: "Klasik" 251 + STR_THEME_LYRA: "Lyra" 252 + STR_THEME_LYRA_EXTENDED: "Lyra Genişletilmiş" 253 + STR_SUNLIGHT_FADING_FIX: "Güneş Işığı Solma Düzeltmesi" 254 + STR_REMAP_FRONT_BUTTONS: "Ön Tuşları Yeniden Ata" 255 + STR_OPDS_BROWSER: "OPDS Tarayıcı" 256 + STR_COVER_CUSTOM: "Kapak + Özel" 257 + STR_RECENTS: "Son Okunanlar" 258 + STR_MENU_RECENT_BOOKS: "Son Kitaplar" 259 + STR_NO_RECENT_BOOKS: "Son okunan kitap yok" 260 + STR_CALIBRE_DESC: "Calibre kablosuz cihaz transferini kullan" 261 + STR_FORGET_AND_REMOVE: "Ağı unut ve kayıtlı şifreyi sil?" 262 + STR_FORGET_BUTTON: "Unut" 263 + STR_CALIBRE_STARTING: "Calibre Başlatılıyor..." 264 + STR_CALIBRE_SETUP: "Kurulum" 265 + STR_CALIBRE_STATUS: "Durum" 266 + STR_CLEAR_BUTTON: "Temizle" 267 + STR_DEFAULT_VALUE: "Varsayılan" 268 + STR_REMAP_PROMPT: "Her rol için bir ön tuşa basın" 269 + STR_UNASSIGNED: "Atanmamış" 270 + STR_ALREADY_ASSIGNED: "Zaten atanmış" 271 + STR_REMAP_RESET_HINT: "Yan tuş Yukarı: Varsayılan dizilime dön" 272 + STR_REMAP_CANCEL_HINT: "Yan tuş Aşağı: Atamayı iptal et" 273 + STR_HW_BACK_LABEL: "Geri (1. tuş)" 274 + STR_HW_CONFIRM_LABEL: "Onayla (2. tuş)" 275 + STR_HW_LEFT_LABEL: "Sol (3. tuş)" 276 + STR_HW_RIGHT_LABEL: "Sağ (4. tuş)" 277 + STR_GO_TO_PERCENT: "%'ye git" 278 + STR_GO_HOME_BUTTON: "Ana Sayfaya Git" 279 + STR_SYNC_PROGRESS: "Okuma İlerlemesini Senkronize Et" 280 + STR_DELETE_CACHE: "Kitap Önbelleğini Sil" 281 + STR_CHAPTER_PREFIX: "Bölüm: " 282 + STR_PAGES_SEPARATOR: " sayfa | " 283 + STR_BOOK_PREFIX: "Kitap: " 284 + STR_KBD_SHIFT: "shift" 285 + STR_KBD_SHIFT_CAPS: "ÜST" 286 + STR_KBD_LOCK: "KİLİT" 287 + STR_CALIBRE_URL_HINT: "Calibre için URL'nize /opds ekleyin" 288 + STR_PERCENT_STEP_HINT: "Sol/Sağ: %1 Yukarı/Aşağı: %10" 289 + STR_SYNCING_TIME: "Zaman senkronize ediliyor..." 290 + STR_CALC_HASH: "Belge özeti hesaplanıyor..." 291 + STR_HASH_FAILED: "Belge özeti hesaplanamadı" 292 + STR_FETCH_PROGRESS: "Uzak ilerleme alınıyor..." 293 + STR_UPLOAD_PROGRESS: "İlerleme yükleniyor..." 294 + STR_NO_CREDENTIALS_MSG: "Kimlik bilgisi ayarlanmamış" 295 + STR_KOREADER_SETUP_HINT: "Ayarlar'da KOReader hesabını kurun" 296 + STR_PROGRESS_FOUND: "İlerleme bulundu!" 297 + STR_REMOTE_LABEL: "Uzak:" 298 + STR_LOCAL_LABEL: "Yerel:" 299 + STR_PAGE_OVERALL_FORMAT: "Sayfa %d, genel %.2f%%" 300 + STR_PAGE_TOTAL_OVERALL_FORMAT: "Sayfa %d/%d, genel %.2f%%" 301 + STR_DEVICE_FROM_FORMAT: " Şuradan: %s" 302 + STR_APPLY_REMOTE: "Uzak ilerlemeyi uygula" 303 + STR_UPLOAD_LOCAL: "Yerel ilerlemeyi yükle" 304 + STR_NO_REMOTE_MSG: "Uzak ilerleme bulunamadı" 305 + STR_UPLOAD_PROMPT: "Mevcut konumu yükle?" 306 + STR_UPLOAD_SUCCESS: "İlerleme yüklendi!" 307 + STR_SYNC_FAILED_MSG: "Senkronizasyon başarısız" 308 + STR_SECTION_PREFIX: "Bölüm " 309 + STR_UPLOAD: "Yükle" 310 + STR_BOOK_S_STYLE: "Kitabın Stili" 311 + STR_EMBEDDED_STYLE: "Gömülü Stil" 312 + STR_OPDS_SERVER_URL: "OPDS Sunucu Adresi" 313 + 314 + STR_AUTO_TURN_ENABLED: "Otomatik Çevirme Etkin: " 315 + STR_AUTO_TURN_PAGES_PER_MIN: "Otomatik Çevirme (Dakikada Sayfa)" 316 + STR_BATTERY: "Pil" 317 + STR_BOOK: "Kitap" 318 + STR_BOOK_PROGRESS_PERCENTAGE: "Kitap İlerleme Yüzdesi" 319 + STR_CHAPTER: "Bölüm" 320 + STR_CHAPTER_PAGE_COUNT: "Bölüm Sayfa Sayısı" 321 + STR_CUSTOMISE_STATUS_BAR: "Durum Çubuğunu Özelleştir" 322 + STR_DELETE: "Sil" 323 + STR_DISPLAY_QR: "Sayfayı QR olarak göster" 324 + STR_EXAMPLE_BOOK: "Kitap Başlığı" 325 + STR_EXAMPLE_CHAPTER: "Bölüm 21" 326 + STR_FOOTNOTES: "Dipnotlar" 327 + STR_HIDE: "Gizle" 328 + STR_IMAGES: "Görseller" 329 + STR_IMAGES_DISPLAY: "Göster" 330 + STR_IMAGES_PLACEHOLDER: "Yer Tutucu" 331 + STR_IMAGES_SUPPRESS: "Bastır" 332 + STR_LINK: "[bağlantı]" 333 + STR_NO_FILES_FOUND: "Dosya bulunamadı" 334 + STR_NO_FOOTNOTES: "Bu sayfada dipnot yok" 335 + STR_PREVIEW: "Önizleme" 336 + STR_PROGRESS_BAR: "İlerleme Çubuğu" 337 + STR_PROGRESS_BAR_MEDIUM: "Orta" 338 + STR_PROGRESS_BAR_THICK: "Kalın" 339 + STR_PROGRESS_BAR_THICKNESS: "İlerleme Çubuğu Kalınlığı" 340 + STR_PROGRESS_BAR_THIN: "İnce" 341 + STR_SCREENSHOT_BUTTON: "Ekran görüntüsü al" 342 + STR_SELECTED: "Seçili" 343 + STR_SHOW: "Göster" 344 + STR_TITLE: "Başlık"
+1 -1
scripts/gen_i18n.py
··· 222 222 "עברית": "HE", "hebrew": "HE", 223 223 "فارسی": "FA", "persian": "FA", 224 224 "čeština": "CS", 225 + "türkçe": "TR", "turkish": "TR", 225 226 } 226 227 227 228 ··· 492 493 493 494 lines.append("") 494 495 lines.append("} // namespace i18n_strings") 495 - 496 496 _write_file(output_path, lines) 497 497 498 498