Crowdin Sorgu Dili (CroQL), Crowdin ve Crowdin Enterprise API için belirli koşullara dayanarak gerekli yerelleştirme kaynaklarını almanızı sağlayan bir araçtır. CroQL kullanarak, kaynak dizgileri ve çevirilerini belirli bir hedef dil için süzebilirsiniz.
CroQL’yi aşağıdaki API yöntemleriyle kullanabilirsiniz:
Ana CroQL işleçleri aşağıda listelenmiştir. Crowdin’den gerekli içeriği almak amacıyla belirli koşulları ayarlamak için bunları kullanın ve birleştirin. CroQL sorgunuzu oluşturmak için aşağıdaki tablolardaki öğeleri kullanabilirsiniz.
Aritmetik işleçler, herhangi bir sayısal veri türüyle matematik işlemlerini gerçekleştirmek için kullanılır.
Ad | Sembol | Örnek |
---|---|---|
Toplama | + | 1 + 9 |
Çıkarma | - | 11 - 1 |
Bölme | / | 20 / 2 |
Çarpma | * | 2 * 5 |
Olumsuzluk | - | -10 |
Karşılaştırma işleçleri değerleri karşılaştırmak ve true
veya false
döndürmek için kullanılır.
Ad | Sembol | Kod Adları | Örnek |
---|---|---|---|
Arasındadır | {{expression}} between {{expression}} and {{expression}} | 5 between 1 and 10 | |
Eşittir | = | 10 = 10 | |
Eşit değildir | != | ≠ | 1 != 10; 1 ≠ 10 |
Büyüktür | > | 10 > 1 | |
Büyüktür veya eşittir | >= | ≥ | 10 >= 1; 10 ≥ 1 |
Küçüktür | < | 1 < 10 | |
Küçüktür veya eşittir | <= | ≤ | 1 <= 10; 1 ≤ 10; |
İçerir | {{string}} contains {{string}} | "Merhaba Dünya" contains "Merhaba"; "Merhaba Dünya" contains text; text contains "Merhaba Dünya"; context contains text; |
Mantıksal işleçler, birden çok boole ifadesini veya değerini birleştirmek ve tek bir boole çıktısı sağlamak için kullanılır.
Ad | Sembol | Örnek |
---|---|---|
Ve | and | 1 < 10 and 10 > 1 |
Veya | or | 1 < 10 or 10 > 1 |
Dışlamalı veya | xor | 1 < 10 xor 10 > 1 |
Not | not | not 1 < 10 |
Süzme işleçleri, nesneleri belirtilen koşula dayanarak süzmek için kullanılır.
Ad | Sembol | Örnek |
---|---|---|
Süzme | {{collection}} where {{predicate}} | çeviriler where (oy sayısı > 0) |
Eşleşme | {{object}} with {{predicate}} | kullanıcı with (login = "crowdin") |
Üçlü işleç, ilk değerde belirtilen bir koşulu denetlemek için kullanılır ve eğer true
ise ikinci değeri döndürür, ancak false
ise, üçüncü değeri döndürür.
Ad | Sembol | Örnek |
---|---|---|
Üçlü | If {{condition}} then {{expression}} else {{expression}} | If 1 < 10 then "küçüktür" else "büyüktür" |
Alma işleçleri nesnelerden verileri almak için kullanılır.
Ad | Sembol | Örnek |
---|---|---|
Bahsetme | @user:{{string}}; @language:{{string}} | @user:"crowdin"; @language:"tr" |
Üye | {{member}} of {{object}} | çeviri sayısı |
Tanımlayıcı | {{identifier}} | text; identifier |
Rakamsal işleçler, daha fazla işleme için değerleri bildirmek amacıyla kullanılır.
Ad | Sembol | Örnek |
---|---|---|
Tamsayı | {{integer}} | 10 |
Süzme | {{float}} | 10.01 |
Dizgi | {{string}} | “crowdin" |
Tarih-Saat | {{datetime}} | 'today'; '2021-03-16 00:00:00' |
Grup işleci, işleçlerin yürütme sırasını belirlemek için kullanılır.
Ad | Sembol | Örnek |
---|---|---|
Grup | ( ) | 1 < 10 and (20 > 10 or 10 > 5) |
Onayları veya oyları olan Türkçe çevirisine sahip olmayan dizgilerin listesini almak için sorgunuz şöyle görünebilir:
çevirilerin sayısı where ( dil = @language:"tr" and ( onay sayısı > 0 or oy sayısı > 0 ) ) = 0
Sorgunuzu Crowdin’de aşağıdaki uç noktada kullanın:
Crowdin Enterprise’da:
{projectId} | Tür: Açıklama: Crowdin projenizin sayısal tanımlayıcısı. |
{croql} | Tür: Açıklama: CroQL ifadesi. |
Sadece bir çevirisi olan dizgilerin listesini almak için sorgunuz şöyle görünebilir:
çeviri sayısı = 1
Sorgunuzu Crowdin’de aşağıdaki uç noktada kullanın:
Crowdin Enterprise’da:
{projectId} | Tür: Açıklama: Crowdin projenizin sayısal tanımlayıcısı. |
{croql} | Tür: Açıklama: CroQL ifadesi. |
Sadece belirli bir kullanıcıdan çevirileri olan dizgilerin listesini almak için sorgunuz şöyle görünebilir:
çeviri sayısı > 0 and çeviri sayısı = çeviri sayısı where (kullanıcı = @user:"crowdin")
Sorgunuzu Crowdin’de aşağıdaki uç noktada kullanın:
Crowdin Enterprise’da:
{projectId} | Tür: Açıklama: Crowdin projenizin sayısal tanımlayıcısı. |
{croql} | Tür: Açıklama: CroQL ifadesi. |
Belirli kullanıcılardan olmayan en az bir çevirisi olan dizgilerin listesini almak için sorgunuz şöyle görünebilir:
çeviri sayısı where (kullanıcı != @user:"crowdin") > 0
Sorgunuzu Crowdin’de aşağıdaki uç noktada kullanın:
Crowdin Enterprise’da:
{projectId} | Tür: Açıklama: Crowdin projenizin sayısal tanımlayıcısı. |
{croql} | Tür: Açıklama: CroQL ifadesi. |
Tüm çevirileri belirli kullanıcılardan olmayan dizgilerin bir listesini almak için sorgunuz şöyle görünebilir:
çeviri sayısı > 0 and çeviri sayısı = çeviri sayısı where (kullanıcı != @user:"crowdin")
Sorgunuzu Crowdin’de aşağıdaki uç noktada kullanın:
Crowdin Enterprise’da:
{projectId} | Tür: Açıklama: Crowdin projenizin sayısal tanımlayıcısı. |
{croql} | Tür: Açıklama: CroQL ifadesi. |
Kullanıcı tarafından crowdin
kullanıcı adıyla veya ≥ 100 oy fazla olan çevirileri almak için sorgunuz şöyle görünebilir:
kullanıcı = @user:"crowdin" or oyların sayısı where ( is up ) >= 100
Sorgunuzu Crowdin’de aşağıdaki uç noktada kullanın:
Crowdin Enterprise’da:
{projectId} | Tür: Açıklama: Crowdin projenizin sayısal tanımlayıcısı. |
{croql} | Tür: Açıklama: CroQL ifadesi. |
Crowdin projenizdeki bir dosyanın tanımlayıcısına ve sayısal kimliğine göre süzülmüş dizgilerin bir listesini almak için sorgunuz şöyle görünebilir:
identifier = "anahtar" ve dosyanın kimliği = 777
Sorgunuzu Crowdin’de aşağıdaki uç noktada kullanın:
Crowdin Enterprise’da:
{projectId} | Tür: Açıklama: Crowdin projenizin sayısal tanımlayıcısı. |
{croql} | Tür: Açıklama: CroQL ifadesi. |
CroQL şu bağlamlarda kullanılabilir: kaynak dizgi bağlamı ve çeviri bağlamı. CroQL sorgularınızı oluştururken aşağıdaki örnekleri temel olarak kullanın.
{
"type is plain": true,
"type is plural": false,
"type is icu": false,
"type is asset": false,
"text": "Quick Start",
"identifier": "quick_start",
"context": "quick_start",
"max length": 0,
"is visible": true,
"is hidden": false,
"file": {
"id": 32,
"name": "sample.csv",
"title": "Sample",
"type": "csv"
},
"comments": [
{
"has issue": false,
"has unresolved issue": false
}
],
"screenshots": [],
"translations": [
{
"text": "Hızlı Başlangıç",
"plural form": "none",
"is pre translated": true,
"provider": "tm",
"language": 52,
"user": 1,
"votes": [
{
"is up": true,
"is down": false,
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"approvals": [
{
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"updated": "2021-04-09 10:23:17"
}
],
"added": "2021-04-08 12:33:27",
"updated": "2021-04-08 12:33:27"
}
type is plain | Tür: Açıklama: Düz metin içeren kaynak dizgi. |
type is plural | Tür: Açıklama: Çoğul biçimleri içeren kaynak dizgi. |
type is icu | Tür: Açıklama: ICU içeren kaynak dizgi. |
type is asset | Tür: Açıklama: Kaynak dizgi bir varlık. |
text | Tür: Açıklama: Kaynak dizgi metni. |
identifier | Tür: Açıklama: Kaynak dizgi tanımlayıcısı (anahtar). |
context | Tür: Açıklama: Kaynak dizgi bağlamı. |
max length | Tür: Açıklama: Kaynak dizgi en fazla uzunluğu. |
is visible | Tür: Açıklama: Kaynak dizgi görünür. |
is hidden | Tür: Açıklama: Kaynak dizgi gizli. |
file | Tür: Açıklama: Kaynak dizgi dosyası. |
comments | Tür: Açıklama: Kaynak dizgi açıklamaları. |
has issue | Tür: Açıklama: Kaynak dizgi bir sorun konusuna sahip. |
has unresolved issue | Tür: Açıklama: Kaynak dizgi bir çözülmemiş sorun konusuna sahip. |
screenshots | Tür: Açıklama: Kaynak dizgi ekran görüntüleri. |
translations | Tür: Açıklama: Kaynak dizgi çevirileri. |
text | Tür: Açıklama: Çeviri metni. |
plural form | Tür: Açıklama: Çeviri çoğul biçimi. |
is pre translated | Tür: Açıklama: Çeviri ön çeviri aracılığıyla eklendi. |
provider | Tür: İzin verilen değerler: Açıklama: Çeviri belleği veya makine çeviri motoru aracılığıyla sağlanan çeviri. |
language | Tür: Açıklama: Hedef dilin sayısal tanımlayıcısı. |
user | Tür: Açıklama: Çeviri ekleyen kullanıcının sayısal tanımlayıcısı. |
votes | Tür: Açıklama: Çeviriye eklenen oyların dizilimi. |
is up | Tür: Açıklama: Olumlu oy. |
is down | Tür: Açıklama: Olumsuz oy. |
user | Tür: Açıklama: Çeviri için oy ekleyen kullanıcının sayısal tanımlayıcısı. |
added | Tür: Açıklama: Çeviri için oy eklendiğindeki tarih. |
approvals | Tür: Açıklama: Eklenen çeviri onaylarının dizilimi. |
user | Tür: Açıklama: Çeviriyi onaylayan kullanıcının sayısal tanımlayıcısı. |
added | Tür: Açıklama: Çeviri onayı eklendiğindeki tarih. |
updated | Tür: Açıklama: Çevirinin güncellendiğindeki tarih. |
added | Tür: Açıklama: Kaynak dizgi eklendiğindeki tarih. |
updated | Tür: Açıklama: Kaynak dizgi güncellendiğindeki tarih. |
{
"text": "Швидкий старт",
"plural form": "none",
"is pre translated": true,
"provider": "tm",
"user": 1,
"votes": [
{
"is up": true,
"is down": false,
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"approvals": [
{
"user": 2,
"added": "2021-04-09 13:44:14"
}
],
"updated": "2021-04-09 10:23:17"
}
text | Tür: Açıklama: Çeviri metni. |
plural form | Tür: Açıklama: Çeviri çoğul biçimi. |
is pre translated | Tür: Açıklama: Çeviri ön çeviri aracılığıyla eklendi. |
provider | Tür: İzin verilen değerler: Açıklama: Çeviri belleği veya makine çeviri motoru aracılığıyla sağlanan çeviri. |
user | Tür: Açıklama: Çeviri ekleyen kullanıcının sayısal tanımlayıcısı. |
votes | Tür: Açıklama: Çeviriye eklenen oyların dizilimi. |
is up | Tür: Açıklama: Olumlu oy. |
is down | Tür: Açıklama: Olumsuz oy. |
user | Tür: Açıklama: Çeviri için oy ekleyen kullanıcının sayısal tanımlayıcısı. |
added | Tür: Açıklama: Çeviri için oy eklendiğindeki tarih. |
approvals | Tür: Açıklama: Eklenen çeviri onaylarının dizilimi. |
user | Tür: Açıklama: Çeviriyi onaylayan kullanıcının sayısal tanımlayıcısı. |
added | Tür: Açıklama: Çeviri onayı eklendiğindeki tarih. |
updated | Tür: Açıklama: Çevirinin güncellendiğindeki tarih. |