Skip to content

Turkish Language#1557

Open
azizaktas wants to merge 33 commits into
scriptscat:mainfrom
azizaktas:main
Open

Turkish Language#1557
azizaktas wants to merge 33 commits into
scriptscat:mainfrom
azizaktas:main

Conversation

@azizaktas

Copy link
Copy Markdown
Contributor

Minor Turkish language errors have been corrected. Capitalization has been adjusted/corrected to improve user experience.

@cyfung1031

Copy link
Copy Markdown
Collaborator

@azizaktas

Copy link
Copy Markdown
Contributor Author

@cyfung1031

Corrections have been made to conform to the guidelines and terminology.

@cyfung1031

Copy link
Copy Markdown
Collaborator

@cyfung1031

Corrections have been made to conform to the guidelines and terminology.

We dont know Turkish
If you think there is better wording then you can change the terminology instead

@cyfung1031 cyfung1031 marked this pull request as draft July 11, 2026 04:42
@cyfung1031

Copy link
Copy Markdown
Collaborator

I converted this to draft. After your completion, please click "Ready for review".

@azizaktas azizaktas marked this pull request as ready for review July 11, 2026 11:01

@cyfung1031 cyfung1031 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@azizaktas, emeğin için teşekkürler. Değişiklikleri Türkçe doğallık, mevcut tr-TR terminoloji kılavuzu ve arayüzdeki gerçek kullanım bağlamı açısından inceledim. Birkaç değişiklik anlamı bozuyor veya kılavuzla çelişiyor; aşağıdaki satır içi notları güncelleyebilir misin?

Bunlara ek olarak, tam cümle olan bazı metinlerin sonundaki noktalar kaldırılmış (permission_describe, dom_permission_describe, setting_sync_content, script_operation_description vb.) ve çok sayıda metin topluca başlık biçimine çevril

@cyfung1031 cyfung1031 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Önceki değişiklik isteğime ait ayrıntılı satır notları aşağıdadır. Lütfen bu noktaları düzelttikten sonra yeniden inceleme isteyin.

"background_script_description": "Bu bir Arka Plan Betiği'dir. Etkinleştirildiğinde, tarayıcı başlatıldığında otomatik olarak çalışır ve panelden manuel olarak kontrol edilebilir.",
"scheduled_script_description_title": "Bu bir Zamanlanmış Betik'tir. Etkinleştirildiğinde belirlenen saatte otomatik olarak çalışır ve panelden manuel olarak kontrol edilebilir.",
"code_lines": "{{count}} ",
"code_copy": "Kodu Kopyala",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bu değişiklik görünür bir UI regresyonu oluşturuyor. CodePreview bu değeri tek başına satır sayısı etiketi olarak gösteriyor; "{{count}} " sonucunda kullanıcı yalnızca bir sayı görecek. Lütfen birimi koruyun: "{{count}} satır".

"referral_link_title": "Yönlendirme Bağlantısı",
"ads_title": "Reklamlar",
"payment_title": "Ödeme",
"payment_title": "Ödemelik",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ödemelik Türkçede bu bağlamda doğal veya doğru bir kategori adı değil ve mevcut Payment anlamını değiştiriyor. Lütfen Ödeme olarak bırakın.

"check_update": "Güncellemeyi kontrol et",
"update": "Güncellemeler",
"check_update": "Güncellemeleri Kontrol Et",
"confirm_delete": "Silmeyi Onayla",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bu anahtar bir eylem etiketi (update), ancak isim biçimine çevrilmiş. Terminoloji kılavuzu da install/update eylemleri için Yükle / Güncelle kullanılmasını istiyor. Lütfen Güncelle olarak bırakın.

"installed_scripts": "Yüklü Betikler",
"nav_scripts": "Betikler",
"subscribe": "Abonelik",
"subscribe": "Abone Ol",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Terminoloji kılavuzuna göre Abonelik nesne adı, Abone ol ise eylemdir. Bu anahtar gezinme/sekme bağlamında abonelik bölümünü adlandırıyorsa Abonelik kalmalı; gerçek bir eylem düğmesi olduğu UI üzerinden doğrulanmadan Abone Ol yapılmamalı.

