+ *
+ * The contents of this file are subject to the GNU General Public License
+ * Version 3 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.gnu.org/copyleft/gpl.html
+ *
+ * Software distributed under the License is distributed on an "AS
+ * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+ * implied. See the License for the specific language governing
+ * rights and limitations under the License.
+ *
+ */
+
+trait Ne
+case object KW extends Ne
+case object JKW extends Ne
+case object Type extends Ne
+case object Val extends Ne
+case object Def extends Ne
+case object Method extends Ne
+
+case class Name(tr: String, en: String, ne: Ne)
+
+object Data {
+ def nType(tr: String, en: String) = Name(tr, en, Type)
+ def nVal(tr: String, en: String) = Name(tr, en, Val)
+ def nDef(tr: String, en: String) = Name(tr, en, Def)
+ def nMet(tr: String, en: String) = Name(tr, en, Method)
+ val data = List(
+ // type defs, (case) classes
+ nType("Nesne", "Object"),
+ nType("Birim", "Unit"),
+ nType("Her", "Any"),
+ nType("HerDeğer", "AnyVal"),
+ nType("HerGönder", "AnyRef"),
+ nType("Yok", "Null"),
+ nType("Hiç", "Nothing"),
+ nType("Renk", "Color"),
+ nType("Boya", "Paint"),
+ nType("Hız", "Speed"),
+ nType("Nokta", "Point"),
+ nType("Dikdörtgen", "Rectangle"),
+ nType("Üçgen", "Triangle2D"),
+ nType("İkil", "Boolean"),
+ nType("Seçim", "Boolean"),
+ nType("Lokma", "Byte"),
+ nType("Kısa", "Short"),
+ nType("Sayı", "Int"),
+ nType("Uzun", "Long"),
+ nType("İriSayı", "BigInt"),
+ nType("UfakKesir", "Float"),
+ nType("Kesir", "Double"),
+ nType("İriKesir", "BigDecimal"),
+ nType("Harf", "Char"),
+ nType("Yazı", "String"),
+ nType("EsnekYazı", "collection.mutable.StringBuilder"),
+ nType("Belki", "Option"),
+ nType("Biri", "Some"),
+ nType("Dizi", "collection.Seq"),
+ nType("Dizim", "Array"),
+ nType("EsnekDizim", "collection.mutable.ArrayBuffer"),
+ nType("Dizin", "List"),
+ nType("MiskinDizin", "LazyList"),
+ nType("Yöney", "Vector"),
+ nType("Küme", "Set"),
+ nType("Sayılar", "Vector[Sayı]"),
+ nType("UzunlukBirimi", "UnitLen"),
+ nType("GeoYol", "java.awt.geom.GeneralPath"),
+ nType("GeoNokta", "VertexShape"),
+ nType("Grafik2B", "scala.swing.Graphics2D"),
+ nType("İmge", "Image"),
+ nType("Bellekteİmge", "BufferedImage"),
+ nType("Bellekteİmgeİşlemi", "java.awt.image.BufferedImageOp"),
+ nType("İşlev1", "Function1"),
+ nType("İşlev2", "Function2"),
+ nType("İşlev3", "Function3"),
+ nType("Bölümselİşlev", "PartialFunction"),
+ // class defs
+ nType("Mp3Çalar", "net.kogics.kojo.music.KMp3"),
+ nType("Aralık", "Range"),
+ nType("ÇiniDünyası", "net.kogics.kojo.tiles.TileWorld"),
+ nType("ÇiniXY", "net.kogics.kojo.tiles.TileXY"),
+ nType("BirSayfaKostüm", "net.kogics.kojo.tiles.SpriteSheet"),
+ nType("Yöney2B", "Vector2D"),
+ nType("Resim", "Picture"),
+ nType("İmge", "Image"),
+ // defs
+ nDef("varMı", "isDefined"),
+ nDef("yokMu", "isEmpty"),
+ nDef("belirt", "assert"),
+ nDef("gerekli", "require"),
+ nDef("yeniMp3Çalar", "newMp3Player"),
+ nDef("sil", "clear"),
+ nDef("silVeSakla", "cleari"),
+ nDef("çizimiSil", "clearStepDrawing"),
+ nDef("çıktıyıSil", "clearOutput"),
+ nDef("silVeÇizimBiriminiKur", "clearWithUL"),
+ // val defs, objects, packages
+ nVal("yok", "null"),
+ nVal("doğru", "true"),
+ nVal("yanlış", "false"),
+ nVal("yavaş", "slow"),
+ nVal("orta", "medium"),
+ nVal("hızlı", "fast"),
+ nVal("çokHızlı", "superFast"),
+ nVal("noktaSayısı", "Pixel"),
+ nVal("santim", "Cm"),
+ nVal("inç", "Inch"),
+ nVal("Boş", "collection.immutable.Nil"),
+ nVal("Hiçbiri", "None"),
+
+ nVal("mavi", "blue"),
+ nVal("kırmızı", "red"),
+ nVal("sarı", "yellow"),
+ nVal("yeşil", "green"),
+ nVal("mor", "purple"),
+ nVal("pembe", "pink"),
+ nVal("kahverengi", "brown"),
+ nVal("siyah", "black"),
+ nVal("beyaz", "white"),
+ nVal("renksiz", "noColor"),
+ nVal("gri", "gray"),
+ nVal("koyuGri", "darkGray"),
+ nVal("açıkGri", "lightGray"),
+ nVal("turuncu", "orange"),
+ nVal("morumsu", "magenta"),
+ nVal("camgöbeği", "cyan"),
+ // cm
+ nVal("renkler", "ColorMaker"),
+ // Key Codes
+ nVal("tuşlar", "Kc"),
+
+ nDef("Renk", "Color"),
+ nDef("artalanıKur", "setBackground"),
+ nDef("artalanıKurDik", "setBackgroundV"),
+ nDef("artalanıKurYatay", "setBackgroundH"),
+
+ nDef("buAn", "epochTimeMillis"),
+ nDef("buSaniye", "epochTime"),
+
+ nDef("yinele", "repeat"),
+ nDef("yineleDizinli", "repeati"),
+ nDef("yineleDoğruysa", "repeatWhile"),
+ nDef("yineleOlanaKadar", "repeatUntil"),
+ nDef("yineleKere", "repeatFor"),
+ nDef("yineleİçin", "repeatFor"),
+ nDef("yineleİlktenSonra", "repeatFor"),
+
+ nDef("satıroku", "readln"),
+ nDef("satıryaz", "println"),
+ nDef("yaz", "print"),
+
+ nVal("matematik", "math"),
+ nDef("piSayısı", "Pi"),
+ nDef("eSayısı", "E"),
+ nDef("gücü", "pow"),
+ nDef("kuvveti", "pow"),
+ nDef("karesi", "pow"),
+ nDef("karekökü", "sqrt"),
+ nDef("onlukTabandaLogu", "log10"),
+ nDef("doğalLogu", "log"),
+ nDef("logaritması", "log"),
+ nDef("sinüs", "sin"),
+ nDef("kosinüs", "cos"),
+ nDef("tanjant", "tan"),
+ nDef("sinüsünAçısı", "asin"),
+ nDef("kosinüsünAçısı", "acos"),
+ nDef("tanjantınAçısı", "atan"),
+
+ nDef("eüssü", "exp"),
+ nDef("radyana", "toRadians"),
+ nDef("dereceye", "toDegrees"),
+ nDef("taban", "floor"),
+ nDef("tavan", "ceil"),
+ nDef("yakını", "rint"),
+ nDef("işareti", "sign"),
+ nDef("sayıya", "toInt"),
+ nDef("logTabanlı", "log"),
+
+ nDef("rastgele", "random"),
+ nDef("yuvarla", "round"),
+ nDef("mutlakDeğer", "abs"),
+ nDef("yakın", "round"),
+ nDef("enUfağı", "min"),
+ nDef("enİrisi", "max"),
+ nDef("rastgele", "random"),
+ nDef("rastgeleSayı", "randomInt"),
+ nDef("rastgeleUzun", "randomLong"),
+ nDef("rastgeleKesir", "randomDouble"),
+ nDef("rastgeleÇanEğrisinden", "randomNormalDouble"),
+ nDef("rastgeleNormalKesir", "randomNormalDouble"),
+ nDef("rastgeleDoğalKesir", "randomNormalDouble"),
+ nDef("rastgeleTohumunuKur", "initRandomGenerator"),
+ nDef("rastgeleİkil", "randomBoolean"),
+ nDef("rastgeleSeçim", "randomBoolean"),
+ nDef("rastgeleRenk", "randomColor"),
+ nDef("rastgeleŞeffafRenk", "randomTransparentColor"),
+ nDef("rastgeleDiziden", "randomFrom"),
+ nDef("rastgeleKarıştır", "util.Random.shuffle"),
+
+ nDef("evDizini", "homeDir"),
+ nDef("buDizin", "currentDir"),
+ nDef("kurulumDizini", "installDir"),
+ nDef("yazıyüzleri", "availableFontNames"),
+ nDef("yazıyüzü", "Font"),
+ nDef("yazıÇerçevesi", "textExtent"),
+ nDef("kaplumbağa0", "turtle0"),
+ nDef("yeniKaplumbağa", "newTurtle"),
+ nDef("buradaDur", ""),
+ nDef("burdaDur", ""),
+ nDef("sayıOku", ""),
+ nDef("kesirOku", ""),
+ nDef("resimİndir", ""),
+ nDef("müzikİndir", ""),
+ nDef("müzikMp3üÇal", ""),
+ nDef("sesMp3üÇal", ""),
+ nDef("müzikMp3üÇalDöngülü", ""),
+ nDef("Mp3ÇalıyorMu", ""),
+ nDef("Mp3üDurdur", ""),
+ nDef("Mp3DöngüsünüDurdur", ""),
+ nDef("müzikMp3üÇalıyorMu", ""),
+ nDef("müzikÇalıyorMu", ""),
+ nDef("müzikMp3üKapat", ""),
+ nDef("müzikMp3DöngüsünüKapat", ""),
+ nDef("müziğiDurdur", ""),
+ nDef("müziğiKapat", ""),
+ nDef("kojoVarsayılanBakışaçısınıKur", ""),
+ nDef("kojoVarsayılanİkinciBakışaçısınıKur", ""),
+ nDef("kojoYazılımcıkBakışaçısınıKur", ""),
+ nDef("kojoÇalışmaSayfalıBakışaçısınıKur", ""),
+ nDef("kojoÖyküBakışaçısınıKur", ""),
+ nDef("kojoGeçmişBakışaçısınıKur", ""),
+ nDef("kojoÇıktılıÖyküBakışaçısınıKur", ""),
+ nDef("tümEkranÇıktı", ""),
+ nDef("tümEkranTuval", ""),
+ nDef("tümEkran", ""),
+ nDef("tuvalAlanı", "canvasBounds"),
+ nDef("eni", ""),
+ nDef("boyu", ""),
+ nDef("en", ""),
+ nDef("boy", ""),
+ nDef("yatayMerkezKonumu", ""),
+ nDef("dikeyMerkezKonumu", ""),
+ nDef("ekranTazelemeHızınıKur", ""),
+ nDef("ekranTazelemeHızınıGöster", ""),
+ nDef("yaklaş", ""),
+ nDef("yaklaşXY", ""),
+ nDef("yaklaşmayıSil", ""),
+ nDef("yaklaşmayaİzinVerme", ""),
+ nDef("tuvaliKaydır", ""),
+ nDef("tuvaliDöndür", ""),
+ nDef("tuşaBasılıMı", ""),
+ nDef("tuşaBasınca", ""),
+ nDef("tuşuBırakınca", ""),
+ nDef("fareyeTıklıyınca", ""),
+ nDef("fareyiSürükleyince", ""),
+ nDef("fareKımıldayınca", ""),
+ nDef("gridiGöster", ""),
+ nDef("gridiGizle", ""),
+ nDef("eksenleriGöster", ""),
+ nDef("eksenleriGizle", ""),
+ nDef("açıÖlçeriGöster", ""),
+ nDef("açıÖlçeriGöster", ""),
+ nDef("cetveliGöster", ""),
+ nDef("çizimiKaydet", ""),
+ nDef("çizimiKaydetBoy", ""),
+ nDef("çizimiKaydetEn", ""),
+ nDef("çizimiPulBoyundaKaydet", ""),
+ nDef("artalandaOynat", ""),
+ nDef("fareKonumu", ""),
+ nDef("yorumla", ""),
+ nDef("yineleSayaçla", ""),
+ nDef("canlandır", ""),
+ nDef("durdur", ""),
+ nDef("canlandırmaBaşlayınca", ""),
+ nDef("canlandırmaBitince", ""),
+ nDef("tuvaliEtkinleştir", ""),
+ nDef("yazılımcıkDüzenleyicisiniEtkinleştir", ""),
+ nDef("çıktıArtalanınıKur", ""),
+ nDef("çıktıYazıRenginiKur", ""),
+ nDef("çıktıYazıYüzüBoyunuKur", ""),
+ nDef("tuvalBoyutOranınınKur", ""),
+ nDef("tuvalBoyutlarınıKur", ""),
+ nDef("süreTut", ""),
+ nDef("oyunSüresiniGöster", ""),
+ nDef("sırayaSok", ""),
+ nDef("döndür", "rot"),
+ nDef("döndürMerkezli", ""),
+ nDef("filtre", ""),
+ nDef("gürültü", ""),
+ nDef("örgü", ""),
+ nDef("büyütXY", ""),
+ nDef("saydamlık", ""),
+ nDef("ton", ""),
+ nDef("parlaklık", ""),
+ nDef("aydınlık", ""),
+ nDef("yansıtY", ""),
+ nDef("yansıtX", ""),
+ nDef("eksenler", ""),
+ nDef("boyaRengi", ""),
+ nDef("kalemRengi", ""),
+ nDef("kalemBoyu", ""),
+ nDef("çizimÖncesiİşlev", ""),
+ nDef("çizimSonrasıİşlev", ""),
+ nDef("çevir", ""),
+ nDef("yansıt", ""),
+ nDef("soluk", ""),
+ nDef("bulanık", ""),
+ nDef("noktaIşık", ""),
+ nDef("sahneIşığı", ""),
+ nDef("götür", ""),
+ nDef("kaydır", ""),
+ nDef("büyüt", ""),
+ nDef("ışıklar", ""),
+ nDef("birEfekt", ""),
+ nDef("NoktaIşık", ""),
+ nDef("SahneIşığı", ""),
+ nDef("çiz", ""),
+ nDef("çizVeSakla", ""),
+ nDef("çizMerkezde", ""),
+ nDef("çizSahne", ""),
+ nDef("çizMerkezdeYazı", ""),
+ nDef("merkezeTaşı", ""),
+ nDef("sahneKenarındanYansıtma", ""),
+ nDef("engeldeYansıtma", ""),
+ nDef("imge", ""),
+ nDef("imgeNoktası", ""),
+ nDef("imgeNoktasınıKur", ""),
+ nDef("arayüz", ""),
+ nDef("zamanTut", "timeit"),
+ nDef("DokumaBoya", "TexturePaint"),
+ nDef("boş", "empty"),
+ nDef("doldur", "tabulate"),
+ nDef("sayalım", "from"),
+ nDef("sayıMı", "isDigit"),
+ nDef("harfMi", "isLetter"),
+ nDef("yazıya", "toString"),
+ )
+
+/*
+ def dump = {
+ // https://docs.scala-lang.org/overviews/reflection/overview.html
+ import scala.reflect.runtime.{ universe => ru }
+ // https://www.scala-lang.org/api/2.13.6/scala/util/Try.html
+ import scala.util.{ Try, Success, Failure }
+ // from: https://stackoverflow.com/questions/33975029/using-scala-reflection-to-check-for-a-method-on-an-object-or-to-find-key-type-on
+ def lookUp[T: ru.TypeTag](obj: T, key: String): Option[Any] = ru.typeTag[T].tpe match {
+ case ru.TypeRef(a, m, l) if (m.name.toString == "Map" && l.head =:= ru.typeOf[java.lang.String]) => obj.asInstanceOf[Map[String, _]].get(key)
+ case ru.TypeRef(a, m, l) if (m.name.toString == "Map" && l.head =:= ru.typeOf[Symbol]) => obj.asInstanceOf[Map[Symbol, _]].get(scala.Symbol(key))
+ case _ => Try(obj.getClass.getDeclaredMethod(key).invoke(obj)) match {
+ case Success(x) => Some(x)
+ case Failure(_) => None
+ }
+ }
+
+ val hepsi = (for (n <- Data.data) yield n.tr).sorted
+ val türler = (for (n <- Data.data if n.ne == Type) yield n.tr).sorted
+
+ çıktıyıSil()
+ satıryaz(s"${türler.size} tane Türkçe türümüz var:")
+ türler.foreach(satıryaz)
+ satıryaz(s"${hepsi.size} tane Türkçe ad var:")
+ hepsi.foreach(satıryaz)
+ }
+*/
+}
+
+// Data.dump
diff --git a/src/main/scala/net/kogics/kojo/lite/i18n/tr/dict.scala b/src/main/scala/net/kogics/kojo/lite/i18n/tr/dict.scala
index eda029c4..932e7db0 100644
--- a/src/main/scala/net/kogics/kojo/lite/i18n/tr/dict.scala
+++ b/src/main/scala/net/kogics/kojo/lite/i18n/tr/dict.scala
@@ -90,71 +90,9 @@ object dict {
"void" -> "türsüz",
"volatile" -> "uçucu"
)
- val type2en = Map(
- // type defs
- "Nesne" -> "Object",
- "Birim" -> "Unit",
- "Her" -> "Any",
- "HerDeğer" -> "AnyVal",
- "HerGönder" -> "AnyRef",
- "Yok" -> "Null",
- "Hiç" -> "Nothing",
- "Renk" -> "Color",
- "Boya" -> "Paint",
- "Hız" -> "Speed",
- "Nokta" -> "Point",
- "Dikdörtgen" -> "Rectangle",
- "Üçgen" -> "Triangle2D",
- "İkil" -> "Boolean",
- "Seçim" -> "Boolean",
- "Lokma" -> "Byte",
- "Kısa" -> "Short",
- "Sayı" -> "Int",
- "Uzun" -> "Long",
- "İriSayı" -> "BigInt",
- "UfakKesir" -> "Float",
- "Kesir" -> "Double",
- "İriKesir" -> "BigDecimal",
- "Harf" -> "Char",
- "Yazı" -> "String",
- "EsnekYazı" -> "collection.mutable.StringBuilder",
- "Belki" -> "Option",
- "Biri" -> "Some",
- "Dizi" -> "collection.Seq",
- "Dizin" -> "List",
- "MiskinDizin" -> "LazyList",
- "Yöney" -> "Vector",
- "Küme" -> "Set",
- "Sayılar" -> "Vector[Sayı]",
- "UzunlukBirimi" -> "UnitLen",
- "GeoYol" -> "java.awt.geom.GeneralPath",
- "GeoNokta" -> "VertexShape",
- "Grafik2B" -> "scala.swing.Graphics2D",
- "İmge" -> "Image",
- "Bellekteİmge" -> "BufferedImage",
- "Bellekteİmgeİşlemi" -> "java.awt.image.BufferedImageOp",
- "İşlev1" -> "Function1",
- "İşlev2" -> "Function2",
- "İşlev3" -> "Function3",
- "Bölümselİşlev" -> "PartialFunction",
- // class defs
- "Mp3Çalar" -> "net.kogics.kojo.music.KMp3",
- )
- val val2en = Map (
- // val defs
- "yok" -> "null",
- "Hiçbiri" -> "None",
- "doğru" -> "true",
- "yanlış" -> "false",
- "yavaş" -> "slow",
- "orta" -> "medium",
- "hızlı" -> "fast",
- "çokHızlı" -> "superFast",
- "noktaSayısı" -> "Pixel",
- "santim" -> "Cm",
- "inç" -> "Inch",
- "Boş" -> "collection.immutable.Nil",
- )
+ val type2en = Map()
+ val def2en = Map ()
+ val val2en = Map ()
val method2en = Map (
"Yöney.boş" -> "Vector.empty",
"Küme.boş" -> "Set.empty",
@@ -171,5 +109,62 @@ object dict {
"Harf.ufakkesire" -> "Char.char2float",
"Harf.enUfağı" -> "Char.MaxValue",
"Harf.enİrisi" -> "Char.MinValue",
+ "Aralık.başı" -> "Range.head",
+ "Aralık.sonu" -> "Range.last",
+ "Aralık.uzunluğu" -> "Range.size",
+ "Aralık.dizin" -> "Range.toList",
+ "Aralık.yazı" -> "Range.toString",
+ "Aralık.herÖgeİçin" -> "Range.foreach",
+ "ay.BölmeÇizgisi" -> "javax.swing.JSeparator",
+ "ay.Parça" -> "javax.swing.JComponent",
+ "ay.Satır" -> "javax.swing.RowPanel",
+ "ay.Sıra" -> "javax.swing.RowPanel",
+ "ay.Sütun" -> "javax.swing.ColPanel",
+ "ay.Yazıgirdisi" -> "javax.swing.TextField",
+ "ay.Yazıalanı" -> "javax.swing.TextArea",
+ "ay.Tanıt" -> "javax.swing.Label",
+ "ay.Düğme" -> "javax.swing.Button",
+ "ay.Açkapa" -> "javax.swing.ToggleButton",
+ "ay.Salındıraç" -> "javax.swing.DropDown",
+ "ay.Kaydıraç" -> "javax.swing.Slider",
+ "ay.çerçeveci.çizgiKenar" -> "javax.swing.BorderFactory.createLineBorder",
+ "ay.çerçeveci.boşKenar" -> "javax.swing.BorderFactory.createEmptyBorder",
+ )
+ val altkumeler = Map (
+ "ay" -> List("olay", "değişmez", "çerçeveci")
)
+ val packageName2en = Map (
+ "ay" -> List("java.awt", "javax.swing"),
+ )
+ // todo: ./cinidunyasi.scala
+ /* (sub)types:
+ "ay.olay.TuşUyarlayıcısı" -> "java.awt.event.KeyAdapter",
+ "ay.olay.TuşaBasmaOlayı" -> "java.awt.event.KeyEvent",
+ */
+ /* (sub)packages
+ "ay.değişmez" -> "javax.swing.SwingConstants",
+ "ay.çerçeveci" -> "javax.swing.BorderFactory",
+ */
+ /* values
+ "ay.değişmez.merkez" -> "javax.swing.SwingConstants.CENTER",
+ "ay.değişmez.taban" -> "javax.swing.SwingConstants.BOTTOM",
+ "ay.değişmez.tavan" -> "javax.swing.SwingConstants.TOP",
+ "ay.değişmez.sol" -> "javax.swing.SwingConstants.LEFT",
+ "ay.değişmez.sağ" -> "javax.swing.SwingConstants.RIGHT",
+ "ay.değişmez.doğu" -> "javax.swing.SwingConstants.EAST",
+ "ay.değişmez.batı" -> "javax.swing.SwingConstants.WEST",
+ "ay.değişmez.kuzey" -> "javax.swing.SwingConstants.NORTH",
+ "ay.değişmez.güney" -> "javax.swing.SwingConstants.SOUTH",
+ "ay.değişmez.kuzeydoğu" -> "javax.swing.SwingConstants.NORTH_EAST",
+ "ay.değişmez.kuzeybatı" -> "javax.swing.SwingConstants.NORTH_WEST",
+ "ay.değişmez.güneydoğu" -> "javax.swing.SwingConstants.SOUTH_EAST",
+ "ay.değişmez.güneybatı" -> "javax.swing.SwingConstants.SOUTH_WEST",
+ "ay.değişmez.yatay" -> "javax.swing.SwingConstants.HORIZONTAL",
+ "ay.değişmez.dikey" -> "javax.swing.SwingConstants.VERTICAL",
+ "ay.değişmez.önceki" -> "javax.swing.SwingConstants.PREVIOUS",
+ "ay.değişmez.sonraki" -> "javax.swing.SwingConstants.NEXT",
+ "ay.değişmez.önder" -> "javax.swing.SwingConstants.LEADING",
+ "ay.değişmez.izler" -> "javax.swing.SwingConstants.TRAILING",
+ */
+
}
diff --git a/src/main/scala/net/kogics/kojo/lite/i18n/tr/dizim.scala b/src/main/scala/net/kogics/kojo/lite/i18n/tr/dizim.scala
index 64ce80e7..50f71ea6 100644
--- a/src/main/scala/net/kogics/kojo/lite/i18n/tr/dizim.scala
+++ b/src/main/scala/net/kogics/kojo/lite/i18n/tr/dizim.scala
@@ -16,7 +16,7 @@
*/
package net.kogics.kojo.lite.i18n.tr
-import collection.mutable.{ArrayBuffer}
+import collection.mutable.ArrayBuffer
import scala.reflect.ClassTag
// todo: this has only the bare essentials for Array and ArrayBuffer. Add more to the interface..
diff --git a/src/main/scala/net/kogics/kojo/lite/i18n/tr/help.scala b/src/main/scala/net/kogics/kojo/lite/i18n/tr/help.scala
index 74eb8f55..470b8f4e 100644
--- a/src/main/scala/net/kogics/kojo/lite/i18n/tr/help.scala
+++ b/src/main/scala/net/kogics/kojo/lite/i18n/tr/help.scala
@@ -83,6 +83,7 @@ object help {
"buSaniye" -> "buSaniye()",
"hızıKur" -> "hızıKur(${hız})",
"def2" -> "def2()",
+ "eksenler" -> "eksenler",
)
val content = Map(
@@ -192,7 +193,7 @@ x.metod
"buAn" -> buAn() - Bu komut evrensel zamana (UTC) göre 1 Ocak 1970 tam geceyarısından bu ana kadar geçen zamanı kesirsiz milisaniye olarak verir.
.toString,
"buSaniye" -> buSaniye() - Bu komut evrensel zamana (UTC) göre 1 Ocak 1970 tam geceyarısından bu ana kadar geçen zamanı kesirli saniye olarak verir.
.toString,
"hızıKur" -> hızıKur(hız) - Kaplumbağacığın hızını belirler. yavaş, orta, hızlı ve çokHızlı değerlerinden birini dene.
.toString,
- "def2" -> def2 - Kıvrık parantez içindeki bir dizi komuta ya da deyişe bir ad takar. Bu yöntemle yeni bir işlev ya da komut tanımlamış olursun.
+ "def_türkçe" ->
def - Kıvrık parantez içindeki bir dizi komuta ya da deyişe bir ad takar. Bu yöntemle yeni bir işlev ya da komut tanımlamış olursun.
Örneğin:
@@ -210,7 +211,6 @@ x.metod
kare(100)
kare(200)
-
// Topla adında yeni bir işlev tanımlayalım
// İki girdisi, bir çıktısı var
def topla(a: Sayı, b: Sayı) =
@@ -222,7 +222,40 @@ x.metod
val toplam = topla(20, 7)
satıryaz(toplam)
-
.toString,
+
.toString,
+
+ "eksenler" ->
+
+
eksenler -> resim - Verilen resmin yerel eksenlerini çizerek yeni bir resim oluşturur.
+
+ Bu yöntem dönüştürücü bir yöntemdir ve resim oluşturmakta size yardımcı olur.
+
Örnek:
+
+ def resim = Resim {{
+ yinele(2) {{
+ ileri(50); sağ()
+ ileri(100); sağ()
+ }}
+ }}
+ silVeSakla
+ çiz(
+ götür(-100, -50) * döndür(45) *
+ boyaRengi(mavi) * eksenler -> resim
+ )
+ eksenleriGöster()
+
+ Bu örnekte bir dikdörtgen çiziyor, onu (-100, -50) noktasına taşıyor, 45 derece döndürüyor ve içini maviye boyuyoruz. Bir de bu çizimin kendi eksenlerini yani yerel eksenlerini çiziyoruz. En sondaki eksenleriGöster komutuyla da genel ya da mutlak eksenleri gösteriyoruz.
+
.toString,
+
+ "eksenleriGöster" ->
+
+ eksenleriGöster - Çizim tuvalinde yatay (X) ve dikey (Y) eksenlerini çizer.
+
.toString,
+
+ "eksenleriGizle" ->
+
+ eksenleriGizle - Çizim tuvalindeki yatay (X) ve dikey (Y) eksenlerini siler.
+
.toString,
)
}
diff --git a/src/main/scala/net/kogics/kojo/lite/i18n/trInit.scala b/src/main/scala/net/kogics/kojo/lite/i18n/trInit.scala
index 5ee99228..42591f2c 100644
--- a/src/main/scala/net/kogics/kojo/lite/i18n/trInit.scala
+++ b/src/main/scala/net/kogics/kojo/lite/i18n/trInit.scala
@@ -350,6 +350,7 @@ object TurkishAPI {
def üçgenDöşeme(noktalar: Dizi[Nokta]): Dizi[Üçgen] = builtins.triangulate(noktalar)
+ // todo: klasör?
def evDizini = builtins.homeDir
def buDizin = builtins.currentDir
def kurulumDizini = builtins.installDir
@@ -541,7 +542,7 @@ object TurkishAPI {
def DokumaBoya(dosya: Yazı, x: Kesir, y: Kesir) = richBuiltins.TexturePaint(dosya, x, y)
def a_kalıp() = println("Kalıbı kullan") // todo: geçici. Bakınız tr/help.scala
- def def2() = println("def")
+ def def_türkçe() = println("def")
// more to come (:-)
}