Moduł:Wikidane/format/opis: Różnice pomiędzy wersjami
Wygląd
< Moduł:Wikidane | format
[wersja przejrzana] | [wersja nieprzejrzana] |
Usunięta treść Dodana treść
m MalarzBOT: likwiduję Błędy składniowe: Przestarzałe znaczniki HTML |
Znaczniki: Wycofane Z urządzenia mobilnego Z wersji mobilnej (przeglądarkowej) |
||
Linia 7: | Linia 7: | ||
; <code>bez wartości</code> : treść dla wartości specjalnej ''novalue'' |
; <code>bez wartości</code> : treść dla wartości specjalnej ''novalue'' |
||
; <code>format</code> : tekst do formatowania treści, jeśli obsługiwane przez wtyczkę |
; <code>format</code> : tekst do formatowania treści, jeśli obsługiwane przez wtyczkę |
||
== Wtyczka == |
|||
Wtyczka jest tablicą asocjacyjną zawierającą następujące elementy: |
|||
; <code>scope</code> : obowiązkowe pole typu tekstowego zawierające identyfikator akceptowanego typu danych do formatowania przez wtyczkę |
|||
; <code>format</code> : obowiązkowe pole typu funkcyjnego zawierające funkcję zamieniającą dane na tekst do wyświetlenia |
|||
; <code>options</code> : opcjonalne pole do definiowania parametrów dla funkcji <code>format</code> |
|||
Wybór wtyczki jest wybierany na podstawie parametru <code>procesor</code>, który zawiera pełną nazwę modułu implementującego wtyczkę, lub jeśli nie podano na podstawie identyfikatora cechy. Podanie pustego parametru <code>procesor</code> oznacza użycie uniwersalnej wtyczki formatującej wynik. |
|||
Szablon typowego modułu formatującego cechę to |
|||
<syntaxhighlight lang="lua"> |
|||
local moduleData = require("Moduł:Wikidane/data") -- zbiór podstawowych stałych |
|||
local format = require("Moduł:Wikidane/format/snak").format -- uniwersalna wtyczka formatująca minimalną podstawową jednostkę danych |
|||
return { |
|||
scope = "prop", |
|||
format = function{prop, opcje) |
|||
... |
|||
end, |
|||
} |
|||
</syntaxhighlight> |
|||
=== <code>scope</code> === |
|||
Dopuszczalne wartości pola to: |
|||
; <code>snak</code> : podstawowa struktura definiujące jednostkę danych, zwykle wartość cechy (<code>mainsnak</code>) lub kwalifikator |
|||
; <code>prop</code> : pełna cecha zawierająca <code>mainsnak</code>, kwalifikatory i źródła |
|||
; <code>props</code> : tablica cech |
|||
=== <code>format</code> === |
|||
Funkcja formatująca wartość cechy. Przyjmuje dwa parametry: |
|||
; dane : tablica asocjacyjna z danymi w zakresie określonym polem <code>scope</code> |
|||
; opcje : tablica asocjacyjna z parametrami |
|||
<syntaxhighlight lang="lua"> |
|||
format = function{dane, opcje) |
|||
... |
|||
end, |
|||
</syntaxhighlight> |
|||
=== <code>options</code> === |
|||
Jeśli pole jest tablicą to opcje dla wtyczki są inicjowane parametrami standardowymi (oprócz pola <code>procesor</code>) oraz parametrami zadeklarowanymi w tabeli. Dodatkowo pole <code>default</code> służy do zdefiniowania parametrów z wartościami domyślnymi. Przykład: |
|||
<syntaxhighlight lang="lua"> |
|||
options = { |
|||
"kij", |
|||
"marchewka", |
|||
default = { |
|||
["kij"] = "lipowy", |
|||
["żarcik"] = true, |
|||
}, |
|||
}, |
|||
</syntaxhighlight> |
|||
W powyższym kodzie zostały zdefiniowane dwa parametry <code>kij</code> i <code>marchewka</code> oraz domyślna wartość dla parametru <code>kij</code>. Natomiast <code>żarcik</code> nie jest parametrem możliwym do podania w wywołaniu funkcji, jest więc jakby predefiniowaną stałą. |
|||
Jeśli pole jest funkcją to żadne parametry nie są standardowo ładowane, a za przygotowanie wszystkich opcji odpowiedzialna jest zadeklarowana funkcja. |
|||
Jeśli pole nie jest ani tablicą ani funkcją, to wtyczka jest wywołana z pustą tablicą opcji. |
|||
== Zobacz też == |
== Zobacz też == |
Wersja z 03:56, 25 cze 2024
Główny moduł implementujący funkcję {{#invoke:Wikidane|P}}. Nie jest przeznaczony do bezpośredniego wywołania. Implementuje mechanizm wywoływania wtyczek używanych do formatowania cech z Wikidanych, które są wyświetlane w infoboksach.
Standardowe parametry
procesor
- wskazanie dedykowanej wtyczki do formatowania
link
- włączenie lub wyłączenie generowania linków, jeśli obsługiwane przez wtyczkę
separator
- sposób konwersji listy cech na końcową postać tekstową
bez wartości
- treść dla wartości specjalnej novalue
format
- tekst do formatowania treści, jeśli obsługiwane przez wtyczkę
Zobacz też
- Moduł:Wikidane/format/snak - uniwersalna wtyczka do formatowania podstawowej jednostki danych
- Lista predefiniowanych wtyczek