"script_list_enable_title": "Betikleri etkinleştir",
"script_list_enable_content": "Betiklerin kullanılabilmesi için etkinleştirilmesi gerekir. Sayfa betikleri kurulumdan sonra varsayılan olarak etkindir, arka plan betikleri ise varsayılan olarak devre dışıdır.",
"installed_scripts": "Yüklediğiniz betikler burada görüntülenir. Temel bilgiler için <Link href=\"https://docs.scriptcat.org/en/docs/use/use/\">Hızlı Başlangıca</Link> bakın.",
"script_list_title": "Betik Kütüphanesi",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR ile eklenen terminoloji kılavuzu script gallery / market için mevcut ürün alanının adını (Betik Galerisi / Betik Pazarı) kullanmayı söylüyor. Betik Kütüphanesi yeni ve doğrulanmamış bir ürün adı getiriyor. İlgili alan gerçekten yeniden adlandırılmadıysa mevcut adı koruyun.

@cyfung1031

cyfung1031 commented Jul 11, 2026

Copy link
Copy Markdown
Collaborator

@azizaktas
I have asked AI to review this for me. The comments might not be 100% correct.
You can opt to keep your translation (reply with reasons etc) or update.

@cyfung1031

Copy link
Copy Markdown
Collaborator

Review method

The translations were checked against:

  1. The English en-US source for the primary meaning.
  2. The Simplified Chinese zh-CN source as a second semantic reference.
  3. The repository’s tr-TR terminology guide.
  4. Actual UI usage where a key’s function was ambiguous.

A translation can therefore be accepted even when it differs literally from English and Chinese, provided that the Turkish terminology guide or UI context clearly supports the difference.


Correct or acceptable changes

Key or area Assessment Explanation
agent.titleAI Ajanı Good This is a natural Turkish localization of “AI Agent.”
agent.opfs_empty, opfs_empty_desc, opfs_type_directorydizin Good “Dizin” is the project’s preferred file-system term. The guide explicitly maps “directory” to Dizin.
editor.only_background_scheduled_can_runzamanlanmış betikler Good English says “crontab scripts,” while Chinese says “scheduled scripts.” The Turkish guide explicitly requires Zamanlanmış Betik for the script type and reserves cron for the expression syntax.
guide.setting_sync_titleBetik Senkronizasyonu Acceptable terminology override This no longer literally matches English “Update and Sync” or Chinese “更新与同步,” but the Turkish terminology guide explicitly defines setting_sync_title as Betik Senkronizasyonu.
guide.demo_normal_name and demo_normal_desc using Normal Betik Acceptable clarification The English and Chinese sources only say “Example Script,” but the key explicitly identifies a normal-script example. The Turkish guide treats Normal Betik as a distinct ScriptCat script type.
install.enabled_labelEtkin Good The terminology guide specifies Etkin and Devre Dışı for status labels.
install.watching_titleDosya değişiklikleri izleniyor Good Natural Turkish and consistent with “Watching file changes” / “正在监听文件变化.”
install.updatepage.tap_to_expandGenişletmek için tıklayın Good Although English says “Tap,” Chinese says “Click,” and the Turkish guide specifically recommends tıklayın for the desktop interface.
install.codechange_noticeableFark Edilebilir Değişiklik Good Accurately expresses “Noticeable Change” / “显著改动.”
Rewritten backup explanation in guide.tools_backup_content Good The new wording remains faithful to both sources and reads more naturally in Turkish.
common.cancelİptal Et Acceptable This is a natural action-label translation of “Cancel.”
Lowercase sentence-style status messages such as Yükleme başarılı Good These are messages rather than proper names, so sentence-style capitalization is appropriate.

Required corrections

1. install.code_lines loses the unit

PR text

"code_lines": "{{count}} "

Problem

The user will see only a number. Both source languages explicitly include the line unit:

  • English: {{count}} lines
  • Chinese: {{count}} 行

Required correction

"code_lines": "{{count}} satır"

Severity: Critical UI regression


2. common.update was changed from an action into a plural noun

PR text

"update": "Güncellemeler"

Güncellemeler means “Updates.” The key is an action: English uses “Update,” Chinese uses “更新,” and the Turkish guide explicitly requires Güncelle for the update action.

Required correction

"update": "Güncelle"

Severity: High semantic error


3. script.subscribe is a navigation-section name, not an action

PR text

"subscribe": "Abone Ol"

The key is used as the label of the /subscribe navigation item, so it names the subscription section. It is not a button asking the user to subscribe.

The terminology guide distinguishes:

  • Object or section name: Abonelik
  • Action: Abone ol

Both source locales also use the subscription noun.

Required correction

"subscribe": "Abonelik"

Severity: High context error


4. Betik Kütüphanesi invents a new product-area name

Affected keys include:

common.script_gallery
guide.script_list_title
guide.script_list_content
guide.welcome_feature_market_title

The English sources distinguish “Script Gallery” and “Script Market,” while the Chinese sources use 脚本站 and 脚本市场.

The Turkish guide explicitly requires:

  • Betik Galerisi for Script Gallery
  • Betik Pazarı for Script Market

