Template:Pl:Relation/doc

From OpenStreetMap Wiki
Jump to: navigation, search

Warning: Default sort key "Pl:Relation/doc" overrides earlier default sort key "Relation/doc".

Dialog-warning-yellow.svg Uwaga: Ten szablon jest używany na wielu stronach. Aby nie obciążać zbytnio serwerów, edycje powinny być ograniczone do minimum.
Przedyskutuj wcześniej proponowane zmiany na stronie dyskusji.
Prosimy omawiać wcześniej proponowane zmiany na stronie dyskusji. Jeśli szablon jest często używany, może to spowodować duże obciążenie serwerów, ponieważ zapełnia się kolejka zadań. [statystyka]

Ta strona dokumentuje funkcje szablonów {{Area}}, {{Node}}, {{Relation}}, and {{Way}}. Te szablony mogą być używane dla wstawiania linków do węzłów, linii, lub relacji (obszar z linkami do linii zamkniętej) a także jako tool links. Wszystkie szablony udostępniają wspólną bazę kodów. Dlatego działają prawie identycznie ({{Area}} i {{Relation}}, a każdy ma niewielką różnicę w stosunku do pozostałych).
Został przepisany jesienią 2018 r. Przy użyciu mniejszej liczby opcji i Lua.

Zastosowanie

Zastosowanie jest podobne dla wszystkich szablonów opisanych tutaj. Musisz tylko zmienić nazwę (np. {{Area|...}} zamiast {{Node|...}}).

Zapisane:
{{node|12345}}
co daje:
node 12345

Przegląd wszystkich parametrów:

Nazwa/Liczba Przypuszczalne wartości Opis
1 Integer odnosi się do OSM ID, wymagany parametr
2 String etykieta dla głównego linku, domyślnie: podobnie jak ID
tools all, josm, mini, no, lub short linki narzędzi do wyświetlenia, domyślnie: no(ne)
lang kod języka z listy Mediawiki lub specjalny kod na tej wiki stosowane w celu zapewnienia oznakowania linków w określonym języku (patrz sekcja Tłumaczenie poniżej)

Lista funkcji

Kod Wiki Resultat Uwaga
{{Relation|2345}} relation 2345 Ikona łączy się z artykułem wiki o relacji.
{{Relation|2345|Promenade}} relation Promenade
{{Relation|2345|tools= all }} relation 2345 (iD JOSM Potlatch2 history analyse)
{{Relation|2345|tools= all |Promenade}} relation Promenade (iD JOSM Potlatch2 history analyse)
{{Relation|2345|tools= all |lang= vi }} relation 2345 (iD JOSM Potlatch2 lịch sử phân tích) tłumaczenie na wietnamski
{{Relation|2345|Promenade|tools= all |lang= ar }} relation Promenade (iD JOSM Potlatch2 التاريخ analyse) Help translate this to Arabic tłumaczenie wraca do angielskiego, ponieważ tłumaczenie arabskie jest niepełne.
{{Way|12346|tools= all |lang= ar }} way 12346 (iD JOSM Potlatch2 التاريخ) linki wyświetlane w zależności od elementu
{{Relation|2345|tools= josm }} relation 2345 (JOSM)
{{Relation|2345|tools= josm |Promenade}} relation Promenade (JOSM)
{{Relation|2345|tools= mini }} 2345
{{Relation|2345|tools= mini |Promenade}} Promenade
{{Relation|2345|tools= no }} relation 2345
{{Relation|2345|tools= no |Promenade}} relation Promenade
{{Relation|2345|tools= short }} 2345 (i J P2)
{{Relation|2345|tools= short |Promenade}} Promenade (i J P2)
{{Relation||Promenade}} Błąd Lua w Module:Element w linii 60: Parametr id relacji nie jest liczbą. Nie działa, wymagany jest identyfikator.

Tłumaczenie

