dev

Please replace any old information with up-to-date information (this may include rewriting code for compatibility changes).

Consoledebug

Hata ayıklama konsolu, kodlarınızı eş zamanlı olarak denemenize olanak sağlayan bir Scribunto aracıdır. Ekran alıntısında görüldüğü üzere yalnızca Modül:Adalanı içerisindeki bir modülü düzenlediğiniz zaman kullanılabilir.

Hata ayıklama konsolu yalnızca Lua işlemlerini (tablolar, yöntemler & ilkeller) test etmek için tasarlanmıştır. Bu nedenle Scribunto içerisinde iki adet kısıtlaması vardır:

Bazı çözümler için #Kısıtlamalar bölümüne bakınız.

Amaç

Bu konsol, kullanıcıların mevcut sayfadan ayrılmadan ve sayfayı kaydetmek zorunda kalmadan bir veya daha çok modüldeki hataları ayıklamasına olanak sağlar. Vikiversite'de Lua hakkında güzel bir tanıtımı mevcuttur.[1]

Kullanım

Hata ayıklama konsolu ile etkileşime girmenin aslen iki yolu vardır. Bunlardan ilki, direkt olarak bir metin girmek ve sonucu beklemektir. İkincisi ise kod düzenleyicisindeki işlevlere erişmektir.

Doğrudan kullanım

Debugusage

Kod düzenleyicisini kullanmanın en basit yolu direkt olarak içerisine kod yazıp ↵ Enter tuşuna basmaktır. Sonuçların yüklenmesi biraz uzun sürebilir çünkü sonuçlar sunucu üzerinden döndürülmektedir.

Örnek

print (5 * 6)
Sonuç
30

Kod düzenleyicisi

ConsoleDemo1

Kod düzenleyicisine basitçe bir kod eklenebilir ve görselde belirtildiği gibi sayfayı kaydetmeye gerek duymadan konsol kullanılarak kod test edilebilir. Bu sayede hata ayıklama konsolunu doldurmaya gerek kalmadan birçok kod denenebilir ve düzenleyiciden kopyalayıp konsola yapıştırma gerekliliği azaltılır.

--Kod Düzenleyicisi 
local p = {}

function p.gunaydin()
   return "Sana da günaydın"
end

return  p
--Konsol
print(p.gunaydin())

Harici modüllerden diğer işlevler

Diğer sayfalarda saklanan modüllerdeki diğer işlevleri denemek de mümkündür. Bu işlev şu şekilde gerçekleştirilebilir:

--Modül:Gunaydin
local p = {}

function p.gunaydin()
   return "Sana da günaydın"
end
--Konsol
local storedModule = require("Modül:Gunaydin")
print(storedModule.gunaydin())
Sonuç
Sana da günaydın

Küresel Modüller

Genel bir kaynakta (dev.fandom.com) depolanan modüllere de harici modüllere benzer bir şekilde şunları yazarak erişmek mümkündür:

local storedModule = require("Dev:Gunaydin")
print(storedModule.gunaydin())

Kısıtlamalar

  1. Nesne denetimi bulunmamaktadır.
    • Konsol fazlasıyla statiktir. Görsel olarak birinci sınıf ögeleri (ilkeller & işlevler), tabloları ve meta-tablolarını denetleyemez.
    • Inspect meta-modülü, Lua ögelerini okunabilir hâle getirerek bu konuda yardımcı olabilir.
  2. Konsolda sözdizimi vurgulaması bulunmamaktadır.
    • Konsol düzenleyicisi oldukça basittir ve kullanıcılara sözdizimi vurgulaması sağlamaz.

İpuçları ve püf noktaları

Tüm metni tekrardan konsola yazmaktan veya yapıştırmaktansa MediaWiki:Scribunto-console-intro'ya sıklıkla kullanılan işlevler veya kodlar eklenebilir. Bu şekilde toplulukta bulunan herkes bu kodlara kolaylıkla ulaşabilir.

See also

Kaynaklar