Required corrections

"script_gallery": "Betik Galerisi"

For the guide’s market-related keys:

Betik Pazarı
Betik Pazarı'ndan
Betik Pazarı'ndan Yükle

Severity: High terminology inconsistency


5. Invalid apostrophes were added to common noun phrases

The following forms are grammatically incorrect because the phrases are generic common nouns, not proper names:

Hariç Tutma'ya
Arka Plan Betikleri'ni
Arka Plan Betiği'dir
Zamanlanmış Betik'tir

Suggested corrections

"add_exclude": "Hariç Tutma Ekle"
arka plan betiklerini
arka plan betiğidir
zamanlanmış betiktir

Capitalized ScriptCat type names can be used as standalone labels, but inside normal sentences they should be inflected without an apostrophe.

Severity: Medium grammar error


6. Several complete sentences lost their final punctuation

Affected keys include:

agent.permission_describe
agent.dom_permission_describe
guide.setting_sync_content
permission.script_operation_description
popup.develop_mode_guide
popup.allow_user_script_guide
popup.menu_expand_num_after

For example, both the English and Chinese Agent permission descriptions end as complete sentences.

The popup guidance also contains a full sentence before the link in both source locales.

Required correction

Restore the period before or after the relevant HTML link, matching the original sentence structure.

Example:

... betikler düzgün çalışamaz. <a ...>

Do the same for the other complete explanatory sentences.

Severity: Medium punctuation regression


7. permission.script_operation_title drops “synchronization”

PR text

"script_operation_title": "Bu betik, betik depolama alanına erişmeye çalışıyor"

Both sources specifically describe script synchronization storage, not generic script storage.

The new text broadens the permission and can mislead the user about what storage is being accessed.

Suggested correction

"script_operation_title": "Betik, betik senkronizasyonu depolama alanına erişmeye çalışıyor"

Also restore the final period in script_operation_description.

Severity: High permission-description error


8. install.payment_title uses an unnatural and incorrect word

PR text

"payment_title": "Ödemelik"

Ödemelik is not a natural category label for “Payment.” The English source says “Payment,” and Chinese says 付费脚本, meaning a paid or payment-requiring script.

Required correction

Conservative source-faithful choice:

"payment_title": "Ödeme"

Ücretli could also work if the project deliberately wants the category to mean “Paid.”

Severity: High lexical error


9. install.tracking_title changes the activity into an actor

PR text

"tracking_title": "İzleyici"

İzleyici normally means “viewer,” “observer,” or “tracker”—an actor or entity. The source category is the activity “Tracking” / 信息追踪.

Required correction

"tracking_title": "Takip"

İzleme is another possible activity noun.

Severity: High semantic error


10. Metadata terminology was incorrectly changed

script.error_metadata_invalid

PR text

"error_metadata_invalid": "Geçersiz bildirim bloğu"

English says “Invalid MetaData block,” and Chinese retains MetaData.

A metadata block is not simply a “declaration block.” The project guide also warns against changing technical identifiers during language cleanup.

Required correction

"error_metadata_invalid": "Geçersiz MetaData bloğu"

script.error_metadata_line_duplicated

PR text

"error_metadata_line_duplicated": "Yinelenen bildirimler var"

Using bildirim for an individual metadata declaration is supported by the guide, but the new text removes the important metadata context and drops the final period.

Suggested correction

"error_metadata_line_duplicated": "Metadata içinde yinelenen bildirimler var."

Severity: High technical-terminology error


11. install.perm_card_hint changes the politeness level

PR text

"perm_card_hint": "Lütfen yüklemeden önce onayla"

After Lütfen, the formal/plural imperative onaylayın is appropriate for this interface. Both sources contain a polite request: “Please confirm” / 请确认.

Required correction

"perm_card_hint": "Lütfen yüklemeden önce onaylayın"

The same tone issue appears in:

"input_tags_placeholder": "Etiketleri gir, onaylamak için Enter'a bas"

A consistent interface version would be:

"input_tags_placeholder": "Etiketleri girin, onaylamak için Enter'a basın"

Severity: Medium tone inconsistency


12. Installation action notes changed meaning and agency

Affected keys:

action_note_install
action_note_update
action_note_subscribe

The sources use the action as the subject:

  • “Installing means you trust…”
  • “Updating means you accept…”
  • Chinese expresses the same relationship.

The PR changes these to passive conditionals:

Yüklenirse...
Güncellenirse...

That means “if it is installed/updated,” which weakens and changes the user-action meaning.

Required corrections