Jeśli parametr tools jest ustawiony na all, zostanie wtedy wyświetlony link oznaczony history. W przypadku {{Relation}} istnieje dodatkowy link analyse. Ich etykiety dopasują się do języka strony. Istnieje również parametr lang do jednoznacznego ustawienia języka. Wyodrębnianie języka strony wydaje się być kosztownym procesem (dla parsera, który zajmuje więcej czasu, aby utworzyć stronę). Niestety jest to również powtarzane dla każdego wystąpienia szablonu nawet na tej samej stronie. Dlatego tłumaczenia są ograniczone do minimum (tj. istnieje tylko tłumaczenie z tools=all.

Parametr lang

Parametr lang służy do jednoznacznego żądania przetłumaczonej wersji szablonu. Tłumaczy dwa angielskie teksty ("analyse" and "history"). Są one używane tylko z ustawieniem tools=all. Dodaje również przedrostek linku do artykułu "relation" (pod ikoną) niezależnie od jego istnienia. Podczas gdy język jest automatycznie wykrywany, link nie zmieni się bez żądania. Wynika to z faktu, że "wikicode" ikony jest generowane przed wykryciem wersji językowej.

Języki do tłumaczenia

Moduł przechowuje wszystkie tłumaczenia w Module:Element/translation. Istnieją następujące priorytety w zakresie badania właściwego języka:

  1. wejście użytkownika w parametr lang
  2. przestrzeń nazw w dedykowanym języku (DE, ES, FR, IT, JA, NL, RU)
  3. prefiks nazwy języka (wszystkie inne prefiksy)
  4. English domyślnie

Oznacza to, że oprócz języka angielskiego nie ma określonego języka zastępczego.
Szablony {{Hu:Relation}}, {{Pt:Relation}} i {{Pl:Relation}} są wersjami tego szablonu, które powracają do języka węgierskiego, portugalskiego i polskiego, jeśli nie podano danych przez użytkownika.

Dodawanie języka

Wklej następujące wiersze do kodu Module:Element/translation:

 translateAnalyse = {
 	-- other language codes alphabetically before 'code'
 	['code'] = "your translation",
 	-- other language codes alphabetically after 'code'
 },
 translateHistory = {
 	-- other language codes alphabetically before 'code'
 	['code'] = "your translation",
 	-- other language codes alphabetically after 'code'
 },

Brakujący język

Jeśli nie ma pełnego tłumaczenia, strona jest również dodawana do jednej z podkategorii Category:Pages with missing translation. Jest to przydatne do wyszukiwania brakujących tłumaczeń na tej wiki. Nazwę języka odczytuje się z Module:OSM Constants lub z mw.language.fetchLanguageName(pageLanguage, 'pl').

Decyzje projektowe

Ta sekcja ma na celu wyjaśnienie, dlaczego ten szablon działa w ten sposób. Należy przeczytać przed zaproponowaniem jakichkolwiek zmian. Mogą istnieć różne opinie (patrz strona dyskusji), ale ta dokumentacja skupia się wyłącznie na bieżącej implementacji.

Dlaczego narzędzia nie są domyślnie wyświetlane?
Jest to po prostu zbyt "drogie" (patrz tłumaczenie). To ustawienie spowodowałoby wyświetlenie wielu stron w kategoriach konserwacji, takich jak Category:Pages where template include size is exceeded. Zakłada się również, że wszyscy korzystający z tego szablonu (z myślą o maperach naprawiającym błąd wiki bez tła wiki) chcą mieć wszystkie dostępne narzędzia.
Dlaczego jest tak mało narzędzi?
To jest szablon ogólnego przeznaczenia, jeśli potrzebujemy specjalnych linków, możemy dodać je bezpośrednio do swojej strony. Należy pamiętać, że analizator składni nie może buforować tego szablonu, więc w przypadku połączenia z pięcioma relacjami musi utworzyć 35 (= 5 * 7) linków w najgorszym przypadku (tzn. wyświetlając wszystkie narzędzia).
Dlaczego opcja "undefined relation" została odrzucona?
Po prostu dlatego, że nie spełnia swojego celu: Ten szablon służy do łączenia z relacją, jeśli nie ma powiązania (jeszcze), możemy po prostu pominąć ten szablon (tak czy inaczej teraz tak się dzieje). Byłoby to jak link do strony internetowej z banerem "w budowie". Ponadto, ponieważ wyświetlał tekst, musiał obliczyć język strony i przetłumaczyć tekst dla każdego połączenia, funkcję, którą można zarchiwizować po niższych kosztach, wstawiając sam tekst.
Dlaczego nie ma "statusu"?
Template:State zapewnia bardziej szczegółowy sposób dokumentowania statusów mapowania.
Dlaczego zamiast długich form stosowane są skrócone adresy URL?
Są strony które zawierają ten szablon ponad 1000 razy. Zastąpienie krótkich adresów URL, takich jak osm.org przez openstreetmap.org zwiększyłoby rozmiar rozszerzonego tekstu o 11 znaków. W takim artykule zmiana zmieniłaby skalę do 11,000 znaków. Istnieją również opcje, które używają wielu łączy, co spowodowałoby jeszcze większy wzrost.