"action_note_install": "Yüklemek, bu betiğin kaynağına ve yazarına güvendiğiniz anlamına gelir",
"action_note_update": "Güncellemek, bu kodu ve izin değişikliğini kabul ettiğiniz anlamına gelir",
"action_note_subscribe": "Yüklemek, bu aboneliğe ve yazarına güvendiğiniz anlamına gelir"

Severity: Medium semantic regression


13. warning_risk_antifeature should not use aggressive mixed capitalization

PR text

"warning_risk_antifeature": "ANTİ-ÖZELLİKLER İçeriyor"

The source says the script declares anti-features, not simply that it “contains” them.

The all-capital first part is also inconsistent with the surrounding sentence fragments.

Suggested correction

"warning_risk_antifeature": "anti-özellikler beyan ediyor"

The emphasis should be provided by UI styling, not arbitrary capitalization inside the translation.

Severity: Medium wording/style issue


Capitalization review

The PR applies title-style capitalization to a large number of unrelated strings. This should not be accepted as one blanket change.

The project guide explicitly says to check the feature and interface context rather than changing words collectively.

Capitalization that can remain

These are established action labels or ScriptCat type names:

Farklı Kaydet
İçe Aktar
Dışa Aktar
Arka Plan Betiği
Zamanlanmış Betik
Normal Betik

The terminology guide directly supports these forms.

Capitalization that should be reverted

Common nouns following numbers and complete sentence fragments should generally remain lowercase:

- "{{count}} Betik"
+ "{{count}} betik"

- "{{count}} Abonelik"
+ "{{count}} abonelik"

- "{{count}} Veri Öğesi"
+ "{{count}} veri öğesi"

- "{{selected}} / {{total}} Seçildi"
+ "{{selected}} / {{total}} seçildi"

- "Dosya Bozuk, İçe Aktarılamıyor"
+ "Dosya bozuk, içe aktarılamıyor"

- "Bu Sayfayı Açık Tut"
+ "Bu sayfayı açık tut"

- "Güncellemeleri Olan {{count}} Betik Bulundu"
+ "Güncellemeleri olan {{count}} betik bulundu"

- "+{{count}} Betik"
+ "+{{count}} betik"

These strings are counts, instructions, or status sentences—not proper names.


Minor or optional improvements

These are understandable and are not approval blockers by themselves.

Current PR text Suggested wording Reason
Betik Linki Betik Bağlantısı More formal and consistent with the existing Turkish locale.
Son Senkronizasyon {{time}} Son senkronizasyon: {{time}} A colon makes the time value clearer.
data_resources: "kaynaklar" Kaynak içeriyor The key is displayed alone when an item has resources, so a descriptive phrase is clearer. The code confirms that it is a standalone alternative to the value count.
skill_warning using “bilinen güvenilir kaynaklar” May remain It is slightly stronger than “legitimate sources,” but it does not materially distort the safety advice.
success, failed, subscribe_success in sentence case Keep These are status messages rather than titles.

File-by-file conclusion

File Result
agent.json Mixed: terminology improvements are good; restore removed punctuation.
common.json Changes required: update and Script Gallery terminology are incorrect.
editor.json Mostly good: fix Hariç Tutma'ya; scheduled-script terminology is improved.
guide.json Mixed: several good rewrites, but Script Market terminology, apostrophes, punctuation, and capitalization require correction.
install.json Major changes required: contains the dropped line unit, Ödemelik, İzleyici, passive action-note regressions, grammar issues, and excessive capitalization.
logs.json No semantic blocker: capitalization should be normalized consistently.
permission.json Changes required: synchronization meaning was removed and punctuation was lost.
popup.json Changes required: several full stops were removed and count nouns were unnecessarily capitalized.
script.json Major changes required: navigation label and metadata terminology are incorrect.
settings.json Mostly style-only: review title casing in context.
tools.json Mostly style-only: no significant semantic errors found.

Final recommendation

Do not merge the PR until at least the following are corrected:

  1. Restore {{count}} satır.
  2. Restore Güncelle.
  3. Restore the navigation label Abonelik.
  4. Restore Betik Galerisi / Betik Pazarı.
  5. Replace Ödemelik and İzleyici.
  6. Restore “synchronization” in the storage permission.
  7. Restore metadata terminology.
  8. Remove invalid apostrophes from common noun phrases.
  9. Restore punctuation in complete sentences.
  10. Revert inappropriate title casing in counts, instructions, and status sentences.

After those corrections, the remaining terminology improvements can be reviewed and merged independently from the broad capitalization cleanup.

@cyfung1031 cyfung1031 added the i18n Internationalization or localization issue label Jul 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

i18n Internationalization or localization issue

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants