Wikibooks
plwikibooks
https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna
MediaWiki 1.47.0-wmf.24
first-letter
Media
Specjalna
Dyskusja
Wikipedysta
Dyskusja wikipedysty
Wikibooks
Dyskusja Wikibooks
Plik
Dyskusja pliku
MediaWiki
Dyskusja MediaWiki
Szablon
Dyskusja szablonu
Pomoc
Dyskusja pomocy
Kategoria
Dyskusja kategorii
Wikijunior
Dyskusja Wikijuniora
TimedText
TimedText talk
Moduł
Dyskusja modułu
Wydarzenie
Dyskusja wydarzenia
Wikibooks:Bar
4
413
559523
558187
2026-10-18T15:28:44Z
YxiCode
34510
/* Projekt nowej strony głównej */ Odpowiedź
559523
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
i3ivr2ulijyjssuybciltbfix4e1htb
559524
559523
2026-10-18T15:30:04Z
YxiCode
34510
/* Projekt nowej strony głównej */ Odpowiedź
559524
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
df02awfg8bs3j34nt4djjnlg3vce9o0
559525
559524
2026-10-18T16:01:31Z
Persino
2851
/* Projekt nowej strony głównej */ Odpowiedź
559525
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
mupw7bxwmxwzdvcqhg2fwjau8i2s047
559526
559525
2026-10-18T16:02:04Z
Persino
2851
/* Projekt nowej strony głównej */
559526
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
2kqeqb5hujotreoqhr1d4x40qeypl37
559527
559526
2026-10-18T16:02:53Z
Persino
2851
/* Projekt nowej strony głównej */
559527
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
p5bvu7o290boaxczmuyd9nru8172559
559528
559527
2026-10-18T16:10:30Z
YxiCode
34510
/* Projekt nowej strony głównej */ Odpowiedź
559528
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
d69szhnod3fcixqz4jisoi8uyfit2z4
559529
559528
2026-10-18T16:15:22Z
Persino
2851
/* Projekt nowej strony głównej */
559529
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
bmhgtyxwcd2qkxp78i1f4y945ae09st
559530
559529
2026-10-18T16:15:40Z
Persino
2851
/* Projekt nowej strony głównej */
559530
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
f8uh6ort7mvydp7lh7q360ir2t3dyxg
559531
559530
2026-10-18T16:18:56Z
YxiCode
34510
/* Projekt nowej strony głównej */ Odpowiedź
559531
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
hvxqey2w2szskzuiu1wz35xqa9dnmen
559532
559531
2026-10-18T16:21:48Z
Persino
2851
/* Projekt nowej strony głównej */
559532
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
::::: {{Ping|YxiCode}} Co to znaczy w tym przypadku: '''gęsty'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:21, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
g1qwk9u4dppzinf66syks0ncq0rdbyw
559533
559532
2026-10-18T16:26:04Z
YxiCode
34510
/* Projekt nowej strony głównej */ Odpowiedź
559533
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
::::: {{Ping|YxiCode}} Co to znaczy w tym przypadku: '''gęsty'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:21, 18 paź 2026 (CEST)
::::::Gęsty, czyli zawierający zbyt dużo informacji, które:
::::::* mogłyby być przeniesione do innych podstron,
::::::* streszczone.
::::::[[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:26, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
taaxn6sbn8ywaj17t283bzv9qq9bzhx
559534
559533
2026-10-18T16:35:37Z
Persino
2851
/* Projekt nowej strony głównej */
559534
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
::::: {{Ping|YxiCode}} Co to znaczy w tym przypadku: '''gęsty'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:21, 18 paź 2026 (CEST)
::::::Gęsty, czyli zawierający zbyt dużo informacji, które:
::::::* mogłyby być przeniesione do innych podstron,
::::::* streszczone.
::::::[[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:26, 18 paź 2026 (CEST)
:::::: {{Ping|YxiCode}} No to nawet Ty możesz edytować te zestawy, a ja je umieszczę na stronie głównej, w postaci wybierania czasowego! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:35, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
rn9ezb9ubamxlo4lmvn9an6cv4ulley
559535
559534
2026-10-18T16:38:27Z
YxiCode
34510
/* Projekt nowej strony głównej */ Odpowiedź
559535
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
::::: {{Ping|YxiCode}} Co to znaczy w tym przypadku: '''gęsty'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:21, 18 paź 2026 (CEST)
::::::Gęsty, czyli zawierający zbyt dużo informacji, które:
::::::* mogłyby być przeniesione do innych podstron,
::::::* streszczone.
::::::[[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:26, 18 paź 2026 (CEST)
:::::: {{Ping|YxiCode}} No to nawet Ty możesz edytować te zestawy, a ja je umieszczę na stronie głównej, w postaci wybierania czasowego! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:35, 18 paź 2026 (CEST)
:::::::A szablony np. <nowiki>{{Strona główna/Wprowadzenie}}</nowiki>, to czy to też można zmieniać? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:38, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
bfjhbinbvrjx1v67mkgxxi396q0u21r
559536
559535
2026-10-18T16:46:14Z
Persino
2851
/* Projekt nowej strony głównej */
559536
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
::::: {{Ping|YxiCode}} Co to znaczy w tym przypadku: '''gęsty'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:21, 18 paź 2026 (CEST)
::::::Gęsty, czyli zawierający zbyt dużo informacji, które:
::::::* mogłyby być przeniesione do innych podstron,
::::::* streszczone.
::::::[[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:26, 18 paź 2026 (CEST)
:::::: {{Ping|YxiCode}} No to nawet Ty możesz edytować te zestawy, a ja je umieszczę na stronie głównej, w postaci wybierania czasowego! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:35, 18 paź 2026 (CEST)
:::::::A szablony np. <nowiki>{{Strona główna/Wprowadzenie}}</nowiki>, to czy to też można zmieniać? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:38, 18 paź 2026 (CEST)
::::::: {{Ping|YxiCode}} Jest on zabezpieczony przed wandalizmami, więc tylko administratorzy mogą to edytować, ale możesz go zmieniać w brudnopisie!
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
epzrocl364sqm3alo0z53f4hdurgvwj
559548
559536
2026-10-18T17:33:57Z
YxiCode
34510
559548
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
::::: {{Ping|YxiCode}} Co to znaczy w tym przypadku: '''gęsty'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:21, 18 paź 2026 (CEST)
::::::Gęsty, czyli zawierający zbyt dużo informacji, które:
::::::* mogłyby być przeniesione do innych podstron,
::::::* streszczone.
::::::[[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:26, 18 paź 2026 (CEST)
:::::: {{Ping|YxiCode}} No to nawet Ty możesz edytować te zestawy, a ja je umieszczę na stronie głównej, w postaci wybierania czasowego! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:35, 18 paź 2026 (CEST)
:::::::A szablony np. <nowiki>{{Strona główna/Wprowadzenie}}</nowiki>, to czy to też można zmieniać? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:38, 18 paź 2026 (CEST)
::::::: {{Ping|YxiCode}} Jest on zabezpieczony przed wandalizmami, więc tylko administratorzy mogą to edytować, ale możesz go zmieniać w brudnopisie!
::::::: {{Ping|Persino}} [[Wikipedysta:YxiCode/Brudnopis]] - Przeprowadziłem poprawki dla pierwszych dwóch ramek. Czy Twoim zdaniem jest w porządku? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 19:33, 18 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
ri5scv7xsmj1d5obu7s4n1z0decsscl
559562
559548
2026-10-18T22:24:59Z
Persino
2851
/* Projekt nowej strony głównej */ Odpowiedź
559562
wikitext
text/x-wiki
{{Skrót|'''[[WB:BAR]]''', '''[[WB:Bot policy]]'''}}{{/Nagłówek}}
<!-- =================== DYSKUSJE ========================= -->
<!-- ============= Prosimy pisać poniżej ================== -->
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziecie mieli jakieś sugestie, napiszcie tutaj lub poprawcie na własną rękę. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:26, 6 sty 2026 (CET)
:Czy będą wyróżnienia najlepszych podręczników jako wzory do naśladowania dla nowych twórców? Czy jednak będzie to pod jakąś podstroną? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:28, 18 paź 2026 (CEST)
::Nie zauważyłem globalnego bloka. Szkoda, przydałby się redesign ;( [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:30, 18 paź 2026 (CEST)
:::{{Ping|YxiCode}} Szablony zestawów są w: [[:Kategoria:Szablony nominacji książek/Nowe podręczniki miesiąca/Zestawy]] i [[:Kategoria:Szablony nominacji książek/Wyróżnienia książek miesiąca/Zestawy]], wybierane czasowo, mogę to dodać na stronę główną. A głosowanie odbywa się w: [[:Wikibooks:Wkład miesiąca/Aktualne głosowanie]]. Co mam zrobić, by było lepiej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:01, 18 paź 2026 (CEST)
::::Generalnie to układ strony jest bardzo zwarty i trudno skupić się na jednym kawałku informacji. Warto skrócić długie ciągi tekstu na krótkie podsumowania. Dodatkowo wprowadziłbym układ jedno-kolumnowy dla urządzeń mobilnych, gdyż widać że strona jest dosyć przestarzała.
::::Skrócenie ramek do najważniejszych informacji również wyeliminowałby problem potrzeby ich przewijania.
::::Co do szaty graficznej to warto się zająć tym później. Myślę, że obecna jest jeszcze OK ale warto ją zmienić w niedalekiej przyszłości. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:10, 18 paź 2026 (CEST)
:::: {{Ping|YxiCode}} Strona główna jest przystosowana do urządzeń mobilnych. Na komputerze jest normalnie, a na telefonie jest układ jednokolumnowy! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:14, 18 paź 2026 (CEST)
:::::Rozumiem i przepraszam za niepoprawną informację. Nadal radziłbym, aby tekst nie był tak gęsty jak obecnie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:18, 18 paź 2026 (CEST)
::::: {{Ping|YxiCode}} Co to znaczy w tym przypadku: '''gęsty'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:21, 18 paź 2026 (CEST)
::::::Gęsty, czyli zawierający zbyt dużo informacji, które:
::::::* mogłyby być przeniesione do innych podstron,
::::::* streszczone.
::::::[[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:26, 18 paź 2026 (CEST)
:::::: {{Ping|YxiCode}} No to nawet Ty możesz edytować te zestawy, a ja je umieszczę na stronie głównej, w postaci wybierania czasowego! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:35, 18 paź 2026 (CEST)
:::::::A szablony np. <nowiki>{{Strona główna/Wprowadzenie}}</nowiki>, to czy to też można zmieniać? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 18:38, 18 paź 2026 (CEST)
::::::: {{Ping|YxiCode}} Jest on zabezpieczony przed wandalizmami, więc tylko administratorzy mogą to edytować, ale możesz go zmieniać w brudnopisie!
::::::: {{Ping|Persino}} [[Wikipedysta:YxiCode/Brudnopis]] - Przeprowadziłem poprawki dla pierwszych dwóch ramek. Czy Twoim zdaniem jest w porządku? [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 19:33, 18 paź 2026 (CEST)
::::::::{{Ping|YxiCode}} Jeszcze może być, ale wymaga poprawek! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 00:24, 19 paź 2026 (CEST)
== Thank You for Last Year – Join Wiki Loves Ramadan 2026 ==
Dear Wikimedia communities,
We hope you are doing well, and we wish you a happy New Year.
''Last year, we captured light. This year, we’ll capture legacy.''
In 2025, communities around the world shared the glow of Ramadan nights and the warmth of collective iftars. In 2026, ''Wiki Loves Ramadan'' is expanding, bringing more stories, more cultures, and deeper global connections across Wikimedia projects.
We invite you to explore the ''Wiki Loves Ramadan 2026'' [[m:Special:MyLanguage/Wiki Loves Ramadan 2026|Meta page]] to learn how you can participate and [[m:Special:MyLanguage/Wiki Loves Ramadan 2026/Participating communities|sign up]] your community.
📷 ''Photo campaign on '' [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan 2026|Wikimedia Commons]]
If you have questions about the project, please refer to the FAQs:
* [[m:Special:MyLanguage/Wiki Loves Ramadan/FAQ/|Meta-Wiki]]
* [[c:Special:MyLanguage/Commons:Wiki Loves Ramadan/FAQ|Wikimedia Commons]]
''Early registration for updates is now open via the '''[[m:Special:RegisterForEvent/2710|Event page]]'''''
''Stay connected and receive updates:''
* [https://t.me/WikiLovesRamadan Telegram channel]
* [https://lists.wikimedia.org/postorius/lists/wikilovesramadan.lists.wikimedia.org/ Mailing list]
We look forward to collaborating with you and your community.
'''The Wiki Loves Ramadan 2026 Organizing Team''' 20:44, 16 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29879549 -->
== <span lang="en" dir="ltr">Annual review of the Universal Code of Conduct and Enforcement Guidelines</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 9 February 2026. This is the first step of several to be taken for the annual review. [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2026|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])<section end="announcement-content" />
</div>
22:01, 19 sty 2026 (CET)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29905753 -->
== Sensowny tytuł podręcznika (na podstawie "Moje pierwsze akwarium") ==
Hej, mam problem, który spędza mi sen z powiek: tytuł podręcznika "Moje pierwsze akwarium". Na pewno super pomysł na podręcznik w naszych Wikibooks, podoba mi się. Ale ... co znaczy ten tytuł? Dlaczego nie po prostu "Akwarium" albo "Akwarium domowe"? Czy "moje" oznacza, że będzie jeszcze "twoje, nasze, ich itd.? Czy pierwsze oznacza, że będą jeszcze kolejne? Czy ten tytuł robi miejsce na jeszcze inny podręcznik o tej samej treści? Mam wielka prośbę - czy można ten tytuł zmienić na "Akwarium"? Byłoby super. Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:01, 24 sty 2026 (CET)
:@[[Wikipedysta:EdytaT|EdytaT]] tak cały podręcznik i jego strony da się przynieść do nowej nazwy, aczkolwiek będzie trzeba przepatrzeć tekst, ponieważ tam nie da się zmienić automatycznie. Popieram Twoją propozycję, aby zmienić tytuł na „Akwarium”. Jeszcze dobrze jakby się wypowiedział @[[Wikipedysta:Persino|Persino]] :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:09, 25 sty 2026 (CET)
: {{Ping|EdytaT|Igor123121}} Macie rację! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:15, 25 sty 2026 (CET)
:Ja rozumiem, że "pierwsze" znaczy - "nie było wcześniej" oraz że "dla początkujących", a "moje" znaczy, że będzie wykonywał je czytelnik. Mimo to, nie widzę przeciwwskazań do zmiany nazwy. [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 12:15, 25 sty 2026 (CET)
::Hej, nie musisz mi tego tłumaczyć. Oczywiście, rozumiem "co autor miał na myśli" wybierając ten tytuł. Ale niestety brzmi on nieciekawie, żeby nie powiedzieć - infantylnie. Trochę tak, jak "Moja pierwsza czytanka", albo "Moja pierwsza malowanka". :):):) Dziękuje za twój głos i pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:59, 25 sty 2026 (CET)
:::@[[Wikipedysta:EdytaT|EdytaT]] dokonałem przenosin :) Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:42, 25 sty 2026 (CET)
::::{{Ping|Igor123121|EdytaT}} Ukończyłem przenosiny użytkownika: {{Ping|Igor123121}}, książki: [[Moje pierwsze akwarium]], na: [[Akwarium]], jako dalsze potrzebne operacje, sprawdzając również linkujące... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 25 sty 2026 (CET)
:::::Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:27, 25 sty 2026 (CET)
*Samo przeniesienie popieram ale po co kasować przekierowania? A co jeśli ktoś linkował do nas? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 06:57, 26 sty 2026 (CET)
== Nazewnictwo artykułów (na podst. "Język pruski dla początkujących") ==
Hej, jest jeszcze jeden tytuł, który nie pasuje do innych z dziedziny języków: "Język pruski dla początkujących". Prawie wszystkie inne tytuły to po prostu "Hiszpański", "Japoński", "Szwedzki" itd.
Czy można zmienić nazwę na "Pruski"? A informacja, że chodzi o początkujących wynika per se z tytułów rozdziałów. Tak też nakazują nasze Wikibookowe reguły, cyt. fragment z "Pomoc" - "Nazewnictwo"<br>
;''Przykłady poprawnych tytułów:<br>''
''Angielski<br>''
''Mikrobiologia<br>''
;''Przykłady niepoprawnych tytułów:<br>''
''Język Angielski od Podstaw<br>''
''Historia Polski od Mieszka I do Lecha Wałęsy<br>''
''Mikrobiologia:Wstęp do nauki o mikroorganizmach<br>''
''Nie należy stosować w nazwach podręczników własnych określeń, specyficznych tytułów, np. "Mój przewodnik po Beskidzie Wyspowym" albo "Trudna sztuka chirurgii". Takie podtytuły mogą się ewentualnie znaleźć na stronie tytułowej lub w spisie treści.<br>''
Jeżeli nie da się tego zrobić programatycznie, to całą pracę związaną z przeróbką tytułu mogę wziąć na siebie. Co o tym myślicie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:20, 26 sty 2026 (CET)
:Już przeniosłem książkę: [[Język pruski dla początkujących]], pod adres: [[Pruski]], sprawdzając jednocześnie linkujące, ale na szczęście ich nie było. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:10, 26 sty 2026 (CET)
::Linkujace w wikimediach to nie wszystko. Mógłbyś zostawiać przekierowania? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 07:49, 28 sty 2026 (CET)
: Dziękuję! {{Brak podpisu|EdytaT}}
== Tłumaczenie książek przez AI ==
Co o tym myślicie? Mam coś na kształt książki na temat języka Scheme:
* https://lips.js.org/docs/category/introduction-to-scheme
Myślałem, aby przetłumaczyć na język polski. Treść jest na licencji CC-BY-SA.
Na stronie [[Lisp]] jest bardzo mało treści. Mój tekst jest nawet bardziej kompletny niż [[:en:Scheme Programming]].
Nie wiem, czy znajdę czas, aby przetłumaczyć ręcznie.
[[Wikipedysta:Jcubic|Jcubic]] ([[Dyskusja wikipedysty:Jcubic|dyskusja]]) 22:15, 17 mar 2026 (CET)
* Nawet dobry sposób, można w ten właśnie sposób przetłumaczyć tę pozycję... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:18, 17 mar 2026 (CET)
== <span lang="en" dir="ltr">Upcoming deployment of CampaignEvents extension to Wikibooks</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
We are writing to inform you that the [[mw:Help:Extension:CampaignEvents|CampaignEvents extension]] will be deployed to all Wikibooks projects during the week of '''23 March 2026'''.
This follows last year’s broader rollout across Wikimedia projects. We realized that Wikibooks was not included at the time, and we’re now addressing that to ensure consistency across all communities.
The CampaignEvents extension provides tools to support event and campaign organization on-wiki, including features like on-wiki event registration and collaboration lists(global event list).
We welcome any questions, feedback, or concerns you may have. We are also happy to support anyone interested in trying out the tools.
''Apologies if this message is not in your preferred language. If you’re able to help translate it for your community, please feel free to do so.''
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|dyskusja]]) 19:22, 19 mar 2026 (CET)</bdi>
<!-- Wiadomość wysłana przez User:Udehb-WMF@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/MM_target&oldid=30284073 -->
== Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) ==
Hello everyone,
This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>).
'''The Change:'''<br />
Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]].
We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''.
'''What You Need To Do:'''<br />
To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search.
'''Deadline:'''<br />
We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles.
Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 19:11, 3 kwi 2026 (CEST)
<!-- Wiadomość wysłana przez User:ZI Jony@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 -->
== Request for comment (global AI policy) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English. {{int:Please-translate}}
A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}}
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 02:57, 26 kwi 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 -->
== <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC].
Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:14, 27 maj 2026 (CEST)
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== RFC about AI-generated content in Wikimedia Commons ==
<bdi lang="en" dir="ltr">Apologies for writing in English, please help translate this message to your language. You are invited to participate in a [[c:Commons:Requests for comment/Policy update for AI content|request for comment on Wikimedia Commons about a policy update for AI content]]. This may affect files that are uploaded to Wikimedia Commons for use on this project. Thank you. [[m:User:Codename Noreste|Codename Noreste]] ([[m:User talk:Codename Noreste|dyskusja]])</bdi> 19:11, 23 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Codename Noreste@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== <span lang="en" dir="ltr">Deployment of Legal and Safety Contacts Link in the Footer of Your Wiki</span> ==
<div lang="en" dir="ltr">
<section begin="Message"/>
'''Legal & Safety Contacts'''
Hello community, the Wikimedia Foundation has provided a [[wmf:Special:MyLanguage/Legal:Wikimedia Foundation Legal and Safety Contact Information|single legal and safety contact page]], to be linked in the footer of your wiki, to ensure access to accurate legal information. This is a regulatory requirement. We have already rolled out links to English, German, Italian, Spanish and other wikis and we will deploy to your wiki soon. [[m:Special:MyLanguage/Wikimedia_Foundation_Legal_and_Safety_Contacts_FAQ|Please read more on the project page]] and leave any comments in this thread or on the [[m:Special:MyLanguage/Talk:Wikimedia Foundation Legal and Safety Contacts FAQ|talk page]].
<section end="Message"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:30, 25 cze 2026 (CEST)
<!-- Wiadomość wysłana przez User:Sannita (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=30731267 -->
== Request for comment (the future of Abstract Wikipedia) ==
<bdi lang="en" dir="ltr" class="mw-content-ltr">
Apologies if this has not yet been translated into your wiki's language. {{int:Please-translate}}
You are invited to voice your opinions in a [[:m:Requests for comment/The future of Abstract Wikipedia|request for comment about the future of Abstract Wikipedia]]. {{Int:Feedback-thanks-title}}
[[:m:User:Kowal2701|Kowal2701]] ([[:m:User talk:Kowal2701|talk]]) 14:24, 24 lip 2026 (CEST)
</bdi>
<!-- Wiadomość wysłana przez User:DreamRimmer@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 -->
== Przełączenie serwerowni – Wasza wiki będzie niedługo w trybie tylko do odczytu ==
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Przeczytaj w innym języku]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
[[foundation:|Wikimedia Foundation]] przełączy ruch na inną swoją serwerownię. Upewni to nas, że Wikipedia i inne strony Wikimedia będą zawsze online, nawet w przypadku kataklizmu.
Cały ruch zostanie przełączony '''{{#time:j xg|2026-09-23|pl}}'''. Przełączanie rozpocznie się o '''[https://zonestamp.toolforge.org/{{#time:U|2026-09-23T14:00|en}} {{#time:H:i e|2026-09-23T14:00}}]''' (17:00 CEST).
Niestety, z powodu niektórych ograniczeń w [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], wszystkie operacje edycyjne muszą zostać przerwane podczas przełączenia. Przepraszamy za te utrudnienia. Będziemy pracować nad tym, aby je zminimalizować w przyszłości.
Na wszystkich wiki na 30 minut przed zostanie wyświetlony banner, zanim ta operacja się zacznie. Będzie on widoczny aż do końca operacji przełączenia serwerowni.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Każdą wiki przez krótki czas będzie można tylko czytać, ale nie edytować.'''
* Edytowanie nie będzie możliwe {{#time:j xg Y (l)|2026-09-23|pl}} przez maksymalnie godzinę.
* Jeżeli spróbujesz edytować lub zapisywać zmiany w tym czasie, zobaczysz komunikat o błędzie. Mamy nadzieję, że żadne edycje nie zostaną utracone podczas tego czasu, ale nie możemy tego zagwarantować. Jeżeli zauważysz komunikat o błędzie, poczekaj aż wszystko wróci do normy. Będzie wtedy możliwe zapisanie zmian. Zalecamy jednak zrobienie kopii swoich zmian, na wszelki wypadek.
''Inne skutki'':
* Zadania w tle będą wolniejsze, a niektóre mogą być przerywane. Czerwone linki mogą nie być aktualizowane tak szybko, jak zwykle. Jeżeli utworzysz artykuł, do którego prowadzi jakiś link, to ten link będzie dłużej czerwony niż zwykle. Część skryptów, uruchamiających się na dłużej, zostanie zatrzymanych.
* Oczekujemy, że wdrożenia kodu będą miały miejsce jak w każdym innym tygodniu. Jednakże poszczególne fragmenty kodu mogą się zawiesić, jeżeli dana operacja będzie ich później potrzebować.
* [[mw:Special:MyLanguage/GitLab|GitLab]] będzie niedostępny przez około 90 minut.
W razie konieczności terminy testu mogą się przesunąć. Możesz [[wikitech:Switch_Datacenter|zapoznać się z harmonogramem na wikitech.wikimedia.org]]. Wszelkie zmiany będą ogłoszone w tymże harmonogramie.
'''Prosimy, podziel się tą informacją ze swoją społecznością.'''</div><section end="server-switch"/>
[[m:user:Trizek (WMF)|Trizek (WMF)]] 14:58, 15 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Trizek (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=30513874 -->
== Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges ==
''(Apologies for posting in English. You can help by translating it)''
Hello, I’m Danny from [[:en:w:Wikimedia_Deutschland|Wikimedia Deutschland’s]] [[m:Wikidata_For_Wikimedia_Projects|Wikidata For Wikimedia Projects]] team.<br/>
We have been investigating and examining how Wikidata’s use in the [[Special:RecentChanges]] and [[Special:Watchlist]] pages can be made to be more useful, or less ‘noisy’ (fewer edits that have little value to the reader).
We are currently exploring to make a change in the volume and the type of Wikidata edits that appear in these pages, and '''we need your feedback''' to help us ensure this is a positive change for the Wikis and won’t disrupt your workflows.<br/>
Language links are also known as sitelinks or interlanguage links and describe when a Wikidata item is connected to a Wiki, adding it to the language dropdown tool for other connected Wikis.
[[File:Types of Lang Link changes.png|x350px|frame|A variety of "Language Link" edits as seen in the Recent Changes feed]]
The request for feedback is whether you support the removal of these language link edits from the Recent Changes and Watchlist feed, or would you oppose such a change and if so, why?
Please share you thoughts on the dedicated '''[[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|metawiki Talk page]]'''.
Further information about this change: [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|m:Wikidata_For_Wikimedia_Projects/Hide_Language_Link_edits]]
Thank you for any participation or feedback you give, -- [[m:User:Danny_Benjafield_(WMDE)|User:Danny Benjafield (WMDE)]] 13:46, 25 wrz 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31080832 -->
== Wikidata Sitelink changes in Recent Changes and Watchlist ==
''(Apologies for cross-posting in English, translating it will help spread the message)''
Editors on group 1 wikis, including Wikiquote, Wikibooks, Wikiversity, Wikivoyage, and Wikisource, will no longer see notifications on [[Special:RecentChanges|Recent Changes]] and [[Special:Watchlist|Watchlist]] when a link to ''another'' language version of a page is added, removed, or changed in its Wikidata item. This change will begin on '''October 5 at 07:00 UTC''' as a two-week trial to reduce high-volume, low-value notifications and make higher-value changes easier to identify. Editors who rely on these notifications should be aware of the change and can share feedback or concerns on the [[m:Wikidata For Wikimedia Projects/Clearer Wikidata Edit Summaries/Hide Language Link edits|project]] or [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Hide_Language_Link_edits|talk page]].<br/>Please reach out if you have any questions, thank you! -- [[User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] ([[User_talk:Danny_Benjafield_(WMDE)|talk]]) sent via [[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 14:42, 1 paź 2026 (CEST)
<!-- Wiadomość wysłana przez User:Danny Benjafield (WMDE)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_test_list&oldid=31106967 -->
dmwldz7gur5a223e36u82bb1krj2wo2
Dyskusja wikipedysty:Persino
3
14016
559521
556998
2026-10-18T15:00:18Z
YxiCode
34510
/* Ukrycie danych wrażliwych */ nowa sekcja
559521
wikitext
text/x-wiki
{{Witaj}} --[[Wikipedysta:Kj|Kj]] 12:45, 5 kwi 2008 (CEST)
== [[Ogólne twierdzenia i wnioski o rozkładach statystycznych]] ==
Na Wikibooks piszemy podręczniki, podczas, gdy ten moduł, oraz [[Twierdzenie o rozkładzie normalnym]] są co prawda wzorowymi artykułami, jednak nadają się bardzie na Wikipedię niż na Wikibooks. Ciekawym pomysłem mogłoby być połączenie tych artykułów w jeden podręcznik. --[[Wikipedysta:Kj|Kj]] 12:45, 5 kwi 2008 (CEST)
:Pozwolę sobi dodać swoje zdanie - artykuły nadająsię na Wikibooks, tylko brakuje dla nich jakiejś "wyższej" rodziny, tzn jakiegoś podręcznika, do którego mogłyby należeć (a nie znam się na tym materiale, więc nie umiem zaproponować) --[[Wikipedysta:Lethern|Lethern]] 13:17, 5 kwi 2008 (CEST)
::Witaj. Widzę że zwrócono Ci już uwagę, ale troszeczkę nie ukierunkowano. Wikibooks polega na pisaniu podręczników - dlatego staramy się unikać luźnej formy, spotykanej na Wikipedii. Staramy się aby autorzy zawierali tutaj informacje zwarte w miarę przemyślany sposób. To prawda istnieją tu podręczniki wyglądem przypominające artykuły z Wikipedii (wszystko na jednej stronie) - choćby przykładowo [[Jak żyć oszczędnie]] jest przykładem podręcznika w formie broszurowej. Jednak forma ta obliguje do zawierania wszystkich treści związanych z podręcznikiem na jednej stronie - jest to co prawda uciążliwe dla autorów, szczególnie dużych projektów, jak i obciąża czas ładowania czytelnikowi, choć walorem jest szybki dostęp do wszystkich materiałów. Stąd też powstała idea tworzenia podręczników w formie modułowej (Tytuł/Rozdział). Więcej o tworzeniu podręcznikó znajdziesz w linkach powyżej zamieszczonych wraz z powitaniem. Warto tam zajżeć. Wiąłeś sie za spory projekt, któy zasługiwałby na zebranie w jedną większą całość, bowiem pisząc sam '''podręcznik''' pr. [[Twierdzenie o rozkładzie normalnym]] wypadałoby wspomnieć wcześniej o aspekrach matematycznych i historycznych takiego twierdzenia - tak aby była to ładna pozycja poświęcona tylko temu twierdzeniu. Dlatego też zastanawiam się czy nie lepiej byłoby abyś utworzył podręcznik, przykładowo o tytule [[Statystyka w fizyce]], czy np. [[Statystyka fizyczna]] lub nawet "Ogólne twierdzenia i wnioski o rozkładach statystycznych w fizyce" i zawarł w nim treści wyżej wymienione. Wymagałoby to operacji przeniesienia napisanych już przez Ciebie modułów (przycisk przenieś) pod nowe lokacje podręcznika: przykładowo [[Statystyka w fizyce/Twierdzenie o rozkładzie normalnym]]. Przygotowanie podręcznika z luźnych treści, typu notatki, wymaga oczywiście skonstruowania jakiejś przemyślanej formy, aby wszystko było w miarę spójne, przyjemne w czytaniu i w miarę zrozumiałe. Pozdrawiam i gratuluję pierwszych edycji. [[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 14:28, 5 kwi 2008 (CEST)
:Persino, jeśli możesz... nie baw się w wycinanie treści, ustal nazwę podręcznika, potem przenoś treść (spróbuj przyciskiem 'przenieś') --[[Wikipedysta:Lethern|Lethern]] 16:16, 5 kwi 2008 (CEST)
:Dodam, że nazwa podręcznika może być 'prosta', np. "Statystyka wyższa" (bardzo zmyślam), w tym może być nagłówek "Statystyka i matematyka funkcjonalna we współczesnej fizyce" i w nim moduł "Ogólne twierdzenie..."
A gdzie widzicie przycisk 'Przenieś',bo przy wikipedii był a tu nie ma!!!
--[[Wikipedysta:Persino|Mirosław Makowiecki]]
:Jeśli możesz, używaj częściej przycisku 'podgląd zmian' zamiast 'zapisz' --[[Wikipedysta:Lethern|Lethern]] 14:26, 6 kwi 2008 (CEST)
:Ponawiam prośbę, przycisk 'przenieś' jest w tym samym miejscu co wikipedia, a przenosząc 'brutalnie' artykuły rozwalasz linki, które się do nich odnosiły (nie ma redirectów); przycisk 'podgląd zmian'.. --[[Wikipedysta:Lethern|Lethern]] 15:41, 8 kwi 2008 (CEST)
:6 zmian tej samej strony w ciągu 3 minut.. nikt Ci nie zabrania tak robić, ale czy nie mógłbyś się poslugiwac przyciskiem 'podgląd zmian'? z góry dzięki --[[Wikipedysta:Lethern|Lethern]] 15:06, 10 kwi 2008 (CEST)
== Brak uprawnień do przenoszenia stron ==
Jak pójdę pod adres http://pl.wikibooks.org/wiki/Specjalna:Przenieś/Wikipedysta:Persino/brudnopis, to przeglądarka pisze mi:
"Błędy uprawnień
Nie masz uprawnień do tego działania z następującej przyczyny:
Nie masz uprawnień do przenoszenia stron na Wikibooks.
",w takim razie jak mam przenosić strony, jak przeglądarka tego zabrania.
Mirosław Makowiecki
: Zupełnie nowi użytkownicy nie mają chyba uprawnień do przenoszenia stron. Sprawdź jutro, czy dalej masz taki problem. Jeśli tak, daj znać komuś, kto jest aktywny na Ostatnich zmianach. --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 23:22, 8 kwi 2008 (CEST)
== Podgląd zmian ==
Hej, mógłbyś korzystać częściej z przycisku "Podgląd zmian"? Zauważyłem, że robisz seriami drobne edycje w tych samych artykułach. --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 14:35, 13 kwi 2008 (CEST)
:Derbeth, prosiłem o to już kilkaset edycji temu -.- --[[Wikipedysta:Lethern|Lethern]] 15:58, 13 kwi 2008 (CEST)
== 3k, urodziny, ściganie Japonii ==
Witaj pracusiu. Zbliżają się święta. Polskie Wikibooks obchodzi urodziny '''10 lipca''', do tego zbliżamy się do 3 tyś. modułów - to wspaniała szansa na podwójne święto. Ba - w rankingu Wikibooks, Polska jest zaraz za Japonią - różnica ok. 80 rozdziałów książek. Wysuwam więc pomysł z inicjatywą, [http://pl.wikibooks.org/w/index.php?title=Wikibooks%3ABar&diff=76448&oldid=76445 jak ta], żeby chwilowo zamrozić licznik. Dzięki temu będziemy mogli za około 2 tygodnie przygotowywać się do potrójnego święta. Na czym polega pomysł i inicjatywa? Licznik zlicza nowe moduły tworzone w głównej przestrzeni nazw - pomysł polega na tym, żeby wszystkie nowe strony (czerwone linki) Wikipedyści tworzyli przez najbliższe kilka tygodni w brudnopisach - na swoich stronach podręcznych "Wikipedysta:Nazwa/strona podręczna". Następnie za 2 tygodnie przenieśli je "przycisk przenieś" do przestrzeni głównej. Dzięki temu efektowi kumulacji, nie dość że zgromadzimy strony potrzebne do "doskoku i prześcignięcia" Japonii, ale i będziemy mieli potrójne święto Wikibooks. Co myślisz o tej inicjatywie - zapraszam do [[WB:BAR|baru]] do podzielenia się swoją opinią. P.S. Dodatkowo, jest pomysł utworzenia/przetłumaczenia książki urodzinowej, którą moglibyśmy dodatkowo z tej okazji, wspólnie wykonać - potrzebny jest tylko pomysł jakiej ^_^. Gorąco zapraszam. [[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 02:53, 11 cze 2008 (CEST)
== Odpowiedź,urodziny, ściganie Japonii ==
Jeśli w święta ma być więcej niż 3000 to się zgadzam,nie dość ,że będziemy obchodzić podwójne święto, to będziemy cieszyli że pokonamy Japonię pod tym względem. Jednak warto stworzyć to dla naszej satysfakcji. Wiedząc ,że pokonamy Japonię, to liczba szybkość modów powinna wzrastać szybciej.
<tt>[[Dyskusja Wikipedysty:Persino|Persino]]</tt> 00:29, 13 cze 2008 (CEST)
Można ogłosić częściowy sukces - udało nam się dotrwać do lipca z przymrożonymi edycjami. Jeśli posiadasz jakieś strony w brudnopisie - gorąco zachęcam do uwolnienia ich w nadchodzących dniach (między 5-11 lipca) do przestrzeni głównej [używając przycisku "przenieś" na górze lub dole strony - w zależności od skórki jaką wybrano w profilu]. Zachęcam do dalszego udziału w projekcie i wzmożenia pracy w najbliższych dniach - może uda nam się osiągnąć pułap dodatkowych 100 artykułów i prześcignąć Japonię. ;o) Pozdrawiam [[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 22:17, 4 lip 2008 (CEST)
== Kompletność fizyki teoretycznej ==
Mógłbyś mi napisać, na ile procentowo oceniasz stopień kompletności podręcznika? Chciałbym dopisać do Księgozbioru [[Wikibooks:Etapy rozwoju książek|ikonkę kompletności dla twojego podręcznika]]. Przy okazji, jestem pod wrażeniem rozmiaru twojej książki. --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 01:22, 10 lip 2008 (CEST)
=== Re:Kompletność fizyki teoretycznej ===
Kompletnośc mojej książki oceniam na 50%
[[Wikipedysta:Persino|Mirosław Makowiecki]] 02:26, 10 lip 2008 (CEST)
Zerknij proszę tutaj: [[Dyskusja:Statystyka_matematyczna]] [[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 23:41, 23 lip 2008 (CEST)
Podoba mi się ta nawigacja:
[[Wikipedysta:Persino|Mirosław Makowiecki]] 23:47, 23 lip 2008 (CEST)
==Numeracja wzorów==
Czy wikibooks można tak zrobić aby numer rozdziału był numerowny według pewnej reguły,i ściśle określone wzory do należącego rozdziału.
Np. 10.1 rozdział 1
Wzór 10.1.1
Wzór 10.1.2
10.2 Rozdział
Wzór 10.2.1
Chodzi mi o generator.
[[Wikipedysta:Persino|Mirosław Makowiecki]] 00:19, 2 Sierpnia 2008 (CEST)
:Jedyne co w ramach MediaWiki mogę zaproponować to [[w:Pomoc:Wzory]] i polecany tam szablon "wzór" (niestety zmuszający do ręcznego numerowania).
:{{wzór|<math>c=\sqrt{a^2+b^2}</math>|10.1|bez automatu=tak}}
:Niestety Wikipedia to nie LaTeX. Na koniec drobna uwaga. Jeśli chcesz zadać komuś pytanie, lub na coś odpowiedzieć to pisz na '''jego''' stronie dyskusji, a jeśli wszystkim wikipedystom to lepiej pytać w "Barze". (To pytanie znalazłem przypadkiem.) Sugeruję również stosować <math>\langle\cdot\rangle</math> zamiast <math><\cdot></math>. [[Wikipedysta:Delimata|Delimata]] 10:03, 5 sie 2008 (CEST)
Jeszcze tak mi się nasunęła taka sugestia by rozważyć użycie symbolu <math>\varepsilon\,</math> zamiast <math>\epsilon\,</math>. [[Wikipedysta:Delimata|Delimata]] 11:13, 6 sie 2008 (CEST)
== Giggs komentarz ==
Ktoś napisał: [[Dyskusja:Fizyka_statystyczna/Zespoły_statystyczne_w_fizyce_statystycznej_klasycznej|w tej dyskusji]] --[[Wikipedysta:Lethern|Lethern]] 09:59, 8 sie 2008 (CEST)
== spis treści ==
"jak wstawić spis treści" - nie da się tego zrobić automatycznie, bo spis treści powstaje na podstawie nagłówków w artykule, więc w "innym module o innych nagłówkach" nie zrobi się taki sam spis. Można go zrobić ręcznie, napisz który i gdzie skopiować, mogę spróbować --[[Wikipedysta:Lethern|Lethern]] 11:04, 3 lis 2008 (CET)
===Re:spis treści===
Co to znaczy ręcznie?
[[Persino|Persino]]19:11 3 lis 2008
:To znaczy napisać ten spis i dodać linki, tak jak np. spis modułów na stronie Fizyka.../Artykuły --[[Wikipedysta:Lethern|Lethern]] 20:45, 7 lis 2008 (CET)
''Wstawiłeś (przez użycie "wstawiania stron" "{: ... }" ) spis treści z Statystyki matematycznej do podręcznika fizyki. Poprawiłem link, bo w poprzednim była stara strona z ustawionym EK. Na stronie [[Statystyka_matematyczna]] dodałem tagi "noinclude", dzięki nim tekst między nimi nie pojawi się w miejscu gdzie kopiujesz ten moduł w podręczniku Fizyki. Jak coś to pytaj (najlepiej na mojej stronie dyskusji, łatwiej mi zobaczyć że piszesz) --[[Wikipedysta:Lethern|Lethern]] 14:36, 15 lis 2008 (CET)''
:Sprostowanie... był konflikt edycji, cofnąłem swoje, powyższe nie ma już znaczenia
== Wstawianie kategorii "Ekspresowe kasowanie" ==
Nie rozumiem, co robisz wykonując [http://pl.wikibooks.org/w/index.php?title=Fizyka_teoretyczna/Równania_różniczkowe_zwyczajne_rzędu_drugiego_sprowadzane_do_równań_rzędu_pierwszego&diff=85470&oldid=85443 takie edycje]. Jeśli chcesz, żeby jakaś strona była skasowana, powinieneś wstawić szablon ek i napisać, dlaczego stronę należy skasować (np. że treść została gdzieś przeniesiona). Nie mam czasu biegać po podręczniku i prowadzić dochodzenie, czy stronę kasować, czy nie. --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 13:49, 6 lis 2008 (CET)
:Dodam, że chodzi o wstawienie: <nowiki>{{ek|tu wpisz tlumaczenie}}</nowiki> --[[Wikipedysta:Lethern|Lethern]] 20:45, 7 lis 2008 (CET)
== podręcznik ==
Nie wiem czy dostrzegłeś - ktoś się wpisał tu [[Dyskusja:Statystyka matematyczna/Metoda najmniejszych kwadratów]]. --[[Wikipedysta:Lethern|Lethern]] 13:11, 10 gru 2008 (CET)
== Urodziny Wikibooks ==
Cześć. 24 stycznia polskim Wikibooksom stuknie 5 latek. Trochę byłoby szkoda, gdyby to przeszło bez echa - [http://stats.wikimedia.org/wikibooks/PL/ChartsWikipediaPL.htm podczas wakacyjnej akcji] przybyło w końcu nieco modułów :). W [[Wikibooks:Bar#Urodziny Wikibooks|kawiarence]] dałem kilka propozycji, co można by na takie urodziny zrobić. Na jesień udało mi się przez wykop rozpropagować jakoś podręcznik fotografii (i też na statsach fajnie widać październik ;) Jeśli masz inne propozycje, też je dorzuć. Wiem, że na booksach jest tak, że każdy swoją działkę pieli, ale jeśli sami się nie rozpropagujemy, to niewiele osób będzie tu trafiało. Pozdrawiam [[Wikipedysta:Przykuta|Przykuta]] 14:09, 18 sty 2009 (CET)
== Spis treści fizyki teoretycznej ==
Zrobiłem trochę "ukruconą" wersję spisu treści do podręcznika, w [[Wikipedysta:Lethern/Fizyka teoretyczna]]. Usunąłem wszystkie podpunktu poziomu ###, #### itd., wypadło ponad 200 podpunktów. Nie jest to na pewno idealny spis, ale daję przykład, że można go zrobić bardziej czytelnym, żeby pomóc przeglądać ten spis użytkownikom (pewnie można wywalić wiele podpunktów typu ## oraz powinno się zostawić niektóre poziomu ###, ale nie bawiłem się w szczegóły). Myślę, że można by taki spis treści (mniejszy) wstawić na jakąś poboczną stronę (oddzielny moduł) lub odwrotnie, aktualny spis wstawić na oddzielny moduł. Co sądzisz? --[[Wikipedysta:Lethern|Lethern]] 13:11, 4 lut 2009 (CET)
=== Spis treści fizyki teoretycznej ===
Zrobiłem spis treści by był on szczegółowy, bo czytelnik korzystający z mniej szczegółowego spisu treści, patrzy, nie ma, a już rzeczywiście jest. Temu mój służy spis treści.
'''Widziałem gorsze spisy treści''' w drukowalnych książkach, nie na '''wikibooks'''.
Ja bym tak zrobił w jednym pliku "Fizyka teoretyczna" umieścił bym jednym pliku wszystko z parserami, oto psełdokod;
-----------------------------------------------------------------------------
//Fizyka teoretyczna
if((Tom=="Matematyka statystyczna")or(Tom=="")){
//Spis streści Matematyki statystycznej
}
if((Tom=="Statystyka Fizyczna")or(Tom==""){
//Spis treści statystyka fizyczna
}
pozodstały spis streści
<nowiki>[[Kategoria:Fizyka]]</nowiki>
-----------------------------------------------------------------------------
Następnie należy stworzyć plik np. "Matematyka statystyczna", a w nim, a oto psełdokod:
<nowiki>{{:Fizyka_teoretyczna|Tom=Matematyka statystyczna}}</nowiki>
<nowiki>[[Kategoria:Fizyka]]</nowiki>
-----------------------------------------------------------------------------
Aby moja książka była bardziej przejrzysta, temu służy podział mojej książki na pliki w katalogu '''Fizyka''', które korzystają z pliku '''Fizyka teoretyczna''' by stworzyć spis treści.
Czy mógłbyś to stworzyć na swoim katalogu domowym, jeśli by mnie się podobało, to prosił bym byś to zrobić to dla każdego z rozdziału z osobna.
[[Wikipedysta:Persino|Persino]] 16:41, 4 lut 2009 (CET)
=== "Szablon" do spisu treści ===
[[Wikipedysta:Lethern/Fizyka_spis]]
Wykorzystanie, np.:
Wikipedysta:Lethern/Fizyka_spis|1|||4|
czy np.
Wikipedysta:Lethern/Fizyka_spis|.|.|||
Każde niepuste pole (np."1") oznacza użycie danego rozdziału, puste oznacza pominięcie. Pierwsze pole to pierwszy rozdział, i tak dalej.
Uwaga: "szablon" (choć nie jest szablonem), nie może być na głównej stronie, tylko w jakimś module podrzędnym. Główna strona musi z niego korzystać. Nie wiem, czy to idzie obejść. Na głównej stronie jest po prostu:
Wikipedysta:Lethern/Fizyka_spis|a|a|a|a
*Przykład wykorzystania - [[Wikipedysta:Lethern/Fizyka_strona]]
--[[Wikipedysta:Lethern|Lethern]] 01:56, 2 mar 2009 (CET)
== Linki do wzorów ==
Jest już pewien szablon, spróbuj z niego skorzystać:
*link do użycia:
: <nowiki>[[podręcznik/moduł#wzór1|Tekst opisu]]</nowiki>
*tam gdzie wzór, szablon:
: <nowiki>{{Indeksuj|wzór1}}<math>x=y</math></nowiki>
*wygląda to tak (bez zmian):
: {{Indeksuj|wzór1}}<math>x=y</math>
Swoją drogą, nie zauważyłem tej wypowiedzi w temacie ze spisem treści (mogłem pominąć, a nie jest ona na mojej stronie dyskusji), ale spróbuję to zrobić --[[Wikipedysta:Lethern|Lethern]] 01:15, 2 mar 2009 (CET)
:W module [[Fizyka teoretyczna/Średnie w matematyce]] zamieniłem linki do nagłówków (np. średnia arytmetyczna) na linki do wzorów. Możesz sprawdzić, jak działa, jeśli niepotrzebnie zamieniałem to cofnij moje edycje ; ) --[[Wikipedysta:Lethern|Lethern]] 11:07, 2 mar 2009 (CET)
:Moja wiedza nt. wiki mówi mi,że nie ma możliwości użycia żadnego licznika, który by to zautomatyzował. Musisz ręcznie wpisywać 1, 2 itd. --[[Wikipedysta:Lethern|Lethern]] 11:50, 4 mar 2009 (CET)
== Fizyka teoretyczna/Zbiór rozdziałów ==
Pozostawiłeś ten moduł pusty. Mams go usunąć? W tym celu wstawiaj proszę szablon: {{s|ek}}. P.S. W barze wspominałeś na temat szablonów. Nie rozumim tylko czy to było pytanie czy stwierdzenie? -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 16:25, 7 mar 2009 (CET)
== Fizyka teoretyczna - spis treści ==
Niekoniecznie rozumiem po co Ci tyle zagnieżdżonych szablonów. Ogólnie na Wikibooks źle widziane jest "forkowanie", w Księgozbiorze nie pojawiają się pozycje [[Statystyka matematyczna]], [[Klasyczna elektrodynamika]], [[Szczególna teoria względności]], [[Rachunek tensorowy]], [[Ogólna teoria względności]] itd. myślę, że wygodniej byłoby podzielić całą książkę zgodnie z nazewnictwem albo na układ taki:
* strona zbiorcza "[[Fizyka teoretyczna]]" dla kilku osobnych podręczników "[[Fizyka teoretyczna cz.I - Statystyka matematyczna]]/podrozdziały" itd...
* lub sugerowałbym powrót
* w obecnej chwili zanim podjęte zostaną jakiekolwiek decyzje i działania (najprawdopodobniej związane z usunięciem niepotrzebnych spisów treści na nieistniejących podręcznikach, lub migracją podrozdziałów fizyki teoretycznej do właściwych podręczników) - proponuję na stronach "Statystyka matematyczna" i wszystkich innych tego typu w przestrzeni głównej nazw, umieścić szablony informujące, że jest to część z podręcznika [[Fizyka teoretyczna]] - bowiem użytkownicy będą zdezorientowani nagłą zmianą struktury i nazewnictwa - kiedy przeniesieni zostaną z podręcznika "Statystyka matematyczna" czy "Klasycznej elektrodynamiki" do "Fizyki teoretycznej".
:Ewentualne przeniesienia mogą zostać wykonane botami, o ile będą dostępne. --[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 21:38, 7 mar 2009 (CET)
== Programowanie i CSS w mediawiki ==
MediaWiki oparta jest na cssie więc niejako można tworzyć nowe klasy. Niestety jest to bardzo ograniczone, np. do możliwości tworzenia skinów. Ze względów bezpieczeństwa takie formuły najczęściej ograniczone są tylko do obsługi pojedynczego użytkownika. Ciut więcej możesz poczytać na stronie: http://www.mediawiki.org/wiki/Manual:CSS i jej odnośnikach. Może na precyzyjniejesze pytania będę mógł bardziej szczegółowo odpowiedzieć. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 15:27, 1 kwi 2009 (CEST)
Zapewne chodziło Ci o wyrażenie typu: <nowiki>{{{1|2}}}</nowiki> (różnica nawiasu) oznacza to, że domyślna wartość pierwszego również domyślnego parametru szablonu, w przypadku pominięcia jego deklaracji przy użyciu szablonu będzie wynosiła 2. Przykładowo dla deklaracji: <nowiki>{{Szablon|blabla|bleble}} wartość parametru {{{1|2}}} wynosiła będzie blabla parametru {{{2}}} bleble. Z kolei zamieszczając {{Szablon}}, parametr {{{1|2}}} równy będzie 2, natomiast parametr {{{2}}} pozostanie pusty.</nowiki> -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 12:16, 2 kwi 2009 (CEST)
== Liczby zespolone ==
:Część praktyczna podręcznika - tj. dodawanie i odejmowanie nie została napisana przeze mnie, i jest w chwili obecnej troszkę oderwana od podręcznika, i w najbliższym czasie będę starał się ją przeredagować. Co do zapisu <math>i= \sqrt{-1}</math> w wielu środowiskach jest przedstawiany jako bardziej prawidłowy niż krytykowany przez nie zapis <math>i^2=-1</math> za mniej dydaktyczny. W podręczniku starałem się zachować pewną wynikowość i skupić się na przystępnym i łagodnym wprowadzeniu do świata liczb urojonych jak również w miarę zrozumiałym opisie liczb zespolonych. W większości podręczników czy skryptów spotykałem się z wrzucaniem czytelników na głęboką wodę, dlatego przyjąłem konwencję wynikową opisu liczb: skoro zakładamy że są narzędziem pozwalającym obliczać pierwiastek liczb ujemnych to musimy stworzyć to narzędzie, następnie możemy na nim operować, a potrafiąc już operować można próbować przedstawiać to na rysunku.
:Zgodzę się że dla matematyków znających przepisy, oczywistym jest przyjęta później konwencja operowania w zapisie "kartezjańskim", przez podawanie współrzędnych w płaszczyźnie arganda (a,b), jednak wydaje się to dość nienaturalne i usilne promowanie tego typu przedstawienia liczb najczęściej wprowadzało większy zamęt u niezaznajomionych z tematyką. Mimo wszystko uznałem za bardziej naturalny i zrozumiały dla człowieka zapis algebraiczny liczb. Staram się po prostu utrzymać jednolitą konwencję podręcznika i nie mieszać nadto pojęciami między sobą. Ale i objaśniać w łatwy sposób elementy dyskusyjne, które bagatelizowane są często w innych książkach.
:Toteż, co do zapisu <math>\sqrt{-1}^2=(\pm i)^2\equiv -1</math> dla nas oczywistym jest zachowanie kolejności działań - bo nieświadomie sposób liczenia uznajemy już za oczywisty. Jednak pamiętać należy, że młodzież jest bardziej dociekliwa i często ich manipulacje cyferkami mogą pokazać, że <math>\sqrt{-1}^2=(\pm i)^2\equiv (\pm \sqrt{-1})^2</math> co daje nam ciekawy efekty jak np. <math> \sqrt{(-1) \cdot (-1)} = \pm 1 </math> p zastosowaniu analizy klasycznej. Jak widać w takiej kolejności wykonywania działań algebraicznych otrzymujemy różne efekty, a wytłumaczenie - "wybierz sobie wynik ujemny" zaczyna zakrawać o zbrodnię na dydaktyce. We "wcześniejszej" analizie takich problemów nie było, a wszyscy przyzwyczajeni byli do przemienności działań mnożenia elementów posiadających ten sam wykładnik.
:Chyba, że sam posiadasz jakiś fajny pomysł na predstawienie/wytłumaczenie tego problemu w prosty i zrozumiały sposób czytelnikowi który nigdy wcześniej nie miał doczynienia z liczbami zespolonymi, a jego matematyka zakończyła się na standardowej analizie liczb rzeczywistych - bo do takich osób przede wszystkim kierowałem podręcznik. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 11:09, 3 kwi 2009 (CEST)
:Dokładnie. I takie przedstawienie mi chodzi po głowie w dalszych rozdziałach podręcznika. Bowiem z tego co inni wrzucili już do części o działaniach na liczbach zespolonych, widzę raczej brak zrozumienia ich tematyki - standardowy dla zwykłego trybu nauczania 3Z. Chcę by ten podręcznik był inny niż standardy w tej dziedzinie. Muszę tylko skończyć parę projektów, i powrzucam to co mam na Wiki - bo nie lubię nieprzemyślanej roboty. Cieszę się że się rozumiemy w tej sprawie i nie jestem odosobniony w takim podejściu do prezentacji tych liczb. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 23:01, 4 kwi 2009 (CEST)
== O mojej (mam nadzieję) pomocy ==
Witaj, piszę do Ciebie, żebyś nie niepokoił się moimi poprawkami w fizyce teoretycznej. To tak żeby uprzedzić i wyjaśnić.
Nie będę ingerował - a na pewno nie bez pytania! - w tok rozumowania, w strukturę podręcznika, ani nie będę wprowadzał swoich "dodatków". Chciałbym tylko, na ile starczy mi zapału, pomóc poprawiać język, uzupełniać zgubione indeksy, ujednolicać symbole itp. z zachowaniem ciągu wywodu, który Ty zaproponowałeś. Twój wykład wymaga sporych poprawek językowych, czego chyba masz sam świadomości, prawda? Jak widziałem inni też to już wcześniej zauważyli. Pozdrawiam i... podziwiam rozmach z jakim podręcznik został zaplanowany. [[Wikipedysta:Youandme|Youandme]] 18:40, 3 kwi 2009 (CEST)
== Edycje ==
Witaj Persino. Muszę jeszcze raz o tym napisać - czy mógłbyś spróbować więcej używać przycisku "podgląd zmian", niż "zapisz"? Jeśli boisz się o stratę dokumentu, zapisuj w notatniku. Może Tobie to nie robi różnicy, ale licznik edycji wikibooks jest sztucznie zawyżany, Ostatnie zmiany są mało czytelne, a Tobie to chyba nie będzie sprawiało wielkiego klopotu? --[[Wikipedysta:Lethern|Lethern]] 12:01, 5 kwi 2009 (CEST)
Obywatelu, zlituj się, przestań robić miliony edycji. Jedna na minutę to za dużo --[[Wikipedysta:Lethern|Lethern]] 12:36, 18 kwi 2009 (CEST)
== Odp: Wariacja lub wariancja ==
[http://pl.wikibooks.org/w/index.php?title=Dyskusja_Wikipedysty:Youandme&diff=96991&oldid=96186 Piszesz]:
: "W książce "Analiza danych" autora "Siegmund Brandt" jest używane słowo '''wariacja''' [...]".
W jakim kontekście? Na której stronie? Spójrz na miejsce, gdy drugi moment pojawia się w tej książce chyba po raz pierwszy (strona 51) w rozdziale 3.3 o tytule "Funkcje jednej zmiennej losowej, wartość oczekiwana, '''wariancja''', momenty". Na wspomnianej stronie 52., jest definicja i używa słowa '''wariancja''', później mamy tytuł rozdziału 3.5 "Wartości oczekiwane, '''wariancje''', kowariancje i współczynniki korelacji", a kolejnych rozdziałach np. 11. "Analiza '''wariancji'''"! Zajrzysz do indeksu i zobaczysz, że:
:'''wariancja''' 51, 76, 248, 688, 690
: - estymatora 254
: - wartości średniej 177, 199, 301
: - z próby 176, 198
: - zmiennej losowej 51
natomiast w indeksie mamy też oczywiście (i zaledwie tylko tyle):
:'''wariacje''' 598
ale dotyczy to pojęcia z kombinatoryki - cytuję ze strony 598: "Takie ustaiwenia obiektów nazywamy ''wariacjami''".
<br>Tak przynajmniej jest w wydaniu z 1998 roku i śmiem twierdzić, że jeśli gdzieś w tekście pojawiło się słowo '''wariacja''' w znaczeniu drugiego momentu statystycznego, to była to literówka. I podtrzymam twierdzenie, że w polskim drugi moment statystyczny nie jest nazywany wymiennie '''wariacją''' lub '''wariancją'''. [[Wikipedysta:Youandme|Youandme]] 01:23, 11 kwi 2009 (CEST) PS. Przy okazji dam spóźnioną odpowiedź: oczywiście zastosuję się do prośby o używanie szablonów "CentrujWzór" i "CentrujWzór" i cieszę się, że zaakceptowałeś moją propozycję pomocy.
== Wzory ==
Niestety, nie mam pojęcia jak to zautomatyzować, jedynie ręczne wpisywanie widzę jako opcję --[[Wikipedysta:Lethern|Lethern]] 21:10, 18 kwi 2009 (CEST)
== poprawka Bernoulliego ==
Poprawiłem mniej więcej to, o co prosiłeś. Jeśli nagłówki pozostałe mają być w "podpunktach", to wystarczy <nowiki>=Twierdzenie o rozkładzie wielomianowym= zmienić na ==Twierdzenie o rozkładzie wielomianowym==</nowiki> itd. --[[Wikipedysta:Lethern|Lethern]] 09:16, 20 kwi 2009 (CEST)
== rozdziały bez spisu treści ==
Było takie coś (tag h2, h3 itd.), ale niestety już nie działa. Pozostaje nie używać === i robić ręcznie, np. <nowiki> <big>'''nazwa'''</big> </nowiki>
<big><big>'''"nazwa"'''</big></big>
----
Albo przy użyciu formatowania html, --[[Wikipedysta:Lethern|Lethern]] 15:15, 28 kwi 2009 (CEST)
== całka ==
1. <math>\int_{\overset{a}{\underset{c}{b}}}c(x)dx\;</math>
2. <math>\int_{\overset{a}{\underset{c}{\overset{b}{}}}}c(x)dx\;</math>
3.<math>\int_{
\begin{matrix}
a \\
b \\
c
\end{matrix}
}c(x)dx\;</math>
i jeszcze
4. <math> \int\limits_{\overset{a}{\underset{c}{\overset{b}{}}}}</math>
Polecam http://meta.wikimedia.org/wiki/Help:Displaying_a_formula
--[[Wikipedysta:Lethern|Lethern]] 17:44, 5 maj 2009 (CEST)
* Wprowadziłem zmiany w [http://pl.wikibooks.org/w/index.php?title=Fizyka_statystyczna/Przykłady_innych_zespołów_statystycznych_kanonicznych_w_fizyce_klasycznej&curid=15972&diff=99547&oldid=99524 Przykłady innych zespołów statystycznych kanonicznych w fizyce klasycznej], tzn. poprawiłemdwie całki. wg tego co napsałem powyżej --[[Wikipedysta:Lethern|Lethern]] 11:49, 7 maj 2009 (CEST)
== Rozdziały ==
O ile z wiki można coś poradzić, tak na HTMLu się nie znam. Poczytaj tu: [http://meta.wikimedia.org/wiki/Help:Section#Section_linking Help:Section] (tu masz [http://meta.wikimedia.org/wiki/Help:Contents#For_editors spis]). Niestety nie wiem, co masz na myśli. Jeśli nie poradzisz sobie to napisz dokładnie, jak to ma wyglądać, najlepiej jakieś demo, to może coś pomogę (ew mozna na wikipedii o tym wspomnieć, tam więcej ludzi co się znają)
Generalnie żeby do pewnego miejsca można było linkować, to coś musi zawierać:
:<nowiki>{{anchor|tekst}}</nowiki>
(lub)
:<nowiki><span id="anchor_name">some text</span>. </nowiki>
Rozdział można też tworzyć poprzez:
:<nowiki><tt><h4>tekst</h4></tt> </nowiki>
--[[Wikipedysta:Lethern|Lethern]] 22:14, 8 maj 2009 (CEST)
== Doktorat z Wikimedia ==
Hmm. Dość ciekawa propozycja. Choć co prawda nie wiem co do końca masz na myśli z pisaniem doktoratu "z Wikimedia". Chcesz zająć się "fenomenem" środowiska Wiki, czy po prostu tworzyć kilku osobową publikację pracy doktorskiej? Myślę, że w tym drugim przypadku - głównymi ograniczeniami byłyby wymogi uczelniane, stawiane przez Centralną Komisję oraz prawnie podyktowane ''ustawą o stopniach naukowych'', która tak na marginesie chyba wspominała o możliwości prowadzenia wieloosobowej publikacji (art. 13 pkt 3) - mechanizm Wiki jako taki posiada historię wkładu w podręczniki, więc możesz być utożsamiany w konkretnymi częściami pracy zbiorowej, za jaką można byłoby uważać pojawiające się treści na Wikibooks. Jedynym ograniczeniem byłaby zasada Oryginal Research - co oznacza, że poniekąd "oryginalne rozwiązanie problemu naukowego" (art. 13 - pkt 1) nie mieści się w ramach Wikibooks (i najlepiej aby była rozwiązana poza Wikibooks). Za to cała część "wykazująca ogólną wiedzę teoretyczną w danej dyscyplinie naukowej lub artystycznej", jako część dedykowana dydaktyce, jak najbardziej może się znajdować na Wikibooks. Jeśli natomiast masz na myśli wykonanie publikacji drukowanej Twojego podręcznika, do puki nie będzie naruszona licencja GFDL (która pozwala nawet na sprzedaż materiałów, byle za podaniem autorów największego wkładu i zamieszczeniem pełnej treści licencji) oraz licencja grafik - osobiście myślę, że nie powinno być problemów. Nie podoba mi się tylko "zmuszanie" do rozwijania podręcznika - nauka powinna być przywilejem, nie karą ;o). -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 21:49, 16 maj 2009 (CEST)
== PHP i wzory ==
Myślę, że warto by porozmawiać z programistami z MediaWiki (na IRCu, propozycjach dodatków, czy Bugzilli) w sprawie opracowania plug-inu do Wikibooks umożliwiającego prowadzenie numeracji wzorów i odwoływanie się do nich. Obecnie Wiki działa w bardzo okrojony sposób i trzeba niejako 'hackować' jej możliwości tak jak zrobiłeś to w {{s|CentrujWzór}} i {{s|LinkWzór}}, istnieją też inne narzędzia odwoławcze np. referencje: szablony: {{s|r}}, {{s|u}}, {{s|o}}, {{s|RN}} i {{s|UN}}, innym rozwiązaniem jest też użycie grup referencji <pre><references group="wzór"/></pre> - zastanawiam się czy możliwe byłoby utworzenie grupy matematycznej "wzór" i uwzględnienia w odpowiednich css'ach, ale jest to troszeczkę bardziej zaawansowany problem, wykraczający poza moje możliwościowi dostępowe do Wiki (dostęp do plików katalogów który mają programiści MediaWiki). P.S. Czy na pewno chcesz skasować: [[Fizyka teoretyczna/Rozkłady kwantowe w fizyce]]?
== rozkłady ==
Przepraszam, że dopiero dziś odpowiadam. Wydawało mi się po prostu, że tytuły są mylące, bo rozkład statystyczny i rozkład zmiennej losowej to to samo, a tytuły sugerowały, że to co innego. W obecnej wersji jest moim zdaniem całkiem dobrze, pewnie jeszcze lepiej byłoby wszędzie jednolicie pisać "rozkład zmiennej losowej" albo "rozkład statystyczny", ale to już kosmetyka. Pozdrawiam, [[Wikipedysta:Olaf|Olaf]] 19:27, 4 cze 2009 (CEST)
== [[Mechanika_teoretyczna/Kinematyka_i_dynamika_klasyczna_opisu_punktu_materialnego#Energia_ciała_w_polu_grawitacyjnym|Energia ciała w polu grawitacyjnym]] ==
Ucząc się do egzaminu czytam Twój podręcznik i nie jestem pewien, czy aby to równanie jest dobrze napisane. W momencie przejścia:
<math>GMm\int\limits^{\infty}_r r^{-2}dr=\lim_{r_0\rightarrow \infty}GMm[-{{1}\over{r}}]^r_{r_0}</math>
w niezrozumiały dla mnie sposób zamieniasz granice całkowania (całkujemy od r do nieskończoności, a potem od nieskończoności do r). Czy aby to jest dobrze? Dodam, że wyprowadzając ten wzór "od początku" otrzymuję ten sam wynik tylko z przeciwnym znakiem. Jeśli to jest mój błąd, to oczywiście przepraszam ;-). --[[Wikipedysta:Kj|Kj]] 23:17, 9 cze 2009 (CEST)
== [[Mechanika_teoretyczna/Kinematyka_i_dynamika_klasyczna_opisu_punktu_materialnego#Empiryczne_Prawa_Keplera|Empiryczne Prawa Keplera]] ==
Witaj, znowu odkryłem drobne błędy w podręczniku i pozwoliłem je sobie poprawić. Oto zmiany (proszę o ich przejrzenie i ew. revert w przypadku mojego błędu): [http://pl.wikibooks.org/w/index.php?title=Mechanika_teoretyczna/Kinematyka_i_dynamika_klasyczna_opisu_punktu_materialnego#Empiryczne_Prawa_Keplera]. Pozdrawiam --[[Wikipedysta:Kj|Kj]] 23:39, 12 cze 2009 (CEST)
== EKi ==
Witam, jesteś pewien chęci usunięcia tej strony: [[Fizyka teoretyczna/Elementy zagadnień z klasycznej mechaniki kwantowej]]? P.S. Usunąłem resztę, ale sprawdź jeszcze czy nie zerwało linkujących. Następnym razem jeśli przenosisz strony proszę pozmieniaj adresy w linkujących - zapobiegnie to zrywaniu i powstawaniu czerwonych linków w istniejących już modułach. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 11:58, 14 cze 2009 (CEST)
== poprawianie podręcznika ==
chętnie bym poprawiał, ale nie mam najlepszego dostępu do internetu aktualnie niestety --[[Wikipedysta:Lethern|Lethern]] 23:50, 3 lip 2009 (CEST)
== Autoindeksowanie ==
Hmm. Raczej nie spotkałem się z takim narzędziem. Mimo wszystko Wiki to nie Office czy TeX. Ale jeżeli koniecznie byłoby Ci coś takiego potrzebne, musiałbyś złożyć request na stronie https://bugzilla.wikimedia.org/ o opracowanie takiego narzędzia. Co prawda zajmie to troszkę czasu, ale może któremuś programiście zachce się stawić czoła temu problemowi. ;) -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 22:43, 1 lip 2009 (CEST)
== wzory w tekście ==
'''(spójrz na źródło tego tekstu)''' <br />
Możesz zrobić niektóre skróty "mniejsze" niż czcionka Tex'a, tzn.<br />
∫ ∑ ∏ √ − ± ∞ <br />
∝ ≡ ≠ ≤ ≥ <br />
× · ÷ ∂ ′ ″ <br />
∇ ‰ ° ∴ Ø ø <br />
∈ ∉ ∩ ∪ ⊂ ⊃ ⊆ ⊇ <br />
¬ ∧ ∨ ∃ ∀ ⇒ ⇔ <br />
→ ↔ ↑ ℵ - – — <br />
α β γ δ ε ζ η θ ι κ λ μ ν<br />
ξ ο π ρ σ ς τ υ φ χ ψ ω<br />
Γ Δ Θ Λ Ξ Π Σ Φ Ψ Ω<br />
Oczywiście, górny i dolny index: x <sub>a</sub> + y <sup>b</sup>
W TeX możesz spróbować zrobić taki trick: < math> _{....} < /math> <br />
tekst tekst wzór <math>_{x^2+2x+1}\,</math> teksttekst czy też tekst <math>_{\cos \alpha + \sum_{n=3}{x_n}}\,</math> tekst tekst <br />
Problem w tym, że niektórzy muszą sięgnąć po okulary, żeby taki wzór przeczytać :D
--[[Wikipedysta:Lethern|Lethern]] 23:49, 3 lip 2009 (CEST)
Niektóre symbole są podane na stronie
[https://web.archive.org/web/20180128055722/http://www.poradnik-webmastera.com:80/artykuly/html/znaki_specjalne_html.php]
[[Wikipedysta:Persino|Mirosław Makowiecki]] ([[Dyskusja Wikipedysty:Persino|dyskusja]]) 20:44, 29 wrz 2009 (CEST)
== Przenoszenie i usuwanie stron ==
W skrócie: trzeba poprawiać odnośniki, jeśli przeniesiesz stronę.
Zmienianie nazw dla stron powoduje różne problemy z linkami, jak wiesz. Zanim zmienisz nazwę modułu, zajrzyj do lewego panelu, w "narzędzia" znajdziesz "Linkujące" - powinieneś zmienić treść wszystkich tych stron, aby linkowały do nowej strony.
Przykład ze złym odnośnikiem - i nie wiem nawet, jak to poprawić [http://pl.wikibooks.org/w/index.php?title=Statystyka_matematyczna/Momenty_statystyczne_ciągłe_i_dyskretne przykład zerwania linka] -> 2.48 (problem w tym, że redirect który był został usunięty, i nie wiem nawet gdzie strona została przeniesiona)
--[[Wikipedysta:Lethern|Lethern]] 10:42, 15 lip 2009 (CEST)
Cóż... widzisz, jeśli wstawisz gdzieś EK, to znaczy że chcesz ten moduł usunąć z bazy wikibooks. Jeśli jest to redirect to usuwasz go. Jeśłi przeniosłeś stronę i na starej wstawiłeś EK, to starej już nie będzie (a mógł być redirect, dzięki czemu stare linki, niepoprawione, ze starą nazwą... można poprawić, bo dojdzie się do redicerta. Jeśli się go usunie, to stare linki są czerwone i nie wiadomo, gdzie prowadzą) --[[Wikipedysta:Lethern|Lethern]] 15:34, 16 lip 2009 (CEST)
Podsumuję - jeśli strona była długo usuwana, przenosisz ją - wtedy nie ustawiamy EK, ponieważ zrywa się linki np. z google (jeśli jakieś zdążyły powstać), czy z innych stron, oraz z linków wewnętrznych (wzory itd. w innych modułach). Jeśli jednak zmiana była krótko po utworzeniu modułu, sprawdzone są linki i poprawione (nie ma linkujących), to stara strona (z redirectem) może dostać EK. wstawianie tego szablonu nie jest ważne, a do tego sprawia problemy, jak widać --[[Wikipedysta:Lethern|Lethern]] 15:39, 16 lip 2009 (CEST)
== Poprawianie ==
Zrobiłem ostatnio poprawki tu: [http://pl.wikibooks.org/w/index.php?title=Statystyka_matematyczna/Momenty_statystyczne_w_działaniu&curid=14030&diff=103990&oldid=102011 Momenty statystyczne], gdzie nie gdzie zmieniałem całe zdania, najlepiej sprawdź czy sens jest zachowany. Jeśli nie, daj znać, wyjaśniając o co w zdaniu chodziło --[[Wikipedysta:Lethern|Lethern]] 09:37, 17 lip 2009 (CEST)
== Przepełnienie szablonów ==
Wygląda na to że jednak musisz ograniczyć liczbę zawartych szablonów, choćby ze względów czasowych - strony z przesadną ilością szablonów wyświetlają się tragicznie długo. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 20:58, 2 sie 2009 (CEST)
== Zmiana nazwy użytkownika ==
Proszę cię, żebyś na Wikipedii zalogował się jako Persino i odpisał mi na ostatnią wiadomość. Pozdrawiam, --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 11:31, 8 lis 2009 (CET)
: Witam. Sprawdź, czy z globalnym loginem jest wszystko w porządku (trochę niepotrzebnie tworzyłeś tu to konto Persino) i daj mi znać. Jeśli nie będzie problemów, zablokuję konto Persino, żeby ktoś się pod ciebie nie podszywał. --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 23:07, 8 lis 2009 (CET)
== kopiowaine ==
Przenoszenie materiału z wikipedii - administrator ma taką możliwość (funkcję) przenieść moduł razem z listą autorów / zmian. Myślę, że wystarczy napisać do jakiegoś aktywnego administratora. --[[Wikipedysta:Lethern|Lethern]] 15:21, 13 lis 2009 (CET)
== Działania na wektorach ==
Edytowałem moduł [[Metody_matematyczne_fizyki/Działania_na_wektorach|Działania na wektorach]], mniej więcej do połowy przejrzałem. W jednym miejscu zaznaczyłem pochyłą czcionką coś, czego nie mogę rozczytać. Sprawdź, czy moja edycja nie zmieniła sensu tekstu ;) --[[Wikipedysta:Lethern|Lethern]] 03:30, 16 lis 2009 (CET)
== [[Wikibooks:Strony do usunięcia]] ==
Witaj! cieszę się, że myślimy podobnie :-) Wikibooks, to bardzo specyficzny projekt (w ogóle wiki-projekty nadają się do badań socjologicznych i antropologicznych): mamy mało zarejestrowanych użytkowników, jeszcze mniej administratorów, wiele słomianego zapału i dużo anonimowych szkolnych edycji. Na szczęście - i myślę, że jeszcze przez długi czas - będzie to do opanowania (patrząc choćby po niemieckich Wikibooksach). Tym bardziej biorąc pod uwagę aktywność Panterki :-) Życie na Wikibooksach toczy się wolniej i po roku na Wikipedii, czuję się tutaj, jak na wsi. Ten projekt ma też kolosalną zaletę, której nie ma Wikipedia (o czym już kilkukrotnie rozmawiałem z Przykutą): łatwo odnaleźć pożądaną stronę i nie ma plątaniny meta-stron, stron-pomocy, pod-stron, hiper-stron itp. (jedynie szablony należy moim zdaniem uporządkować). Strony pomocy w Wikipedii to chaos a Wikibooksy nie są "obudowane" całą techniczną i społecznościową otoczką (na szczęście). Wracając do tematu: musimy ustalić konkretne zasady usuwania modułów, pojedynczych stron i całych podręczników. W przeciwnym razie będziemy mieli nadal mało kompletnych podręczników a mnóstwo sporów i wielu zrażonych początkujących użytkowników, którzy mogliby stać się autorami fachowych podręczników. Unikniemy też takich podziałów wśród autorów, jakie są na Wikipedii, gdzie co rusz padają oskarżenia o "układ" i "grupę trzymającą władzę". Podsumowując: idea Wikibooksów jest genialna a nic tak nie podbudowuje ego, jak pierwsze miejsce podręcznika w wyszukiwarce Google. Nie można więc marnować czasu na spory. Kończę, bo coś się rozgadałem... Pozdr! [[Wikipedysta:Karol Dąbrowski|Karol]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 20:35, 18 lis 2009 (CET)
== [[Metody matematyczne fizyki/Logika matematyczna]] ==
Żadna strona nie linkuje do strony, którą dałem w temacie, umieść ją w jakimś spisie, bo możesz jej nie znaleźć w przyszłości ;) --[[Wikipedysta:Lethern|Lethern]] 03:39, 20 lis 2009 (CET)
== [[Wikibooks:Przyznawanie uprawnień]] ==
Hej! poparłem Ciebie w głosowaniu (szkoda, że póki co wzięły w nim udział dwie osoby...). Dałem też ogłoszenie na Tablicy ogłoszeń - w końcu kandydat na admina, nie zdarza się często. Powinieneś zorganizować jakiś lobbying albo kampanię wyborczą :-) [[Wikipedysta:Karol Dąbrowski|Karol]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 18:22, 28 lis 2009 (CET)
== pisanie podręczników ==
To dobre poprawki, jeśli chodzi o szablony. Z botem też ciekawy pomysł, jeśli umiałbyś go napisać, to zaoszczędziłby i Tobie dużo czasu, dużo poprawek, i rozwinął Wikibooks. Nie wiem, czy ktoś z zewnątrz by to pochwycił (np. w innych wikibooks), ale wystarczy, że u nas byłby niezłym krokiem do przodu. Ja akurat nie pisałem nigdy 'bota www' ;) --[[Wikipedysta:Lethern|Lethern]] 19:04, 29 lis 2009 (CET)
== pewna edycja ==
Ktos dokonał takiej edycji: [http://pl.wikibooks.org/w/index.php?title=Fizyka_statystyczna/Cykle_(obiegi)_termodynamiczne&action=historysubmit&diff=114323&oldid=113019] --[[Wikipedysta:Lethern|Lethern]] 15:21, 30 lis 2009 (CET)
:Rzecz w tym, że nie mogę cofnąć edycji, jeśli nie wiem czy jest ona poprawna czy jest błędna. Jedyne co mogłem zrobić to zgłosić ten fakt Tobie, żebyś ew. Ty ją cofnął, ponieważ masz większą wiedzę w tej dziedzinie ;) --[[Wikipedysta:Lethern|Lethern]] 21:03, 30 lis 2009 (CET)
== [[Fizyka teoretyczna]] ==
Stworzyłem taki moduł, [[Fizyka_teoretyczna/Koordynacja]]. Na razie umieściłem tam tylko rzeczy, które mogą się dla mnie przydać. Jeśli chcesz, możesz tam dodać działy według swojego pomysłu i potrzeb --[[Wikipedysta:Lethern|Lethern]] 21:41, 30 lis 2009 (CET)
== [[Dyskusja_Wikipedysty:79.190.12.155]] ==
Hmm, pomyśl globalnie. Czy ta edycja była wandalizmem, czy nieuwagą? Czy blokada IP "na zawsze" jest dobrą opcją z powodu jednej edycji? Czy wziąłeś pod uwagę, co się stanie, jeśli jest to IP komputera na uczelni? Nie ma potrzeby sięgać po tak drastyczne środki ;) --[[Wikipedysta:Lethern|Lethern]] 01:53, 1 gru 2009 (CET)
== Administrator ==
Gratuluję, przyznałem Ci uprawnienia administracyjne. [[Wikipedysta:Reytan|Reytan]] 20:51, 11 gru 2009 (CET)
* Pozwolę sobie dołączyć się do powyższych gratulacji :-) [[Wikipedysta:Karol Dąbrowski|Karol]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 23:19, 11 gru 2009 (CET)
== Plik:Wikipedia pl logowanie mam konto.png ==
Cześć. usuniesz mi tą grafikę czy nie? [[Specjalna:Wkład/81.190.246.187|81.190.246.187]] 18:30, 13 gru 2009 (CET)
:Nie wiem, co to za wpis, ale zignoruj go. Grafika jest użyta w 2 modułach. --[[Wikipedysta:Lethern|Lethern]] 14:27, 14 gru 2009 (CET)
== EK ==
Zerknij do tej [[:Kategoria:Ekspresowe kasowanie|kategorii]], bo liczba haseł oczekujących na skasowanie znacząco rośnie. [[Wikipedysta:Viatoro|Viatoro]] 19:09, 28 gru 2009 (CET)
== pozostałości starych modułów Fizyki Teoretycznej ==
Takie moduły znalazłem, które chyba się zapodziały (możliwe że któryś źle skojarzyłem), może Ci się ta lista przyda:
*[[Fizyka_teoretyczna/Pochodne_wektorowe]]
*[[Fizyka_teoretyczna/Wyznaczniki_funkcjonalne_i_ich_w%C5%82asno%C5%9Bci]]
*[[Fizyka_teoretyczna/R%C3%B3wnania_r%C3%B3%C5%BCniczkowe]]
*[[Fizyka_teoretyczna/Uk%C5%82ad_wsp%C3%B3%C5%82rz%C4%99dnych]]
*[[Fizyka_teoretyczna/Obr%C3%B3t_uk%C5%82adu_wsp%C3%B3%C5%82rz%C4%99dnych]]
*[[Fizyka_teoretyczna/Moment_p%C4%99du]]
*[[Fizyka_teoretyczna/R%C3%B3wnanie_toru_dla_cia%C5%82a_w_polu_si%C5%82_centralnych]]
*[[Fizyka_teoretyczna/Funkcje_kuliste]]
*[[Fizyka_teoretyczna/Wielomiany_Legendre%27a]]
*[[Fizyka_teoretyczna/Operatory_r%C3%B3%C5%BCniczkowe]]
*[[Fizyka_teoretyczna/Rachunek_tensorowy]]
*[[Fizyka_teoretyczna/Rozmaito%C5%9Bci_liniowe_i_ich_w%C5%82a%C5%9Bciwo%C5%9Bci]]
*[[Fizyka_teoretyczna/Funkcje_uwik%C5%82ane]]
*[[Fizyka_teoretyczna/Kula_zanurzona_w_przestrzeni_n-wymiarowej]]
*[[Fizyka_teoretyczna/Zespo%C5%82y_statystyczne_w_fizyce_statystycznej_klasycznej]]
*[[Fizyka_teoretyczna/Przestrze%C5%84_liniowa]]
*[[Fizyka_teoretyczna/Pola_skalarne_i_wektorowe]]
--[[Wikipedysta:Lethern|Lethern]] 20:42, 16 sty 2010 (CET)
== po przerwie ==
Miło Ciebie widzieć po dłuższej przerwie. Sprawdź proszę taką dziwną stronę: [[Wikipedysta:Огірко_Ігор_Васильович]], dziś się pojawiła na Wikibooksach, a wygląda jak kopia z Wikipedii [http://pl.wikipedia.org/wiki/Wikipedysta:Ohirko_Igor Ohirko Igor] a jednocześnie [http://pl.wikipedia.org/wiki/Igor_Ohirko Igor Ohirko], co wydaje się jakimś nonsensem. [[Wikipedysta:Karol Dąbrowski|Karol]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 16:27, 12 lut 2010 (CET)
* wyjaśniłem już wszystko w "Zgłaszalni błędów" na Wikipedii. Uznaliśmy, że skoro chodzi o strony użytkownika, to może on sobie tam wklejać co mu się podoba, nawet bezsensowną kopię artykułu o sobie z Wiki. [[Wikipedysta:Karol Dąbrowski|Karol]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 17:11, 12 lut 2010 (CET)
== Fizyka ==
Cały podręcznik do fizyki teoretycznej był reorganizowany, a moduły przenoszone pod nowe adresy. Dotychczasowe dostawały eki i były kasowane. Nie jestem fizykiem i nie wiem, czy moduł ten [http://pl.wikibooks.org/wiki/Fizyka_statystyczna] różni się od tego [http://pl.wikibooks.org/wiki/Fizyka_statystyczna]. Jeśli są to dwa różne tematy, które nie powinny być zintegrowane, to przepraszam.
A tak btw - "moduł" piszemy przez "u". [[Wikipedysta:Panterka|Panterka]] 22:09, 14 lut 2010 (CET)
== Fizyka teoretyczna ==
Nie wiem, czy nie przeoczysz tego, więc wkleję link: [http://pl.wikibooks.org/w/index.php?title=Fizyka_teoretyczna%2FFizyka_statystyczna%2FCykle_%28obiegi%29_termodynamiczne&action=historysubmit&diff=119150&oldid=114487 fizyka teoretyczna] --[[Wikipedysta:Lethern|Lethern]] 18:44, 16 lut 2010 (CET)
Hm, przy rozdzielczości 1400x1050 wygląda trochę dziwnie, ale idzie się przyzwyczaić. Chyba zmiana na plus ; ) --[[Wikipedysta:Lethern|Lethern]] 23:52, 18 lut 2010 (CET)
== [[Wikibooks:Strony do usunięcia]] ==
Witaj! mam prośbę do Ciebie jako admina: zerknij proszę na SdU, zrobiłem tam trochę porządków, zarchiwizowałem nieaktualne wpisy, ale przydałoby się, żebyś wypowiedział się w temacie:
# [[Wikibooks:Strony_do_usunięcia#Informatyka_dla_szko.C5.82y_podstawowej.2FGadu-Gadu|Gadu Gadu]] (wg mnie do usunięcia)
# [[Wikibooks:Strony_do_usunięcia#Biologia_dla_liceum.2FOrganizmy_najprostsze.2FWirusy|Wirusy]] (kopia z www.sciaga.pl i www.bryk.pl, mimo redakcyjnych poprawek)
# [[Wikibooks:Strony_do_usunięcia#Stymulaty|Stymulaty]] (merytoryczna katastrofa, koniecznie do usunięcia)
# [[Wikibooks:Strony_do_usunięcia#Tramwaje_w_Krakowie|Tramwaje w Krakowie]] (moim zdaniem do archiwizacji na stronie użytkownika a potem usunięcia. W razie czego chętnie podejmę się archiwizacji tego podręcznika. Będzie z tym co prawda sporo roboty, bo jest tam tych modułów, ale da się zrobić)
# [[Wikibooks:Strony_do_usunięcia#Wprowadzenie_do_fizyki_kwantowej|Wprowadzenie do fizyki kwantowej]] (wisi w SdU od dawien dawna i straszy)
# [[Wikibooks:Strony_do_usunięcia#Genealogia_Piast.C3.B3w|Genealogia Piastów]] (kompromitujące błędy merytoryczne)
# [[Wikibooks:Strony_do_usunięcia#Tatry.2FSzczyty|Tatry]] (moduł nie był kwestionowany w trakcie akcji Sprzątanie Wikibooks, więc dyskusję możnaby ewentualnie uznać za zakończoną i zostawić to tak jak jest).
# [[Wikibooks:Strony_do_usunięcia#J.C4.99zyk_.C5.9Bl.C4.85ski|Język śląski]] (dziś to wstawiłem i raczej trzeba należałoby poczekać, aż się Lethern i pozostawli wypowiedzą, co o tym myślą...)
i to by było na tyle. Z góry dzięki za pomoc! [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 22:18, 7 mar 2010 (CET)
== Księgozbiór ==
Jak myślisz, czy dobrym pomysłem byłoby scalenie w księgozbiorze sekcji "Astronomia" i "Fizyka" w jedną "Astronomia i Fizyka"? Podręczniki z tych działów się łączą, a dzięki temu dałoby się trochę odchudzić księgozbiór. [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 17:46, 1 kwi 2010 (CEST)
* zrobione, przy okazji ułożyłem sekcje alfabetycznie i dodałem tabelki. [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 18:02, 1 kwi 2010 (CEST)
== Wykresy ==
Napisz maila do Kuby Wagnera z Wolnych Podręczników (Kuba.Wagner@wolnepodreczniki.pl), którego znajdziesz na stronie: http://wiki.wolnepodreczniki.pl/Fizyka. Na niemieckich Wikibooks (http://de.wikibooks.org/wiki/Regal:Physik), w sekcji "Fizyka stosowana" (jeśli dobrze tłumaczę) jest coś takiego, jak "Użycie energii atomowej", ale tam nic nie ma. Jeśli chcesz, to mogę rzucić wątek szukania wykresów na niemieckim Wikiwersytecie (http://de.wikiversity.org/wiki/Fachbereich_Physik). Niestety też nie zauważyłem nic o fizyce jądrowej na niemieckich Wikiźródłach (http://de.wikisource.org/wiki/Kategorie:Physik). Z ciekawości zobacz sobie na "Mechanikę kwantową" (chyba, że znów mylę tłumaczenie): http://de.wikibooks.org/wiki/Quantenmechanik. Chyba, że fizyka jądrowa z Commons coś Tobie pomoże (http://commons.wikimedia.org/wiki/Category:Nuclear_physics) razem z odnośnikami z angielskiej Wiki (http://en.wikipedia.org/wiki/Nuclear_physics) i kategoria fizyka jądrowa (http://en.wikibooks.org/wiki/Category:Nuclear_Physics). To wszystko co mi przyszło do głowy. Pozdrawiam w świątecznym nastroju :-) [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 20:00, 3 kwi 2010 (CEST)
== Zgłoszenie co do podręcznika ==
Zapoznaj się z tym [http://pl.wikibooks.org/w/index.php?title=Dyskusja_Wikipedysty%3AViatoro&action=historysubmit&diff=123773&oldid=123660]. [[Wikipedysta:Viatoro|Viatoro]] ([[Dyskusja Wikipedysty:Viatoro|dyskusja]]) 14:27, 16 kwi 2010 (CEST)
:Ależ ja nic nie mówię, tylko zgłaszam co wylądowało w mojej dyskusji :) Robiłem wykład związany z wikibooks i ludzie z innych projektów głównie mnie kojarzą jako osobę kontaktową. [[Wikipedysta:Viatoro|Viatoro]] ([[Dyskusja Wikipedysty:Viatoro|dyskusja]]) 19:32, 16 kwi 2010 (CEST)
== fizyk teoretyczna==
Moje ostatnie poprawki: [http://pl.wikibooks.org/w/index.php?title=Metody_matematyczne_fizyki/Rachunek_tensorowy&action=historysubmit&diff=124372&oldid=124282 Rachunek_tensorowy]. Poza tym [http://pl.wikibooks.org/w/index.php?title=Fizyka_teoretyczna&curid=14032&diff=124370&oldid=124022 strona główna]. Mam nadzieję, że żadnych wadliwych poprawek nie wprowadziłem, jak coś to sprawdź. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 18:15, 16 kwi 2010 (CEST)
== Eki ==
Witaj :) Widzę, że jesteś aktywny, więc pozwolę sobie mieć prośbę - czy mógłbyś sprzątnąć eki? Bardzo dawno nikt ich nie kasował i całkiem sporo się ich nazbierało. Z góry dzięki i pozdrowienia serdeczne :) [[Wikipedysta:Magalia|Magalia]] ([[Dyskusja Wikipedysty:Magalia|dyskusja]]) 17:21, 6 maj 2010 (CEST)
== informacja ==
Uważaj trochę co robisz. Skasowałeś moduł [[Matematyka dla liceum/Trygonometria]], który nie miał (wbrew pozorom) ek, jedynie miał moduł który miał ek, ale on sam nie powinien być skasowany. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 17:03, 22 maj 2010 (CEST)
== Szablony: {{s|StronaStart}} i {{s|StronaKoniec}} ==
Już miałem Ciebie informować, że ktoś o anonimowy grzebał przy stworzonych przez Ciebie szablonach, ale zreflektowałem się, że to przecież Ciebie wylogowało i edytowałeś anonimowo :-) [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 22:07, 12 cze 2010 (CEST)
== ekowanie ==
Hej :) Wiem, że sprzątałeś eki, ale proszę jeszcze o skasowanie [[Matematyka dla liceum/Funkcje wymierne/Rozwiązywanie równań powiązanych z funkcją homograficzną|tego]] - wyjątkowo paskudny wandalizm, więc im szybciej poleci, tym lepiej :) Z góry dzięki i pozdrawiam serdecznie, [[Wikipedysta:Magalia|Magalia]] ([[Dyskusja Wikipedysty:Magalia|dyskusja]]) 20:31, 13 cze 2010 (CEST)
== Szczerę podziękowanie ==
Bardzo dziękuje za posprzątanie kategorii ek. O wiele lepiej teraz to wygląda :). Pozdrawiam. [[Wikipedysta:Ananas96|Ananas96]] ([[Dyskusja Wikipedysty:Ananas96|dyskusja]]) 07:59, 1 lip 2010 (CEST)
== Prośba ==
Proszę o przesłanie plików twojego/Pana autorstwa do Wikimedia Commons, gdzie będą w wszelkich projektach Wikimedia. Pozdrawiam. [[Wikipedysta:Ananas96|Ananas96]] ([[Dyskusja Wikipedysty:Ananas96|dyskusja]]) 08:05, 1 lip 2010 (CEST)
== Ek ciąg dalszy ==
Można by było posprzątać kategorię? Znalazłem ponad 130 plików, które albo są na Commons, nie są używane lub po prostu są błędne. [[Wikipedysta:Ananas96|Ananas96]] ([[Dyskusja Wikipedysty:Ananas96|dyskusja]]) 19:35, 1 lip 2010 (CEST)
:Dziękuje za posprzątanie. [[Wikipedysta:Ananas96|Ananas96]] ([[Dyskusja Wikipedysty:Ananas96|dyskusja]]) 09:26, 3 lip 2010 (CEST)
== Fizyka teoretyczna ==
czemu nie, jak coś będę zmieniać, to dam znać. Pozdrawiam! [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 13:52, 13 lip 2010 (CEST)
Na stronie: http://pl.wikibooks.org/wiki/Metody_matematyczne_fizyki w nagłówku proponuję poprawić styl. Jest: "Jest to teoria o polach wektorowych i skalarnych, na które działamy pewnymi operacjami różniczkowymi." Proponuję zrobić: "... na które oddziałujemy pewnymi operacjami różniczkowymi" lub "na których działamy pewnymi operacjami różniczkowymi". [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 21:49, 14 lip 2010 (CEST)
== redirecty ==
Usuwanie redirectów nie jest potrzebne (wszystkie usunięte strony i tak zostają na serwerze zarchiwizowane), a do tego może narobić problemów. Tak jak już ludzie pisali, jeśli jakaś zewnętrzna strona linkowała, to teraz linkuje do nieistniejącej strony... Podobnie z usuwaniem stron plików, nie wiem czy jest to potrzebne, skoro wszystko na serwerze i tak zostaje. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 19:49, 15 lip 2010 (CEST)
* Proszę, przestań nadużywać przenoszeń stron i usuwania --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 02:42, 7 sie 2010 (CEST)
== Re:Fizyka teoretyczna ==
Mogę pomóc, ale jednocześnie informuje iż chwilowo mam dostęp do komputera, a jeszcze dziś wyjeżdżam na wakacje. Jak wrócę 25 lipca zajmę się tym. Pozdrawiam. [[Wikipedysta:Ananas96|Ananas96]] ([[Dyskusja Wikipedysty:Ananas96|dyskusja]]) 07:29, 16 lip 2010 (CEST)
== [[Metody matematyczne fizyki/Rachunek tensorowy]] ==
Dokonałeś zmiany
*nazywamy obiekt który transformuje się ze zmiennych starych, których ilość wynosi ''m''
na
*nazywamy obiekt, który transformuje się ze zmiennych starych, których ilość zmiennych jest ''m''
Cofnąłem tę zmianę, żeby nie było powtórzenia tego samego słowa (ze zmiennych, których ilość zmiennych jest).
Nie umiem ocenić ani poprawić poniższych tekstów (i nie wiem, czy są poprawne, może są):
*Dla przykładu podamy jak się transformuje tensor o dwóch wskaźnikach, dla dwóch zmiennych zapisanej w konwencji Einsteina.
*A transformację tensora z jednych współrzędnych do drugich o dwóch wskaźnikach dla m zmiennych zapisanej w konwencji Einsteina.
*Dla przykładu podamy jak się transformuje jako tensor o dwóch wskaźnikach, dla dwóch zmiennych zapisanej w konwencji Einsteina:
*A transformację tensora z jednych współrzędnych do drugich o dwóch wskaźnikach dla m zmiennych zapisanej w konwencji Einsteina piszemy:
Swoją drogą, zauważyłem że często powtarzasz pewne ważniejsze rzeczy w zdaniu, co czasem owocuje powtórzeniami (jak na początku powyższego wpisu wspomniałem). Mimo wszystko staram się usuwać takie powtórzenia, żeby tekst nie brzmiał jak "Poniżej napiszemy wektory, wzięte ze wzoru abc, które to wektory zapiszemy poniżej". W razie czego jestem otwarty na dyskusję. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 15:33, 16 lip 2010 (CEST)
== [[Metody matematyczne fizyki/Działania na wektorach]] ==
*"W układzie współrzędnych w przestrzeni n-wymiarowej nazywamy n-prostych, zwanych osiami, przecinających się w jednym punkcie, zwanym punktem zerowym, którego współrzędne są równe (0,0,...,0). "
To zdanie nie ma sensu. "W układzie nazywamy n prostych, zwanych osiami". Jeśli umiesz, popraw je. Może chodziło o *"W układzie współrzędnych w przestrzeni n-wymiarowej mamy n-prostych, zwanych osiami, przecinających się w jednym punkcie, zwanym punktem zerowym, którego współrzędne są równe (0,0,...,0). "
--[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 16:13, 16 lip 2010 (CEST)
* zmieniłem styl w tym zdaniu, mam nadzieję, że na dobry :-) a czy mogę też dodawać linkido Wikipedii? brakuje mi też wyjaśnienia (proponuję w formie przypisu) co to jest "n-wymiarowa baza kanoniczna", a potem w sekcji "Iloczyn wektorowy" co to jest "układ kartezjański". Pozdr. [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 18:33, 16 lip 2010 (CEST)
== Metody matematyczne fizyki/Rachunek tensorowy ==
* W sekcji "Definicja prostego tensora metrycznego" brakuje mi wyjaśnienia, co to jest "długość infinitezymalna". [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 11:50, 17 lip 2010 (CEST)
* A widzisz, Ty to wiesz, a ja nie; myślę, że gdybyś wstawiał od czasu do czasu takie krótkie, celne wyjaśnienia w formie przypisów, to mogłoby to wzbogacić podręcznik. [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 12:05, 17 lip 2010 (CEST)
* W sekcji "Tensor Riemanna-Christoffela (tensor krzywizny) zdefiniowany przy pomocy tensorów metrycznych" coś brzmi dziwnie:
"Do wzoru na czterowskaźnikowy tensor metryczny (2.87) wstawiamy za tensory Christoffela zdefiniowanej wedle wzoru (2.82) i w końcu otrzymujemy wzór zależny tylko od pochodnych cząstkowych tensora metrycznego, co po jego zastosowaniu:"
proponuję zmienić:
"Do wzoru na czterowskaźnikowy tensor metryczny (2.87) wstawiamy za tensory Christoffela zdefiniowane wedle wzoru (2.82)" <br>albo
"Do wzoru na czterowskaźnikowy tensor metryczny (2.87) wstawiamy zamiast tensorów Christoffela zdefiniowanych wedle wzoru (2.82)"<br>
i nie wiem, jak jest prawidłowo bo "za" to nie to samo co "zamiast".
Zresztą - ta sekcja jest wymiatająca i wymiękłem na niej :-) [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 12:57, 17 lip 2010 (CEST)
== Odp:Fizyka teoretyczna ==
;[{{fullurl:Dyskusja_Wikipedysty:Magalia|oldid=133697}}#Fizyka_teoretyczna Odp:Fizyka teoretyczna]
Hej :) Oczywiście bardzo chętnie pomogę. W miarę możliwości oczywiście, bo obawiam się, że fizyka mnie odrobinę przeraża, więc może być ciężko ;) Ale oczywiście zrobię co w mojej mocy. Pozdrowienia serdeczne. [[Wikipedysta:Magalia|Magalia]] ([[Dyskusja Wikipedysty:Magalia|dyskusja]]) 23:57, 17 lip 2010 (CEST)
Cześć, niestety brak czasu nie pozwala mi zaangażować się w prace. Powodzenia --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 11:07, 18 lip 2010 (CEST)
* Wydaje mi się, że ewentualna zmiana "na podstawie" na "według" zależy od czyichś preferencji stylistycznych. [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 12:59, 25 lip 2010 (CEST)
Dziękuję za zaproszenie, ale obowiązki zawodowo-studenckie uniemożliwiają mi poświęcenie odpowiedniej ilości czasu na ten projekt. Swoją drogą - doskonała robota. Mało tutaj tak ciekawych podręczników na tak wysokim poziomie ;-). Pozdrawiam, --[[Wikipedysta:Kj|Kj]] ([[Dyskusja Wikipedysty:Kj|dyskusja]]) 22:07, 28 lip 2010 (CEST)
== Metody_matematyczne_fizyki/Układ_współrzędnych ==
Wiesz, brakuje mi, w w/w module wyjaśnienia co to takiego jest "Jakobian", o którym jest mowa w sekcji "Jakobian przejścia". [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 21:33, 11 sie 2010 (CEST)
* to jakieś czary :-)
* bo to czarna magia, a Ty czarodziej jesteś. A tak na poważnie: myślałeś może, żeby dodać do podręcznika krótkie biogramy fizyków, o których wspominasz?
* raczej chodziło mi o dodanie do istniejących modułów krótkich biogramów. Jak się uwinę ze swoim podręcznikiem, to wstawię z jeden modelowy biogram i zobaczymy, czy to będzie w porządku, ok?
== podręczniki Fizyki teoretycznej ==
Jak Ci się podoba nowy spis treści? Może taki być? [[Fale]] (łatwiej się poruszać z pierwszego spisu treści w ramce, oraz łatwiej widać poziomy drzewka) --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 21:01, 13 sie 2010 (CEST)
* Dodałem do wszystkich podręczników nowy spis treści, a także informacje o Bibliografii i Licencji (osobno, w razie czego możesz cofnąć / zmienić). Koordynację też uzupełniłem. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 00:22, 14 sie 2010 (CEST)
* Zastosowałem taką regułę, aby pogrubiać wszystkie linki, które prowadzą do nowych stron (dzięki temu, jeśli ktoś chce otworzyć wszystkie strony, musi kliknąć we wszystkie linki pogrubione). Część z nich jest pogrubiana jako nagłówki, resztę wyróżniłem wewnątrz, np. [http://pl.wikibooks.org/w/index.php?title=Statystyka_matematyczna&action=historysubmit&diff=136572&oldid=136559 tu ]. Natomiast tu ta sama strona miała 2x pogrubienie, więc jedno usunąłem [http://pl.wikibooks.org/w/index.php?title=Elektrodynamika_klasyczna&action=historysubmit&diff=136573&oldid=136560 historia]. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 10:50, 14 sie 2010 (CEST)
Nie można przejść obojętnie obok ilości pracy, jaką wkładasz w rozwój podręczników o fizyce i matematyce: [http://pl.wikibooks.org/w/index.php?title=Wikipedysta%3APersino&action=historysubmit&diff=137194&oldid=114782 diff] :) --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 23:34, 17 sie 2010 (CEST)
== Kategoria:Eksporesowe kasowanko ==
[[:Kategoria:Ekspresowe kasowanie|Proszę o posprzątanie kategorii]]. [[Wikipedysta:Ananas96|Ananas96]] ([[Dyskusja Wikipedysty:Ananas96|dyskusja]]) 16:10, 17 sie 2010 (CEST)
:Dziękuje! [[Wikipedysta:Ananas96|Ananas96]] ([[Dyskusja Wikipedysty:Ananas96|dyskusja]]) 18:49, 17 sie 2010 (CEST)
== Fizyka teoretyczna ==
Witaj! Chwilowo, w związku z innymi zobowiązaniami, niestety nie mogę przyłączyć się do projektu. Ale życzę owocnej pracy i pozdrawiam -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 18:41, 22 sie 2010 (CEST)
== Program do grafiki ==
Niestety na grafice nie znam się. Wydaje mi się, że to jakiś program do edycji grafiki wektorowej, może coś wygooglujesz albo znajdziesz tutaj: [http://pl.wikipedia.org/wiki/Kategoria:Edytory_grafiki_wektorowej], ewentualnie pokaż to i spytaj kogoś znającego się na tym :) --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 01:53, 23 sie 2010 (CEST)
== [http://pl.wikibooks.org/wiki/Metody_matematyczne_fizyki/Obrót_układu_współrzędnych Obrót układu współrzędnych] ==
Mam problem z tym zdaniem: "Spróbujmy napisać transformacje obrotu punktu dla przestrzeni dwuwymiarowej odwrotnie ze wskazówkami zegara o kąt α, którego transformacje punktów z układu walcowatego do euklidesowego, którego transformacja współrzędnych układu walcowego na kartezjańskich piszemy wzorami i , to nowe współrzędne powstają, gdy podczas obrotu naszego punktu (x,y) do punktu (x',y'), gdy dokonamy transformacji, które piszemy:"
: jest nieco niegramatyczne i nie wiadomo o co, w nim chodzi. Za dużo w nim wyrazów "który / która / które". Czy da się je podzielić na krótsze zdania? [[Wikipedysta:Karol Dąbrowski|Karolus]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 03:23, 24 sie 2010 (CEST)
== alfabet grecki ==
Tylko tyle widzę w internecie: [[w:Alfabet_grecki#Alfabet_grecki_w_HTML]] - Φ φ
: Żeby zapisać małe - tzn.? Może użyć jakiegoś tagu zmieniającego wielkość czcionki? Typu < small> albo indeks dolny --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 00:49, 25 sie 2010 (CEST)
Ewentualnie Unicode: [[s:Unicode/Grecki_i_koptyjski]]; [[s:Unicode/Grecki_rozszerzony]] --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 00:53, 25 sie 2010 (CEST)
== Metody_matematyczne_fizyki/Funkcje_Greena ==
[[Metody_matematyczne_fizyki/Funkcje_Greena]]
Nie udało mi się rozczytać w pełni:
*''Rozwiązaniem równania różniczkowego (20.1) są rozwiązania w postaci pełnych funkcji w stosunku (20.6), która jest sumą rozwiązania jako ostatnio wspomnianego i funkcji , która jest iloczynem operatora \hat{O}\;, i funkcji \psi(\underline{x})\;, którego jako całość jest równa zero, co na podstawie tychże rozważań całkowitą nasze rozwiązanie naszego równania różniczkowego jest''
*''W wyrażeniu całkowym (20.7), funkcja \psi_0(x)\; występuje funkcja, która jest rozwiązaniem równania jednorodnego własnego operatora \hat{O}\;, którego przepis''
Zobacz czy inne poprawki są ok --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 01:45, 25 sie 2010 (CEST)
* Musze przyznać, że nie bardzo orientuje się we własnościach intelektualnych. Może spróbuj wygooglować, albo na Wikipedii spytać? --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 20:53, 29 sie 2010 (CEST)
== prośba do administratora ==
Czy mógłbyś:
*usunąć stronę [http://pl.wikibooks.org/w/index.php?title=Dinozaury/Ceratopsy&redirect=no]
*usunąć stronę [http://pl.wikibooks.org/w/index.php?title=Wikipedysta:Michczu&redirect=no]
Potrzebne to jest, żeby cofnąć przeniesienie stron --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 15:31, 31 sie 2010 (CEST)
== Wzory ==
Wg tego artykułu [http://meta.wikimedia.org/wiki/Help:Displaying_a_formula#Relations] jest to \ll i \gg (<math>\ll i \gg</math>) --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 03:09, 5 wrz 2010 (CEST)
<del>Wg np. tej strony [http://barzilai.org/math_sym.htm] nie ma takiego symbolu w HTML --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]). 18:33, 5 wrz 2010 (CEST)</del>
Zrobiłem [[Wikipedysta:Lethern/Test|tablice symboli html]], interesujące jest: 187: » oraz 171: « (& #187; i & #171;) --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 18:45, 5 wrz 2010 (CEST)
== ws. wykresu ==
wiesz, nigdy nie robiłem wykresów, więc mogę mieć z tym problem :-( z ciekawością natomiast zaglądam do [[Fizyka teoretyczna/Koordynacja]] i ciągle pamiętam o moim pomyśle dodawania biogramów fizyków. Pozdrawiam! [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 01:28, 6 wrz 2010 (CEST)
== Prośba ==
Hej :) Zintegrowałam treść stron [[Książka kucharska/Ciasto naleśnikowe]] i [[Książka kucharska/Naleśniki]]. Czy mógłbyś połączyć historię tych modułów? Ale nie kasuj potem ciasta naleśnikowego - niech zostanie jako redirect, ok? Z góry dzięki i pozdrawiam serdecznie :) [[Wikipedysta:Magalia|Magalia]] ([[Dyskusja Wikipedysty:Magalia|dyskusja]]) 22:08, 8 wrz 2010 (CEST)
== QuickEdit ==
Przejrzałem [[w:Wikipedia:Kawiarenka/Kwestie_techniczne|Tę stronę]] przy pomocy przeglądarkowej Szukaj "QuickEdit", i na szybko znalazłem, że może być temu winna skórka Vector (można ją w preferencjach wyłączyć), ale może znajdziesz w tym wątku więcej informacji (dodatkowo jest na niemieckiej wersji QuickEdit [http://de.wikipedia.org/wiki/Benutzer_Diskussion:ASM ta strona], piszą tam po angielsku) --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 20:58, 11 wrz 2010 (CEST)
== Fizyka teoretyczna ponownie ==
Rozumiem, że liczy się dla Ciebie opinia innych, aby pisać jeszcze lepiej i zrozumialej podręczniki. Też tak miałem, gdy pisałem swoje teksty do podręczników dla liceum. Do oceny dobre by były osoby, które próbowały by się nauczyć czytając te moduły. Ja czytałem podręcznik tylko w celu poprawienia zdań, więc nie zastanawiałem się, czy wszystko rozumiem, no i przeczytałem tylko mały kawałek całego materiału. Możesz spróbować uderzyć z propozycją gdzieś do ludzi. Takich, którzy albo a) zapoznają się z częścią, którą poprawialiśmy lub b) będą w stanie czytać podręczniki niepoprawiane. Gdyby udało się kogoś znaleźć, miałbyś pewnie dobrą ocenę, a komentarze i uwagi przydałyby się dodatkowo też mnie i Karolusowi, co byśmy również mogli poprawiać moduły. Gdzie kogoś takiego znaleźć? Może na Wikipedii, na jakimś forum matematycznym (fizycznym), na uczelni ogłoszenie możesz dać.. Problem jest właśnie z językiem, nie zdążyliśmy poprawić więcej jak 5% modułów, więc może to pewną grupę ludzi odstraszać, w przyszłości będzie łatwiej o czytelników. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 09:40, 12 wrz 2010 (CEST)
* Moim zdaniem Twój podręcznik jest pisany przystępnym językiem naukowym, ponieważ masz rzadką umiejętność płynnego przechodzenia w opisach od jednego wzoru do następnego. Dzięki czemu Twój wykład jest logiczny. Budujesz logiczną i przejrzystą strukturę podręcznika. Prowadzisz czytelnika od wzorów prostych do rozbudowanych. Ponadto każdy moduł zamykasz ostatecznym wzorem, który jest ładną puentą tekstu. Dzięki temu każdy podrozdział tworzy zamkniętą całość. Jest to przydatne dla kogoś, kto chce nauczyć się określonego wycinka Fizyki teoretycznej. Jedyne, co można by było dopracować od strony literackiej, to kwestie gramatyki i stylu. Czasem też sygnalizowałem Tobie konieczność wyjaśnienia pewnych terminów, które dla fizyków są oczywiste, jednak objaśnienie ich w formie przypisów nikomu by nie zaszkodziło. Jednakże to możesz sobie zostawić na koniec, gdy już napiszesz wszystkie moduły. Radziłbym wtedy wziąć wiki-urlop (minimum tydzień), wrócić do komputera i przejrzeć na nowo cały tekst. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 15:15, 12 wrz 2010 (CEST)
== Format svg i Openoffice draw ==
Kilka linków: [http://komputery.wip.pl/excel-i-aplikacje-biurowe/rozszerzenie-mozliwosci-openofficeorg-o-obsluge-formatu-svg,95,264155,0,195194,0.html], [http://haumacher.de/svg-import/], linki z [http://wiki.services.openoffice.org/wiki/SVG_Import_Filter#External_implementation] --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 10:58, 19 wrz 2010 (CEST)
== [[Szablon:StronaKoniec]] ==
Odnośnie tej edycji: [http://pl.wikibooks.org/w/index.php?title=Szablon%3AStronaKoniec&action=historysubmit&diff=136567&oldid=121717], czy jest ona konieczna? Są utworzone dwie tabelki "spis treści", dwa razy jest wyraz "pokaż/ukryj", i trzeba specjalnie kliknąć, aby ten spis był widoczny. Chyba, że to ukrycie było zamierzone. Może w takim razie zrobić dodatkowy argument w szablonie, który pozwala wybrać, czy spis treści ma być normalnie, czy w zwiniętej tabelce, co by pogodziło oba sposoby, bo można sobie wybrać? Jak Ty to widzisz? Pozdrawiam --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 16:47, 19 wrz 2010 (CEST)
* [http://pl.wikibooks.org/w/index.php?title=Szablon%3AStronaKoniec&action=historysubmit&diff=141163&oldid=136567] wydaje mi się, że to było lepsze. Jeśli czegoś brakuje dla Ciebie, to można próbować dodać wersję zwykłą i alternatywę --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 18:51, 19 wrz 2010 (CEST)
* Szukałem, ale nic nie znalazłem, jak zrobić aby mogło to być domyślnie ukryte. Nie wiem, co z tym zrobić, dodać parametr, żeby obie wersje były dostępne (z tabelką ukrywającą, jak wcześniej, i bez tabelki)? --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 20:14, 19 wrz 2010 (CEST)
==Przeniesienia artykułów z historią autorów==
Zerknij na stronę [[Wikibooks:Import stron]] -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 11:51, 24 wrz 2010 (CEST)
== Poprawianie rysunków ==
Przykro mi, nie znam się na tym ani trochę :-( [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 19:19, 24 wrz 2010 (CEST)
* pomyślę, a koło niedzieli popytam ludzi działających na Commonsach. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 19:33, 24 wrz 2010 (CEST)
* dałem wczoraj informację o Twojej propozycji poprawiania rysunków na Tablicy ogłoszeń Wikipedii. Myślę, że tak szybciej znajdą się osoby potrafiące to robić. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 07:28, 28 wrz 2010 (CEST)
:: Hej. :) O jakie konkretnie działania chodzi? Mogę pomóc w przerabianiu wykresów do SVG w Inkscape. -- [[Wikipedysta:CLI|CLI]] ([[Dyskusja Wikipedysty:CLI|dyskusja]]) 09:44, 29 wrz 2010 (CEST)
:Zerknij [http://www.elisanet.fi/~d635415/webroot/Octavesvg/index.html tutaj] - to jest program do wykonywania SVG bezpośrednio z kodu Matlaba/Octave. Jak znajdą się chętni to możesz im polecić to narzędzi - lepiej kreślić funkcje przez matlaba niż w "Paintowy" sposób w InkScape. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 11:45, 29 wrz 2010 (CEST)
:Konwersji można dokonywać albo w GdkPixbuf albo InkScape - ręcznie lub automatem przez otwarcie grafiki PNG i jej wektoryzację (funkcja programu "wektoryzuj bitmapę") i następnie zapis do pliku SVG - tylko automaty różnie mogą się zachowywać przy cienkich liniach czy wykresach - trzeba eksperymentować, lub ponoć (nie testowałem tego sposobu) po otwarciu PNG i jego wyeksportowaniu do SVG (ale podejrzewam ze to będzie SVG ale nadal z osadzoną grafiką rastrową. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 01:32, 2 paź 2010 (CEST)
== Księgozbiór ==
Mam trochę wątpliwości: "Fizyka teoretyczna" i " Metody numeryczne fizyki" powinny być w tabelce "Niedokończone podręczniki". Streszczenia bym poprawił pod kątem stylu; czyli np. przy "Szczególnej teoria względności" zamiast: "Jest to dział fizyki zajmujących się przede wszystkim ruchem ciał poruszających się z prędkościami porównywalnymi z prędkością światła w próżni", to: "Podręcznik opisuje szczególną teorię względności, czyli dział fizyki zajmujący się przede wszystkim ruchem ciał poruszających się z prędkościami porównywalnymi z prędkością światła w próżni". Spróbuję siąść do tego na tygodniu przed urlopem. No i brakuje obrazków. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 20:22, 26 wrz 2010 (CEST)
* Zerknij na poprawki: [[Wikibooks:Księgozbiór#Nauki_ścisłe_i_przyrodnicze]]. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 08:03, 28 wrz 2010 (CEST)
== Metoda kolejnych poprawek trójmianu kwadratowego - metoda Bairstowa ==
Hej - nie znam tej metody i tylko "na szybko" rzuciłem okiem na 2 pierwsze równania i nie jestem pewien czy dobrze widzę - ale, przyjmując (3.95) za słuszne, już w 2 linijce wzoru (3.96) masz błąd przy wymnażaniu składnika <math>q_i</math> z nawiasem <math>(b_0z^{n-2}+b_1z^{n-3}+...+b_{n-1})</math>. Wyciągasz <math>z</math> przed nawias, ale nie degradujesz potęgi w wyrażeniu pod nawiasem więc zamiast wyrażenia: <math>zq_i(b_0z^{n-3}+b_1z^{n-4}+...+b_{n-2})</math> otrzymałeś <math>zq_i(b_0z^{n-2}+b_1z^{n-3}+...+b_{n-2})</math>. Następnie grupujesz je według Twojego obliczenia. Sprawdź czy to pojawienie się znikąd tego jednego 'zeta' nie było przyczyną problemu i innego wyniku. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 23:51, 30 wrz 2010 (CEST)
== Mechanika kwantowa ==
Witaj!
Znalazłem pominiętą stronę podręcznika: [[Mechanika_kwantowa/Funkcje_i_równania_falowe/Równanie_Kleina-Gordona]]. Czy będzie przydatna jeszcze? Jeśli nie wstaw szablon EK. -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 12:54, 3 paź 2010 (CEST)
== Porzucone grafiki ==
Czy [[:Plik:Schemat_blokowy_licznika_z_komorą_jonizacyjna.png]] oraz [[:Plik:Czynnik Debye'a-Wallera.png]] będą jeszcze potrzebne - czy można je usunąć? -[[Wikipedysta:MonteChristof|MonteChristof]] <tt>[[Dyskusja Wikipedysty:MonteChristof|DMC]]</tt> 16:58, 4 paź 2010 (CEST)
== Prośba ==
Czy możesz usunąć stronę (przekierowanie) [http://pl.wikibooks.org/w/index.php?title=Lo%C5%BCban/Wymowa&redirect=no]? Z góry dzięki --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 14:42, 7 paź 2010 (CEST)
== Licencja ==
W swoich książkach umieściłeś wzmiankę o licencji GNU. Jednak brzmi to trochę tak, jakby materiał był oparty tylko na licencji GNU, a jednak wszystko co jest na Wikibooks jest także oparte na licencji CC. Czyli Twoje teksty są na dwóch licencjach, jednej dodanej przez Ciebie jako autora i drugiej wynikającej z projektu. I czytelnik może wybrać sobie dowolną z tych dwóch. Choć tekst akapitu "licencja" brzmi trochę tak, jakby tego wyboru nie było i obowiązywała tylko GNU. Może by tak dodać wzmiankę o CC? ([[Wikibooks:Bar#Licencje_i_ok.C5.82adki|w barze]] trochę więcej wyjaśnień o 2 licencjach) --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 22:19, 12 paź 2010 (CEST)
== Re: Fizyka teoretyczna ==
Z wielką chęcią, choć jak widać na dacie twojego wątku na mojej dyskusji i tego widać że mam mało czasu, przyłączam się jeśli to aktualne, ale nie licz na systematycznośc! :) [[Wikipedysta:Jantoś|Jantoś]] ([[Dyskusja Wikipedysty:Jantoś|dyskusja]]) 17:57, 27 paź 2010 (CEST)
: Czy to jest ok? [http://pl.wikibooks.org/w/index.php?title=Elektrodynamika_klasyczna%2FR%C3%B3%C5%BCniczkowe_i_ca%C5%82kowe_prawa_dla_elektrostatyki&action=historysubmit&diff=147299&oldid=135512] --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 20:16, 26 lis 2010 (CET)
* Pośpiesznie wycofałem tę [http://pl.wikibooks.org/w/index.php?title=Metody_numeryczne_fizyki/Ca%C5%82kowanie_numeryczne_funkcji_interpolacyjnej&diff=next&oldid=147376 edycję], ale gdybyś mógł sprawdzić czy jej ewentualnie nie zostawić.. --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja Wikipedysty:Lethern|dyskusja]]) 14:15, 27 lis 2010 (CET)
== awaria? ==
Persino wejdź natychmiast na [[Wikibooks:Bar]] i [[Pomoc:Spis treści]]. Wszędzie wyświetla mi się moduł, który właśnie edytujesz. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 21:40, 25 gru 2010 (CET)
anulowałem swoje edycje, musiał wystąpić jakiś dziwny błąd systemu i przy dużej Twojej edycji nałożyła się ona na moje trzy drobne edycje, przywróciłem (mam nadzieję) już to do ładu. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 21:49, 25 gru 2010 (CET)
== eki i blokady ==
wczorajsza awaria już się wyjaśniła. Lethern wziął świąteczny urlop, więc jakbyś miał chwilę, to usuń ek-i oraz odblokuj mi tą stronę: [[Wikibooks:O Wikibooks]]. Pracuję nad stronami pomocy i bardzo mi to ułatwi życie. Z góry dzięki [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 19:19, 26 gru 2010 (CET)
== kolejne ek-i ==
wstawiłem eki-i w starych, nieużywanych i niepotrzebnych szablonach; czy mógłbyś je pousuwać, jak znajdziesz chwilę czasu? [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 09:16, 5 sty 2011 (CET)
P.S. do usunięcia są jeszcze nieużywane pliki
* http://pl.wikibooks.org/wiki/Plik:Żarówka.png
* http://pl.wikibooks.org/wiki/Plik:Zwrot_kosztow_szkolen_niepelnosprawnych_2010.jpg
* http://pl.wikibooks.org/wiki/Plik:B_wikibooks_2.png
* http://pl.wikibooks.org/wiki/Plik:B_wikibooks_2.png
* http://pl.wikibooks.org/wiki/Plik:B_wikibooks_3.png
* http://pl.wikibooks.org/wiki/Plik:B_wikibooks_4.png
P.S. nr 2: i zbędne kategorie:
* http://pl.wikibooks.org/wiki/Kategoria:Strony_z_błędami_ortograficznymi
* http://pl.wikibooks.org/wiki/Kategoria:Strony,_w_których_przekroczone_jest_ograniczenie_wielkości_użytych_szablonów
* http://pl.wikibooks.org/wiki/Kategoria:Grafika_Wikimedia
* http://pl.wikibooks.org/wiki/Kategoria:Strony_indeksowane
a koniecznie trzeba mi odblokować te strony:
* [[MediaWiki:Recentchangestext]]
* [[Szablon:Recentchanges]]
== c.d. pracy nad meta-stronami ==
hej! usuniesz mi ek-i oraz odblokujesz: [[Szablon:WM/Regulamin]]? z góry dzięki. [[Wikipedysta:Karol Dąbrowski|Karol Karolus Dąbrowski]] [[Dyskusja Wikipedysty:Karol Dąbrowski|(zaprasza do dyskusji)]] 10:43, 17 sty 2011 (CET)
== Talkback ==
Hello Mirosław, you have an unanswered question at [[Commons:User talk:Persino#your_badname_request]]. — <font size="4">[[w:en:User:Jeff G.|Jeff]] [[w:en:User:Jeff G./talk|G. ツ]]</font> 16:32, 30 sty 2011 (CET)
== FUW ==
Zerknij: [http://brain.fuw.edu.pl/edu/Strona_g%C5%82%C3%B3wna na cc-by-sa 3.0]. Może by się przydało? Tylko zassać i podać autorów. [[Wikipedysta:Przykuta|Przykuta]] ([[Dyskusja Wikipedysty:Przykuta|dyskusja]]) 15:49, 12 lut 2011 (CET)
== Przeniesienie szablonu Podręcznik ==
Witaj, trzeba cofnąć Twoje zmiany, bo nie przenieść tego szablonu w miejsce Szablon:StronaStart, ponieważ z tego szablonu korzysta sporo modułów (razem z Pomocą Wikibooks), a nie korzystają one z szablonu Podręcznik. Zrevertowałem [http://pl.wikibooks.org/w/index.php?title=Szablon:StronaStart&curid=19820&diff=169244&oldid=159391 zmiane StronaStart], ale wszystkie Twoje zmiany w podręczniku trzeba by też wycofać (usuwające szablon Podręcznik)... Sam pomysł zmieniania tak dużej ilości modułów bez użycia bota jest kiepski, może lepiej poprosić operatora Bota żeby się tym zajął? Miało już miejsce takie masowe zmienianie przez AlohaBOT ([http://pl.wikibooks.org/w/index.php?title=Mechanika_teoretyczna/Uk%C5%82ad_cia%C5%82_ograniczonych_wi%C4%99zami&diff=prev&oldid=166738 przykład]). Choć można spróbować poprawić szablon, żeby pasował do nowej wersji podręcznikow matematycznych, jak i do innych modułów w których jest użyty. Co o tym sądzisz? --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja wikipedysty:Lethern|dyskusja]]) 17:55, 10 wrz 2011 (CEST)
== Witaj po przerwie ==
Czołem Persino! miło Ciebie wiedzieć po długiej przerwie :) [[Wikipedysta:Karol Karolus|Karolus]] ([[Dyskusja wikipedysty:Karol Karolus|dyskusja]]) 09:31, 11 wrz 2011 (CEST)
== Poradnik Hackhing ==
Witaj. Widzę że jesteś akurat Online, więc pisze do Ciebie.
Znalazłem na wikia projekt informatyki i na stronie głównej coś tam wyczaiłem no i znalazłem [http://informatyka.wikia.com/wiki/Poradnik:Hacking to]. Jak widać, poradnik ten ma na celu przedstawienie zagrożeń ze strony internetu oraz zapobieganie im. (jak można wyczytać)
Nie wiem jeszcze jaką ma licencje, ale skoro jest na wiki to musi być wolna. Związku z tym pytanie: Czy może być opublikowane na Wikibooks?
Pozdrawiam --[[Wikipedysta:Kompowiec2|Marek H.]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 18:57, 24 wrz 2011 (CEST)
== szablony StronaStart i StronaStart ==
Persino, sprawdź proszę, czy w/w szablony działają poprawnie, po ostatnich zmianach przestały pełnić swoją funkcję, zamiast być umiejscowione z boku strony porządkując ją, to wskakują na górę psując wygląd modułów. [[Wikipedysta:Karol Karolus|Karol Karolus]] ([[Dyskusja wikipedysty:Karol Karolus|dyskusja]]) 10:54, 23 paź 2011 (CEST)
* dlatego, że po pierwsze nie było dobrze, bo było źle; a po drugie, bo lekceważysz sobie użytkowników tych szablonów: [[Wikibooks:Bar#szablony_StronaStart_i_StronaStart]]. [[Wikipedysta:Karol Karolus|Karol Karolus]] ([[Dyskusja wikipedysty:Karol Karolus|dyskusja]]) 23:15, 8 lis 2011 (CET)
Hej, chciałem założyć temat, ale widzę, że już na mnie czeka :). Jestem świeżo na wikibooks i od razu rzucił mi się na oczy szablon {{s|StronaStart}}. Powiedzmy, że rozumiem koncept tego szablonu, ale:
# U mnie nie działa: [http://awesomescreenshot.com/0e91ikc1c]. Wygląda to strasznie, nie mówiąc o zaśmiecaniu kodu :/
# Taki sam efekt, a nawet lepszy można uzyskać modyfikując swój plik .css użytkownika, już wrzucałem Karolusowi przykłady kodu zrobionego przeze mnie może w pół godziny, a dające przynajmniej możliwość osobom, które nie chcą menu na górze i wielkiej czcionki możliwość czytania domyślnie sformatowanego tekstu. [http://awesomescreenshot.com/0811fe0c8][http://awesomescreenshot.com/0411fe142] [[user:Yarl|Yarl]] [[user talk:Yarl|✉]] 19:49, 13 mar 2012 (CET)
== układy pseudoskalarne ==
Cześć, Persino! Piszesz o trudnych sprawach, ale niezwykle ciekawych, więc zajrzałam. Niestety jest to powyżej moich możliwości (wolę poziom Świata Nauki), a poza tym rzucił mi się w oczy „kwiatek”, który bardzo szpecił piękną całość :( W kilku miejscach poprawiłam [[Wstęp do fizyki cząstek elementarnych/Wprowadzenie do teorii kwarków i układów kwarkowych (hadrony)#Mezony lekkie jako układy pseudoskalarne|tutaj]] , ale to chyba nie wszystko (np. nazwa ilustracji w Commons). Pozdrawiam Cię serdecznie --[[Wikipedysta:Joanna Kośmider|Joanna Kośmider]] ([[Dyskusja wikipedysty:Joanna Kośmider|dyskusja]]) 12:53, 22 kwi 2012 (CEST)
== szablon treść ==
magiku od wiki-kodu, dasz radę tak ustawić parametry, żeby szablon zmieniał się co 3 dni? jest na tyle dużo polecanych książek, że akurat wtedy się tak wycyrkluje, że dana treść pojawi się raz w miesiącu. [[Wikipedysta:Karol Karolus|Karol Karolus]] ([[Dyskusja wikipedysty:Karol Karolus|dyskusja]]) 22:04, 2 lip 2013 (CEST)
== interpolacja ==
Cześć. Dzięki za metody numeryczne fizyku. Ja szukałem funkcji przechodzącej przez dane punkty i znalazłem : http://zunzun.com/ Może cię zainteresuje. Szukam też pomocy w [[en:Fractals/Iterations_in_the_complex_plane/parabolic|dynamice parabolicznej]]. Jeśli jesteś zainteresowany to daj znać. Pozdrawiam. [[Wikipedysta:Adam majewski|Adam majewski]] ([[Dyskusja wikipedysty:Adam majewski|dyskusja]]) 21:39, 10 lut 2014 (CET)
== {{int:right-upload}}, [[commons:Special:MyLanguage/Commons:Upload Wizard|{{int:uploadwizard}}]]? ==
[[Image:Commons-logo.svg|right|100px|alt=Wikimedia Commons logo]]
Hello! Sorry for writing in English. As you're an administrator here, please check the message I left on [[MediaWiki talk:Licenses]] and the village pump. Thanks, [[m:User:Nemo_bis|Nemo]] 21:22, 18 wrz 2014 (CEST)
<!-- Message sent by User:Nemo bis@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User_talk:Nemo_bis/Unused_local_uploads&oldid=9923284 -->
== [[:Kategoria:Ekspresowe kasowanie]] ==
Cześć, wyczyściłbyś tą kategorię? Trochę się w niej nazbierało. [[Wikipedysta:Runab|Runab]] ([[Dyskusja wikipedysty:Runab|dyskusja]]) 18:17, 25 paź 2014 (CEST)
== Odpowiadając ==
nie wiem, ale sądzę, że nie ma. [[Wikipedysta:Karol Karolus|Karol Karolus]] ([[Dyskusja wikipedysty:Karol Karolus|dyskusja]]) 16:02, 12 cze 2015 (CEST)
== Bots ==
<div class="mw-content-ltr">
I apologize for sending this message in English.
You are receiving this message because a technical change may affect a bot, gadget, or user script you have been using. The breaking change involves API calls. This change has been planned for two years. The WMF will start making this change on '''30 June 2015'''. A partial list of affected bots can be seen here: https://lists.wikimedia.org/pipermail/wikitech-l/2015-June/081931.html This includes all bots that are using pywikibot compat. Some of these bots have already been fixed. However, if you write user scripts or operate a bot that uses the [[:mw:API|API]], then you should check your code, to make sure that it will not break.
What, exactly, is breaking? The "default continuation mode" for action=query requests to api.php will be changing to be easier for new coders to use correctly. To find out whether your script or bot may be affected, then search the source code (including any frameworks or libraries) for the string "query-continue". If that is not present, then the script or bot is ''not'' affected. In a few cases, the code will be present but not used. In that case, the script or bot will continue working.
This change will be part of 1.26wmf12. It will be deployed to test wikis (including mediawiki.org) on 30 June, to non-Wikipedias (such as Wiktionary) on 1 July, and to all Wikipedias on 2 July 2015.
If your bot or script is receiving the warning about this upcoming change (as seen at https://www.mediawiki.org/w/api.php?action=query&list=allpages ), it's time to fix your code!
* The simple solution is to simply include the "rawcontinue" parameter with your request to continue receiving the raw continuation data (example <https://www.mediawiki.org/w/api.php?action=query&list=allpages&rawcontinue=1>). No other code changes should be necessary.
* Or you could update your code to use the simplified continuation documented at https://www.mediawiki.org/wiki/API:Query#Continuing_queries (example <https://www.mediawiki.org/w/api.php?action=query&list=allpages&continue=>), which is much easier for clients to implement correctly.
Either of the above solutions may be tested immediately, you'll know it works because you stop seeing the warning.
Do you need help with your own bot or script? Ask questions in e-mail on the [[mail:mediawiki-api|mediawiki-api]] or [[mail:wikitech-l|wikitech-l]] mailing lists. Volunteers at [[:m:Tech]] or [[:w:en:WP:Village pump (technical)]] or [[:w:en:Wikipedia:Bot owners' noticeboard]] may also be able to help you.
Are you using someone else's gadgets or user scripts? Most scripts are not affected. To find out if a script you use needs to be updated, then post a note at the discussion page for the gadget or the talk page of the user who originally made the script. [[:w:en:User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[:w:en:User talk:Whatamidoing (WMF)#top|talk]]) 21:03, 17 cze 2015 (CEST)
</div>
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki korzystając z listy na https://meta.wikimedia.org/w/index.php?title=User:Whatamidoing_(WMF)/Sandbox&oldid=12455250 -->
== tryb życia ==
Jakie przepisy masz na myśli? --[[Wikipedysta:Pedros.lol|Pedros.lol]] ([[Dyskusja wikipedysty:Pedros.lol|dyskusja]]) 18:54, 9 paź 2015 (CEST)
:Jeżeli chodzi Ci o przypisy, to kopiowałem cytowania z Google Scholar, MLA --[[Wikipedysta:Pedros.lol|Pedros.lol]] ([[Dyskusja wikipedysty:Pedros.lol|dyskusja]]) 19:02, 9 paź 2015 (CEST)
== [[s:Kategoria:Tablice matematyczne|Tablice matematyczne]] i [[s:Kategoria:Kody źródłowe|kody źródłowe]] z Wikiźródeł ==
Witaj! W Wikiźródłach mamy problem wyżej wymienionymi kategoriami. Są to przeważnie dawno umieszczone teksty (z lat ok. 2005–2007), które nie pasują do obecnej polityki publikacji projektu (teraz staramy się umieszczać teksty, które można zweryfikować na podstawie skanów). Zamierzam zgłosić je do usunięcia. Do Ciebie jako użytkownika zajmującego się fizyką komputerową i fizyką teoretyczną mam pytanie: czy tego typu tablice lub kody źródłowe mogłyby znaleźć miejsce w projekcie Wikibooks?
Pierwszy z brzegu przykład do rozważenia: [[s:Tablica kwadratów|Tablica kwadratów]], [[s:Tablica kwadratów/kod|Tablica kwadratów/kod]] i [[s:Tablica sześcianów|Tablica sześcianów]].
Czy Twoim zdaniem jakąkolwiek wartość edukacyjną mają:
* same te tablice?
* kod źródłowy zastosowany do ich wygenerowania?
* zamieszczone na dole stron przykłady użycia (odczytywanie dokładnych wyników, interpolacja oraz ekstrapolacja poza zakres uwzględniony w tablicy)?
Czy uważasz, że można/warto umieścić je w Wikibooks jako
* nowy samodzielny podręcznik [[Tablice matematyczne]]?
* aneksy do któregoś z istniejących podręczników do matematyki?
* kody źródłowe — w ogólnym podręczniku [[Programowanie]] lub w podręcznikach do konkretnych języków programowania?
I ostatnie pytanie: czy do przeniesienia tych materiałów na Wikibooks potrzeba znaleźć osobę z uprawnieniami do importu stron, czy można je skopiować ręcznie, podając źródło w opisie zmian? Z kodami źródłowymi może być trudniej, ale tablice matematyczne raczej nie stanowią utworu w rozumieniu prawa autorskiego...
Pozdrawiam, [[Wikipedysta:Ashaio|Ashaio]] ([[Dyskusja wikipedysty:Ashaio|dyskusja]]) 13:58, 26 lut 2016 (CET)
== Re: Kasowanie okładek i normalnych stron ==
IPki które niby kasowały i wstawiały ek to też moja robota - naprawdę sądzisz że IPki wykonywałyby operacje porządkowe? ;)
Jest to wynik dawnej dyskusji w której ustalono by skasować wszystkie okładki - gdzieś jest w archiwum baru, pod stertą mułu, poszukam w miarę możliwosci żeby nie było że zmyślam [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 13:54, 8 paź 2016 (CEST)
* Znalazłem, bardzo proszę: [https://pl.wikibooks.org/wiki/Wikibooks:Bar/Archiwum11#problem_ok.C5.82adek Bar] [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 14:04, 8 paź 2016 (CEST)
* Czemu przywracasz okładki? Znasz jakieś zastosowanie dla okładek? [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 10:09, 21 lis 2016 (CET)
Hej, sądzę że okładki mogą zostać dla podręczników, dla których autor sobie życzy okładki, a co do wszystkich pozostałych podręczników (i ich okładek), to powinno być jakieś wspólne ustalenie (nie wiem czy coś się do tej pory zmieniło, ostatnio faktycznie była rezygnacja z okładek). Myślę że nie trzeba narzucać jednego rozwiązania na wszystkie przypadki, tak jak nawigacja: jest w niektórych książkach, a w niektórych nie ma, w zależności czy autor chciał czy nie --[[Wikipedysta:Lethern|Lethern]] ([[Dyskusja wikipedysty:Lethern|dyskusja]]) 15:36, 22 lis 2016 (CET)
* Rozumiem. W takim razie ja usuwam ze swoich (bo i też moich książek dotyczyły rewerty) [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 13:02, 25 lis 2016 (CET)
"A to wszystko można zrobić za pomocą języka Lua, tak jak ja zrobiłem spis treści za pomocą szablonu <nowiki>{{SpisTreści}}</nowiki> i automatyczne numeracje wzorów matematycznych!" - coraz częściej słyszę o tym języku jako recepta na wiele dupereli, chyba się w końcu nim zainteresuję ;) tylko jak miałbym taki skrypt uruchomić na wikibooksach? na jakiejś własnej stronie użytkownika, czy inaczej? [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 13:08, 25 lis 2016 (CET)
== Share your experience and feedback as a Wikimedian in this global survey ==
<div class="plainlinks mw-content-ltr" lang="pl" dir="ltr">
Witaj! Wikimedia Foundation prosi Cię o wyrażenie opinii w ankiecie. Chcemy wiedzieć jak dobrze wspomagamy Twoją pracę na i poza wiki oraz jak możemy zmienić lub ulepszyć różne kwestie w przyszłości.<ref group=survey>Ta ankieta dotyczy głównie opinii na temat bieżących prac Wikimedia Foundation, nie długoterminowej strategii.</ref> Opinie, którymi się podzielisz, bezpośrednio wpłyną na obecne i przyszłe prace Wikimedia Foundation. Zostałeś losowo wybrany do wzięcia udziału w tej ankiecie, tak, jak chcielibyśmy wysłuchać Twojej społeczności Wikimedia. Aby podziękować Ci za Twój poświęcony czas, rozdamy 20 T-shirtów Wikimedia do losowych uczestników tego badania.<ref group=survey>Kwestie prawne: Nie jest konieczne dokonanie zakupu. Trzeba być pełnoletnim aby uczestniczyć. Sponsorowane przez Wikimedia Foundation, zlokalizowana w 149 New Montgomery, San Francisco, CA, USA, 94105. Koniec 31 stycznia 2017. Nie obowiązuje gdzie zakazano. [[m:Community Engagement Insights/2016 contest rules|Kliknij aby zobaczyć regulamin konkursu]].</ref> Ta ankieta jest dostępna w różnych językach i zajmie między 20 a 40 minut.
<big>'''[https://wikimedia.qualtrics.com/SE/?SID=SV_6mTVlPf6O06r3mt&Aud=VAE&Src=57VAEOP Weź udział w ankiecie teraz!]'''</big>
Możesz dowiedzieć się więcej na temat [[m:Community_Engagement_Insights/About_CE_Insights|tego projektu]]. Ta ankieta jest hostowana przez zewnętrzny serwis i podlega [[:foundation:Community_Engagement_Insights_2016_Survey_Privacy_Statement|temu oświadczeniu prywatności]]. Odwiedź naszą [[m:Community_Engagement_Insights/Frequently_asked_questions|stronę z najczęściej zadawanymi pytaniami]], aby znaleźć więcej informacji na temat tego badania. Jeżeli potrzebujesz dodatkowej pomocy lub chcesz wypisać się z przyszłych prób komunikacji, wyślij e-mail na surveys@wikimedia.org.
Dziękujemy!
--[[:m:User:EGalvez (WMF)|EGalvez (WMF)]] ([[:m:User talk:EGalvez (WMF)|talk]]) 23:25, 13 sty 2017 (CET)
</div>
<!-- Wiadomość wysłana przez User:EGalvez (WMF)@metawiki korzystając z listy na https://meta.wikimedia.org/w/index.php?title=Community_Engagement_Insights/MassMessages/Lists/2016/57-VAEOP&oldid=16205400 -->
<references group=survey />
== Działania administracyjne ==
Cześć, mógłbyś zajrzeć do SdU i EK? Jesteś jedynym obecnie aktywnym tu administratorem, a sprawa SdU wygląda wręcz, jakbyś to ignorował. <span style="font-weight:bold;">[[Wikipedysta:Kabexxxior|KABEXXX<span style="color:silver;">IOR </span>]]</span> ≡ <span style="text-decoration:none;margin-right:10px;">[[Dyskusja_wikipedysty:Kabexxxior|DYSKUSJA]] </span> 01:46, 3 lut 2017 (CET)
== Ek ==
* Czasem zdarza się że zapomnę się zalogować i edytuje z IPka. W sumie jak się zajrzy w historie to po ekowaniu zalogowałem się i połączyłem arty. [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 09:20, 5 wrz 2017 (CEST)
== Share your experience and feedback as a Wikimedian in this global survey ==
<div class="mw-parser-output">
<div class="plainlinks mw-content-ltr" lang="pl" dir="ltr">
Witaj! Wikimedia Foundation prosi Cię o wyrażenie opinii w ankiecie. Chcemy wiedzieć jak dobrze wspomagamy Twoją pracę na i poza wiki oraz jak możemy zmienić lub ulepszyć różne kwestie w przyszłości. Opinie, którymi się podzielisz, bezpośrednio wpłyną na obecne i przyszłe prace Wikimedia Foundation. Zostałeś losowo wybrany do wzięcia udziału w tej ankiecie, tak, jak chcielibyśmy wysłuchać Twojej społeczności Wikimedia. Ta ankieta jest dostępna w różnych językach i zajmie między 20 a 40 minut.
<big>'''[https://wikimedia.qualtrics.com/jfe/form/SV_5ABs6WwrDHzAeLr?aud=VAE&prj=ot&edc=5&prjedc=ot5 Weź udział w ankiecie teraz!]'''</big>
Możesz dowiedzieć się więcej na temat tej ankiety [[m:Special:MyLanguage/Community_Engagement_Insights/About_CE_Insights|na stronie projektu]]. Zobacz jak Twoje zdanie pomaga Wikimedia Foundation wspierać edytujących takich jak Ty. Ta ankieta jest hostowana przez zewnętrzny serwis i podlega [[:foundation:Community_Engagement_Insights_2018_Survey_Privacy_Statement|temu oświadczeniu prywatności]] (po angielsku). Odwiedź naszą [[m:Special:MyLanguage/Community_Engagement_Insights/Frequently_asked_questions|stronę z najczęściej zadawanymi pytaniami]], aby znaleźć więcej informacji na temat tego badania. Jeżeli potrzebujesz dodatkowej pomocy lub chcesz wypisać się z przyszłych prób komunikacji, wyślij e-mail poprzez funkcję wysyłania e-maili do użytkownika, do [[:m:Special:EmailUser/WMF Surveys|WMF Surveys]], aby usunął Cię z listy.
Dziękujemy!
</div> <span class="mw-content-ltr" dir="ltr">[[m:User:WMF Surveys|WMF Surveys]]</span>, 20:36, 29 mar 2018 (CEST)
</div>
<!-- Wiadomość wysłana przez User:WMF Surveys@metawiki korzystając z listy na https://meta.wikimedia.org/w/index.php?title=Community_Engagement_Insights/MassMessages/Lists/2018/ot5&oldid=17881402 -->
== Reminder: Share your feedback in this Wikimedia survey ==
<div class="mw-parser-output">
<div class="plainlinks mw-content-ltr" lang="pl" dir="ltr">
Każda odpowiedź w tej ankiecie może pomóc Wikimedia Foundation ulepszyć Twoje doświadczenia w projektach Wikimedia. Jak dotąd wysłuchaliśmy 29% współautorów projektów Wikimedia. Ankieta jest dostępna w różnych językach i jej wypełnienie może zająć od 20 do 40 minut. '''[https://wikimedia.qualtrics.com/jfe/form/SV_5ABs6WwrDHzAeLr?aud=VAE&prj=ot&edc=5&prjedc=ot5 Weź udział w ankiecie.]'''
Jeżeli już wypełniłeś tę ankietę, z góry przepraszamy za to przypomnienie. Tę ankietę stworzyliśmy tak, aby nie dało się zidentyfikować użytkowników, którzy ją wypełnili, więc musimy rozesłać to przypomnienie wszystkim.
<span class="mw-translate-fuzzy">Jeżeli chcesz wypisać się z listy adresatów przypomnień i informacji o kolejnych badaniach, wyślij e-mail do [[:m:Special:EmailUser/WMF Surveys|WMF Surveys]]</span>. Możesz też wysyłać do niego zapytania odnośnie tego badania. [[m:Community_Engagement_Insights/About_CE_Insights|Dowiedz się więcej o tej ankiecie na stronie projektu.]] Ta ankieta jest hostowana przez zewnętrzny serwis i podlega [[:foundation:Community_Engagement_Insights_2018_Survey_Privacy_Statement|temu oświadczeniu prywatności]] Wikimedia Foundation. Dziękujemy!
</div> <span class="mw-content-ltr" dir="ltr">[[m:User:WMF Surveys|WMF Surveys]]</span>, 03:34, 13 kwi 2018 (CEST)
</div>
<!-- Wiadomość wysłana przez User:WMF Surveys@metawiki korzystając z listy na https://meta.wikimedia.org/w/index.php?title=Community_Engagement_Insights/MassMessages/Lists/2018/ot5&oldid=17888784 -->
== Your feedback matters: Final reminder to take the global Wikimedia survey ==
<div class="mw-parser-output">
<div class="plainlinks mw-content-ltr" lang="pl" dir="ltr">
Witaj! To jest ostateczne przypomnienie o ankiecie Wikimedia Foundation, która zakończy się '''23 kwietnia 2018 (07:00 UTC)'''. Ta ankieta jest dostępna w różnych językach i zajmie między 20 a 40 minut. '''[https://wikimedia.qualtrics.com/jfe/form/SV_5ABs6WwrDHzAeLr?aud=VAE&prj=ot&edc=5&prjedc=ot5 Weź udział w ankiecie teraz.]'''
'''Jeżeli już wypełniałeś tą ankietę - dziękujemy!''' Tę ankietę stworzyliśmy tak, aby nie dało się zidentyfikować użytkowników, którzy ją wypełnili, więc musimy rozesłać to przypomnienie wszystkim. Aby wypisać się z przyszłych badań, wyślij e-mail poprzez funkcję wysyłania e-mail do [[:m:Special:EmailUser/WMF Surveys|WMF Surveys]]. Na ten e-mail możesz wysłać również zapytania. [[m:Community_Engagement_Insights/About_CE_Insights|Dowiedz się więcej o tej ankiecie na stronie projektu.]] Ta ankieta jest hostowana przez zewnętrzny serwis i podlega [[:foundation:Community_Engagement_Insights_2018_Survey_Privacy_Statement|temu oświadczeniu Wikimedia Foundation w sprawie prywatności]].
</div> <span class="mw-content-ltr" dir="ltr">[[m:User:WMF Surveys|WMF Surveys]]</span>, 02:43, 20 kwi 2018 (CEST)
</div>
<!-- Wiadomość wysłana przez User:WMF Surveys@metawiki korzystając z listy na https://meta.wikimedia.org/w/index.php?title=Community_Engagement_Insights/MassMessages/Lists/2018/ot5&oldid=17888784 -->
== EKi ==
Cześć, widzę że jesteś tu jedynym aktywnym administratorem - mógłbyś usunąć [[:Kategoria:Ekspresowe kasowanie|EKi]]? Wisi spam od prawie tygodnia... Z góry dzięki, [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 22:45, 22 lip 2018 (CEST)
== Ukrywanie ==
Mogę wiedzieć po co ukryłeś wersje w swoim podręczniku? --[[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 11:25, 31 lip 2018 (CEST)
: Kto się na to uskarżał? Moim zdaniem to nadużycie tej funkcji. --[[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 15:42, 31 lip 2018 (CEST)
== Wiele edycji w Szablon:StronaStart ==
Przydatną rzeczą może być formularz "Podgląd strony z tym szablonem" pod oknem edycji, dzięki czemu nie trzeba co chwilę zapisywać, aby zobaczyć jak będzie wyglądała strona z nowym kodem szablonu. --[[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 16:17, 24 sie 2018 (CEST)
== Statystyki oglądalności strony ==
Cześć, piszę do ciebie bo ty jako admin masz możliwość tworzenia i edytowania przestrzeni MediaWiki. Na Wikipedii, w zakładce "historia" jest link do fajnego narzędzia pokazującego statystykę odwiedzin danego artykułu (a także kilka linków do innych narzędzi). Fajnie by było dodać taką funkcję też na Wikibooks. Żeby to zrobić, trzeba utworzyć tę stronę: [[MediaWiki:Histlegend]], kopiując do niej zawartość [[w:MediaWiki:Histlegend|jej odpowiednika na Wikipedii]] (zmieniając oczywiście wszystkie linki z "pl.wikipedia.org" na "pl.wikibooks.org"). Mógłbyś to zrobić? Z góry dziękuję i pozdrawiam, [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 17:17, 29 paź 2018 (CET)
:Dzięki :) [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 21:21, 29 paź 2018 (CET)
== Przypisy ==
Po twojej edycji w szablonie {{s|Przypisy}} przestał on działać tak jak poprzednio - dodając od razu sekcję <nowiki>==Przypisy==</nowiki>, tym samym wszystkie strony, na których był wcześniej użyty, mają popsute wyświetlanie przypisów (zniknęła sekcja) - przykład: [[Siewki roślin flory Polski/Liliowate]]. Masz zamiar to poprawić? [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 21:10, 3 lis 2018 (CET)
:Do tej pory szablon sam dodawał sekcję; jeżeli dokonujesz zmiany w szablonie, który jest używany na setkach stron, to wypadałoby posprzątać, albo zamiast tego utworzyć nowy szablon, nie dodający sekcji, a ten dodający zostawić na swoim miejscu. W tej chwili po twojej zmianie [https://pl.wikibooks.org/w/index.php?title=Specjalna:Linkuj%C4%85ce/Szablon:Przypisy&namespace=0&limit=500 na ponad 400 stronach] znikła sekcja "Przypisy". W dodatku w tym momencie opis szablonu jest wprowadzający w błąd, bo wciąż mówi, że dodaje sekcję. [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 16:40, 4 lis 2018 (CET)
::Dzięki! :) [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 18:39, 4 lis 2018 (CET)
== Literówka ==
Na stronie
https://pl.m.wikibooks.org/wiki/Wikibooks:Poczekalnia
w nagłówku, który jest nieedytowalny chyba bez odpowiednich uprawnień, jest urywek o treści:
"Pełna lista stron, co do których przeprowadza się dyskuję, co dalej robić, znajdują się w "
który jest z błędem. Powinno być "znajduje się"
Piszę o tym do Ciebie, bo widzę, że Ty tam działasz.
Pozdrawiam
[[Wikipedysta:Lien Shan|Lien Shan]] ([[Dyskusja wikipedysty:Lien Shan|dyskusja]]) 12:57, 17 lis 2018 (CET)
== Prośba o przywrócenie strony ==
Dzień dobry,
Proszę o przywrócenie strony [[Lożban/Tanru i lujvo]]
-- 17:17 Samuel sob 5 sty 2019 (CEST)
*Na tej stronie nie jest nic merytorycznego napisane! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 16:27, 5 sty 2019 (CET)
*Bo dopiero ją tworzymy! A teraz zniknęło kilka ważniejszych tłumaczeń! -- 16:42 Samuel sob 5 sty 2019 (CET)
**Odzyskuję na waszą odpowiedzialność! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 16:46, 5 sty 2019 (CET)
***Dziękuję -- 16:48 Samuel sob 5 sty 2019 (CET)
== Powód blokady? ==
Dlaczego wycofałeś edycje i zablokowałeś użytkownika [[Wikipedysta:Robert Poklek|Robert Poklek]]? Nie widzę, żeby zrobił cokolwiek złego, najwyraźniej miał zamiar zacząć pisać nową książkę, do której utworzył link i kategorię. Możesz wyjaśnić powody blokady i rewertów? Pozdrawiam, [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 19:20, 3 mar 2019 (CET)
:A, faktycznie, nie zauważyłam że dawał linki do zewnętrznych stron internetowych. Widocznie jednak chciał tylko zrobić reklamę. Dzięki za wyjaśnienia. [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 20:02, 3 mar 2019 (CET)
== darknet w praktyce ==
* Witaj, powiedz mi proszę w jaki sposób usunięte przez Pana strony namawiają do łamania prawa. Książka nie jest o piraceniu czy crackingu, tylko opowiada o zachowaniu prywatności przede wszystkim, poprzez hardering. Z tego co wiem w Polsce nie ma obowiązku podawania prawdziwych danych w internecie ani nie zakazują szyfrowania jak w UK. [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 23:54, 20 mar 2019 (CET) strony wisiały od wielu lat, przewinęło się tu wielu adminów do tej pory i żaden nie zwrócił na to uwagi, pozdrawiam.
== Pascha (potrawa) ==
Czy mógłbyś zaimportować artykuł [[w:Pascha (potrawa)|Pascha (potrawa)]] z Wikipedii do podstrony [[Książka kucharska/Pascha]]? Po imporcie dobrze byłoby usunąć wszystkie wersje strony (w trybie usuwania wersji), które nie zawierały przepisu na potrawę, a następnie z najnowszej wersji usunąć (delete) całą treść oprócz przepisu. [[Wikipedysta:Tar Lócesilion|Tar Lócesilion]] ([[Dyskusja wikipedysty:Tar Lócesilion|queta!]]) 13:56, 19 kwi 2019 (CEST)
== Odp:Na przykład szablon: NPA ==
;[{{fullurl:Dyskusja_wikipedysty:Salicyna|oldid=292347}}#Na_przykład_szablon:_NPA Odp:Na przykład szablon: NPA]
Nie wiem, musiałabym się wczytać uważnie w kod szablonu i przetestować by wiedzieć, czy to coś zmienia. To chyba nie ma znaczenia, zresztą i tak w praktyce tego szablonu się już raczej nie używa, jeśli zauważy się NPA to kasuje się w trybie EK... [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 09:19, 29 cze 2019 (CEST)
== Community Insights Survey ==
<div class="plainlinks mw-content-ltr" lang="pl" dir="ltr">
'''Podziel się swoim doświadczeniem w ankiecie!'''
Cześć {{PAGENAME}},
Fundacja Wikimedia pragnie poprosić cię o Twoją opinię w ankiecie na temat doświadczenia związanego z {{SITENAME}} i fundacją. Celem tego badania jest dowiedzieć się w jaki sposób Fundacja wspiera twoją pracę na wiki i jak możemy to zmienić lub poprawić w przyszłości. Twoje przemyślenia będą miały bezpośredni wpływ na obecną i przyszłą pracę Fundacji Wikimedia.
Poświęć, proszę, 15 do 20 minut na '''[https://wikimedia.qualtrics.com/jfe/form/SV_0pSrrkJAKVRXPpj?Target=CI2019List(other,act5) wypełnienie tej ankiety]'''. Jest ona dostępna w różnych językach.
Ta ankieta jest udostępniana przez zewnętrzną usługę i [https://foundation.wikimedia.org/wiki/Community_Insights_2019_Survey_Privacy_Statement podlega następującym postanowieniom dotyczącym prywatności] (w języku angielskim).
Znajdź [[m:Community Insights/Frequent questions|więcej informacji o tym projekcie]]. [mailto:surveys@wikimedia.org Napisz do nas] jeżeli masz pytania, lub jeśli nie chcesz otrzymywać w przyszłości wiadomości dotyczących tej ankiety.
Z wyrazami szacunku,
</div> [[User:RMaung (WMF)|RMaung (WMF)]] 16:34, 9 wrz 2019 (CEST)
<!-- Wiadomość wysłana przez User:RMaung (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=CI2019List(other,act5)&oldid=19352874 -->
== Reminder: Community Insights Survey ==
<div class="plainlinks mw-content-ltr" lang="pl" dir="ltr">
'''Podziel się swoim doświadczeniem w ankiecie!'''
Cześć {{PAGENAME}},
Kilka tygodni temu zapraszaliśmy Cię do wypełnienia ankiety Community Insights. Jest to coroczne badanie społeczności na całym świecie, organizowane przez Wikimedia Foundation. Chcemy dowiedzieć się jak bardzo nasza praca wspiera wiki. We are 10% towards our goal for participation. Jeżeli jeszcze nie wypełniłeś naszej ankiety, możesz pomóc nam osiągnąć nasz cel! '''Twój głos ma dla nas znaczenie.'''
Poświęć, proszę, 15 do 20 minut na '''[https://wikimedia.qualtrics.com/jfe/form/SV_0pSrrkJAKVRXPpj?Target=CI2019List(other,act5) wypełnienie tej ankiety]'''. Jest ona dostępna w różnych językach.
Ta ankieta jest udostępniana przez zewnętrzną usługę i [https://foundation.wikimedia.org/wiki/Community_Insights_2019_Survey_Privacy_Statement podlega następującym postanowieniom dotyczącym prywatności] (w języku angielskim).
Znajdź [[m:Community Insights/Frequent questions|więcej informacji o tym projekcie]]. [mailto:surveys@wikimedia.org Napisz do nas] jeżeli masz pytania, lub jeśli nie chcesz otrzymywać w przyszłości wiadomości dotyczących tej ankiety.
Z wyrazami szacunku,
</div> [[User:RMaung (WMF)|RMaung (WMF)]] 21:14, 20 wrz 2019 (CEST)
<!-- Wiadomość wysłana przez User:RMaung (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=CI2019List(other,act5)&oldid=19395141 -->
== Reminder: Community Insights Survey ==
<div class="plainlinks mw-content-ltr" lang="pl" dir="ltr">
'''Podziel się swoim doświadczeniem w ankiecie!'''
Cześć {{PAGENAME}},
Zostało już tylko kilka tygodni na wypełnienie ankiety Community Insights! We are 30% towards our goal for participation. Jeżeli jeszcze nie wypełniłeś naszej ankiety, możesz pomóc nam osiągnąć nasz cel!
Dzięki tej ankiecie Wikimedia Foundation uzyska opinie na temat tego, jak dobrze wspiera Twoją pracę na wiki. Wypełnienie zajmie tylko 15-25 minut, a ma bezpośredni wpływ na jakość udzielanego przez nas wsparcia.
Poświęć, proszę, 15 do 20 minut na '''[https://wikimedia.qualtrics.com/jfe/form/SV_0pSrrkJAKVRXPpj?Target=CI2019List(other,act5) wypełnienie tej ankiety]'''. Jest ona dostępna w różnych językach.
Ta ankieta jest udostępniana przez zewnętrzną usługę i [https://foundation.wikimedia.org/wiki/Community_Insights_2019_Survey_Privacy_Statement podlega następującym postanowieniom dotyczącym prywatności] (w języku angielskim).
Znajdź [[m:Community Insights/Frequent questions|więcej informacji o tym projekcie]]. [mailto:surveys@wikimedia.org Napisz do nas] jeżeli masz pytania, lub jeśli nie chcesz otrzymywać w przyszłości wiadomości dotyczących tej ankiety.
Z wyrazami szacunku,
</div> [[User:RMaung (WMF)|RMaung (WMF)]] 19:04, 4 paź 2019 (CEST)
<!-- Wiadomość wysłana przez User:RMaung (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=CI2019List(other,act5)&oldid=19435548 -->
== Blocking User:WMFOffice? ==
Can I say that blocking the WMF's office account is a brave move, and probably unwise. Prior to blockingan account like that, can I suggest that you check the user page from meta [[User:WMFOffice]] and/or permissions at CentralAuth [[Special:CentralAuth/WMFOffice]]. [[Wikipedysta:Billinghurst|Billinghurst]] ([[Dyskusja wikipedysty:Billinghurst|dyskusja]]) 22:55, 13 lis 2019 (CET)
== Vandalism ==
Hi, I see that you are an active administrator here. Could you check [[Specjalna:Wk%C5%82ad/83.10.130.131]]'s edits are take appropriate actions if needed? Thanks in advance. [[Wikipedysta:Masumrezarock100|Masumrezarock100]] ([[Dyskusja wikipedysty:Masumrezarock100|dyskusja]]) 13:05, 23 sty 2020 (CET)
== Vandal ==
[https://pl.wikibooks.org/wiki/Specjalna:Wkład/2A02:A319:C044:B000:AC27:AC07:BA6B:755D] is a vandal. I could find admins noticeboard, so I'm leaving it here. [[Wikipedysta:Sk4mp|Sk4mp]] ([[Dyskusja wikipedysty:Sk4mp|dyskusja]]) 19:59, 5 lut 2020 (CET)
== Terms of Use ==
Hello, Persino
What is this user doing?
https://pl.wikibooks.org/w/index.php?title=Ksi%C4%85%C5%BCka_kucharska/Podp%C5%82omyki_%C5%9Bwi%C4%99tokrzyskie&action=history
That sort of editing is against [[wmf:Terms of Use]].
Making such edits, mass reverting on ones *own* edits, inserting a dot and then removing it...
I sincerely hope you might consider informing the user in the Polish language.
Hope this helps everybody in question.
Thanks for a reply if you chose to.
Truly yours, -- [[Wikipedysta:Nesmir Kudilovic|Nesmir Kudilovic]] ([[Dyskusja wikipedysty:Nesmir Kudilovic|dyskusja]]) 17:01, 14 lut 2020 (CET)
== Przenoszone strony ==
Tak. Trzeba je skasować. [[Wikipedysta:Świętokrzyskie3|Świętokrzyskie3]] ([[Dyskusja wikipedysty:Świętokrzyskie3|dyskusja]]) 10:09, 25 kwi 2020 (CEST)
== Kategoria Wikizeszyty ==
Bo to coś innego... To osobny wikiprojekt i musimy kierować pod konkretne zasoby nauczycieli, którzy będą z tego korzystać.
Omówię to z kolegami i koleżankami i zwrócę uwagę na twoją uwagę :) [[Wikipedysta:Klarqa|Klarqa]] ([[Dyskusja wikipedysty:Klarqa|dyskusja]]) 13:09, 12 maj 2020 (CEST)
== Szablon [[Szablon:sr|sr]] ==
Wydaje się w porządku, ale trzeba to potem sprawdzić na jakieś większej książce. Gdy to tworzyłem, to sprawdzałem na
[[VHDL/Spis treści]] i tam to nie powoduje błędów. Trzeba teraz wziąć jakąś książkę z rozdziałami i podrozdziałami i tam
sprawdzić, czy Twoja zmiana ma, że tak powiem, "ręce i nogi".
A i jeżeli odpowiadam w złym miejscu, to przepraszam, ale na Wiki to byłem baaaaaardzo dawno temu i już zapominałem jak komunikuje się tu
na stronach dyskusji :(. [[{{ns:user}}:Felix|Felix]] ([[{{ns:user talk}}:Felix|dyskusja]] <small>•</small> [[Special:Contributions/Felix|edycje]]) 17:00, 22 maj 2020 (CEST)
== Przenosiny ==
Ja jeszcze nie mam takich uprawnień, żeby przenosić artykuły. [[Wikipedysta:Snd125671|Snd125671]] ([[Dyskusja wikipedysty:Snd125671|dyskusja]]) 17:35, 12 cze 2020 (CEST)
== usunięcie [[Książka kucharska/Wuzetki II]] ==
Zapomniałam wstawić szablon zintegrowany. Teraz już [https://pl.wikibooks.org/wiki/Specjalna:Linkuj%C4%85ce/Ksi%C4%85%C5%BCka_kucharska/Wuzetki_II linkuje] . [[Wikipedysta:SpiderMum|SpiderMum]] ([[Dyskusja wikipedysty:SpiderMum|dyskusja]]) 16:57, 20 cze 2020 (CEST)
Przyjrzałam się dokładniej tutejszej wersji szablonu {{s|zintegrowany}} i... czy ten szablon został przetłumaczony z automatu i porzucony? Czemu tylko z "siostrzanych projektów Wikibooks lub różnych ich wersji językowych" a nie np. pl.wikibooks.org? Czemu "pochodzi w całości" a nie np. "częściowo"? [[Wikipedysta:SpiderMum|SpiderMum]] ([[Dyskusja wikipedysty:SpiderMum|dyskusja]]) 17:05, 20 cze 2020 (CEST)
* Hej. Widzę, że popełniłam małe ''faux pas''. Nie zauważyłam, że to Ty pracowałeś nad tym szablonem. Mam nadzieję, że Cię jakoś nie uraziłam. Tak więc, teraz jest "Ten artykuł jest efektem integracji z inną jednostką na Wikibooks. Zawarta choćby częściowo tu treść pochodzi w całości z artykułu". Może drugie zdanie dać takie jak [https://pl.wikipedia.org/wiki/Szablon:Zintegrowany tu]: "Zawarta tu treść pochodzi częściowo z artykułu". Słowa "jednostka" nie oceniam, bo nie znam tutejszej nomenklatury. [[Wikipedysta:SpiderMum|SpiderMum]] ([[Dyskusja wikipedysty:SpiderMum|dyskusja]]) 18:20, 22 cze 2020 (CEST)
* Dobra, zapowiada się na dłuższą dyskusję:). Proszę o (ewentualne) kontynuowanie jej w Wikibooks - przeniosłam Twoje wpisy na [[Dyskusja_wikipedysty:SpiderMum|moją tutejszą stronę dyskusji]]. Po drugie, ponownie proszę o odtworzenie strony [[Książka kucharska/Wuzetki II]]. Powód: zintegrowałam artykuł [[Książka kucharska/Wuzetki II]] z artykułem [[Książka kucharska/Wuzetki]], w ten spobób, że po pierwszym zostało tylko przekierowanie. Jest to przypadek opisany tu [https://pl.wikipedia.org/w/index.php?title=Pomoc:Integracja&oldid=57143097#Krok_2A._Stary_artyku%C5%82_%C5%BAr%C3%B3d%C5%82owy_pozostaje_jako_przekierowanie Krok 2A. Stary artykuł źródłowy pozostaje jako przekierowanie]. Czy w Wikibooks przyjęliście inny podział na wydzielone/zintegrowane? [[Wikipedysta:SpiderMum|SpiderMum]] ([[Dyskusja wikipedysty:SpiderMum|dyskusja]]) 19:11, 22 cze 2020 (CEST) PS Bardzo Cię przepraszam za ten chaos w edycjach - trochę się spieszę i takie są efekty.
*: Dzięki. [[Wikipedysta:SpiderMum|SpiderMum]] ([[Dyskusja wikipedysty:SpiderMum|dyskusja]]) 17:48, 23 cze 2020 (CEST)
== Linki na stronie głównej ==
Cześć! Poproszę o zmianę linków na stronie głównej. Chodzi o linki do stron Fundacji i Stowarzyszenia. Zmień kod tak samo, jak zrobił to Peter Bowman na Wikisłowniku: [[wikt:Specjalna:Diff/7409893]]. Z góry dziękuję. [[Wikipedysta:Tar Lócesilion|Tar Lócesilion]] ([[Dyskusja wikipedysty:Tar Lócesilion|queta!]]) 23:45, 28 sie 2020 (CEST)
== Potrzebuję pomocy :) ==
Hej, czy moglbys mi pomoc? Chodzi o ksiazke kucharska.
: 1. Chcialabym dodac nowy rozdzial (cos w rodzaju "Kucharskie Vadamecum"), w ktorym znalazlyby sie praktyczne informacje na temat roznych rzeczy przydatnych przy gotowaniu, np:
:: 1.1. Dzial przyprawy, a w nim np. opis bazylii - do jakich potraw sie nadaje, z jakimi innymi przyprawami sie laczy, jak ja prawidlowo przygotowac przyd uzyciem, jak i jak dlugo mozna ja przechowywac itp.
:: 1.2. Dzial miesa, a w nim informacje na temat roznych mies, np. wolowina - poszczegolne czesci wolu, jakie czesci do jakich potraw sie nadaja, czy lepiej jest je piec, gotowac, smazyc czy grillowac, czym co przyprawiac itp.
:: 1.3. Dzial warzywa, a w nim informacje na temat roznych warzyw, np. pieczarki - jak je prawidlowo smazyc, zeby nie zaczely sie gotowac we wlasnym sosie, do jakich potraw sie nadaja, jakie przyprawy do nich pasuja itp.
:: 1.4. ...
: 2. Ponadto na wstepie ksiazki kucharskiej (https://pl.wikibooks.org/wiki/Ksi%C4%85%C5%BCka_kucharska) jest spis tresci, a poszczegolne kategorie sa pisane raz duza raz mala litera - moglbys to jakos poprawic? (np. "dania miesne" vs. "Kuchnia wegetarianska" i inne)
Pozdrawiam serdecznie --[[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 12:25, 30 sie 2020 (CEST)
:: Dziekuje za wskazowke! --[[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 15:57, 31 sie 2020 (CEST)
== Proszę sprawdzić email ==
Witaj, {{PAGENAME}}: Proszę sprawdzić email! Temat: "The Community Insights survey is coming!" Jeśli masz jakieś pytania, wyślij e-mail na adres surveys@wikimedia.org.
(English: Please check your email and spam! Subject is "The Community Insights survey is coming!" If you have questions, email surveys@wikimedia.org.)
Sorry for the inconvenience, [[:pl:Special:Diff/60928651|you can read my explanation here]].
[[Wikipedysta:MediaWiki message delivery|MediaWiki message delivery]] ([[Dyskusja wikipedysty:MediaWiki message delivery|dyskusja]]) 18:24, 25 wrz 2020 (CEST)
<!-- Wiadomość wysłana przez User:Samuel (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Samuel_(WMF)/Community_Insights_survey/pl&oldid=20478443 -->
== Przepisy z numerkami ==
Móc, zapewne mógłbym, ale jak na jednego to duuuża praca, a ja nie wiem, jak długo tu pobędę, na co dzień będąc zaangażowany bardziej w innych projektach wikipedyjnych. Kulinariami zająłem się trochę jako przerywnikiem w dotychczasowej działalności, choć nie kryję, że wypełnianie Książki kucharskiej różnymi ciekawymi daniami obcych kuchni sprawiło mi przyjemność. Nieco tych "numerkowych" poprawiłem pod drodze, ale to spore zadanie, a w sumie wolałbym się tu skoncentrować na merytorycznych tekstach niż na redakcyjnym porządkowaniu. Niemniej, co jeszcze mogę, to zrobię. Pozdrawiam - [[Wikipedysta:Cyborian|Cyborian]] ([[Dyskusja wikipedysty:Cyborian|dyskusja]]) 15:57, 8 lis 2020 (CET)
== odp. Onomastyka ==
Dziekuje!--[[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 15:16, 5 sty 2021 (CET)
== Odp:Książka w przestrzeni nazw Kategoria ==
;[{{fullurl:Dyskusja_wikipedysty:Superjurek|oldid=401614}}#Książka_w_przestrzeni_nazw_Kategoria Odp:Książka w przestrzeni nazw Kategoria]
W odpowiedzi na Twoje pytanie. Ten zabieg, który wzbudził Twoje poważne wątpliwości jest jak najbardziej przemyślany. Zdaję sobie sprawę, że do tworzenia książek służy przestrzeń główna, ale ideą tego podręcznika, jest żeby na wszystkie zadania, które powstaną były katalogowane i automatycznie sortowane według ich odniesień do podstawy programowej. Taką opcję w naturalny sposób zapewniają strony kategorii. W przestrzeni głównej, którą również zamierzam wykorzystać, umieszczam kolejne zadania. Ich kolejność numeryczna ma w tym przypadku wynikać tylko i wyłącznie z ich kolejności powstawania. Za przykład mogę podać [[Zbiór zadań maturalnych/Biologia/Zadania/1|Zadanie 1]]. Kiedy rozwiniesz ramkę z napisem klucz odpowiedzi, to wyskoczy Ci odniesienie do podstawy programowej zarówno pod kątem celów kształcenia i treści nauczania. Podstawa programowa w polskim systemie oświaty ma charakter kaskadowy, z tego też powodu zastosowałem kaskadowe kategorie. Szablony typu <code><nowiki>{{PP2017/LO/Biologia/PR/C/III/2}}</nowiki></code> lub <code><nowiki>{{PP2017/LO/Biologia/PR/T/XII/1/4}}</nowiki></code> są szablonami wypełniającymi w formatce klucza odpowiedzi odpowiednie odniesienie do podstawy programowej i jednocześnie przypisują kaskadowo dla tego zadania odniesienia do kolejnych poziomów podstawy programowej. [[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 09:31, 9 kwi 2021 (CEST)
:Dodam jeszcze, że jest to inicjatywa, którą w takim kształcie chciałbym wykorzystać do wsparcia merytorycznego innych nauczycieli. W tym zbiorze zadań zamierzam tworzyć dla maturzystów autorskie zadania, zachęcać do tego innych nauczycieli i zlecać jako pracę dodatkową licealistom, aby takie zadania próbowali zredagować. Na Wikibooks to jest o tyle dobre, że w razie gdyby zadanie zawierało błędy merytoryczne, będzie można je skorygować. Niekonwencjonalne wykorzystanie kategorii uważam tu za kluczowe element tego podręcznika, bo podstawa programowa przez swój kaskadowy charakter wymaga możliwości sortowania tych zadań. Dzięki temu nauczyciele będą mogli tworzyć własne arkusze próbnych matur albo ćwiczeń na lekcje, wybierając je z odpowiedniej kategorii. Teraz to nie jest jeszcze takie widoczne, ale jak powstanie z 300 lub 600 zadań, to te kategorie będą nieodzowne. Jak widzisz podstawa na powyższych szablonach, tutaj musi być zastosowana chirurgiczna precyzja, zadanie 1 w tym przypadku realizuje:
*<code>PP2017</code> podstawę programową z roku 2017
:*<code>LO</code> dla liceum ogólnokształcącego
::*<code>Biologia</code> z Biologii
:::*<code>PR</code> z poziomu rozszerzonego
::::*<code>C</code> z celów kształcenia
:::::*<code>III</code> rozdziału III
::::::*<code>2</code> punktu 2
[[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 09:45, 9 kwi 2021 (CEST)
Co do Wikijunior, to w tym przypadku ono również nie ma zastosowania, bo jest inicjatywą przewidzianą dla dzieci do lat 12, a ten zbiór zadań zaadresowany jest do maturzystów.[[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 10:00, 9 kwi 2021 (CEST)
== pytanie o funkcjonalność JavaScriptu do Zbioru zadań maturalnych ==
Cześć, zwracam się z pytaniem o to, co powinienem zrobić, aby zadziałał mi skrypt [[Wikipedysta:Superjurek/common.js]] podczas zapisywania nowego zadania maturalnego? Kod zawarty w tym skrypcie ma wymuszać automatyczne odświeżanie poniższych 2 stron:
*[[Zbiór zadań maturalnych/Biologia]]
*[[Zbiór zadań maturalnych/Biologia/Zadania]]
Pytanie, jak zrobić żeby odświeżał te dwie strony przy zapisaniu nowego zadania?
Jeśli uzyskałbym ten efekt, to przestałoby być konieczne ręczne odświeżanie tych dwóch stron. Myślę tu o tym, żeby skrypt ułatwiał życie innym nauczycielom biologii i licealistom chcących wrzucić kilka zadanek maturalnych. Po opublikowaniu jednego musiałby pamiętać o odświeżeniu, co dla niewprawionych użytkowników chcących tylko wrzucić zadanko może być zniechęcające. Ponadto, jeśli nie odświeży, to licznik będzie przekierowywał następnych do numeru zadania już istniejącego, zamiast do numeru następnego (czyli jeszcze nieistniejącego).
Stąd też mój zamiar postawienia tego skryptu.
Z góry dziękuję za pomoc
[[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 16:29, 29 kwi 2021 (CEST)
:{{Ping|Superjurek}} Już się szykuje skrypt do aktualizowania danej strony i do trybu ciemnego!
:* Aktualizacja strony, skrypt: [[Wikipedysta:Persino/Gadget-StronicowyParser.js/AktualizacjaStron.js]].
:* Tryb ciemny, skrypt: [[Wikipedysta:Persino/Gadget-StronicowyParser.js/Tryb_ciemny.js]]. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:19, 27 maj 2022 (CEST)
== Prośba o pomoc w naprawieniu modułu. ==
Cześć Persino, zwracam się do Ciebie z prośbą o pomoc – bo już nieraz umiałeś wyciągnąć mnie z technicznych tarapatów :) Tym razem nie na Wikibooks, ale na Wikipedii. Chodzi o problem opisany w [[w:Dyskusja modułu:Lewandowska&Malik1991]]. Z góry dziękuję za pomoc! Pozdrawiam [[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 12:58, 29 sie 2021 (CEST)
== Ad:Kategoria:Polecane książki/Terapia zajęciowa ==
;[https://pl.wikibooks.org/w/index.php?title=Kategoria:Polecane_ksi%C4%85%C5%BCki/Terapia_zaj%C4%99ciowa&oldid=407198#bodyContent Ad:Kategoria:Polecane książki/Terapia zajęciowa]
No właśnie nie jestem pewien kategorii. W klasyfikacji zawodów terapeuta jest klasyfikowany jako " inny średni personel do spraw zdrowia" więc może medycyna? Gdzie byłby podręcznik pielęgniarstwa przykładowo? W Wikipedii artykuł mamy w pedagogice specjalnej. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 13:47, 21 paź 2021 (CEST)
:Terapia to jest coś wspomagającego leczenie w medycynie konwencjonalnej, ale nie jest samą medycyną. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:50, 21 paź 2021 (CEST)
::Już poprawiłem na kategorię: Kategoria:Medycyna. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:59, 21 paź 2021 (CEST)
== How we will see unregistered users ==
<section begin=content/>
Cześć!
Otrzymujesz tę wiadomość, ponieważ jesteś administratorem w jednym z projektów Wikimedia.
Obecnie, kiedy ktoś edytuje stronę, nie będąc zalogowanym, w historii wyświetla się jego adres IP. Jak być może już wiesz, nie będziemy mogli tego robić w przyszłości. Jest to decyzja prawników Fundacji Wikimedia, spowodowana zmianami w przepisach o ochronie prywatności w internecie.
Zamiast adresu IP będziemy wyświetlać maskowaną tożsamość. Ty jako administrator{{gender:{{ROOTPAGENAME}}||ka|(-ka)}} '''będziesz nadal {{gender:{{ROOTPAGENAME}}|mógł|mogła|mógł/mogła}} zobaczyć oryginalne IP'''. Utworzymy nowe uprawnienie, przeznaczone dla osób, które potrzebują widzieć pełen adres, aby walczyć z wandalizmami, spamem itp. bez uprawnień administratorskich. Patrolujący będą mogli zobaczyć fragment IP również bez tego uprawnienia. Pracujemy również nad [[m:IP Editing: Privacy Enhancement and Abuse Mitigation/Improving tools|lepszymi narzędziami]], wspierającymi w walce przeciwko nadużyciom.
Jeśli jeszcze o naszych działaniach nie {{gender:{{ROOTPAGENAME}}|czytałeś|oczytałaś|czytałeś(-aś)}}, możesz się z nimi [[m:IP Editing: Privacy Enhancement and Abuse Mitigation|zapoznać na Meta]]. Aby nie przegapić technicznych zmian na wiki, możesz [[m:Global message delivery/Targets/Tech ambassadors|zasubskrybować]] cotygodniowe wydania [[m:Tech/News|Tech News]].
Mamy [[m:IP Editing: Privacy Enhancement and Abuse Mitigation#IP Masking Implementation Approaches (FAQ)|dwa pomysły]] na implementację maskowania adresów IP. '''Chętnie poznamy twoją opinię'''. Daj nam znać [[m:Talk:IP Editing: Privacy Enhancement and Abuse Mitigation|na stronie dyskusji]], co sądzisz na ich temat i tego, który pomysł się sprawdzi lepiej na twojej wiki, teraz i w przyszłości. Możesz napisać w swoim języku. Sugestie są dostępne od października, a ostateczną decyzję podejmiemy po 17 stycznia.
Dziękujemy.
/[[m:User:Johan (WMF)|Johan (WMF)]]<section end=content/>
19:18, 4 sty 2022 (CET)
<!-- Wiadomość wysłana przez User:Johan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/Admins2022(6)&oldid=22532666 -->
== [[Teoria grup przemiennych]] ==
Zostaje mi tylko podziękować. (-: --[[Wikipedysta:Tarnoob|Tarnoob]] ([[Dyskusja wikipedysty:Tarnoob|dyskusja]]) 16:07, 11 mar 2022 (CET)
== Nawigacja ==
Tak jak ostatnio, wielkie dzięki. --[[Specjalna:Wkład/2A01:11CF:42F:7A00:81D8:ECCB:3DAE:1303|2A01:11CF:42F:7A00:81D8:ECCB:3DAE:1303]] ([[Dyskusja wikipedysty:2A01:11CF:42F:7A00:81D8:ECCB:3DAE:1303|dyskusja]]) 19:00, 15 kwi 2022 (CEST)
== Szablon {{s|Wolumin}} ==
Dzięki za informację. Musze chyba więcej poczytać o polskich kategoriach. Nie wiem jak edytowac recznie kategorie, są jakby ukryte. Dzięki [[Wikipedysta:Soul windsurfer|Soul windsurfer]] ([[Dyskusja wikipedysty:Soul windsurfer|dyskusja]]) 17:21, 30 lis 2022 (CET)
: czy mógłbyś mi wskazać gdzie mogę poczytać o kategoriach. Widziałem stronę szablony wolumin ale to nie rozwiazało moich watpliwości. Dzięki
:: dzięki. Czy istnieje narzędzie, które doda taki wpis do każdej strony książki ? --[[Wikipedysta:Soul windsurfer|Soul windsurfer]] ([[Dyskusja wikipedysty:Soul windsurfer|dyskusja]]) 07:08, 2 gru 2022 (CET)
== Poprawki dla urządzeń mobilnych ==
Cześć. Chciałbym poprawić działanie na urządzeniach mobilnych. Widzę, że głównie Ty tutaj edytujesz, więc pytanie czy masz przeciwko? Chodzi głównie o elastyczność stron (żeby strony się ściskały). [[Wikipedysta:Nux|Nux]] ([[Dyskusja wikipedysty:Nux|dyskusja]]) 20:04, 5 gru 2022 (CET)
:Aha. Jakby co jestem już adminem interfejsu m.in. na Wikisource i na Wikipedii. [[Wikipedysta:Nux|Nux]] ([[Dyskusja wikipedysty:Nux|dyskusja]]) 20:07, 5 gru 2022 (CET)
:A mógłbyś odbezpieczyć ten szablon: {{s|Strona główna/Siostrzane projekty Wikibooks}}. Ew. wystarczy mi jak dodasz tam jakąś klasę w pierwszym wywołaniu ElastycznaKolumna. [[Wikipedysta:Nux|Nux]] ([[Dyskusja wikipedysty:Nux|dyskusja]]) 21:30, 5 gru 2022 (CET)
::OK, skończyłem. Powinno teraz wyglądać przyzwoicie :-). Pozdrawiam, [[Wikipedysta:Nux|Nux]] ([[Dyskusja wikipedysty:Nux|dyskusja]]) 22:37, 5 gru 2022 (CET)
:::Hm... No nie jest lepiej. Teraz strona jest za szeroka w wersji mobilnej. A poza tym jak przenosisz, to wypadałoby podać autora ;-) [[Wikipedysta:Nux|Nux]] ([[Dyskusja wikipedysty:Nux|dyskusja]]) 11:28, 6 gru 2022 (CET)
::::No wycofaj swoje zmiany to będzie dobrze. Nie wiem po co zmieniasz jak nie testujesz ;-P [[Wikipedysta:Nux|Nux]] ([[Dyskusja wikipedysty:Nux|dyskusja]]) 11:40, 6 gru 2022 (CET)
:* OK, teraz jest w porządku. Dzięki za dodanie informacji o autorach :).
:* Nawiasem mówiąc myślę, że w tych różnych style.css wystarczy niższy poziom zabezpieczenia. Wystarczy jak nie będzie można zmieniać tego anonimowo. Ew. tylko redaktorzy, o ile używacie tutaj takiej rangi/poziomu uprawnień. Jak widzisz po moich zmianach i tak można dodać CSS do strony głównej inną drogą ;). Możesz też zrobić zabezpieczenie kaskadowe, ale to może zabezpieczyć znacznie więcej niż jest sensowne. Niektóre strony główne w ogóle nie są zabezpieczone.
:* Aha. Jakbyś chciał testować wersję mobilną, to w tzw. devtools (CTRL+SHIFT+I) jest symulacja widoku z telefonu komórkowego. Tylko musiałbyś jeszcze wchodzić na specjalny adres [https://pl.m.wikibooks.org/ pl.m...]. Sama zmiana szerokości okna nie wystarczy. Możesz mi zaufać. Zajmuję się tym od jakichś 20 lat (od czasów jak jeszcze nie było DevTools i nie było Chrome). Jakby co więcej o używania symulacji smartfona znajdziesz tutaj: https://firefox-source-docs.mozilla.org/devtools-user/responsive_design_mode/ Symulacja nie oddaje wszystkich aspektów (np. ekranu dotykowego), ale daje rozsądne przybliżenie doświadczenia. Możesz spróbować dostosować inne ważne strony w ten sposób.
:[[Wikipedysta:Nux|Nux]] ([[Dyskusja wikipedysty:Nux|dyskusja]]) 14:49, 6 gru 2022 (CET)
== Tabulator ==
Hej, czy moglbys mi pomoc? Nie wiem, czy istnieje polecenie dla tabulatorow (tak jak np. ''<''''br''''>'' dla linefeed). Jezeli tak, to jaki jest ich kod? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:00, 29 sty 2023 (CEST)
: Dziekuje!
== Szablon tabeli w szablonie quizu ==
Hej, przeszkadzam Ci? Jezeli tak, to po prostu powiedz. Jezeli nie, to mam klopot - wyprobowalam wszystkie mozliwosci tabulatorow, ktore znalalam w linku od Ciebie, ale zaden z nich nie dziala tak, jak bym to sobie wyobrazala. Katastrofa. Teraz chcialabym osiagnac cel "tabelkowosci" poprzez umieszczenie szablonu tabeli w szablonie quizu. Ale to najwyrazniej nie dziala - pojawia sie "blad w skladni". Probowalam roznych rzeczy (np. <nowiki><quiz display=simple> { |type="[]"}</quiz></nowiki> albo <nowiki><quiz display=simple> { |type="()"})</quiz></nowiki>. ale nic nie pomaga. Czy moglbys mi jakos pomoc?
* Przyklad: [https://pl.wikibooks.org/wiki/Niemiecki/Exc/Imperfekt] [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:00, 29 sty 2023 (CEST)
== Chcę dodać sekcję do artykułu Brydżowe tablice prawdopodobieństwa ==
Witaj, Persino.
Zwracam się do Ciebie jako admina Wikibooks.
Jakieś dwa lata temu poprawiłem stronę https://pl.wikibooks.org/wiki/Bryd%C5%BCowe_tablice_prawdopodobie%C5%84stwa, zmieniając prawie wszystkie prawdopodobieństwa w części Rozkład kart jednego koloru u przeciwników (uzasadnienie zmian podałem w Dyskusji tej strony). Wcześniej uzyskałem obietnicę admina, że nie cofnie moich zmian, mimo że nie będą poparte źródłami (bo sam napisałem arkusz kalkulacyjny, który wyliczył te prawdopodobieństwa). I rzeczywiście ta edycja nie została cofnięta. Nie pamiętam, kto był tym adminem, więc zwracam się do Ciebie: napisałem jeszcze jeden arkusz kalkulacyjny, który wyprodukował tabelę prawdopodobieństw, że mój partner (lub określony z przeciwników) ma k z n kart, których nie mam ja (np. w określonym kolorze). Jest to przydatne w fazie licytacji.
Czy jeśli to zrobię, moja edycja nie zostanie cofnięta? Nie chcę robić tego bez takiej obietnicy, bo jednak konwersja arkusza na tabelę wiki to spora robota. Chyba, że jest automat, który pozwoli na taką konwersję - jeśli tak, to proszę o wskazówki. Arkusz obecnie jest w formacie .ods, ale mogę go zamienić na .xls.
Z góry dziękuję
[[Wikipedysta:MusJabłkowy|MusJabłkowy]] ([[Dyskusja wikipedysty:MusJabłkowy|dyskusja]]) 16:52, 26 lut 2023 (CET)
:Cześć, Persino.
:Udało mi się opanować w oparciu o https://pl.wikipedia.org/wiki/Pomoc:Tabele#Tabela_sformatowana_(zalecany_kod_tabeli) konwersję fragmentu
:arkusza na tabelę wiki - jeśli uznasz poniższy opis za wart tego, to będę wdzięczny za
:zamieszczenie go na tej stronie. Chyba, że mogę to zrobić sam - napisz mi.
:W historii strony "Brydżowe tablice prawdopodobieństwa" może zauważysz, że skasowałem swoją edycję i wkrótce ją ponowiłem. To dlatego, że
:wydawało mi się trudne wygenerowanie tabeli "Prawdopodobieństwa (w %), że partner (lub określony przeciwnik) ma przynajmniej k kart z n
:brakujących (np. w określonym kolorze)" - umiałem wygenerować "Prawdopodobieństwa (w %), że partner (lub określony przeciwnik) ma NAJWYŻEJ
:k kart z n brakujących (np. w określonym kolorze)", która jest mniej wygodna do użycia. Ale wkrótce po opublikowaniu zmian wymyśliłem jak to zrobić i zrobiłem. Niestety
:tym razem zapomniałem wypełnić pole "Wypełnij opis zmian" - mam nadzieję, że osoby czytające Historię zmian domyślą się, że powinien on być
:taki jak dla edycji, którą skasowałem: Dwie nowe tabele przydatne w fazie licytacji.
:'''Konwersja prostokątnego fragmentu arkusza kalkulacyjnego na tabelę wiki'''
:(Wytestowane pod Windows 10 na arkuszu Open Office Calc wersja 4.1.13).
:Być może warto najpierw w arkuszu dopasować format komórek - np. ograniczyć do dwóch miejsc po przecinku; w Open Office Calc
:robi się to tak: [Alt-F] [Komórki] [Zakładka Liczby] [Kategoria Numer] [Opcje Miejsca po przecinku] 2
:Następnie w arkuszu dodaj na lewo od danego obszaru kolumnę wypełnioną napisem |- i skopiuj obszar wraz z tą kolumną do Notatnika.
:Przy kopiowaniu z arkusza do Notatnika kolumny są oddzielane znakiem Tab, ale nie można tego znaku wpisać z klawiatury do pola [Znajdź]
:- zaznacz ten znak w tekście (myszą lub przez [Shift+strzałka]) i naciśnij [Ctrl+H] -
:wypełni to pole [Znajdź] znakiem Tab; w polu [Zamień na] wpisz | i kliknij [Zamień wszystko]. Następnie skopiuj całość do
:Open Office Writera (bezpłatny) i podmień wyrażenia regularne: \| na \n| (bo znaczniki muszą być w nowych wierszach; można by umieszczać
:znacznik || bez nowego wiersza, ale wtedy trudniej zrobić globalną podmianę); wyrażenia regularne
:włącza się za pomocą przycisku [Więcej opcji]. Po wykonaniu [Zamień wszyst.] na początku wstaw wiersz {| class="wikitable"
:i ewentualnie |+ Tytuł
:a na końcu wiersz |}
:Jeśli pierwszy wiersz obszaru ma być traktowany jak nagłówki, podmień w odpowiednich wierszach | na ! (trzeba kliknąć [Zamień] tyle razy
:ile kolumn ma tabela). Jeśli masz aktywne wyrażenia regularne, to w polu [Znajdź] musisz mieć \|
:Tak wyprodukowany tekst można wkopiować do Wiki.
:Puste komórki w kopiowanej części arkusza wyprodukują puste kratki tabeli - czasem to dobre a czasem złe.
:[[Wikipedysta:MusJabłkowy|MusJabłkowy]] ([[Dyskusja wikipedysty:MusJabłkowy|dyskusja]]) 11:20, 27 lut 2023 (CET)
== Ad:Dyskusja wikipedysty:Salicyna ==
;[https://pl.wikibooks.org/w/index.php?title=Dyskusja_wikipedysty%3ASalicyna&diff=457257&oldid=292350&diffmode=source#bodyContent Ad:Dyskusja wikipedysty:Salicyna]
Cześć, jaki cel miała ta edycja? Dostałam tylko niepotrzebnie powiadomienie o tym że napisałeś na mojej dyskusji, myślałam już że coś ważnego... Nudzi ci się? [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 09:07, 5 kwi 2023 (CEST)
:Nie było żadnego błędu technicznego. Takie edycje, polegające tylko na porządkowaniu kodu, można ewentualnie wykonywać przy okazji innej, znaczącej edycji, a nie spamować innym użytkownikom niepotrzebnymi powiadomieniami że ktoś do nich napisał... [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 09:25, 5 kwi 2023 (CEST)
::Możesz przestać spamować? [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 09:35, 5 kwi 2023 (CEST)
:::To już zakrawa na czystą złośliwość z twojej strony... Czy naprawdę nie rozumiesz, że jak edytujesz czyjąś stronę dyskusji, to ta osoba dostaje czerwone powiadomienie o nowych wiadomościach i e-maila o tym że ktoś do niej napisał – i wchodzi specjalnie na Wikibooks sprawdzić co od niej chcesz po ty by zobaczyć że po raz szesnasty tego samego dnia poprawiasz tylko jakąś bzdurkę techniczną, która równie dobrze mogłaby zostać jak była i nic by się nie stało? Dostałam dziś 16 maili i powiadomień że do mnie piszesz... [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 21:09, 5 kwi 2023 (CEST)
== Historia Słowacji ==
To nie była żadna kopia z Wikipedii, tylko świetna książka. [[Wikipedysta:ZAJCOPEDIA|ZAJCOPEDIA]] ([[Dyskusja wikipedysty:ZAJCOPEDIA|dyskusja]]) 14:42, 30 kwi 2023 (CEST)
: {{Ping|ZAJCOPEDIA}} Ale fragmentami ściągnięta z tego serwisu. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:44, 30 kwi 2023 (CEST)
::Może i tak, ale po co ją od razu usuwać? [[Wikipedysta:ZAJCOPEDIA|ZAJCOPEDIA]] ([[Dyskusja wikipedysty:ZAJCOPEDIA|dyskusja]]) 14:45, 30 kwi 2023 (CEST)
::: {{Ping|ZAJCOPEDIA}} To wygląda na NPA. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:50, 30 kwi 2023 (CEST)
::::Na co? [[Wikipedysta:ZAJCOPEDIA|ZAJCOPEDIA]] ([[Dyskusja wikipedysty:ZAJCOPEDIA|dyskusja]]) 14:56, 30 kwi 2023 (CEST)
::::: {{Ping|ZAJCOPEDIA}} NPA to naruszenie, praw autorskich, które tutaj należały do {{NS|pk=d|l=tak|k=w}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:26, 30 kwi 2023 (CEST).
== Czy mogę opublikować artykuł o nowej wersji E-notacji? ==
Witaj, Persino.
Mam pomysł dotyczący modyfikacji E-notacji, tak by była wygodniejsza w użyciu. Czasopisma matematyczne nie chcą go opublikować, bo nie pasuje do ich tematyki (nie dziwię się). Czy mógłbym go opublikować w Wikibooks?
Na razie mam spisaną wersję angielską, ale jeśli to konieczne, to mogę ją przetłumaczyć na polski.
Czy będę mógł w haśle Notacja naukowa w Wikipedii zrobić link do tego artykułu? To by znacznie podniosło liczbę czytelników.
[[Wikipedysta:MusJabłkowy|MusJabłkowy]] ([[Dyskusja wikipedysty:MusJabłkowy|dyskusja]]) 14:24, 23 maj 2023 (CEST)
A czy w polskiej Wikibooks mogę publikować po angielsku?
[[Wikipedysta:MusJabłkowy|MusJabłkowy]] ([[Dyskusja wikipedysty:MusJabłkowy|dyskusja]]) 16:18, 23 maj 2023 (CEST)
:Witaj, Persino.
:Opublikowałem polską wersję artykułu [[Notacja West-East i Bin]]. Początkowo chyba wyświetlała się dobrze, ale ostatnio na dwóch komputerach zamiast wzorów pokazuje się komunikat:
:Parser nie mógł rozpoznać (SVG (MathML może zostać włączone przez wtyczkę w przeglądarce): Nieprawidłowa odpowiedź („Math extension cannot connect to Restbase.”) z serwera „http://localhost:6011/pl.wikibooks.org/v1/v1/”:): {\displaystyle x}
:- ten wzór miał wypisywać x w trybie matematycznym; inne wzory generują podobny komunikat. Czy wiesz, co może być tego przyczyną i jak ją usunąć? Komunikat proponuje wtyczkę do przeglądarki, ale jaką? Jak ją zainstalować w Chrome'ie?
:Najdziwniejsze, że gdy wchodzę w edycję wersji źródłowej i patrzę na podgląd, to jest wszystko w porządku (zarówno w podglądzie w prawym oknie jak po kliknięciu przycisku Podgląd).
:Z góry dziękuję za pomoc.
:[[Wikipedysta:MusJabłkowy|MusJabłkowy]] ([[Dyskusja wikipedysty:MusJabłkowy|dyskusja]]) 12:01, 11 cze 2023 (CEST)
::Wykonałem pustą edycję - kliknąłem Edytuj i Opublikuj zmiany. Rzeczywiście pomogło na błąd parsera, ale nadal każdy wzór math jest w osobnej linii, a to mi nie odpowiada. Po kliknięciu Edytuj jest tak jak chcę. Poradź jak zrobić, żeby normalnie się pokazywało tak jak w prawym oknie po Edytuj, albo zgódź się na obecną pierwszą linijkę artykułu.
::[[Wikipedysta:MusJabłkowy|MusJabłkowy]] ([[Dyskusja wikipedysty:MusJabłkowy|dyskusja]]) 13:12, 12 cze 2023 (CEST)
== Propozycja skryptów ułatwiających pracę zawodową ==
Cześć, opracowałem wczoraj taki oto skrypt w LUA. Ideą mu przyświecającą jest stworzenie kalkulatora do rozmieniania pieniędzy, który każdy może sobie ściągnąć jako element poradnika.
Kod źródłowy wygląda tak:
<syntaxhighlight lang=lua line>
function calculateNominals(amount)
local nominals = {500, 200, 100, 50, 20, 10, 5, 2, 1, 0.5, 0.2, 0.1, 0.05, 0.02, 0.01}
local result = {}
for _, nominal in ipairs(nominals) do
local count = math.floor(amount / nominal)
if count > 0 then
table.insert(result, {nominal = nominal, count = count})
amount = amount - (nominal * count)
end
end
return result
end
-- Przykładowe użycie:
local amount = 123.45
local result = calculateNominals(amount)
print("Kwota:", amount)
print("Nominały:")
for _, entry in ipairs(result) do
print(entry.nominal, "x", entry.count)
end
</syntaxhighlight>
w góry dziękuję za Twoją opinię :)
[[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 10:21, 21 cze 2023 (CEST)
== Ad:Angielski ==
;[https://pl.wikibooks.org/w/index.php?title=Angielski&diff=next&oldid=464709#bodyContent Ad:Angielski]
Dzięki za doklejenie tego linku do wstępu. Jestem trochę załamany brakiem standaryzacji w podręcznikach językowych. Będę się starał wyrównywać. W wytycznych znalazłem tylko w [[Pomoc:Tworzenie podręcznika]] że informacyjna podstrona powinna być [[Nazwa podręcznika/O podręczniku]]. Mamy jeszcze jakieś inne tego typu spisane wytyczne? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 17:52, 23 cze 2023 (CEST)
== Licencja ==
[[Wstęp do fizyki jądra atomowego]] w jaki sposób ograniczenie by nie stosować w pracach naukowych da się pogodzić z wolną licencją? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 09:18, 25 cze 2023 (CEST)
== archiwizacja ==
Dzięki za zarchiwizowanie kawiarenki. To był dobry krok bo było tam już strasznie dużo starych wątków. Jednak teraz mam wątpliwości jak kontynuować naszą dyskusję o szablonach. Czy Utworzyć nowy wątek? Czy skopiować cały stary z historii? Jak uważasz? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 16:31, 28 cze 2023 (CEST)
== Licencja - Ogólna teoria względności ==
Poprzednio pisałem ale nie doczekałem się odpowiedzi, o [[Wstęp do fizyki jądra atomowego]] a teraz trafiłem na [[Ogólna teoria względności]]. Tu też zapisałeś w opisie licencji "nie można umieszczać w jakikolwiek formie na czasopismach naukowych, archiwach prac, itp." - jak to można pogodzić z CC:BY-SA? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 16:32, 3 lip 2023 (CEST)
:Problem w tym, że podlinkowana licencja stanowi (w punkcie 8e), że tekst licencji jest kompletny i nie można dodawać dodawać do niego żadnych klauzul. Czyli po dodaniu tych klauzul mamy (a) licencję wewnętrznie sprzeczną i, co ważniejsze, (b) licencję, która nie jest licencją Creative Commons. Zapewne Creative Commons mogłaby w tej sytuacji pozwać autora za bezpodstawne posługiwanie się ich nazwą. [[Wikipedysta:Ankry|Ankry]] ([[Dyskusja wikipedysty:Ankry|dyskusja]]) 21:43, 3 lip 2023 (CEST)
== Odp:Odp. Licencja - Ogólna teoria względności ==
;[{{fullurl:Dyskusja_wikipedysty:Marek_Mazurkiewicz|oldid=466983}}#Odp._Licencja_-_Ogólna_teoria_względności Odp:Odp. Licencja - Ogólna teoria względności]
No ale to jest sprzeczne z licencją i będzie potem stwarzać wątpliwości prawne dla chcącego używać. Czy takie rozwiązanie było z kimkolwiek konsultowane? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 21:57, 3 lip 2023 (CEST)
== Odp:Odp. Licencja - Ogólna teoria względności ==
;[{{fullurl:Dyskusja_wikipedysty:Marek_Mazurkiewicz|oldid=467013}}#Odp._Licencja_-_Ogólna_teoria_względności Odp:Odp. Licencja - Ogólna teoria względności]
Jesteś autorem. Radzę więc usunięcie tego ograniczenia i stosowanie standardowej licencji. Jeżeli nie chcesz i uważasz za konieczne stosowanie takich nie wolnych ograniczeń uważam że materiał nie powinien znajdować się w Wikimediach. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 22:00, 3 lip 2023 (CEST)
== Odp:Odp. Wstęp do fizyki jądra atomowego/Nukleony a budowa jądra atomowego ==
;[{{fullurl:Dyskusja_wikipedysty:Marek_Mazurkiewicz|oldid=467036}}#Odp._Wstęp_do_fizyki_jądra_atomowego/Nukleony_a_budowa_jądra_atomowego Odp:Odp. Wstęp do fizyki jądra atomowego/Nukleony a budowa jądra atomowego]
Umknęła mi odpowiedz i teraz też się nie udało mi doszukać. Rozumiem, że chodzi o tamtą licencję a sprawa już załatwiona. Pytasz czy może być jak w stopce teraz. Moim zdaniem ta adnotacja o licencji jest zbędna. Uważam, że powinien zostać jedynie sposób uznania autorstwa. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 16:03, 4 lip 2023 (CEST)
== Transfer artykułu harcerskiego z Wikipedii na Wikibooks ==
Cześć, pingnąłem Cię w poczekalni na Wikipedii. Jeden z administratorów ponaglił mnie w temacie transferu, którego temat w sumie wyszedł z mojej inicjatywy, ale potrzebuję inspiracji jak się go robi oraz czy jest on do przeprowadzenia w sposób prosty. Podejrzewam że byłby to też dobry przyczynek to utworzenia kroniki harcerskiej na Wikibooks, a w szerszej perspektywie w rejestrze usunięć na Wikipedii moglibyśmy znaleźć na spokojnie i poprzetransferowywać na WB. Co o tym sądzisz? [[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 22:06, 8 paź 2023 (CEST)
: {{Ping|Superjurek}} Masz rację. Już dokonano transferu twojego artykułu, tzn. teraz jest pod adresem: [[Poradnik_harcerski/7_Gdańska_Integracyjna_Drużyna_Harcerska_„Keja”]]. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:48, 8 paź 2023 (CEST)
== Terapia zajęciowa/WIKIBOOKS ==
Tak, pomogło. Teraz strona się już nie pojawia w spisie.
Pozdrawiam, [[Wikipedysta:Azoniasty 220|Azoniasty 220]] ([[Dyskusja wikipedysty:Azoniasty 220|dyskusja]]) 15:56, 20 maj 2024 (CEST)
== Wiesz, kto za to odpowiada? ==
Cześć, <br>
Zaintrygowała mnie sprawa dodania [[Windtaping|mojego podręcznika]] do podręczników polecanych. Nie mam pojęcia, kto mógł to zrobić, dlatego postanowiłem poprosić Cię o pomoc w tej kwestii. <br>
Nie mieszam się w kwestie kategorii - po prostu się na tym nie znam, więc to musiał być ktoś inny. Lecz nie wiem, kto. <br>
Czy mógłbyś wskazać, komu mogę być wdzięczny za to wyróżnienie?
Miłego dnia, <br>
[[Wikipedysta:Azoniasty 220|Azoniasty 220]] ([[Dyskusja wikipedysty:Azoniasty 220|dyskusja]]) 17:16, 20 maj 2024 (CEST)
== Wycofania EKów Azoniastego ==
Użytkownik ten uprawia zwyczajny wandalizm, a tu [https://pl.wikibooks.org/w/index.php?title=Windtaping/Czym_jest_windtaping%3F&diff=prev&oldid=489051 atak osobisty] w opisie diffu. [[Wikipedysta:InternetowyGołąb|InternetowyGołąb]] ([[Dyskusja wikipedysty:InternetowyGołąb|dyskusja]]) 13:34, 29 cze 2024 (CEST)
:: {{Ping|InternetowyGołąb}} Jak dla mnie to jest inny opis praw fizyki, ale książkę zgłoś do {{lr|Poczekalnia|poczekalni}}, aby inni użytkownicy się zapoznali się z tym problemem, czy twoja decyzja jest zasadna, już tak było na {{NS|l=tak}}, że jeden użytkownik kasował wszystkim okładki, a później ten użytkownik został zablokowany przez pracowników Fundacji MediaWiki. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:44, 29 cze 2024 (CEST)
:::Jakby ciebie administrator Nonsensopedii stalkował, też zapewne używałbyś ataków osobistych. Chyba, że masz dużą cierpliwość (mi się skończyła 4 lutego). [[Wikipedysta:Azoniasty 220|Azoniasty 220]] ([[Dyskusja wikipedysty:Azoniasty 220|dyskusja]]) 13:36, 29 cze 2024 (CEST)
:::Rozumiem, a czy rozpatrzysz mój wniosek o blokadę? [[Wikipedysta:InternetowyGołąb|InternetowyGołąb]] ([[Dyskusja wikipedysty:InternetowyGołąb|dyskusja]]) 13:47, 29 cze 2024 (CEST)
:::: Ale najpierw musisz udowodnić na poczekalni, że ta książka jest wandalizmem, ale inni użytkownicy muszą to potwierdzić! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:52, 29 cze 2024 (CEST)
:::::Nie wiem, czy jest sens udowadniać fałsz. Kłamstwo zazwyczaj ma krótkie nogi. [[Wikipedysta:Azoniasty 220|Azoniasty 220]] ([[Dyskusja wikipedysty:Azoniasty 220|dyskusja]]) 13:54, 29 cze 2024 (CEST)
:::::Nie no jasne, mi chodzi teraz o działalność Azoniastego poza windtapping, jego prowokujące opisy diffów. Po prostu przejrzyj wkład. [[Wikipedysta:InternetowyGołąb|InternetowyGołąb]] ([[Dyskusja wikipedysty:InternetowyGołąb|dyskusja]]) 14:42, 29 cze 2024 (CEST)
:::::: {{Ping|InternetowyGołąb}} Gdzie są takie diff'y? Ten użytkownik potrafił znaleźć błędy językowe, dodać coś od siebie w tekstach innych, poza nieudaną próbą w swoim brudnopisie edycji strony głównej projektu {{lr2|Strona główna}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:55, 29 cze 2024 (CEST)
:Hej @[[Wikipedysta:Persino|Persino]]. Użytkownik ten został zablokowany permanentnie na Wikipedii, przez co przeniósł się tutaj (zob. [https://pl.wikibooks.org/w/index.php?title=Wikipedysta:Azoniasty_220&diff=prev&oldid=489024 ten wpis] za co już powinna pójść blokada). To użytkownik uprawiający trolling, zachowujący się niepoważnie i mylący Nonsensopedię z Wikipedią. A utworzone wpisy chyba powinny podchodzić pod to, że wiki nie jest hostingiem na własne opowieści oraz nie jest też blogiem. To wszystko jest do usunięcia, a blokada też się moim zdaniem należy. [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 14:58, 29 cze 2024 (CEST)
::Ponadto, czy nie dostrzegasz naprawdę że [https://pl.wikibooks.org/wiki/Windtaping/Czym_jest_windtaping%3F to] jest zmyślone? :) [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 14:59, 29 cze 2024 (CEST)
::: {{Ping|AramilFeraxa}} Już blokuję, chociaż niektóre wpisy są poprawne, ale macie racje z {{lg|Windtaping}}, cały podręcznik trzeba usunąć! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:04, 29 cze 2024 (CEST)
::::Dzięki. [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 15:17, 29 cze 2024 (CEST)
:::: {{Ping|AramilFeraxa}} Muszę też sprawdzić inne wpisy tego autora! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:44, 29 cze 2024 (CEST)
:::::@[[Wikipedysta:Persino|Persino]] Wraca z adresów IP, zablokuj może tworzenie Windtaping i tą stronę polecane książki. https://guc.toolforge.org/?by=date&user=84.40.140.94 [[Wikipedysta:InternetowyGołąb|InternetowyGołąb]] ([[Dyskusja wikipedysty:InternetowyGołąb|dyskusja]]) 16:57, 12 lip 2024 (CEST)
::::::Jeszcze czego! Na to się nie zgodzimy, po tym, co się dzieje na Nonsie się nie zgodzimy. [[Specjalna:Wkład/84.40.140.94|84.40.140.94]] ([[Dyskusja wikipedysty:84.40.140.94|dyskusja]]) 16:58, 12 lip 2024 (CEST)
== GFDL ==
Hello!
I have noticed that [[:w:en:Wikipedia:Image license migration]] was not completed here. It is easy to do with a bot if you or any other active users have a bot. If not I can do it with my bot.
But perhaps you could check [[Specjalna:Nieużywane_pliki]] first and see if any of the files are no longer needed and can be deleted. [[Wikipedysta:MGA73|MGA73]] ([[Dyskusja wikipedysty:MGA73|dyskusja]]) 18:29, 30 sie 2024 (CEST)
* {{Ping|MGA73}} The files there are unused.
** But the page [[Wikipedysta:Beau.bot/listy/pliki]] is invalid. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:45, 13 wrz 2024 (CEST)
: I created [[Szablon:Cc-by-sa-3.0-migrated]] and tried to translate the line about license migration. Please help check/fix. I think the code used in the license migration should be in English. It is much easier if files are copied to or from Commons or other wikis. Only the visible text should be translated.
: I will create the templates etc. so you can see how the resul will be. Then perhaps it is easier for someone with a bot to judge if they can help. --[[Wikipedysta:MGA73|MGA73]] ([[Dyskusja wikipedysty:MGA73|dyskusja]]) 16:50, 7 wrz 2024 (CEST)
:: I created/changed templates and made an example edit: [[Special:Diff/490081]]. Would anyone like to work on this task?
:: I can probably finish it in 1 hour if I get a bot flag. But it would be great if someone that allready have a bot can do it. --[[Wikipedysta:MGA73|MGA73]] ([[Dyskusja wikipedysty:MGA73|dyskusja]]) 17:28, 7 wrz 2024 (CEST)
::: I made https://quarry.wmcloud.org/query/86177 where the upload date is visible (latest date so file may be eligible even if uploaded after August 2009). The files are in [[:Kategoria:Wikibooks license migration candidates]] ({{Ping|MGA73}} Now: [[:Kategoria:Pliki oczekujące na przeniesienie do Commons]]) untill they are fixed. --[[Wikipedysta:MGA73|MGA73]] ([[Dyskusja wikipedysty:MGA73|dyskusja]]) 21:13, 9 wrz 2024 (CEST)
* {{Ping|MGA73}} Do it with your bot, because that's not what I'm for, that's what biorocrats are for.[[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:45, 13 wrz 2024 (CEST)
:: Thank you. Just to be sure. Should I edit without a bot flag or should I request a bot flag on meta? --[[Wikipedysta:MGA73|MGA73]] ([[Dyskusja wikipedysty:MGA73|dyskusja]]) 20:20, 13 wrz 2024 (CEST)
::: {{Ping|MGA73}} You should ask for the bot flag on the meta with the flight attendant. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:45, 13 wrz 2024 (CEST)
:::: Thank you. Done! --[[Wikipedysta:MGA73|MGA73]] ([[Dyskusja wikipedysty:MGA73|dyskusja]]) 22:40, 13 wrz 2024 (CEST)
== Nieakceptowalny język ==
[https://pl.wikibooks.org/w/index.php?title=Dyskusja_Wikibooks%3AStrona_g%C5%82%C3%B3wna&diff=490038&oldid=489708 diff] [[Wikipedysta:InternetowyGołąb|InternetowyGołąb]] ([[Dyskusja wikipedysty:InternetowyGołąb|dyskusja]]) 11:23, 2 wrz 2024 (CEST)
== Ad:Pełny ekran szablonu stronicowego {{s|StronaStart}} i jego kolegów ==
;[[Dyskusja_wikipedysty:Marek_Mazurkiewicz#Pełny_ekran_szablonu_stronicowego_{{StronaStart}}_i_jego_kolegów|Ad:Pełny ekran szablonu stronicowego {{StronaStart}} i jego kolegów]]
Kod nic mi nie mówi. Nadal uważam że te szablony w większości wypadków są zbędne i standardowo strony wiki wyświetlają się prawidłowo. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 22:07, 21 lis 2024 (CET)
* {{Ping|Marek Mazurkiewicz}} Wybacz, ale wprowadziłeś zły kod twojego wpisu, i dlatego musiałem poprawić. Ale do rzeczy: To zależy od preferencji użytkowników, jak kto woli, i dlatego należy wprowadzić ten kod do swojego {{Code|common.css}}, aby ten kod zadziałał poprawnie, a usuwanie tych szablonów ze stron artykułów w przestrzeni: {{Np|(main)|link=tak}} i {{Np|Wikijunior|link=tak}}, jest wandalizmem, bo mogą znaleźć się użytkownicy, którzy podzielają mój pogląd lub twój, a te wpisy tego kodu chcę umieścić w osobnym gadżecie, i nie trzeba będzie ich umieszczać na stronie użytkownika w przestrzeni {{Np|User|link=tak}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:33, 21 lis 2024 (CET)
*:Jeszcze raz zrobiłem test jak strona wygląda z szablonem: [[Wikipedysta:Marek Mazurkiewicz/szablontak|Marek Mazurkiewicz/szablontak]] i bez niego: [[Wikipedysta:Marek Mazurkiewicz/szablonnie]]. Nadal uważam, że te szablony są szkodliwe. Tu nie chodzi o mnie. Uważam, że są szkodliwe dla wszystkich. W sensie czynią Wikibooks gorszą stroną. Czy proponujesz żebym ustawiał sobie w swoim Common.css kod który będzie niwielował działąnie tych szablonów? A czy rozważałeś zasępienie działania tych szablonów kodem w swoim osobistym css? [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 23:01, 21 lis 2024 (CET)
*:: {{Ping|Marek Mazurkiewicz}} Ten kod można zrobić w postaci gadżetu, który działa domyślnie, i normalnie nie trzeba będzie tworzyć własnego {{Code|Wikipedysta:Marek_Mazurkiewicz/common.css}}, a jak kod jednak umieścimy na tej stronie, czyli na {{Code|Wikipedysta:Marek_Mazurkiewicz/common.css}}, to można zobaczyć stronę na cały ekran plus spis treści po prawej stronie. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:08, 21 lis 2024 (CET)
*:::Czyli proponowany kod znosiłby działanie szablonów. Dobrze rozumiem? Dla mnie to nie rozwiązuje problemu. Szablony też czynią Wikinews gorszą stroną gdy zaglądam bez logowania. Spis treści przecież pojawia się automatycznie w mediawiki przy 3 nagłówkach i nie potrzebne są do tego szablony. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 23:17, 21 lis 2024 (CET)
*::: {{Ping|Marek Mazurkiewicz}} Taki gadżet będzie działać domyślnie bez zalogowania, strona będzie na całym ekranie dostępnym, a na tej stronie po prawej stronie, nie za prawą stroną, będzie spis treści (ten spis treści wyłącza automatyczny spis), który działa na każdej skórce, bez zajmowania niezbędnej przestrzeni w ekranie głównym tekstu na spis treści, bo on znajduje się po prawej strona na na, a nie za. Jak chcesz wypróbować ten kod, to stwórz {{Code|Wikipedysta:Marek_Mazurkiewicz/common.css}} [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:35, 21 lis 2024 (CET)
*::::Stworzyłem [[Wikipedysta:Marek Mazurkiewicz/Common.css]] i wkleiłem tam kod i nadal widzę szkodliwe efekty działania szablonów. Tekst nadal jest w ramce i nadal wyświetla się ten dziwny spis treści mrugający i przysłaniający zamiast standardowego spisu treści mediawiki. Sprawdzałem na [[Wstęp_do_fizyki_jądra_atomowego/Nukleony a budowa jądra atomowego]] oraz na [[Wikipedysta:Marek Mazurkiewicz/szablontak]] [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 00:40, 22 lis 2024 (CET)
*::::: {{Ping|Marek Mazurkiewicz}} Zamiast [[Wikipedysta:Marek Mazurkiewicz/Common.css]] powinno być [[Wikipedysta:Marek Mazurkiewicz/common.css]]. Przepraszam za pomyłkę! <del>I jeszcze zamień {{Code|translate(117%,-117%)}} na {{Code|translate(115%,-117%)}}.</del> [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 00:46, 22 lis 2024 (CET)
*:::::: {{Ping|Marek Mazurkiewicz}} Odkomentowałem w szablonie {{s|StronaStart/stronastart.css|z przestrzenią=tak}} te wpisy do odwołania, teraz powinno się widzieć efekty pracy, sprawdź! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 01:17, 22 lis 2024 (CET)
*:::::::Nadal ten kod nic nie naprawia. Obramowanie jest jak było. Spis treści dziwny jest jak był. Nadal uważam że te szablony są szkodliwe. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 01:30, 22 lis 2024 (CET)
*::::::: {{Ping|Marek Mazurkiewicz}} Co mam zrobić bez usuwania {{s|StronaStart}} (ten szablon nie dostarcza bezpośredniego formatowania, a jego koledzy już tak)... Czy widzisz główny tekst na cały ekran, o to mi chodzi! Na smartfonach jest normalnie! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 01:36, 22 lis 2024 (CET)
*::::::::Tak tekst jest trochę poszerzony. Nie widzę rozwiązania poza nie stosowaniem szablonu Strona start i podobnych. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 01:45, 22 lis 2024 (CET)
*:::::::: {{Ping|Marek Mazurkiewicz}} A może spis treści po zwinięciu przechowywać w bardzo małej ramce, a po najechaniu na nią kreuje się spis treści, nie w tej ramce, w postaci pełnej? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 01:58, 22 lis 2024 (CET)
*:::::::::Właśnie takie mrugające zachowanie szablonu uważam za szkodliwe. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 21:05, 22 lis 2024 (CET)
*:::::::::: {{Ping|Marek Mazurkiewicz}} Czyli zwiększanie spisu treści od miniaturki do pełnej po najechaniu wskaźnika myszki, a po odsunięciu po czerech sekundach się zmniejsza, czyli mam zrobić, aby spis od razu po najechaniu ma być wielki, a po czterech sekundach mniejszy? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:37, 22 lis 2024 (CET)
*:::::::::: {{Ping|Marek Mazurkiewicz}} A to mruganie raczej z tego wynika, że w {{Code|MediaWiki:Common.js}} w skrypcie JavaScript do transition nie zawiera muteksu, właśnie przygotowywuję skrypt, który takiego mrugania nie ma. Wynika to raczej z błędu z samego działania skryptu JS. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:42, 22 lis 2024 (CET)
* {{Ping|Marek Mazurkiewicz}} A użycie na stronach innych niż te wymienione artykularne (przestrzeń {{Np|Project|link=tak}}) jest kwestią wprowadzenia, to też mam poprawić? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:46, 21 lis 2024 (CET)
* {{Ping|Marek Mazurkiewicz}} Jeszcze wystarczy napisać swój {{Code|Wikipedysta:Marek_Mazurkiewicz/common.css}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:51, 21 lis 2024 (CET)
* {{Ping|Marek Mazurkiewicz}} A może trzeba wprowadzić włączenie i wyłączenie spisu treści przy poszerzonym tekście, wtedy może ci się to spodoba, w moich skryptach na moim koncie jest coś takiego, że spis treści włączony nie będzie nad tekstem po prawej stronie, bo go nie będzie tam, lub włączony będzie nad tekstem, bo tam on będzie. Można to zrobić za pomocą przycisku. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 16:58, 22 lis 2024 (CET)
== Ad:Dyskusja wikipedysty:Marek Mazurkiewicz ==
;[https://pl.wikibooks.org/w/index.php?title=Dyskusja_wikipedysty:Marek_Mazurkiewicz&curid=60083&diff=493138&oldid=493064#bodyContent Ad:Dyskusja wikipedysty:Marek Mazurkiewicz]
Za każdym razem gdy edytujesz ten kod dostaję powiadomienie o nowej wiadomości. Nie ma potrzeby żebyś go tutaj poprawiał. Mówiłem już że to nie jest rozwiązanie problemu. Moim głównym problemem jest że na Wikibooks występują niestandardowe dla mediawiki i nieuzasadnione rozwiązania. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 23:58, 25 lis 2024 (CET)
: {{Ping|Marek Mazurkiewicz}} Już skończyłem ten gadżet, który miałeś na stronach {{Code|common.css}}, ale zauważyłem, że nie wszystko da się zrobić za pomocą mechanizmu mediawiki za pomocą standardowych rozwiązań, a niestandardowym rozwiązaniem np. jest numeracja wzorów matematycznych. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 00:07, 26 lis 2024 (CET)
== Ukrycie zmian ==
Hej,
Wydaje mi się, że wypadałoby poukrywać zmiany [[Specjalna:Wkład/Borfa_Borforfa|tego użytkownika]]. [[Wikipedysta:Swam pl|Swam pl]] ([[Dyskusja wikipedysty:Swam pl|dyskusja]]) 15:17, 14 gru 2024 (CET)
:Dzięki za ukrycie :) [[Wikipedysta:Swam pl|Swam pl]] ([[Dyskusja wikipedysty:Swam pl|dyskusja]]) 15:30, 14 gru 2024 (CET)
== Filtr nadużyć blokuje edycję ==
Cześć, nie wiem w sumie do kogo napisać. Filtr odrzuca moje edycje w [[User:Hythonia/brudnopis]], gdy próbuję dodać zasady gry. Jedyną informacją, jaką otrzymuję, jest „Same czarne nieinterpretowalne znaki” albo „Nieprawidłowy wprowadzony tekst” ({{Ping|Hythonia}} Tutaj był błąd! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:31, 15 lut 2025 (CET))
Blokowanego tekstu nie mogę tutaj nawet wkleić, a nie ma żadnych „czarnych nieinterpretowalnych znaków”, informuje tylko o celu gry. Nie wiem, co w tej sytuacji zrobić. Pomożesz? [[Wikipedysta:Hythonia|Hythonia]] ([[Dyskusja wikipedysty:Hythonia|dyskusja]]) 14:20, 15 lut 2025 (CET)
* Zauważyłem ten błąd, jestem w trakcie usuwania jego! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:25, 15 lut 2025 (CET)
** {{Ping|Hythonia}} Usunąłem ten błąd w filtrach, teraz możesz pisać, ale uważaj na przecinki i kropki, na końcu linii nie może być spacji lub tabulacji, czy nawet białych znaków o niezerowej szerokości. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:47, 15 lut 2025 (CET)
** {{Ping|Hythonia}} „Same czarne nieinterpretowalne znaki” jest zabezpieczeniem, jakby wandal chciał linię zamienić lub zastąpić ją jednym ciągiem znaków niespacjowych, okrążonych z jednej strony lub drugiej, białymi znakami lub bez nich (wtedy cała linia jest tym ciągiem znaków niespacjowych). [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:02, 15 lut 2025 (CET)
**:Jasne, dziękuję bardzo. [[Wikipedysta:Hythonia|Hythonia]] ([[Dyskusja wikipedysty:Hythonia|dyskusja]]) 15:56, 15 lut 2025 (CET)
**:Mówiłem, niech filtr pozwala na zapisanie edycji! [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 03:00, 16 lut 2025 (CET)
**:: {{Ping|Wargo}} Dla kilku filtrów zamieniłem: '''odrzuć''', na: '''ostrzeżenie''' (aby zebrać dane, czy są poprawne). Jakie mam jeszcze zamienić tak! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 06:13, 16 lut 2025 (CET)
== Filtr nadużyć ==
Hej, poprawcie sobie filtry nadużyć, aby nie łapały administratorów, bo ciągle łapie Ciebie, co utrudnia jego patrolowanie i przeglądanie [https://pl.wikibooks.org/wiki/Specjalna:Rejestr_nadu%C5%BCy%C4%87]. [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 09:31, 4 mar 2025 (CET)
:PS. Filtr 52 chyba generalnie wymaga poprawy swojego działania (łapie na przykład emotki typu ":)" na końcu zdania po spacji) [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 09:32, 4 mar 2025 (CET)
:: Poprawię, zrobię jeszcze jedną edycję i zabieram się do pracy za filtry. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:35, 4 mar 2025 (CET)
:: <del>Odjąłem: 😊, za pomocą wyrażeń regularnych. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:54, 4 mar 2025 (CET)</del>
:::To blokował filtr 52, nie 25. [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 10:03, 4 mar 2025 (CET)
:::: I dlatego przekreśliłem, już można napisać :), nawet po linku zewnętrznym, czy wewnętrznym, na końcu zdania :), nie tylko w cudzysłowie ":)". [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:16, 4 mar 2025 (CET)
::::* Stworzyłem listę emotikonów w postaci: <code>p_emotikony:="(:\)|:\(|:D|:P|;\)|:O|:\||:S|:3|:X|:\-\*|:'\(|:\-\/|:\|\])";</code>, w filtrze 52. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:45, 4 mar 2025 (CET)
== Znów filtr odrzuca ==
Ponownie te same problemy z automatycznym odrzucaniem zapisu określonego jako "akcja szkodliwa" i "nieprawidłowy wprowadzony tekst" - tym razem w ''Książce kucharskiej'', do której ostatnie takie wpisy (przepisy) obyły się bez kłopotu. Przyznam, że może to zniechęcać do jakiegokolwiek działania na Wikibooks. - [[Wikipedysta:Cyborian|Cyborian]] ([[Dyskusja wikipedysty:Cyborian|dyskusja]]) 12:06, 22 mar 2025 (CET)
: Wybacz, że tak długo, ale błąd już został naprawiony. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:50, 22 mar 2025 (CET)
== MS-DOS/Okładka ==
Filtr nadużyć nie pozwala mi poprawić interpunkcji. Znaczników nie ruszam. [[Wikipedysta:Sebek Adamowicz|Sebek Adamowicz]] ([[Dyskusja wikipedysty:Sebek Adamowicz|dyskusja]]) 20:52, 20 kwi 2025 (CEST)
:{{Ping|Sebek Adamowicz}} Już błąd naprawiony, znaczniki zostały zamienione na odpowiednie szablony. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:00, 20 kwi 2025 (CEST)
:{{Ping|Sebek Adamowicz}} Zamiast znacznika {{Tag|center}} używaj szablonu {{s|Center}}, a zamiast {{Tag|font}} używaj {{s|Font}}, bo te znaczniki są wycofywane z polskiego {{NS|l=tak|p=a}}! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:22, 20 kwi 2025 (CEST)
:{{Ping|Sebek Adamowicz}} Już z filtrem nadużyć raczej nie będziesz miał kłopotu. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:58, 20 kwi 2025 (CEST)
::Z kolei tu [https://pl.m.wikibooks.org/wiki/Microsoft_Windows_9x/Nieoficjalny_SP#A_co_z_innymi_wersjami?] chciałem wstawić link z Internet Archive, ale filtr nadużyć blokuje. [[Wikipedysta:Sebek Adamowicz|Sebek Adamowicz]] ([[Dyskusja wikipedysty:Sebek Adamowicz|dyskusja]]) 00:07, 21 kwi 2025 (CEST)
:::{{Ping|Sebek Adamowicz}} Już nie ma tego błędu. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 00:50, 21 kwi 2025 (CEST)
== Ukrycia wersji ==
Hej odpowiem tutaj. Nie, to nie jest groźny wandal. Odkryłem tylko edycje ip https://pl.wikibooks.org/wiki/Specjalna:Wk%C5%82ad/77.253.96.155, gdyż jest to pewien user omijający blokadę. Nie ma podstaw do ukrywania opisu zmian i edycji, a tym bardziej nazwy użytkownika. Takie ukrycie tylko utrudnia przeglądanie wkładu i pracę. Ukrywamy przecież tylko wersje rażąco obraźliwe itp. Sam fakt, że jest to jakiś wandal nie jest podstawą do ukrycia wersji. [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 11:40, 30 kwi 2025 (CEST)
:{{Ping|AramilFeraxa}} Ale on, pod różnymi IP'ami, wandalizował ten projekt, co ty na to, i to są edycję AZONIASTEGO, czyli trola internetowago, że nawet użytkownicy Wikipedii, kazali usuwać jego edycję i strony. On się przeniósł z Wikipedii na Wikibooks, bo tam prawdopodobnie został zablokowany. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:52, 30 kwi 2025 (CEST)
::Ale powtarzam: samo wandalizowanie nie jest powodem do ukrywania wersji wraz z nazwą użytkownika :) Utrudnia to pracę. [[Wikipedysta:AramilFeraxa|AramilFeraxa]] ([[Dyskusja wikipedysty:AramilFeraxa|dyskusja]]) 11:56, 30 kwi 2025 (CEST)
== Odp.: Filtr nadużyć ==
Dziękuję! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:57, 29 cze 2025 (CEST)
== Dlaczego ta różnica? ==
Hej, czy mógłbyś zerknąć tu: [[https://pl.wikibooks.org/wiki/Kategoria:Makarony]] i znalezc roznice w haslach [[https://pl.wikibooks.org/wiki/Ksi%C4%85%C5%BCka_kucharska/Spaghetti_z_mi%C4%99sem_mielonym_i_boczkiem]] oraz [[https://pl.wikibooks.org/wiki/Spaghetti_z_orzechami_i_parmezanem]] powodujący, ze przed jednym jest tekst "Książka kucharska", a przy drugim nie ma? Kategorie w tekstach źródłowych w zasadzie się pokrywają. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 12:09, 30 cze 2025 (CEST)
* Dziekuje, wszystko jasne. I dziekuje za odblokowanie szablonu ''ek''.
== Produkty spozywcze firmy Knorr - czy wolno nam "reklamowac"? ==
Hej, wiele przepisow jako dodatki podaje np. "1 opakowanie sosu smietanowo-serowego Knorr" i wiele podobnych. Czy to jest reklama dla Knorra, ktora powinna byc usunieta z modulu "Ksiazka kucharska", czy nie? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 14:27, 30 cze 2025 (CEST)
* {{Ping|EdytaT}} Reklamy typu Knorr powinny być usunięte, bądź np.: "1 opakowanie sosu smietanowo-serowego Knorr", zamień w coś rodzaju na: "1 opakowanie sosu smietanowo-serowego", można też powiedzieć, jak ten owy sos przygotować. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:34, 30 cze 2025 (CEST)
*:Tak myslalam i tak chcialam zrobic. Jest tego sporo. Pozdrawiam. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 14:37, 30 cze 2025 (CEST)
== odp. Filtr nadużyć - dziekuje. ==
Dziekuje za pomoc. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:47, 3 lip 2025 (CEST)
:Diekuje! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 15:59, 4 lip 2025 (CEST)
== Co to jest "Kategoria: Szablon:Przypisy (artykuły) bez oczekiwanego nagłówka"? ==
Hej, mozesz pomoc? Jakos nie wiem, o jaki naglowek chodzi. Nie potrafilam tez dokopac sie do dokumentacji tego szablonu. Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 16:12, 4 lip 2025 (CEST)
: {{Ping|EdytaT}} {{L|Kategoria:Szablon:Przypisy (artykuły) bez oczekiwanego nagłówka}}, tu chodzi, że nie ma nagłówka: <nowiki>==Przypisy==</nowiki>, to nie jest błąd, tylko informacja dla wikipedysty, jakby taki nagłówek chciał dodać w kodzie, ale nie matrw się, ten nagłówek sam jest automatycznie dodawany, jeżeli go nie ma, ale nie w kodzie, ale w artykule. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 16:31, 4 lip 2025 (CEST)
:: {{Ping|EdytaT}} Generuje go szablon {{s|Przypisy}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 16:37, 4 lip 2025 (CEST)
== Ksiazka kucharska - bezwartościowe przepisy ==
Hej, w ksiazce kucharskiej sa setki przepisow wpisanych przez Swietokrzyskie... Te przepisy sa moim zdaniem do usuniecia (przynajmniej czesc z nich). Ich nazwy to "danie 1, danie 2, danie 3" lub w tym stylu. Nie wiadomo, jakie to sa dania, a nawet czytajac kazdy z tych przepisow, to nie wiadomo o co chodzi, zanim sie nie przeczyta do samego konca. A i to nie znaczy, ze mozna ten przepis zaopatrzyc w sensowna nazwe. Jest tez drugi problem z tymi przepisami - zasmiecaja ten kucharski podrecznik, czynia go malo atrakcyjnym dla zainteresowanych, sa absolutnie zniechecajace i odpychajace. Moglabym je powoli poprzegladac, zmienic nazwy, uporzdkowac kategorie lub zameldowac do skasowania (wiekszosc). Nie chce jednak przysparzac Tobie klopotu z tym ciaglym kasowaniem. Czy moze jednak zgodzilbys sie na to? Czy sa tez inni administratorzy czy edytorzy, z ktorymi trzeba by o tym porozmawiac? Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:54, 6 lip 2025 (CEST)
* {{Ping|EdytaT}} Jeszcze jest jeden administrator: {{Ping|Pavroo}}, ale jest nieaktywny, od pewnego czasu. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:57, 6 lip 2025 (CEST)
== Co jest lepsze - jeden olbrzymi modul, czy osobne mniejsze podreczniki? ==
Hej - na przykladzie ksiazki kucharskiej - teoretycznie jest ksiazka zawierajaca przepisy. Ale mnostwo zwiazanych z tym tematow, np. Golabki, Chlodniki, Oleje spozywcze, Drob, Wolowina, Nabial, technia przyrzadzania potraw, Ziola, Przyprawy itd. itd. Istnieje niezliczona ilosc takich tematow i niezliczona ilosc drukowanych ksiazek na temat np. pomidorow, przyborow kuchennych, rodzajow ciast. W takich jednotematycznych ksiazkach mozna znalezc przydatne w gotowaniu informacje, a zawarcie ich w module "Ksiazka kucharska" stworzyloby podrecznik nieskonczony. Jak wiec myslisz - czy temat "oleje spozywcze" podlaczyc pod podrecznik "Ksiazka kucharska", czy utworzyc osobny modul, a w ksiazce kucharskiej stworzyc np. kategorie, w ktorej bylby link do tego tematycznego modulu?
Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 14:04, 6 lip 2025 (CEST)
* {{Ping|EdytaT}} Masz rację... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:07, 6 lip 2025 (CEST)
== Linkowac / nie linkowac / dlaczego nie linkowac? ==
Hej, w [[Wikibooks:Zasady_i_wskazówki]] sa takie punkty:
* twórz odnośniki tylko wtedy, gdy kontekst tego wymaga
* staraj się nie stosować zewnętrznych odnośników
Oczywiscie rozumiem, ze nie nalezy tworzyc odnosnikow do wszystkiego, co popadnie. Ale np. w Module "Napary ziolowe" piszac o cynamonie podaje informacje, ze zawiera on kumaryne. Nie chce w tym module pisac nic wiecej o kumarynie, ale uwazam, ze link do artykulu w wikipedii o kumarynie jest tu jak najbardziej na miejscu (odpowiedz na pytania: co to jest? czy jest zdrowe czy szkodliwe? ile tego mozna spozyc? w jakich innych produktach sie znajduje itd.). Jakie jest Twoje zdanie na ten temat?. Pytanie drugie: chetnie natomiast wstawiam odnosniki wewnatrz modulu, gdy piszac o czyms innym zahaczam o temat/zjawisko/rzecz juz w tym module opisane. Czy to jest szkodliwe dla wikibooks? I jeszcze trzecie pytanie: dlaczego (technicznie) lepiej nie uzywac odnosnikow? Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 14:19, 6 lip 2025 (CEST)
* {{Ping|EdytaT}} Odnośników na zewnątrz projektów raczej nie powinno się używać, ponieważ, te strony, do których zostały użyte, i tak znikną z internetu, one będą musiały być zaktualizowane, albo skasowane, lepiej jest tworzyć odnośniki, do wewnątrz projektu, albo do {{NS|l=tak|k=w|Wikipedii polskiej}}, czy {{NS|l=tak|k=en:w|Wikipedii angielskiej}}, czy do projektu {{NS|l=tak|k=en:b|Wikibooksa angielskiego}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:29, 6 lip 2025 (CEST)
== Filtr naduzyc "Styl do sprawdzenia", ==
Hej, bardzo wrazliwy ten filtr ... Troche nadwrazliwy. A czy mozna te filtry zmeinic tak, by pozwolily zapisac edytowana strone, a uwagi umiescic na stronie jako "Dopracowac"? Z konkretna informacja, co i gdzie jest zle? Jak znalazles, ze to akurat "warto dodac" sie filtrowi nie podoba. I dlaczego? Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 12:53, 7 lip 2025 (CEST)
* {{Ping|EdytaT}} Dzięki wyrażeniom regularnym i operacjom na łancuchach znakowych! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 17:55, 7 lip 2025 (CEST)
== Filtry nadużyć - przeszkadzaja w uzupelnianiu podrecznikow ==
Hej - jest problem z filtrami naduzyc, ktore w dalszym ciagu nie pozwalaja zapisywac nowych stron lub zmian w istnieniacych stronach. Rozumiem, ze czasy sie zmieniaja i to, co kiedys bylo ok teraz jest juz nie jest. Ale to czyni edytowanie bardzo uciazliwym lub wrecz niemozliwym, a tak nie moze byc. Ostatni przyklad to uniemozliwienie utworzenia strony "Tworzenie Ekoogrodnictwo/Rośliny użytkowe/Bazylia" przez filtr naduzyc, ktoremu nie podobaja sie tabelki. Ok, ale to jest strona skopiowana (Ctrl+c) i wstawiona (Ctrl+v) z istniejacej strony o pietruszce i dopasowaniu tego, co aktualnie chce napisac w tworzonej stronie o bazylii. Nie interesuje mnie, jaki format ma tabelka zywcem skopiowana z istniejacego artykulu i wcale nie mam zamiaru zajmowac sie formatowaniem tej tabelki. Interesuje mnie tylko dopasowanie jej zawartosci. Czy "Znaczniki przestarzałe (font, tt, strike, center)", czy nie, to nie jest w tym momencie moja sprawa. Uwazam, ze jak najbardziej filtr ma prawo podac mi informacje, ze te znaczniki sa przestarzale, ale absolutnie nie moze zabronic mi utworzenia tej strony. Czy mozna cos z tym zrobic? Pozdrawiam. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 20:06, 18 lip 2025 (CEST)
* {{Ping|EdytaT}} Przepiszę kod na szablonu używając tabelki {{s|Tabela}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:12, 18 lip 2025 (CEST)
** {{Ping|EdytaT}} Dla chcącego nie ma nic trudnego, wikitabelka za pomocą szablonów, to lepiej wygląda niż niskopoziomowa tabelka wikikodu.[[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:38, 18 lip 2025 (CEST)
== Dla chcącego nie ma nic trudnego ... ==
Hej, to prawda, ale problem jest wtedy, kiedy nawet by sie chcialo i teoretycznie moglo, ale to nie jest odpowiedni moment! Filtry nie powinny uniemozöiwiac zapisania mojej praktycznie poprawnej edycji! Dziekuje za wprowadzenie zmian. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:05, 18 lip 2025 (CEST)
* {{Ping|EdytaT}} Znacznik {{Tag|center}} jest '''zdeprecjonowany''' w ''HTML'', czyli wycowywany z użycia! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:11, 19 lip 2025 (CEST)
== Filtr nadużyć – odrzucanie edycji w kursie [[Teoria grup przemiennych]] ==
Tak jak w tytule. Wprowadzam trochę wzorów za pomocą TeX-a i podgląd wygląda normalnie, ale niestety edycja jest odrzucana. Mogę to wkleić tutaj:
Strukturę grupy przemiennej można wzbogacać na różne sposoby – nie tylko przez relację porządku. Innym sposobem jest drugie działanie dwuargumentowe: <math>G^2\to G.</math> Trudno, żeby zbiór <math>G</math> był grupą przemienną ze względu na oba działania, ale zdarza się coś podobnego. Można się przyjrzeć liczbom wymiernym <math>(\mathbb{Q}):</math>
* ze względu na dodawanie są grupą przemienną <math>(\mathbb{Q},+);</math>
* nie są grupą ze względu na mnożenie, ponieważ zero nie jest tu odwracalne – równanie liniowe <math>0x = 1</math> nie ma rozwiązań;
* po wycięciu zera z dziedziny zbiór <math>(\mathbb{Q}_{\neq 0},\cdot)</math> istotnie jest grupą przemienną.
[[Wikipedysta:Tarnoob|Tarnoob]] ([[Dyskusja wikipedysty:Tarnoob|dyskusja]]) 22:42, 24 lip 2025 (CEST)
:Tekst powyżej jest akceptowany i już przeszedł ale odrzucany jest kod zwykłego pogrubienia tablicowego liter R i C, przez \mathbb. [[Wikipedysta:Tarnoob|Tarnoob]] ([[Dyskusja wikipedysty:Tarnoob|dyskusja]]) 22:52, 24 lip 2025 (CEST)
: {{Ping|Tarnoob}} Już naprawiłem twój problem ze znacznikiem {{Tag|MATH}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 06:17, 25 lip 2025 (CEST)
== [[Siewki roślin uprawianych w Polsce/Mydleńcowate]] ==
Te filtry nadużyć uniemożliwiają normalne edytowanie. Naprawdę chcesz, żeby wszyscy zrezygnowali z jakiejkolwiek działalności na Wikibooks? Bo ja tu już więcej nie wejdę... [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 10:26, 24 sie 2025 (CEST)
: {{Ping|Salicyna}} Ja rozumiem twoje rozgoryczenie, ale nikt nie jest doskonały. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:41, 24 sie 2025 (CEST)
:: {{Ping|Salicyna}} A przy okazji usunąłem twój błąd. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:43, 24 sie 2025 (CEST)
::: Jaki błąd? [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 10:45, 24 sie 2025 (CEST)
::: {{Ping|Salicyna}} Błąd, który uniemożliwił twoje zapisanie edycji. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:48, 24 sie 2025 (CEST)
::::Możesz więc mi wyjaśnić, jaki błąd popełniłam? Bo nie widzę żadnej twojej edycji poprawiającej coś w tym haśle po tym jak do ciebie napisałam. [[Wikipedysta:Salicyna|Salicyna]] ([[Dyskusja wikipedysty:Salicyna|dyskusja]]) 10:51, 24 sie 2025 (CEST)
::::: {{Ping|Salicyna}} Był błąd w filtrach nadużyć. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:53, 24 sie 2025 (CEST)
::::: {{Ping|Salicyna}} Teraz możesz zapisać swoją edycję. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:04, 24 sie 2025 (CEST)
== Wkład użytkownika Świętokrzyskie3 do usunięcia ==
Hej, niestety hasła utworzone przez Świętokrzyskie3 są moim zdaniem do usunięcia. Wszystkie. Zajrzałam do wielu z nich i stwierdziłam, ze są skopiowane z innych stron internetowych i nie są autorstwa tego użytkownika. Wobec tego należy je usunąć, ponieważ takie edycje są niezgodne z prawem autorskim. Nawet próba przejrzenia tych haseł (niewykonalna) nie zmieniłaby faktu, że są one kradzieżą intelektualną. Proszę napisz, czy możesz to zrobić "za jednym zamachem"? Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 17:44, 25 wrz 2025 (CEST)
: {{Ping|EdytaT}} Skasować wszystkie artykuły książki kucharskiej tego użytkownika, i sprawdzić jego dalszy dorobek! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:43, 25 wrz 2025 (CEST)
:: {{Ping|EdytaT}} Sprawdź użytkownika [[Specjalna:Wkład/Snd125671]] i jego artykuły książki kucharskiej! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:30, 25 wrz 2025 (CEST)
: {{Ping|EdytaT}} Już usunąłem podejrzane artykuły książki kucharskiej użytkowników: [[Specjalna:Wkład/Świętokrzyskie3]] i [[Specjalna:Wkład/Snd125671]]! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:36, 26 wrz 2025 (CEST)
::Dziekuje! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 20:53, 26 wrz 2025 (CEST)
== . ==
Cześć. Dlaczego usuwasz poradniki kulinarne? [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:45, 25 wrz 2025 (CEST)
:{{Ping|Igor123121}} Sprawdź, poprzedni rozdział! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:48, 25 wrz 2025 (CEST)
:Aha rozumiem - to wkład [[Specjalna:Wkład/Snd125671|Snd125671]] - ale wiesz, że nie musisz wszystkiego ręcznie usuwać tylko na górze masz funkcję"masowe usuwanie", która pozwwala wszystko usunąć błyskawicznie? [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:48, 25 wrz 2025 (CEST)
::{{Ping|Igor123121}} Chodzi mi o edycje: [[Specjalna:Wkład/Świętokrzyskie3]], a [[Specjalna:Wkład/Snd125671]] trzeba sprawdzić, a masowe usuwanie jest do ostatnich 90 dni! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:52, 25 wrz 2025 (CEST)
== Automatyczne zablokowanie moich zmian ==
Witam, piszę podręcznik "Matematyka dla ostatnich klas szkoły podstawowej". Napotkałem się na problem z automatycznym systemem odrzucania edycji.
"Krótki opis reguły nadużycia, do której Twoja akcja została dopasowana: Linie z tylko wielkimi literami"
Linia ta zawiera liczby w systemie rzymskim, wygląda następująco:
<code>| '''XLVII'''<br/>(50 - 10) + 7<br/>40 + 7<br/>47 || '''MCMXCIX'''<br/>1000 + (1000 - 100) + (100 - 10) + (10 - 1)<br/>1000 + 900 + 90 + 9<br/>1999 || '''MMMCMXCIX'''<br/>3000 + (1000 - 100) + (100 - 10) + (10 - 1)<br/>3000 + 900 + 90 + 99<br/>3999</code>
Uprzejmie proszę o możliwość zatwierdzenia tego rodzaju treści lub wskazanie sposobu, aby linie z liczbami rzymskimi nie były automatycznie odrzucane.
Z góry dziękuję za pomoc. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 15:28, 27 wrz 2025 (CEST)
: {{Ping|YxiCode}}Już możesz edytować! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:52, 27 wrz 2025 (CEST)
::Dziękuję bardzo :)) [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 19:26, 27 wrz 2025 (CEST)
::@[[Wikipedysta:Persino|Persino]]Znów otrzymałem błąd: ''Ta akcja została automatycznie zidentyfikowana jako szkodliwa, w związku z tym została odrzucona. Jeśli uważasz, że ta edycja była zasadna, skontaktuj się z administratorem i poinformuj go o zaistniałej sytuacji. Krótki opis reguły nadużycia, do której Twoja akcja została dopasowana: Powtarzające się ciągi znaków w linii wikitekstu'' [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 20:02, 27 wrz 2025 (CEST)
:: {{Ping|YxiCode}} Już możesz edytować.[[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:05, 27 wrz 2025 (CEST)
== Opisy operacji ==
Cześć! Dostrzegam Twój ogromny wkład w działaniach administracyjnych na Wikibooks. Pragnę jednak zaznaczyć, że każda operacja (blokada, ukrycie wersji) powinno zostać ukryte krótkim opisem (Niecenzuralne słownictwo itp.), ponieważ znacznie ułatwia to śledzenie zwykłym użytkownikom, nie adminom. Dobrego wieczoru! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 20:53, 29 wrz 2025 (CEST)
:PS Pamiętaj, że zgodnie ze standardem blokujemy konta tymczasowe na maksymalnie 90 dni. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:02, 29 wrz 2025 (CEST)
== Filtry nadużyć ==
Cześć. Ostatnio tworzę artykuły o potrawach, jednak niestety często spotykam się z nadgroliwością filtrów nadużyć. Filtr całkowicie blokuje dodanie cyrlicy, co jest bardzo utrudniające w przypadku np. ilustrowaniem wersją zdjęcia pochodzącą z Rosji i tym samym napisaną cyrlicą. Np. https://commons.wikimedia.org/wiki/File:%D0%93%D1%80%D0%B5%D1%87%D0%BD%D0%B5%D0%B2%D0%B0%D1%8F_%D0%BA%D0%B0%D1%88%D0%B0_%D1%81_%D0%BC%D0%BE%D0%BB%D0%BE%D0%BA%D0%BE%D0%BC.jpg [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 17:40, 13 paź 2025 (CEST)
:{{Ping|Igor123121}} Już możesz edytować! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 17:45, 13 paź 2025 (CEST)
::W wolnej chwili zachęcam do sprawdzenia maila, którego Ci wysłałem i ewentualnego odpowiedzenia na niego tam ;)
::Dobrego wieczoru, [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 20:08, 13 paź 2025 (CEST)
::Wymieniłem szablony fotografii. Dziękuje za wskazówki!
::Pozdrawiam, [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 23:43, 14 paź 2025 (CEST)
:: {{Ping|Igor123121}} Co to znaczy wymienić fotografie, a może chodzi ci o podpisanie rysunków w ich opisach!!! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 01:02, 15 paź 2025 (CEST)
:: {{Ping|Igor123121}} Rysunki powinny być podpisane logicznie. W tekstach artykułów ma być odpowiednie formatowanie!!! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 01:06, 15 paź 2025 (CEST)
:: {{Ping|Igor123121}} W swoich edycjach nie stosuj elementów prowokacyjnych, jak chcesz być administratorem!!! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 00:13, 15 paź 2025 (CEST)
:::@[[Wikipedysta:Persino|Persino]] przepraszam ale nie bardzo rozumiem o jakie elementy chodzi. Jeżeli mógłbyś sprecyzować o który element chodzi to byłbym bardzo wdzięczny.
:::Dobrego dnia. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 08:38, 15 paź 2025 (CEST)
:::@[[Wikipedysta:Persino|Persino]] jeżeli dodałem jakiś element prowokacyjny to przepraszam nie miałem takiego zamiaru i nie będę miał takowego w przyszłości. Jeżeli jednak mógłbyś podać o jaki element ci chodzi to będę bardzo wdzięczny. wdzięczny. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 08:44, 15 paź 2025 (CEST)
:::{{Ping|Igor123121}} Np. pod rysunkiem usuwałeś puste linie, czasami był opis rysunku jako "To jest opis"! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:52, 15 paź 2025 (CEST)
::::@[[Wikipedysta:Persino|Persino]] już ruszam z wyjaśnieniem, bo już rozumiem o co chodzi w Twoich zarzutach :)
::::# Gdy zmieniałem ręcznie napisany <nowiki>[[Plik:]]</nowiki> na <nowiki>{{plik}}</nowiki> w moich artykułach (tak jak mnie prosiłeś wczoraj) to wysłałeś mi wzór jak to robić: {{[[Szablon:Plik|Plik]]<nowiki>|plik=Rumfordsuppe.jpg|ramka=mały|rozmiar=200px|pozycja=prawo|opis=To jest opis}} (</nowiki>[https://pl.wikibooks.org/w/index.php?title=Dyskusja_wikipedysty:Igor123121&diff=prev&oldid=515771 tutaj diff]). Kopiowałem go i wklejałem do artykułów i wpisywałem nazwę zdjęcia z Wikimedia Commons, która była obecna w tamtejszym [[Plik:]]. Zdarzyło mi się zapomnieć zmienić opisu, więc zostało wzorcowe ''to jest opis'' zamiast nazwy potrawy. Wiec, że nie zrobiłem tego celowo w innych poprawkach zmieniałem nazwę opisu, jednak kilka razy omyłkowo o tym zapomniałem.
::::# Nie wiedziałem, że te puste linię na początku wikitekstu są potrzebne, bo bez nich szablon również działał poprawnie. Dziękuję, że mnie uświadomiłeś, na przyszłość nie będę ich kasował.
::::Mam nadzieje, że wytłumaczyłem swoje edycje i, że w żadnym wypadku nie były one prowokacjami wobec społeczności. Uprzejmie proszę o odpowiedź czy dokładnie rozumiesz moją odpowiedź. Przepraszam za zamieszanie. Nigdy nie mam zamiaru prowokować społeczności, chcę rozwijać Wikibooks razem z Tobą i EdytąT.
::::Z pozdrowieniami, [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:03, 15 paź 2025 (CEST)
::::{{Ping|Igor123121}} Każdy popełnia błąd, nawet ja, było, minęło i koniec. Rozumiem twoją wypowiedź. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:09, 15 paź 2025 (CEST)
:::::Zachęcam do rzucenia okiem: [[Wikibooks:Przyznawanie uprawnień/Igor123121]]
:::::Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:13, 16 paź 2025 (CEST)
::::::Cześć! Czy wszystko jest w porządku z szablonami? Głosowanie zakończyło się wczoraj a dalej wyświetla się jako '''''Głosowanie trwa'''''
::::::[[Wikibooks:Przyznawanie uprawnień/Igor123121]]
::::::Pozdrawiam! Jeśli się uda zaaktualizować status to wyślę zgłoszenie do Stewarda, ponieważ nie mamy już tutaj biurokratów jak kiedyś. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 06:31, 24 paź 2025 (CEST)
:::::: {{Ping|Igor123121}} Już teraz wszystko jest w porządku, trzeba było zapisać pustą edycję! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:05, 24 paź 2025 (CEST)
== odp. Zamienianie linków wewnętrznych na zewnętrzne robiące to samo ==
Hej, napisales, ze zeby utworzyc link do wikipedii, to "... wystarczy napisac <nowiki>[[w:Wikipedia: ...</nowiki>" Do tej pory wystarczalo napisac "... <nowiki>[[w: ...</nowiki>". I nigdzie nie ma zadnej informacji na temat linkowania wewnetrznego. Wlasnie przegladalam ''Wikibooks:Zasady_i_wskazówki'', ''Pomoc:Spis_treści'', ''Technikalia'' - bez skutku. Prosze, nie pisz mi, ze wystarczlo sprawdzic pod ''xxx.yyy.zzz/1234''. Mamy w wikibooks niesamowite ilosci niepotrzebnego tekstu, ale konkretnej pomocy - brak. Tzn. np. na stronie "Pomoc" - spis tresci - punkt linki wewnetrzne - podpunkt Wikipedia - przyklad linkow (kiedy samo w:, a kiedy w:wikipedia). Edytujac teksty nie chce sie tracic czasu na mozolne wyszukiwanie szablonow, trickow i innych cudow, o ktorych wcale nie chce wiedziec, ze one istnieja. Dlatego poprawie te linki jak mowisz, ale mam prosbe: czy moglbys zdecydowanie uproscic teksty pomocy dla zwyklych, niezainteresowanych technikaliami edytorow? Pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 15:22, 17 paź 2025 (CEST)
: {{Ping|EdytaT}} {{Code|w:}} to kod polskiego projektu {{NS|l=tak|k=w}}, a {{Code|Wikipedia:}} to przestrzeń nazw na polskiej '''Wikipedii'''. Dlatego wcześniej było dobrze, bo ten artykuł znajdował się w przestrzeni głównej, lub jego przekierowanie, który z przestrzeni głównej linkował do przestrzeni projektu {{Code|Wikipedia:}}! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:29, 17 paź 2025 (CEST)
== Linki do wikislownika ==
Hej, mam prosbe odnosnie linkow do wikislownika: otoz hasla tam tworzone sa m.in. "case sensitive". Z jezykoznawczego/gramatycznego/ortograficznego punktu widzenia jest to sprawa niezwykle wazna. Czy moglbys w szablonie linku do wikislownika usunac zmiane podanego w parametrach slowa na pisownie dokladnie taka, jak podaje parametr? Pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 10:17, 23 paź 2025 (CEST)
::: Aby wyglad tego slowa "na zewnatrz" dokladnie odpowiadal wygladowi tego slowa w szablonie linku do wikislownika po znaku pipe "|". To znaczy uzylam szablonu {{s|Wikisłownik|endonim}}, kliklnelam na "zapisz zmiany" i w efekcie widze tekst "Zobacz hasło endonim w Wikisłowniku".
:::: Aaaa! Wlasnie widze, ze jest ok. Dziekuje.
:[[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 11:09, 23 paź 2025 (CEST)
: {{Ping|EdytaT}} Aby słowa były pisane od małej litery? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]])
:Hej, jednak jeszcze minelismy sie myslami. Piszac, ze wikislownik jest "case sensitive" mialam na mysli, ze jezeli po "|" slowo jest napisane mala litera, to ma tak zostac, a jezeli duza, to tez ma tak zostac. Bo np. "jabłko" w jezyku polskim jest pisane mala litera, a "Polska" duza. I dokladnie tak ma to wygladac "na zwenatrz", to znaczy po zapisaniu edycji. Czyli "Zobacz hasło jabłko w Wikisłowniku", "Zobacz hasło gruszka w Wikisłowniku", "Zobacz hasło Polska w Wikisłowniku", "Zobacz hasło Müller w Wikisłowniku" itd.
== "prowokujące" opisy zmian w języku angielskim ==
Witaj,
mnie uczono, że opis zmian ma przedstawiać, jakich zmian się dokonało. Czy napisanie (już odpuszczając sobie fragment tekstu piosenki), że ''Użytkownik Dynajtłymet podmienia tabelkę na normalną oraz standaryzuje treść zgodnie z dzisiejszymi normami stylistycznymi'' jest prowokujące? Dla mnie to opisowa forma przedstawiająca, co zrobiłem. Jeżeli uważasz inaczej, napisz - będziemy dyskutować, aż dojdziemy do kompromisu.
Take me back to the night we met! [[Wikipedysta:Dynajtłymet|Dynajtłymet]] ([[Dyskusja wikipedysty:Dynajtłymet|dyskusja]]) 09:46, 26 paź 2025 (CET)
: {{Ping|Dynajtłymet}} Tylko nie pisz na końcu opisu zmian takiego tekstu jak: '''Take me back to the night we met!'''! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:50, 26 paź 2025 (CET)
::Co jest złego w mojej ulubionej piosence? Lord Huron to nie kampania zwiększania ilości samobójstw. [[Wikipedysta:Dynajtłymet|Dynajtłymet]] ([[Dyskusja wikipedysty:Dynajtłymet|dyskusja]]) 09:51, 26 paź 2025 (CET)
::: {{Ping|Dynajtłymet}} Opis zmian ma być neutralny! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:54, 26 paź 2025 (CET)
::::A co, mój opis zmian nie jest neutralny? Będę robił taką samą neutralność jak wy.
::::https://pl.wikinews.org/w/index.php?title=Polski_Zwi%C4%85zek_Esperantyst%C3%B3w_uruchamia_cyfrowe_archiwum_na_wolnej_licencji&oldid=383085 - czy TO jest neutralne?
::::A może wzorcem neutralności będzie twoje usuwanie wszystkiego i wszystkich bez rozróżnienia co i jak?
::::Konkluzja? Inni mogą pisać "nie ma sensu wspominać tego człowieka", ja mogę pisać jedną linijkę swojego ulubionego tekstu.
::::[[Wikipedysta:Dynajtłymet|Dynajtłymet]] ([[Dyskusja wikipedysty:Dynajtłymet|dyskusja]]) 09:59, 26 paź 2025 (CET)
::::: {{Ping|Dynajtłymet}} Neutralny punkt widzenia, nie ja to wymyśliłem, tylko wikipedyści! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:03, 26 paź 2025 (CET)
::::::Rozumiem i znam filary Wikipedii i jej siostrzanych projektów - ale czy nie widzisz tutaj po prostu zwyczajnej, ludzkiej hipokryzji?
::::::Ja widzę i to ogromną. Znam tego wandala osobiście.
::::::Zastosuję się do zasad, ale pod warunkiem, że ktoś zajmie się wreszcie transparentnością Wikipedii i jej projektów siostrzanych. I mogę to być nawet ja.
::::::Take me back to the night we met. [[Wikipedysta:Dynajtłymet|Dynajtłymet]] ([[Dyskusja wikipedysty:Dynajtłymet|dyskusja]]) 10:06, 26 paź 2025 (CET)
== Odpowiedz - uprawnienia administratorskie ==
Witaj złożyłem wniosek na Meta do stewardów, jednak ciągle oczekuje na rozpatrzenie https://meta.wikimedia.org/wiki/Steward_requests/Permissions#Igor123121@plwikibooks
Ale to nic nadzwyczajnego niektóre wnioski czekają znacznie dłużej, trzeba być cierpliwym.
Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 16:46, 26 paź 2025 (CET)
:Witaj. Otrzymałem dzisiaj uprawnienia na 3 miesiące. Za 3 miesiące otworze kolejną dyskusję, przed wygaśnięciem. Niestety ale takie są zasady, że przy małych projektach trzeba najpierw przyznać kilka razy uprawnienia na czas tymczasowy. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 14:11, 28 paź 2025 (CET)
== Naruszenia praw autorskich na Wikibooks ==
Witaj. Piszę informacyjnie - dzisiaj otrzymałem przyznane mi przez Was (dziękuję!) uprawnienia administratora. Dokończyłem sprzątanie naruszających prawa autorskie przepisów użytkownika [[Specjalna:Wkład/Snd125671|Snd125671]](bo nie wszystkie były naruszeniem), więc wydaje się, że raz na zawsze udało nam się uporać z tymi naruszeniami w książce kucharskiej. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 17:37, 28 paź 2025 (CET)
== Storing user properties ==
Hi, Sorry for English. We are getting a lot warnings in our infrastructure because your account is holding 18K user properties rows which seems to be added via [[Wikipedysta:Persino/Gadget-DodatkiSubst.js/Skrypt.js]]. This is putting an undue load on the infrastructure and soon we will be adding a limit on number of rows a user can store. You can use local storage in your device instead of wikimedia servers to store these information. It would be great if you remove those rows (guideline: [[phab:T408733#11324972]]). See [[phab:T408733]] for more information. If you have any questions, feel free to contact me. Thanks! [[Wikipedysta:ASarabadani (WMF)|ASarabadani (WMF)]] ([[Dyskusja wikipedysty:ASarabadani (WMF)|dyskusja]]) 12:13, 30 paź 2025 (CET)
:Hej, widzę, że już przerobiłeś swój skrypt. Dzięki za szybką reakcję :) [[Wikipedysta:Matma Rex|Matma Rex]] ([[Dyskusja wikipedysty:Matma Rex|dyskusja]]) 22:55, 30 paź 2025 (CET)
== Odp. ==
Wydaje mi się, że wszystkie linkujące poprawiłem, jednak jeżeli mógłbyś uczynić dokładne sprawdzenie tego to byłbym ogromnie Ci wdzięczny. Dobrego wieczoru! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:26, 31 paź 2025 (CET)
:@[[Wikipedysta:Persino|Persino]] oczywiście wiem, czym są linkujące, bez przesady, aż tak źle nie jest ;) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:30, 31 paź 2025 (CET)
::@[[Wikipedysta:Persino|Persino]] dobrze spróbuje samodzielnie, nie wściekaj się na mnie, chce dobrze :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:33, 31 paź 2025 (CET)
:::@[[Wikipedysta:Persino|Persino]] chyba wszystko się udało, wszystkie wzmianki i szablony o gimnazjum wymieniłem :) Bardzo Ci dziękuję za całą pomoc, którą mi udzielasz. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 22:27, 31 paź 2025 (CET)
== "https://pl.wikibooks.org/wiki/Kategoria:Ksi%C4%85%C5%BCka_kucharska/Spis_alfabetyczny" vs "https://pl.wikibooks.org/w/index.php?title=Ksi%C4%85%C5%BCka_kucharska/Alfabetyczny_spis_potraw" ==
Hej, tę kategorię rozumiem i popieram. Ale czy potrzebna jest ta inna strona? Bo po pierwsze to w zasadzie duplikat, a po drugie chyba wymaga ciągłej manualnej aktualizacji. Czy sie myle? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:41, 12 lis 2025 (CET)
: {{Ping|EdytaT}} Lepsza jest spis kategoria niż spis artykuł, jak tak myślę!? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:45, 12 lis 2025 (CET)
== Prosba o wyjasnienie ==
Hej, klikajac na "Ostatnie zmiany" pojawia sie kilka naglowkow, m.in. "Ksiazki: nowe - krótkie - porzucone - Poczekalnia - Ekspresowe kasowanie - logi". I np. wsrod "porzuconych" znajduje sie przepis "[[Książka_kucharska/Zupa_z_dyni]]". To fakt, ze do tej strony (jak i chyba do wiekszosci przepisow) zadna strona sie nie odwoluje. Ale to przeciez nie znaczy, ze jest "porzucona". Czy to nie jest nieporozumienie? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 20:29, 14 lis 2025 (CET)
:{{Ping|EdytaT}} To nie znaczy, że jest do końca porzucony, wystarczy edytować ten artykuł! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:38, 14 lis 2025 (CET)
:: {{Ping|EdytaT}} Do tych stron nie odwołuje się żadna inna strona, jedynie kategorie, ale to nie jest nieporozumienie... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:42, 14 lis 2025 (CET)
== Prosba o pomoc, jak poddac cos pod glosowanie nad usunieciem. ==
Hej, naprawde nie wiem, jak to zrobic - tak po prostu - kliknac na cos na stronie glownej (ale na co, bo jak klikne na poczekalnie, to jestem kompletnie zagubiona), gdzie mozliwie na samej gorze bedzie tekst typu "Zglos strone/podrecznik czy cokolwiek do usuniecia", a potem (albo od razu, bez dalszego przeklikiwania) bede mogla podac co proponuje usunac, dlaczego i ze prosze o glosowanie w ciagu 7 (albo wiecej) dni. Moim aktualnym kandydatem jest [https://pl.wikibooks.org/wiki/Szkice_helweckie_W%C5%82adys%C5%82awa_Tarnowskiego_z_komentarzem]. Pomoz prosze! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 19:08, 18 lis 2025 (CET)
== Ta akcja została automatycznie zidentyfikowana jako szkodliwa ==
Witam, edytuję [[Matematyka dla ostatnich klas szkoły podstawowej/Przekątna kwadratu i wysokość w trójkącie równobocznym]] i wyświetla mi się:
''Ta akcja została automatycznie zidentyfikowana jako szkodliwa, w związku z tym została odrzucona. Jeśli uważasz, że ta edycja była zasadna, skontaktuj się z administratorem i poinformuj go o zaistniałej sytuacji. Krótki opis reguły nadużycia, do której Twoja akcja została dopasowana: Kontekstowa analiza tekstu w poszukiwaniu wandalizmów w wikitekście''
Proszę o zatwierdzenie zmian. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 16:34, 27 lis 2025 (CET)
:Problem już się rozwiązał, dziękuję. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 16:39, 27 lis 2025 (CET)
== Szablony dla przypisow ==
Hej, chcialabym bardzo miec do dyspozycji kilka szablonow dla linkow do zrodel dla (grup) podrecznikow. Czy mozna cos takiego zrobic? Np:
*nazwa szablonu: Szablon:Ziel_Panacea
*zawartosc: https://www.https://panacea.pl/ i tutaj po znaku "|" parametr z dowolnym dodatkiem url , np: tymianek-2 i
*po nastepnym po znaku "|" co ma byc widoczne dla czytelnika: ''Tymianek'' w: Panacea.pl
*po nastepnym znaki "|" parametr z info o autorze, dacie publikacji, np. , Dział Rozwoju, Labofarm, 11.08.2025,
*a na koncu "dostęp" + automatycznie dzisiejsza data 06.12.2025
*i po kliknieciu laduje tu: [https://panacea.pl/tymianek-2/]
: albo:
nazwa szablonu: Szablon:Pszcz_Pasieka24
zawartosc: [https://pasieka24.pl/index.php/pl-pl/pasieka-czasopismo-dla-pszczelarzy/ i tutaj po znaku "|" dowolny dodatek, np: 260-pasieka-5-2024 i
*po nastepnym po znaku "|" co ma byc widoczne dla czytelnika: ''Pasieka 5/2024'' w: Pasieka24.pl
*po nastepnym znaki "|" parametr z info o ewent. autorze, ewent. dacie publikacji i dostepnosci, np. ,
*a na koncu "dostęp" + automatycznie dzisiejsza data 06.12.2025
*i po kliknieciu laduje tu: [https://pasieka24.pl/index.php/pl-pl/pasieka-czasopismo-dla-pszczelarzy/260-pasieka-5-2024]
[[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:37, 6 gru 2025 (CET)
** Hej, dziekuje po raz pierwszy w tym temacie :) , ale moze bede mogla jeszcze raz podziekowac, jezeli:
:* zobacz tu (ref z szablonem i widok przypisu): [https://pl.wikibooks.org/wiki/Napary/Macierzanka_tymianek]
:* a chcialabym, zeby widok przypisu byl taki:
panacea.pl, Dział Rozwoju Labofarm, ''Tymianek'', 11.08.2025 (dostęp: 07.12.2025).
gdzie:
# panacea.pl - to nazwa strony, czyli pierwsza czesc nazwy strony (https://panacea.pl/) wraz z dodatkiem tymianek-2, czyli podstrona, ktora wstawiam jako parametr w szablonie (jako podstrona, ale brzmienie tego parametru nie ma byc widoczne)
## i teraz strzalka linkujaca.
# Dział Rozwoju Labofarm - to autor, ktorego wstawiam opcjonalnie jako kolejny parameter (autor=)
# ''Tymianek'' - to tytul, ktory wstawiam jako kolejny parametr (tytul=)
# 11.08.2025 - to data publikacji, ktora wstawiam opcjonalnie jako kolejny parametr (publ=)
# (dostęp: 07.12.2025) - to data dostepu, generowana automatycznie przez szablon (z dzisiejszej daty). Chyba ze zapisanie jekiejkolwiek zmiany w artykule (niezwiazanej z tym przypisem) powodowaloby zmiane tej daty. To wtedy i te date musialabym wstawiac sama.
:* Jezeli mozna, to wole parametry "nazwane" od "pozycyjnych".
Hej, zastosowalam te szablony na dwoch stronach: [https://pl.wikibooks.org/wiki/Pszczelarstwo/Ro%C5%9Bliny/Bluszcz] i tu [https://pl.wikibooks.org/wiki/Napary/Macierzanka_tymianek]. Czy moglbys jeszcze troche zmienic "dostep" na "dostęp " i tu dzisiejsza data w formacie dd.mm.yyyy. To wtedy ucieszylabym sie z przeniesienia tych szablonow z brudnopisu do "prawdziwych" szablonow. Wtedy dopasuje to na tych dwoch stronach. Dziekuje.
* Hej, nie chcialabym byc namolna, ale ... jeszcze dwie prosby: czy da sie zmienic formatowanie "dostepu" na date zapisania edycji w formacie dd.mm.yyyy? I druga prosba: czy po kliknieciu w link moglby sie on ontwierac w nowej karcie? A poza tym perfekt. Jestes wielki. Dziekuje i pozdrawiam serdecznie.
== Szablon linku dla ksiazki online jako zrodla - mozesz pomoc? ==
Hej, czy mozesz poprawic moja nieudana probe stworzenia przypisu i zalazku szablonu do ksiazki online? Ten zalazek szablonu to Szablon:Pszcz_FeA, a link do tego szablonu probowalam zrobic na stronie [[Pszczelarstwo/Rośliny]], ale mi nie wyszlo ... [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:46, 9 gru 2025 (CET)
== Szablony linkow do czasopism jako zrodel - male nieporozumienie ==
Hej, chcialabym napisac, jakie sa moje zamiary, zaczne od poczatku:
# Pisales kiedys, żeby raczej nie uzywac linkow zewnetrznych do zrodel, poniewaz te zrodla szybko przestaja byc aktualne i dostepne - zgadzam sie z tym w 100 procentach, wiec:
# Poniewaz czasem takie zrodla sa bardzo sensowne, bo kieruja do wynikow badan naukowych i publikacji specjalistow, ktorych inaczej nie da sie uwiarygodnic.
# Ergo: potrzebna jest taka metoda zrodel, ktora w nieskomplikowany sposob pomoze od czasu do czasu te zrodla uaktualnic (najczesciej inny adres strony internetowej lub wymiana na inne zrodlo)
# Moim zdaniem - najlepiej przez szablony, poniewaz:
## Zmiane przeprowadza sie w jednym miejscu i obsluguje sie tym samym wieksza ilosc artykulow w wikibooks
## Waznym jest, by wiedziec, gdzie te szablony zostaly uzyte, a do tego sluzy najwygodniesza dla mnie metoda: klikam na strone szablonu, a potem na "linkujace".
## I tutaj nieporozumienie: wycielam w tych szablonach linki do wpisanych przez ciebie "ZObacz tez: Tematyczne oraz Inne, poniewaz w wyniku dla "linkujacych" one sie pokazja i informacja "ktore strony linkuja (uzywaja) tego szablonu" staje sie bezuzyteczna. Aby naprawde dowiedziec sie, gdzie ten szablon zostal uzyty, jestem zmuszona do klikania we wszystkie wyniki wyszukiwania, by sie dowiedziec, ze w tam nic nie ma, ze te szablony sa tam tylko po to, zeby byc. Wartosc informacji zerowa, czas stracony na te prodedure duzy.
# Dlatego prosze cie, zebys uznal moje edycje usuwajace uzycie tych szablonych w innych szablonach, ktore z tym szablonem merytorycznie nie maja nic wspolnego.
# Natomiast kategoryzacyjnie postanowilam pogrupowac te zrodla alfabetycznie (Szablony:Pszcz_... dla podrecznika pszczelarstwa, szablony: Ziel_... dla podrecznika/podrecznikow zielarskich). Tym sposobem, klikajac na kategorie tych szablonow, uzyskujesz informacje, ktore spelnia te sama role jak "zobacz tez", ale bez negatywnych skutkow ubocznych.
Jejku, ale sie rozpisalam. Czy to w ogole oddaje sens tego, o czym mysle?
Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:16, 11 gru 2025 (CET)
== Szablony do czasopism jako zrodel - czy mozliwe sa jeszcze pewne uzupelnienia? ==
Hej, czy mozna jeszcze troche pouzupelniac te szablony?
Np. Szablon:Pszcz_Pasieka24:
* teraz jest: podstrona=|nazwa=|autorzy=|czasopismo=|opublikowany=|dostęp=
* lepszy bylby odpowiednik takiego ref:
# refname=staly element szablonu taki sam jak nazwa szablonu
# refnr=''opcjonalnie dodatek, jezeli ten szablon jest wykorzystany w artykule wiecej razy z innymi podstronami''
# autorzy=''opcjonalnie nazwiska autorow''
# strona=staly element szablonu, tzn. adres strony glownej
# podstrona=''opcjonalnie podstrona (bo moze informacja jest juz na stronie glownej)
# tytul=''tytul/tekst do pokazania wraz z symbolem "link"''
# czasopismo=staly element szablonu z nazwa czasopisma, ktora jest dla tego szablonu niezmienna, ale w zaleznosci od szablonu moze byc pusta
# numer=''opcjonalnie numer zeszytu''
# wydawca=staly element szablonu, ktory w zaleznosci od szablonu moze byc pusty
# miejscewydania=staly element szablonu, ktory w zaleznosci od szablonu moze byc puste
# rokwydania=''opcjonalnie rok wydania''
# dostep=automatyczny dodatek (dostep dd.mm.yyyy)
[[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:39, 11 gru 2025 (CET)
== Odp ==
Cześć. Nie plagiat, nie biorę ich z internetu ani nie przepisuje papierowych. Dobrego wieczoru! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 22:31, 13 gru 2025 (CET)
:Dziękuję serdecznie za przydatne rady, będę miał je w głowie. Pozdrawiam [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 22:35, 13 gru 2025 (CET)
== Pytanie do: "Jak tworzyć szablony szczególne szablonu {{s|PrzypisStrona}}, w oparciu o ten szablon" ==
Hej, w szablonie "przypis strony" w sekcji "Jak tworzyć szablony szczególne szablonu w oparciu o ten szablon" sa takie dwie linijki, ktore wygladaja na ogolny sposob tworzenia szablonow do zrodel czasopism. Widze tam miejsce, gdzie mozna podac konkretna nazwe strony (adres=https://.....). Ale nie wiem, gdzie umiescic dalsze "stale" parametry: "czasopismo=" (tzn. jak dla tego czasopisma ma byc pokazany jego tytul), "issn=" oraz "wydawca?". Mozesz mi wyjasnic? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 16:29, 14 gru 2025 (CET)
== Dlaczego nie widac nazwisk autorow w przypisie? ==
Hej, no nie wiem. Dlaczego tu: [https://pl.wikibooks.org/wiki/Pszczelarstwo/Biologia/Kom%C3%B3rka] nie widac nazwisk autorow w przypisie (autorzy=Beata Bąk, Maciej Siuda, Jerzy Wilde)? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 22:06, 14 gru 2025 (CET)
== Odp. ==
Cześć! Zaskoczyłeś mnie - myślałem, że wszystkie podręczniki są na tej samej licencji. Ale jeżeli można wybrać to najbardziej preferuje CC-BY-4.0 [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 18:04, 18 gru 2025 (CET)
:Po obejrzeniu przykładu samodzielnie opatrzyłem podręczniki tymże szablonem
:[https://pl.wikibooks.org/w/index.php?title=Etyka_dla_szko%C5%82y_podstawowej&diff=prev&oldid=528107 diff] [https://pl.wikibooks.org/w/index.php?title=Wychowanie_do_%C5%BCycia_w_rodzinie&diff=prev&oldid=528106 diff] [https://pl.wikibooks.org/w/index.php?title=Przyroda&diff=prev&oldid=528105 diff] [https://pl.wikibooks.org/w/index.php?title=Edukacja_zdrowotna&diff=prev&oldid=528104 diff]
:Jeżeli chcesz to możesz sprawdzić ewentualnie poprawność wprowadzonych szablonów. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 18:22, 18 gru 2025 (CET)
== Znacznik ==
Skąd i dlaczego raptem znacznik <<styl do sprawdzenia>> w poprawianym przeze mnie [[Książka kucharska/Kugel|haśle]] Książki kucharskiej? Nie rozumiem, czemu ten komunikat generuje jakieś "oprogramowanie" (a nie konkretna osoba) i o co właściwie tu chodzi wobec braku konkretnego wskazania/wskazań. Jaka sytuacja wywołuje taką adnotację dla danej edycji? Dotąd nie spotykam się z podobnymi uwagami, tym bardziej, że to raczej mnie od kilkudziesięciu lat przypada poprawianie cudzego stylu i języka. Czy mógłbyś to przystępnie wyjaśnić? - [[Wikipedysta:Cyborian|Cyborian]] ([[Dyskusja wikipedysty:Cyborian|dyskusja]]) 00:16, 20 gru 2025 (CET)
== Ukrycia ==
Cześć! Uprzejmie przypominam, że narzędzia ukrywania używamy do chowania „wyjątkowo wulgarnych edycji”. Widziałem, że ukryłeś dziś opis zmian [https://pl.wikibooks.org/w/index.php?title=Pomocnik_olimpijczyka_-_Elementy_wiedzy_obywatelskiej_i_ekonomicznej/Scena_polityczna&diff=prev&oldid=528484 tej edycji] natomiast nie ma nic wulgarnego bądź niestosownego w opisie „''Proletariusze wszystkich krajów, łączcie się!''”, wiadomo może jest nietypowy, ale z pewnością nie kwalifikuje się do ukrycia. Tak samo przy [https://pl.wikibooks.org/w/index.php?title=Pomocnik_olimpijczyka_-_Elementy_wiedzy_obywatelskiej_i_ekonomicznej/Scena_polityczna&diff=prev&oldid=528488 tej edycji] opis „''no ja wszystko rozumiem, ale są tu też pożyteczne edycje''”, również nie zawiera niczego niestosownego. Dobrego wieczoru i serdecznie pozdrawiam :) [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:49, 22 gru 2025 (CET)
: {{Ping|Igor123121}} Opisy tych edycji nie spełniają zasady neutralnego punktu widzenia. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:52, 22 gru 2025 (CET)
::@[[Wikipedysta:Persino|Persino]] Jasne, rozumiem, dzięki za wyjaśnienie. Nie mam zamiaru kwestionować Twojej decyzji administratorskiej. Chciałem tylko upewnić się, jak w praktyce interpretujemy zasady dotyczące ukrywania opisów zmian. Dzięki za doprecyzowanie i pozdrawiam serdecznie. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:58, 22 gru 2025 (CET)
== Blokada treści przez filtr ==
Znów cyrki z filtrem nadużyć. Tym razem w Książce kucharskiej, w której ostatnio wszystko odbywało się bezkolizyjnie. Wprowadzam właśnie '''Włoskie pierożki wigilijne''', a w odpowiedzi otrzymuję powiadomienie o mojej "akcji jako szkodliwej", przy czym dokonane nadużycie (czego i tak nie rozumiem) brzmi: "Wielokrotne nowe linie znacznikowo-szablonowo-znakowe, kolejne w wielu liniach, lub w jednej linii".
Chyba machnę ręką i niech szlag trafi cały ten przepis (i ewentualne przyszłe też). Kto bowiem uwierzy, że te udoskonalenia mają piszącym ułatwiać życie? - [[Wikipedysta:Cyborian|Cyborian]] ([[Dyskusja wikipedysty:Cyborian|dyskusja]]) 22:39, 22 gru 2025 (CET)
:{{Ping|Cyborian}} Filtry są dopiero tworzone, więc przepraszam za problem! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:53, 24 gru 2025 (CET)
== Prześladowania esperantystów w III Rzeszy i Związku Radzieckim ==
Dzień dobry,
wczoraj wieczorem próbowałem napisać na tej stronie podręcznik dotyczący prześladowań esperantystów w III Rzeszy i Związku Radzieckim. Nie rozumiem, dlaczego moja praca została usunięta. Rozumiem, że tempo tworzenia mojej pracy oraz jej tematyka mogą być podejrzane, ale po prostu tak mam, że jestem „rewolwerzystą” w zakresie obsługiwania komputera i szybko tworzę strony, a jeżeli chodzi o braku merytoryczne, to takowe nie istnieją, gdyż zaopatrzyłem się w wszystkie niezbędne źródła.
Bardzo dobrze znam temat. Wiem np. o esperanckiej grupie ruchu oporu w obozie Dachau (ok. 20 więźniów z Francji i Niemiec), posiadam niezbędne prace i chciałem tylko przybliżyć czytelnikowi ów prześladowania pisząc o nich na Wikibooks.
Prosiłbym o odpowiedź z precyzyjnym wyjaśnieniem, dlaczego mało znany element historii jest „spamowaniem” i co mógłbym poprawić, aby książka mogła znowu zainstnieć.
Z pozdrowieniami, [[Wikipedysta:Szmaragd zielony jak język|Szmaragd zielony jak język]] ([[Dyskusja wikipedysty:Szmaragd zielony jak język|dyskusja]]) 10:18, 23 gru 2025 (CET)
: {{Ping|Szmaragd zielony jak język}} Zaloguj się pod normalną nazwą użytkownika, nie prowokuj! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:36, 23 gru 2025 (CET)
== Odp. ==
Cześć. Obecnie niedokończoną mam tylko jedną, więc myślę, że do końca świąt powinienem ją skończyć. Wesołych świąt! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:14, 24 gru 2025 (CET)
:Tak, tak będę go również robił spokojnie. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 18:27, 24 gru 2025 (CET)
== Dziękuję za zaakceptowanie mojej pracy! ==
Zacząłem pisać dalej. Co prawda praca będzie taka „przerywana”, gdyż trochę trwa redagowanie fragmentów, a i nie mam zbyt wiele czasu – to staram się. Znalazłem kilka ciekawych źródeł, jak np. [http://esperanto.china.org.cn/EL/EL/ElPopolaCxinio/98-7-4.html ta strona], co daje mi spore pole do popisu. Pozdrawiam i mam nadzieję na owocną współpracę! [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 11:41, 25 gru 2025 (CET)
== Filtr 107 ==
Cześć próbowałem opublikować opracowanie „Artysty” Sławomira Mrozka, jednak filtr 107 mi nie pozwolił. Nie zauważyłem nigdzie błędów składniowych, więc gdybyś mógł rzucić okiem to byłbym wdzięczny. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 23:50, 28 gru 2025 (CET)
:Tu chodzi o filtr 103, a nie o 107. Problem naprawiony. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 06:44, 29 gru 2025 (CET)
== zbyt silny filtr nadużyć ==
Filtr nadużyć mówi mi "Tekst w większości w innych systemach niż łaciński" na stronie [[Dyskusja:Biologia dla liceum/Podstawa programowa]] gdzie próbowałem sobie zanotować informację roboczą z linkiem do podstawy programowej. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 21:15, 29 gru 2025 (CET)
:{{Ping|Marek Mazurkiewicz}} Już naprawione. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 23:30, 29 gru 2025 (CET)
== Powtarzające się ciągi znaków w linii wikitekstu ==
Edytuję małą część swojego podręcznika i wymaga ona dużo znaczników <code>\frac{}</code>. Filtr nadużyć traktuje to jak spam. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 21:24, 30 gru 2025 (CET)
== Dopasowania w filtrze nadużyć ==
Hej, niestety znowu problemy w filtrze nadużyć, które '''u n i e m o ż l i w i a j ą''' normalne edytowanie. W tej edycji [[Pszczelarstwo/Sprzęt]] nie mogę wpisać nazwy ula, która brzmi "Dadant". Prawdopodobnie dlatego, że filtr nie potrafi przełknąć "dada" bez czkawki. Wydaje mi się, że trzeba to rozwiązać tak: filtr ostrzega, a po ponownym kliknięciu zapisuje swoje zastrzeżenia na stronie dla administratorów nie blokując edytującego. Administratorzy mogą potem reagować, czy to wandalizm, nadgorliwość filtru czy zignorować. A ja, jako zwykły człowiek edytujący tekst, mogę ten tekst po prostu zapisać i dalej zajmować się tym, czym chcę się zajmować. Nie tracąc czasu, nerwów i energii na fochy filtra. Pozdrawiam serdecznie - szczęśliwego Nowego Roku! [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 17:20, 3 sty 2026 (CET)
* {{Ping|EdytaT}} Problem z filtrem naprawiony, możesz edytować spokojnie. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:45, 3 sty 2026 (CET)
== Projekt nowej strony głównej ==
Zajmuję się projektem, który od dawna spędza nam sen z powiek. Jak wszystko będę miał gotowe, będzie można redagować, wstawiać, etc. W ramach [[Wikipedysta:Benjamin_E._Schneider/projektyy|tej strony]] podejmuję się działań:
* przepisania kodu SG na nowoczesnego HTML-a bez rozwalania na szablony
* unowocześniania interfejsu SG
* zadbania o przyjazność dla użytkownika.
Jeżeli będziesz miał jakieś sugestie, napisz lub popraw. [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 16:24, 6 sty 2026 (CET)
== Filtr ==
Cześć. Dzisiaj filtr 72 ([[Specjalna:Rejestr nadużyć/8509]]) odrzucił prawidłową edycje anonimowego edytora tylko dlatego, że próbował edytować stronę, na której znajduje się nieistniejący plik (strona [[Powtarzamy matematykę - matura 2011/Matura2010 zad22]]). Czy nie warto złagodzić działania tych filtrów, np. zmienić je z odrzucania na samo oznaczanie edycji do sprawdzenia dla administratorów?
Pozdrawiam. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 19:57, 8 sty 2026 (CET)
:{{Ping|Igor123121}} Zamieniłem je na ostrzeżenie! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:05, 8 sty 2026 (CET)
== Błąd filtru ==
Cześć. Dostrzegłem dzisiaj bardzo poważny błąd w filtrze 51 naszego filtru nadużyć - uniemożliwia on tworzenie stron z nieliter (przez co również nie można utworzyć strony dyskusji anonimowego użytkownika działającego przez konto tymczasowe i przez to kontaktu z nim) Zobacz proszę na ostatni rejestr filtru. Wydaje mi się, że trzeba zmienić na znacznik zamiast odrzucenie (oczywiście mógłbym sam zmienić, ale nie chce niczego dokonywać bez konsultacji z Toba). Pozdrawiam. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 23:07, 4 lut 2026 (CET)
: {{Ping|Igor123121}} Wystarczyło dodać dodatkowe warunki. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 04:53, 5 lut 2026 (CET)
== Kategoria:Szablon:Przypisy (artykuły) bez oczekiwanego nagłówka ==
Hej, co powinnam robić, żeby to się nie pojawiało? Np. tu: [https://pl.wikibooks.org/wiki/Pszczelarstwo/Ro%C5%9Bliny/Abelia]. Pozdrwiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:58, 12 lut 2026 (CET)
:{{Ping|EdytaT}} To jest kategoria do zbierania stron, na których nie użyta nagłówka: <nowiki>==Przypisy==</nowiki>, inaczej mówiąc, wpisz ten nagłówek przed wywołaniem: {{s|Przypisy}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:13, 12 lut 2026 (CET)
::Hej, nie uwierzysz - teraz pojawia się: Kategoria: Szablon:Przypisy (artykuły) z oczekiwanym nagłówkiem :):):):):) [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 20:02, 12 lut 2026 (CET)
:{{Ping|EdytaT}} Właśnie to są kategorie do zbierania tego typu przypadków, też nie uwierzysz! :):):):) [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:07, 12 lut 2026 (CET)
::{{Ping|EdytaT}} Chyba, że tą drugą mam inaczej nazwać. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:09, 12 lut 2026 (CET)
:::To znaczy, żeby się tego pozbyć, to nie mogę używać przypisów? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:46, 12 lut 2026 (CET)
::::{{Ping|EdytaT}} Jak nie przypisów, to czego będziesz używać, ja je włożyłem do szablonów {{s|Przypisy}}, {{s|Uwagi}} i {{s|Przypisy-lista}}, ja tak tego nie mogę się pozbyć, bo to byłby wandalizm, musiał bym usunąć moduł {{m|Przypisy}} i samo ciało implementacji, tych szablonów! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:56, 12 lut 2026 (CET)
::::{{Ping|EdytaT}} Te dwie kategorie to są kategorie tylko informacyjne, aby wiedzieć jakiego typu przypadki są na stronie, aby je bardzo łatwo było naprawić, jakby nastąpił problem! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:58, 12 lut 2026 (CET)
:::::No jeżeli te informacje są rzeczywiście potrzebne, to trudno. A można je chociaż "ukryć", żeby poza administratorami nikt ich nie widział? [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 12:11, 13 lut 2026 (CET)
:::::{{Ping|EdytaT}} Dobrze [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 16:22, 13 lut 2026 (CET)
== Never ending story? ==
Hej, błagam, czy możesz zrobić tak, żeby żadne, absolutnie żadne filtry nie wtrącały się do tego, co edytuję? Po raz 100n-ty pojawia mi się meldunek "Ta akcja została automatycznie zidentyfikowana jako szkodliwa, w związku z tym została odrzucona. Jeśli uważasz, że ta edycja była zasadna, skontaktuj się z administratorem i poinformuj go o zaistniałej sytuacji. Krótki opis reguły nadużycia, do której Twoja akcja została dopasowana:". Tym razem z dodatkiem: "Eksperymentalne tworzenie stron", co oczywiście nie ma nic wspólnego z rzeczywistością. Te przeszkody w edytowaniu stron odstraszyły na pewno niejednego chętnego do pisania w Wikibooks. Jestem załamana. Kompletnie załamana i już się chyba nie pozbieram. Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 15:08, 10 kwi 2026 (CEST)
: {{Ping|EdytaT}} Już naprawiłem problem, zrobiłem, że liczba znaków maksymalna w tym filtrze, nie jest już 150, tylko 50, aby był to eksperyment edycyjny! Sprawdziłem twoje edycje, teraz nie wykrywa zmian, czyli jest OK! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:27, 10 kwi 2026 (CEST)
== Prosze o pomoc ==
Tutaj https://pl.wikibooks.org/wiki/Zio%C5%82a_i_przyprawy/Kolendra_siewna próbuje wpisać, że Wikibooks/Ekoogrodnictwo ma artykuł na temat kolendry, a potem że Książka kucharska ma przepisy z kolendra. Ale nie umiem. Czy możesz mi pomoc? Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 18:52, 10 kwi 2026 (CEST)
: {{Ping|EdytaT}} Daj mi chwilę na stworzenie odpowiednich szablonów. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:02, 10 kwi 2026 (CEST)
:: {{Ping|EdytaT}} Już szablon przyszykowany, zobacz {{s|Wikibooks}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:27, 10 kwi 2026 (CEST)
== Zmiana na "stare" ==
Hej, widzę, że cofasz moje przekierowania na uproszczony dostęp do artykułów. Tzn. zamiast "płasko" (np. Ekoogrodnictwo/jakas-roslinka) to "w drabince" (np. Ekoogrodnictwo/stopien-drabinki/jakas-roslinka). Jest ok, niech tak będzie, ale szkoda, że o tym nie porozmawialiśmy. Robiąc moje pierwsze "spłaszczenie" chodziło mi o kilka rzeczy, co w powodzie zmiany napisałam. M.in. o prostszy zapis dostępu, aby nie trzeba było pamiętać całej drabinki robiąc z innych artykułów. Po drugie jest problem, gdy jakaś roślinka jest raczej "ozdobna" niż "użytkowa",, ale poprzez tę drabinkę jest na stale przypisana tylko do jednej z nich. W sumie to jest niepoprawne. Oczywiście zdawałam sobie sprawę, że potrzeba trochę czasu, by uporządkować te wszystkie drabinki, ale przecież ten czas mamy. A czym ty się kierowałeś? Pozdrawiam [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 13:43, 12 kwi 2026 (CEST)
: {{Ping|EdytaT}} Jak roślina jest jednocześnie użytkowa i jakiś artykuł w tym kierunku, dalej chcemy stworzyć artykuł dla tej samej rośliny, ale jako ozdobnej, to tworzymy przekierowanie do niej, ale użytkowej, ze strony artykułu, ale ozdobnej. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:01, 12 kwi 2026 (CEST)
:: {{Ping|EdytaT}} W książce [[Ekoogrodnictwo]], nie wiadomo, czy dany artykuł wskazuje na roślinę, czy na coś innego, więc lepszą motywacją jest wersja drabinkowa. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:58, 12 kwi 2026 (CEST)
== You may be an eligible candidate for the U4C election ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Greetings,
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee (U4C)]] seeks candidates for the 2026 election. The U4C is the global committee responsible for overseeing enforcement of the [[foundation:Special:MyLanguage/Policy:Universal Code of Conduct|Universal Code of Conduct]]. Elections are held annually, if elected a committee member serves for two years.
This year the U4C requires candidates to hold administrator rights on at least one wiki, which is why you are being contacted as you appear to hold this right. There are other requirements, such as candidates must be at least 18 years old and may not be employed by the Wikimedia Foundation or other related chapters and affiliates. You can find more information in the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026#Call_for_Candidates|call for candidates on Meta-wiki]]. Additionally, the committee's working language is English; some ability to communicate in English is required.
The election opens on 18 May, if you are eligible and interested you have until 10 May to submit your candidacy. There will be a week in between for candidates to answer questions from the community. Voting takes place privately in [[m:Special:MyLanguage/SecurePoll|SecurePoll]], successful candidates must receive at least 60% support. More information is available on [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|the 2026 Elections page]], including timelines and other candidacy information. If you read over the material and consider yourself qualified, please consider submitting your name to run for the committee. If you think someone else in your community might be interested and qualified, please encourage them to run.
In partnership with the U4C -- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User_talk:Keegan (WMF)|talk]]) 22:07, 28 kwi 2026 (CEST) </div>
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/test&oldid=30472432 -->
== Pruski/Lekcja13 ==
Cześć, dlaczego wycofałeś moje edycje na stronie Pruski/Lekcja13? [[Wikipedysta:Aklbmd164|Aklbmd164]] ([[Dyskusja wikipedysty:Aklbmd164|dyskusja]]) 00:53, 21 maj 2026 (CEST)
: {{Ping|Aklbmd164}} Wybacz, podczas przeglądania w telefonie mogło się coś mi nacisnąć przez przypadek! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 01:09, 21 maj 2026 (CEST)
:Dzięki [[Wikipedysta:Aklbmd164|Aklbmd164]] ([[Dyskusja wikipedysty:Aklbmd164|dyskusja]]) 01:09, 21 maj 2026 (CEST)
== Filtr nadużyć - przypadkowy ciąg znaków ==
Cześć! Dziękuję za wstawienie mojej edycji na stronie [[Śpiewnik/Marsz,_marsz_Polonia]], zablokowanej przez filtr nadużyć (wykryto "przypadkowy ciąg znaków"). Do tej pory i wstawianie nut przez Score, i linków do cyfrowej biblioteki Polona (które rzeczywiście zawierają losowo wyglądające ciągi znaków) udawało się bez problemów. Czasami tylko dostawałam komunikat, że filtr nadużyć wykrył, że wstawiam za dużo treści na raz i że wygląda to podejrzanie ;-)
Mam pytanie, czego spodziewać się przy kolejnych edycjach. Czy przy każdym nieudanym zapisaniu strony zwracać się do Ciebie? Czy istnieje jakiś mechanizm "white listy" – czy można prosić o imienne wykluczenie z filtra nadużyć, w oparciu o dotychczasową historię edycji i brak nadużyć i blokad? Pozdrawiam, [[Wikipedysta:Ashaio|Ashaio]] ([[Dyskusja wikipedysty:Ashaio|dyskusja]]) 12:40, 8 cze 2026 (CEST)
: {{Ping|Ashaio}} Poprawiłem dwa ostatnie filtry, tzn. {{Code|150}} i {{Code|151}}, i sprawdziłem na twoich edycjach, teraz nie ma problemu. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 12:47, 8 cze 2026 (CEST)
== Dzień dobry. ==
Dziękuję za powitanie oraz docenienie pracy.
Z długiego już doświaczenia (i niekoniecznie docenianego!) znam problematykę pracy na Wikibooks – mam więc nadzieję na owocną współpracę.
Z pozdrowieniami, [[Wikipedysta:Wtyczka DIN 545|Wtyczka DIN 545]] ([[Dyskusja wikipedysty:Wtyczka DIN 545|dyskusja]]) 22:39, 4 lip 2026 (CEST)
== Wcalenieja ==
Cześć! Widziałem, że zablokowałeś na miesiąc użytkownika [[Wikipedysta:Wcalenieja|<bdi>Wcalenieja</bdi>]] z uzasadnieniem „Spamowanie”, jednak jego edycje są poprawne (w większości polegały na zmianie formy „na Wikipedii” na „w Wikipedii”, która jest jak najbardziej poprawna z językiem polskim https://sjp.pwn.pl/poradnia/haslo/w-wikipedii;18074.html. W związku z tym chciałbym zdjąć blokadę, jednak nie chcę dokonywać tego bez konsultacji z Tobą. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:31, 27 lip 2026 (CEST)
* {{Ping|Igor123121}} Chodziło mi o naturalność w języku polskim, ale ten użytkownik zamienia takie coś: "w Wikipedii" na "na Wikipedii", a później cofa, jak to było w: [[LaTeX/Pisanie_listów]]. A jak mówisz, że to jednak poprawne, to możesz cofnąc blokadę. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:39, 27 lip 2026 (CEST)
== Admin ==
Cześć! Widziałem, że ~[https://pl.wikibooks.org/w/index.php?title=Wikibooks:Administratorzy&diff=prev&oldid=551163 wykreśliłeś] mnie z listy administratorów polskiego Wikibooks, jednak ciągle nim pozostaje. Moje uprawnienia zostały po raz kolejny przedłużone, tym razem do 27 lipca 2027 roku. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 12:45, 8 sie 2026 (CEST)
== AI ==
Cześć, jestem wikipedystą, adminem pl.wiki. Przypadkiem, podczas przeglądania wkładów cross-wiki, natrafiłem na dwa podręczniki, które wyglądają na wygenerowane przez AI. Problem dotyczy [[Edukacja zdrowotna]] i [[Edukacja obywatelska dla VI klasy szkoły podstawowej]]. Dodam tylko, że autor, @[[Wikipedysta:Igor123121|Igor123121]], był w przeszłości banowany na Wikipedii za fałszowanie źródeł i nadmierny użytek AI, ostatnio nawet permanentnie ([https://pl.wikipedia.org/w/index.php?title=Specjalna:Rejestr/block&page=Wikipedysta%3AIgor123121]). Czy w Waszym projekcie pozwala się na coś takiego? [[Wikipedysta:Karol739|Karol739]] ([[Dyskusja wikipedysty:Karol739|dyskusja]]) 21:32, 19 wrz 2026 (CEST)
:@[[Wikipedysta:Karol739|Karol739]] żadna zasada w tymże projekcie nie zabrania wspomagania się sztuczną inteligencją, to są podręczniki, nie encyklopedia. W związku z czym nie ma mowy o fałszowaniu źródeł, bo tutaj takowych się nie wykorzystuje. Podręczniki te zawierają merytoryczną treść, zgodną z prawdą. Pozdrawiam. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 21:35, 19 wrz 2026 (CEST)
:: {{Ping|Karol739|Igor123121}} AI można się tylko wspomagać, ale to nie AI powinno być właściwym autorem, a tutaj dla: [[Edukacja zdrowotna]] i [[Edukacja obywatelska dla VI klasy szkoły podstawowej]], to '''nie ten użytkownik''' jest autorem, '''tylko AI'''. Więc ten użytkownik '''złamał reguły'''. Co mam z nim zrobić, bo ten użytkownik jest admistratorem polskiego Wikibooksa, gdzie mam to zgłosić. Na tego użytkownika nie miałem żadnego dowodu, aż do teraz, a sam się przyznał do korzystania AI, ten użytkownik w krótkim czasie napisał mnóstwo książek, ale chyba to tylko zasługa AI, a nie tego użytkownika. Ten użytkownik nie podaje źródeł, a źródła nawet na Wikibooks są potrzebne, bo są do tego szablony, jak np. przypisy! Bo bez przypisy, to jest nie praca własna, tylko plagiat. Byłoby dobrze, by ten autor, podał bibliografię poszczególnych pozycji! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 06:20, 20 wrz 2026 (CEST)
:::Nie bardzo rozumiem Twojego stanowiska Persino, ponieważ jest niezwykle chaotycznie opisane. W świetle polskiego oraz unijnego prawa autorskiego treść wygenerowana wyłącznie i autonomicznie przez sztuczną inteligencję w ogóle nie jest objęta prawem autorskim. Narzędzie https://copyvios.toolforge.org/ przy każdej powstałej stronie wykazuje czynnik plagiatu 0,0%, więc nie ma mowy o "plagiacie". Dodatkowo nie bardzo wiem jakie reguły zostały złamane. Pozdrawiam serdecznie. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 10:20, 20 wrz 2026 (CEST)
::::PS dodatkowo nie wiem dlaczego powołujesz się na wymóg podawania źródeł w Wikibooks, 99% procent treści nie posiada przypisów/odnośników. Przykładowy przykład po użyciu narzędzia "losowa strona" - [[Książka kucharska/Ryżowe kulki nadziewane mielonym mięsem|Ryżowe kulki nadziewane mielonym mięsem]]. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 10:22, 20 wrz 2026 (CEST)
== Ukrycie danych wrażliwych ==
Na podstawie artykułu 9 RODO proszę o ukrycie edycji: https://pl.wikibooks.org/w/index.php?title=Wikipedysta:YxiCode&diff=prev&oldid=535293, która zawiera moje dane wrażliwe dotyczące orientacji seksualnej. Nie wyrażam zgody na ich publiczne przetwarzanie. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 17:00, 18 paź 2026 (CEST)
autkknad250xrwoh1jgnm925rpakzo5
Szablon:User language/en
10
20157
559516
121568
2026-10-18T13:05:49Z
YxiCode
34510
559516
wikitext
text/x-wiki
<!--
Don't copy this code when creating a new translation!
This subpage contains special programming for use as a default text.
-->{{#switch:{{{1}}}
|name = English
|text = This user {{#switch:{{{2}}}
|0 = cannot read or write in
|1 = can read and write basic
|2 = can read and write intermediate
|3 = can read and write fluently in
|4 = can read and write at a near-native level in
|5 = can read and write at a professional level in
|N = can read and write at a native level in
}} [[:Category:User {{{3|en}}}|{{#switch:{{{3|en}}}|en=English |{{#ifexist:template:user language/{{{3}}}|{{user language/{{{3}}}|name}}|''{{#language:{{{3}}}}}''}}}}]].
}}<noinclude>{{Dokumentacja|Szablon:User language/xx/opis}}</noinclude>
9ziyy9ijcz1rzxxwbh36tuuj37zt6ee
Dyskusja:Matematyka dla klas 7-8 szkoły podstawowej
1
27089
559561
520996
2026-10-18T19:48:18Z
YxiCode
34510
/* Niepotrzebny podręcznik */ nowa sekcja
559561
wikitext
text/x-wiki
==[[Matematyka dla klas 7-8 szkoły podstawowej/Test diagnostyczny|Test diagnostyczny]]==
==Arytmetyka, liczby, obliczenia==
===[[Matematyka dla klas 7-8 szkoły podstawowej/Liczby wymierne 1|Liczby wymierne 1]]===
#Działania na liczbach całkowitych (warto przypomnieć razem z kolejnością działań i z nawiasami.)
#działania na ułamkach
#zamiana ułamków zwykłych na dziesiętne i odwrotnie, przykłady wykorzystania kalkulatora
#przybliżenia dziesiętne ułamków zwykłych
#działania na ułamkach wyrażonych rozwinięciem dziesiętnym (powtórzenie)
#Porównywanie liczb wymiernych
:#porównywanie ułamków zwykłych
:#porównywanie liczb dziesiętnych
===[[Matematyka dla klas 7-8 szkoły podstawowej/Procenty 1|Procenty 1]]===
#zamiana procentów na ułamki dziesiętne i zwykłe, zamiana ułamków na procenty (także z użyciem kalkulatora, przybliżenia)
#obliczanie jakim procentem jednej liczby jest druga,także z użyciem kalkulatora, przybliżenia)
#obliczanie procentu liczby,
===[[Matematyka dla klas 7-8 szkoły podstawowej/Procenty 2|Procenty 2]]===
#obliczanie liczby zwiększonej/zmniejszonej o pewien procent wprost i jako odpowiednie mnożenie
#obliczanie liczby ze znajomości jej procentu (odsetka)
#*przedstawianie danych na prostokącie i kole
===[[Matematyka dla klas 7-8 szkoły podstawowej/Proporcje|Proporcje]]===
#Proporcja np. 2 : 3 i podział pewnej wielkości na dwie części w stosunku 2 : 3.
#Proporcja np. 2 : 3 : 5 i podział pewnej wielkości na trzy części w stosunku 2 : 3 :5
#Mieszaniny
#Proporcjonalność prosta
#:Wielkości proporcjonalne <math>y=kx</math> (''k'' może być albo dodatnie albo ujemne)
#:Proporcjonalność odwrotna <math>yx=k</math> (''k'' może być albo dodatnie albo ujemne) ''y'' jest odwrotnie proporcjonalne do ''x'' można wypowiedzieć, że ''y'' jest proporcjonalne do odwrotności ''x''.
#:Przykład równowagi na równoważni.
===[[Matematyka dla klas 7-8 szkoły podstawowej/Potęga o wykładniku całkowitym|Potęga o wykładniku całkowitym; własności potęgowania]]===
#obliczanie wartości wyrażeń arytmetycznych zawierających potęgi
#twierdzenia o iloczynie i ilorazie potęg ''o tych samych wykładnikach oraz o tych samych podstawach''
#twierdzenie o potęgowaniu potęgi
#zapis wykładniczy z dodatnim wykładnikiem <math>ax10^n</math>, 1≤''a''<10
#zamiana jednostek
===[[Matematyka dla klas 7-8 szkoły podstawowej/Przykłady pierwiastków|Przykłady pierwiastków]]===
:''np. obliczając bok kwadratu z pola, krawędź sześcianu z objętości; przykłady liczb niewymiernych. Budowanie przeświadczenia, że liczby nawet niekwadratowe mają pierwiastki, których wartość można określać z dowolną dokładnością po przecinku. Można się wspomóc kalkulatorem, ale nie naciskając znaku pierwiastek.''
:pierwiastek kwadratowy liczby a na niektórych kalkulatorach to <math>a^\frac{1}{2}</math>. Dlaczego?
==Algebra==
===[[Matematyka dla klas 7-8 szkoły podstawowej/Wyrażenia algebraiczne 1|Wyrażenia algebraiczne (1)]]===
#Zapisywanie wyrażeń algebraicznych
#: Wyrażenia o prostej konstrukcji, dotyczące przykładów z życia. ''Przykład: W klasie Ia jest k uczniów, a w klasie Ib m uczniów. Ilu uczniów razem jest w obu klasach pierwszych?
#:Dużo różnorodnych przykładów z użyciem symboli literowych w celu przekonania, że warto czasami liczyć "na literach", a wstawiać konkretne wartości liczbowe dopiero na końcu. Przykład: Wymiary opisane literkami, pola czy objętości na podstawie rysunku wymiarowanego literkami, zagadki typu: pomyśl liczbę…
#Obliczanie wartości liczbowej wyrażeń algebraicznych
#*Proste przykłady pod względem rachunkowym, nie wymagające określania dziedziny wyrażenia
===[[Matematyka dla klas 7-8 szkoły podstawowej/Wyrażenia algebraiczne 2|Wyrażenia algebraiczne (2)]]===
#równość wyrażeń algebraicznych
#:sprawdzanie równości algebraicznych dla paru konkretyzacji i na tym budowanie pojęcia równości (równoważności) lub nie-równości (nierównoważności) wyrażeń algebraicznych.
#:dowody geometryczne. Przykład: (a+b)(c+d)=ac+ad+bc+bd .
#:odróżnienie znaku równości jako tożsamości i jako znaku zapytania, dla jakich wartości równość zachodzi.(To musi być powtórzone, być może, w paru miejscach. Uwaga = ≠ =.)
#Przekształcanie wyrażeń algebraicznych
:#Wyrażenia z jedną zmienną i z wieloma zmiennymi
:#Jednomian wielu zmiennych i jednaj zmiennej
:#porządkowanie jednomianów
:#określanie współczynnika liczbowego jednomianu,
:#mnożenie jednomianów przez jednomian,
:#jednomiany przeciwne,
:#jednomiany podobne.
przekształcanie wyrażeń algebraicznych, to znajdywanie wyrażeń równych, choć inaczej zapisanych.
===[[Matematyka dla klas 7-8 szkoły podstawowej/Wyrażenia algebraiczne 3|Wyrażenia algebraiczne (3)]]===
:#Suma algebraiczna jednomianów (dlaczego suma „chwyta” przypadki z odejmowaniem)
:#Dodawanie i odejmowanie sum algebraicznych
:#Mnożenie sumy algebraicznej przez liczbę i jednomian
:#Dzielenie sumy algebraicznej przez liczbę i jednomian
:#Wyłączanie wspólnego czynnika przed nawias (to będzie nowe dla prawie wszystkich po SP)
Uwaga. Ostatnie podpunkty mogą być znane niektórym absolwentom SP, ale…
===[[Matematyka dla klas 7-8 szkoły podstawowej/Równania i nierówności|Równania ]]===
:*podkreślenie różnicy pomiędzy tożsamością a równaniem, co to jest rozwiązanie równania, co to znaczy rozwiązać równanie.
:*równania równoważne (co to są równania równoważne, zastępowanie wyrażeń algebraicznych równoważnymi i takie same odwracalne przekształcenia obu stron równania)
:*proste równania pierwszego stopnia
:*przykłady wywodzące się z różnych kontekstów
::najłatwiejsze: <math> 2x-2=0\, </math>
::najtrudniejsze: <math> 3(x+4)=\frac{2}{3}x+5 </math>
:*Przekształcanie wzorów, to jest przekształcanie równań
===[[Matematyka dla klas 7-8 szkoły podstawowej/Nierówności|Nierówności]]===
:*proste nierówności jednej zmiennej (nierówności równoważne, co to znaczy rozwiązać nierówność, sytuacje, których modelem matematycznym jest nierówność i rozwiązywanie tej nierówności, zaznaczanie rozwiązania na osi.
===Wzory i funkcje===
===[[Matematyka dla klas 7-8 szkoły podstawowej/Kartezjański układ współrzędnych|Kartezjański układ współrzędnych]]===
Punkty i pary liczb, czyli współrzędne
:*Wprowadzenie i elementarne ćwiczenia.
===[[Matematyka dla klas 7-8 szkoły podstawowej/Wykresy funkcji|Wykresy funkcji]]===
:*przykłady wykresów funkcji wyznaczanych empirycznie w kartezjańskim układzie współrzędnych (jak odczytywać, jak zrobić tabelkę dla wybranych wartości, jak określić, co od czego zależy (żelazna umowa, że to na pionowej zależy od tego na poziomej), czy zależne rośnie, gdy niezależne rośnie i wiele, wiele innych. Różnorodne przykłady. Bardziej wizualnie i intuicyjnie niż analitycznie. Wśród wykresów warto rozpoznać proporcjonalność prostą. Być może pokazać kształt proporcjonalności odwrotnej
''Uwaga. w nowych podstawach nie ma właściwie funkcji jako takich. To chyba po prostu jest niedopatrzenie.Funkcje jako wzory pojawiają się w innych przedmiotach i nie ma powodu, żeby się na tym nie oprzeć. Generalnie widziałbym ten moduł/lik jako przykłady różnych wzorów i przedstawianie jednej ze zmiennych jako funkcja pozostałych. Nawiązanie do fizyki. Nawiązanie do geometrii – pole trójkąta, trapezu i wyznaczanie jednej ze zmiennych przez pozostałe. Przy okazji tworzenie języka funkcji. Warto też podać algorytmiczny sposób określania funkcji. Przykład: weź dowolną liczbę x, podnieś ją do kwadratu i dodaj 1. Wynik nazwij f(x). Wtedy warto wprowadzić notację x strzałka f(x) lub x strzałka f(x)=x^2+1.)
Różne sposoby zadawania funkcji.''
==Geometria==
===[[Matematyka dla klas 7-8 szkoły podstawowej/Kąty|Kąty]]===
#przykłady formułowania definicji pojęć
#rodzaje kątów
#kreślenie kątów o zadanej mierze
#konstrukcja kąta równego narysowanemu
#kąt jako figura i kąt jako miara obrotu dookoła punktu
#Azymut
===[[Matematyka dla klas 7-8 szkoły podstawowej/Kąty i proste|Kąty i proste]]===
#konstrukcja prostych równoległych i prostopadłych (dodawanie odcinków trochę wcześniej, potem jeszcze przed rodzajami kątów)
#proste równoległe przecięte trzecią prostą
===[[Matematyka dla klas 7-8 szkoły podstawowej/Klasyfikacja i kreślenie wielokątów|Klasyfikacja i kreślenie wielokątów]]===
#Konstrukcja identycznych trójkątów i czworokątów konstrukcyjnie (na razie bez słowa konstrukcyjnie, a za pomocą tylko cyrkla i linijki.)
#Cechy przystawania trójkątów.
===[[Matematyka dla klas 7-8 szkoły podstawowej/Symetria osiowa|Symetria osiowa ]]===
#rozpoznawanie figur symetrycznych
#uzupełnianie rysunków tak, aby figury były symetryczne
#rysowanie figur symetrycznych
#wyznaczanie osi symetrii figury
#Symetralna odcinka i dwusieczna kąta i ich konstrukcje;
wersja [[Matematyka dla klas 7-8 szkoły podstawowej/Symetria osiowa animacje|z animacjami]]
===[[Matematyka dla klas 7-8 szkoły podstawowej/Kąt środkowy i kąt wpisany|Kąt środkowy i kąt wpisany]]===
#Koło okrąg
#Kąt środkowy i wpisany
#własności kątów opartych na tym samym łuku
===[[Matematyka dla klas 7-8 szkoły podstawowej/Twierdzenie Pitagorasa|Twierdzenie Pitagorasa]]===
Związki między bokami w trójkącie prostokątnym. Twierdzenie Pitagorasa i jego zastosowania;
#wyznaczanie długości boków trójkąta prostokątnego
#wyznaczanie wysokości trójkąta równoramiennego i równobocznego oraz przekątnej prostokąta
#rozpoznawanie trójkątów prostokątnych na podstawie długości boków
===[[Matematyka dla klas 7-8 szkoły podstawowej/Obwód i pole wielokąta|Obwód i pole wielokąta]]===
#pole trójkąta, prostokąta, równoległoboku, trapezu oraz dowolnego wielokąta będącego sumą innych wielokątów
#Taka mała zasada Cavaleriego dla pól.
#pole rombu z zastosowaniem długości przekątnych i czworokąta o prostopadłych przekątnych.
===[[Matematyka dla klas 7-8 szkoły podstawowej/Pole koła i długość okręgu|Pole koła i długość okręgu]]===
#liczba π (nawiązać do proporcjonalności)
#obliczanie długości okręgu o danym promieniu,
#wyznaczanie promienia mając daną długość okręgu
#obliczanie pola koła o danym promieniu,
#wyznaczanie promienia mając dane pole
Długość okręgu
===[[Matematyka dla klas 7-8 szkoły podstawowej/Prostopadłość i równoległość|Prostopadłość i równoległość]]===
Prostopadłość i równoległość w przestrzeni na przykładach brył
===[[Matematyka dla klas 7-8 szkoły podstawowej/Graniastosłupy 1|Graniastosłupy proste (i pochyłe)]]===
#rozpoznawanie i rysowanie rzutów równoległych graniastosłupów (na jedną płaszczyznę bez perspektywy)
#siatki graniastosłupów
#obliczanie pola powierzchni całkowitej i objętości sześcianu
#obliczanie pól powierzchni i objętości graniastosłupów
Uwaga na wysokość.
===[[Matematyka dla klas 7-8 szkoły podstawowej/Ostrosłupy 1|Ostrosłupy foremne (i nieforemne)]]===
#rozpoznawanie i rysowanie rzutów równoległych ostrosłupów
#obliczanie pól powierzchni całkowitej i objętości ostrosłupów
#obliczanie pola powierzchni całkowitej i objętości czworościanu
Uwaga na wysokość.
==Statystyka opisowa i modele losowe==
===[[Matematyka dla klas 7-8 szkoły podstawowej/Statystyka opisowa|Statystyka opisowa i wprowadzenie do prawdopodobieństwa]]===
Dane nieliczbowe
Dane liczbowe
* Opis zbioru danych: moda, mediana i kwartyle
* Wykres pudełkowy.
* Wartość średnia.
(Dane rzędu 20 wyników.)
* Dane z podanymi częstościami i znowu moda, mediana i kwartyle. Wykres słupkowy.
===[[Matematyka dla klas 7-8 szkoły podstawowej/Proste doświadczenia losowe|Proste doświadczenia losowe (częstość a prawdopodobieństwo)]]===
:*Badanie częstości występowania orła w rzutach monetą (częstość, częstość względna, prawdopodobieństwo)
:*Rozkład wyników w rzutach kostką (częstość, częstość względna, prawdopodobieństwo)
:*zdarzenia możliwe, niemożliwe, pewne
----
== Niepotrzebny podręcznik ==
Ta książka powinna być scalona z moim podręcznikiem ''[[Matematyka dla ostatnich klas szkoły podstawowej]]''. Oprócz tego, że omawiamy prawie ten sam zakres tematyczny, to tutaj nie ma żadnego opracowanego tematu. Dodatkowo jest to po prostu kopiuj + wklej ze starego ''Matematyka dla gimnazjum''. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 21:48, 18 paź 2026 (CEST)
72n1ilublnd11rwlqx7rezzkvic75ld
Matematyka dla ostatnich klas szkoły podstawowej
0
61592
559558
559496
2026-10-18T19:13:20Z
YxiCode
34510
/* I. Działania na liczbach */
559558
wikitext
text/x-wiki
{{Status|-0%|Matematyka|Klasy 7-8 szkoły podstawowej|poziom=Szkoła podstawowa}}
Podręcznik jest przeznaczony dla uczniów klasy '''siódmej''' i '''ósmej''' szkoły podstawowej.
Podzielony jest na dwie główne części: materiał dla klasy VII oraz dla klasy VIII. Obie części obejmują kluczowe zagadnienia z arytmetyki, algebry, geometrii i statystyki.
Podręcznik jest zgodny z podstawą programową z 2017 roku, przed jej późniejszym uszczupleniem.
'''[[Matematyka dla ostatnich klas szkoły podstawowej/Odpowiedzi do zadań|Odpowiedzi do zadań]]'''
Poniżej znajduje się spis treści:
== Wstęp ==
# [[Matematyka dla ostatnich klas szkoły podstawowej/Legenda|Legenda]]
# [[Matematyka dla ostatnich klas szkoły podstawowej/Cenne źródła informacji|Cenne źródła informacji]]
== KLASA VII ==
=== I. Działania na liczbach ===
# [[Matematyka dla ostatnich klas szkoły podstawowej/Rodzaje liczb|Rodzaje liczb]] {{kompletność krótka|25%|18.10.2026}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Postać dziesiętna liczby wymiernej|Postać dziesiętna liczby wymiernej]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Przybliżenia - zaokrąglanie i szacowanie|Przybliżenia - zaokrąglanie i szacowanie]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Oś liczbowa|Oś liczbowa]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Dodawanie i odejmowanie liczb dodatnich|Dodawanie i odejmowanie liczb dodatnich]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Mnożenie i dzielenie liczb dodatnich|Mnożenie i dzielenie liczb dodatnich]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Działania na liczbach dodatnich i ujemnych|Działania na liczbach dodatnich i ujemnych]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Łączenie działań. Wyrażenia arytmetyczne|Łączenie działań. Wyrażenia arytmetyczne]] {{kompletność krótka|0%|26.09.2025}}
=== II. Potęgowanie i pierwiastkowanie ===
# [[Matematyka dla ostatnich klas szkoły podstawowej/Potęga o wykładniku naturalnym|Potęga o wykładniku naturalnym]] {{kompletność krótka|100%|10.10.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Mnożenie i dzielenie potęg o tych samych podstawach|Mnożenie i dzielenie potęg o tych samych podstawach]] {{kompletność krótka|50%|27.10.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Potęgowanie potęgi|Potęgowanie potęgi]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Potęgowanie iloczynów i ilorazów|Potęgowanie iloczynów i ilorazów]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Działania na potęgach|Działania na potęgach]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Notacja wykładnicza dla dużych liczb|Notacja wykładnicza dla dużych liczb]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Notacja wykładnicza dla małych liczb|Notacja wykładnicza dla małych liczb]] {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Pierwiastki|Pierwiastki]] {{kompletność krótka|50%|04.11.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Działania na pierwiastkach|Działania na pierwiastkach]] {{kompletność krótka|25%|06.12.2025}}
=== III. Wyrażenia algebraiczne ===
# [[Matematyka dla ostatnich klas szkoły podstawowej/Zastosowania wyrażeń algebraicznych|Zastosowania wyrażeń algebraicznych]] {{kompletność krótka|0%|26.09.2025}}
# Podstawianie. Obliczanie wartości liczbowej wyrażenia algebraicznego {{kompletność krótka|0%|26.09.2025}}
# Jednomiany i ich właściwości {{kompletność krótka|0%|26.09.2025}}
# Wielomiany {{kompletność krótka|0%|26.09.2025}}
# Dodawanie i odejmowanie wielomianów {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Mnożenie wielomiana przez jednomian|Mnożenie wielomiana przez jednomian]] {{kompletność krótka|25%|14.01.2026}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Mnożenie wielomianów|Mnożenie wielomianów]] {{kompletność krótka|100%|21.12.2025}}
=== IV. Równania ===
# Zastosowania równań {{kompletność krótka|0%|26.09.2025}}
# Liczba spełniające równanie {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Rozwiązywanie równań|Rozwiązywanie równań]] {{kompletność krótka|0%|26.09.2025}}
# Zadania tekstowe z wykorzystaniem równań {{kompletność krótka|0%|26.09.2025}}
# Przekształcanie wzorów {{kompletność krótka|0%|26.09.2025}}
=== V. Procenty ===
# Powiązanie ułamków z procentami {{kompletność krótka|0%|26.09.2025}}
# Diagramy procentowe {{kompletność krótka|0%|26.09.2025}}
# Obliczanie procentu z danej liczby {{kompletność krótka|0%|26.09.2025}}
# Ustalanie jakim procentem jednej liczby jest druga {{kompletność krótka|0%|26.09.2025}}
# Znajdowanie liczby gdy podany jest jej procent {{kompletność krótka|0%|26.09.2025}}
# Podwyżki i obniżki {{kompletność krótka|0%|26.09.2025}}
# Punkty procentowe {{kompletność krótka|0%|26.09.2025}}
# Różne obliczenia procentowe {{kompletność krótka|0%|26.09.2025}}
# Równania a procenty {{kompletność krótka|0%|26.09.2025}}
=== VI. Geometria na płaszczyźnie ===
# Punkty, proste, odcinki {{kompletność krótka|0%|26.09.2025}}
# Właściwości kątów {{kompletność krótka|0%|26.09.2025}}
# Właściwości trójkątów {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Trójkąty przystające|Trójkąty przystające]] {{kompletność krótka|0%|14.03.2026}}
# Właściwości czworokątów {{kompletność krótka|0%|26.09.2025}}
# Wielokąty foremne {{kompletność krótka|0%|26.09.2025}}
# Pole prostokąta {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Pola innych wielokątów|Pola innych wielokątów]] {{kompletność krótka|0%|26.09.2025}}
# Współrzędne {{kompletność krótka|0%|11.12.2025}}
=== VII. Geometria przestrzenna ===
# Różne graniastosłupy {{kompletność krótka|0%|26.09.2025}}
# Siatka i pole powierzchni graniastosłupa {{kompletność krótka|0%|26.09.2025}}
# Jednostki objętości i objętość prostopadłościanu {{kompletność krótka|0%|26.09.2025}}
# Objętość graniastosłupów {{kompletność krótka|0%|26.09.2025}}
=== VIII. Statystyka ===
# Dane statystyczne {{kompletność krótka|0%|26.09.2025}}
# Średnia {{kompletność krótka|0%|26.09.2025}}
# Zbieranie i opracowywanie danych {{kompletność krótka|0%|26.09.2025}}
# Losowe zdarzenia {{kompletność krótka|0%|26.09.2025}}
== KLASA VIII ==
=== IX. Arytmetyka ===
# [[Matematyka dla ostatnich klas szkoły podstawowej/System rzymski|System rzymski]] {{kompletność krótka|100%|27.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Podzielność, dzielniki, wielokrotności|Podzielność, dzielniki, wielokrotności]] {{kompletność krótka|75%|02.10.2025}}
# Porównywanie liczb {{kompletność krótka|0%|26.09.2025}}
# Działania na liczbach {{kompletność krótka|0%|26.09.2025}}
# Działania na potęgach i pierwiastkach {{kompletność krótka|0%|26.09.2025}}
=== X. Algebra ===
# [[Matematyka dla ostatnich klas szkoły podstawowej/Przekształcanie wyrażeń|Przekształcanie wyrażeń]] {{kompletność krótka|25%|25.04.2026}}
# Równania {{kompletność krótka|0%|26.09.2025}}
# Proporcje {{kompletność krótka|0%|26.09.2025}}
# Proporcjonalność prosta {{kompletność krótka|0%|26.09.2025}}
=== XI. Planimetria, cz. 1 ===
# Właściwości trójkątów i czworokątów {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Twierdzenie Pitagorasa|Twierdzenie Pitagorasa]] {{kompletność krótka|0%|26.09.2025}}
# Do czego stosujemy twierdzenie Pitagorasa? {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Przekątna kwadratu i wysokość w trójkącie równobocznym|Przekątna kwadratu i wysokość w trójkącie równobocznym]] {{kompletność krótka|100%|27.11.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Trójkąty 90°, 45°, 45° oraz 90°, 30°, 60°|Trójkąty 90°, 45°, 45° oraz 90°, 30°, 60°]] {{kompletność krótka|0%|26.09.2025}}
# Odcinki a układ współrzędnych {{kompletność krótka|0%|26.09.2025}}
# Dowody geometryczne {{kompletność krótka|0%|26.09.2025}}
=== XII. Planimetria, cz. 2 ===
# Styczna okręgu {{kompletność krótka|0%|26.09.2025}}
# Wzajemne położenie okręgów {{kompletność krótka|0%|26.09.2025}}
# π i długość okręgu {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Pole koła|Pole koła]] {{kompletność krótka|0%|26.09.2025}}
=== XIII. Stereometria ===
# Graniastosłup - pole i objętość {{kompletność krótka|0%|26.09.2025}}
# Odcinki w graniastosłupie {{kompletność krótka|0%|26.09.2025}}
# Ostrosłupy i ich rodzaje {{kompletność krótka|0%|26.09.2025}}
# Siatki i pole powierzchni ostrosłupów {{kompletność krótka|0%|26.09.2025}}
# [[Matematyka dla ostatnich klas szkoły podstawowej/Objętość ostrosłupów|Objętość ostrosłupów]] {{kompletność krótka|50%|05.02.2026}}
# Odcinki w ostrosłupach {{kompletność krótka|0%|26.09.2025}}
=== XIV. Symetria ===
# Symetria względem prostej {{kompletność krótka|0%|26.09.2025}}
# Oś symetrii {{kompletność krótka|0%|26.09.2025}}
# Symetralna dowolnego odcinka {{kompletność krótka|0%|26.09.2025}}
# Dwusieczna kąta {{kompletność krótka|0%|26.09.2025}}
# Symetria względem punktu {{kompletność krótka|0%|26.09.2025}}
# Środek symetrii {{kompletność krótka|0%|26.09.2025}}
=== XV. Matematyka w prawdziwym życiu ===
# Obliczenia z procentami {{kompletność krótka|0%|26.09.2025}}
# Lokaty bankowe, zmiana o dany procent {{kompletność krótka|0%|26.09.2025}}
# Podatki {{kompletność krótka|0%|26.09.2025}}
# Diagramy {{kompletność krótka|0%|26.09.2025}}
# Wykresy {{kompletność krótka|0%|26.09.2025}}
# Podział proporcjonalny {{kompletność krótka|0%|26.09.2025}}
# Obliczanie prawdopodobieństwa {{kompletność krótka|0%|26.09.2025}}
=== XVI. Prawdopodobieństwo ===
# Ile mamy możliwości? Podstawy kombinatoryki {{kompletność krótka|0%|26.09.2025}}
# Obliczanie prawdopodobieństw z pomocą kombinatoryki {{kompletność krótka|0%|26.09.2025}}
degeqlanzla7vb69dmc81zln5uvpt89
Wikipedysta:YxiCode
2
61593
559514
559497
2026-10-18T13:00:38Z
YxiCode
34510
559514
wikitext
text/x-wiki
{{Multiuserbox
|pl-N
|en-4
|de-1
|m
|{{Staż|dzień=26|miesiąc=09|rok=2025}}
}}
Pochodzę z Żagania i jestem uczniem klasy VIII szkoły podstawowej. Jestem twórcą ''[[Matematyka dla ostatnich klas szkoły podstawowej|Matematyki dla ostatnich klas szkoły podstawowej]]'', którą każdy może edytować. Wprawdzie nie jest ona dokończona - lecz staram się nanosić poprawki, wprowadzać nowe pojęcia w sposób intuicyjny oraz tworzyć własne schematy, rysunki i diagramy.
Jeżeli ty, Czytelniku mojego profilu, masz jakieś pytania, proszę do mnie napisać na dyskusji.
'''14 III 2026''' - Rzadziej tu zaglądam ze względu na to, że mam dość dużo nauki w szkole (7 kartkówek i sprawdzianów O_O). Ale jak mam czas to coś napiszę.
'''23 IV 2026''' - To samo co wcześniej. Ciągle muszę się czegoś uczyć. Po poniedziałku mam nadzieję że będę miał czas.
'''18 X 2026''' - Jestem w 8. klasie więc biorę się do pracy.
3wilwdx906upcmxxjmyeseisxbmhcpb
559515
559514
2026-10-18T13:04:08Z
YxiCode
34510
559515
wikitext
text/x-wiki
{{Multiuserbox
|pl-N
|en-5
|de-1
|m
|{{Staż|dzień=26|miesiąc=09|rok=2025}}
}}
Pochodzę z Żagania i jestem uczniem klasy VIII szkoły podstawowej. Jestem twórcą ''[[Matematyka dla ostatnich klas szkoły podstawowej|Matematyki dla ostatnich klas szkoły podstawowej]]'', którą każdy może edytować. Wprawdzie nie jest ona dokończona - lecz staram się nanosić poprawki, wprowadzać nowe pojęcia w sposób intuicyjny oraz tworzyć własne schematy, rysunki i diagramy.
Jeżeli ty, Czytelniku mojego profilu, masz jakieś pytania, proszę do mnie napisać na dyskusji.
'''14 III 2026''' - Rzadziej tu zaglądam ze względu na to, że mam dość dużo nauki w szkole (7 kartkówek i sprawdzianów O_O). Ale jak mam czas to coś napiszę.
'''23 IV 2026''' - To samo co wcześniej. Ciągle muszę się czegoś uczyć. Po poniedziałku mam nadzieję że będę miał czas.
'''18 X 2026''' - Jestem w 8. klasie więc biorę się do pracy.
i1jm3gmtra23t8x3x6gldk2gb9sokl8
559518
559515
2026-10-18T13:11:28Z
YxiCode
34510
559518
wikitext
text/x-wiki
{{Multiuserbox
|pl-N
|en-5
|de-1
|mat
|m
|{{Staż|dzień=26|miesiąc=09|rok=2025}}
}}
Pochodzę z Żagania i jestem uczniem klasy VIII szkoły podstawowej. Uczestniczę w konkursach kuratoryjnych (m.in. z matematyki i języka angielskiego) oraz stale kształcę się z zakresu przedmiotów ścisłych. Jestem twórcą ''[[Matematyka dla ostatnich klas szkoły podstawowej|Matematyki dla ostatnich klas szkoły podstawowej]]'', którą każdy może edytować. Wprawdzie nie jest ona dokończona - lecz staram się nanosić poprawki, wprowadzać nowe pojęcia w sposób intuicyjny oraz tworzyć własne schematy, rysunki i diagramy. Jestem przeciwnikiem korzystania ze sztucznej inteligencji do prac kreatywnych, takich właśnie jak '''pisanie podręczników''' lub tworzenie obrazów.
Jeżeli ty, Czytelniku mojego profilu, masz jakieś pytania, proszę do mnie napisać na dyskusji.
'''14 III 2026''' - Rzadziej tu zaglądam ze względu na to, że mam dość dużo nauki w szkole (7 kartkówek i sprawdzianów O_O). Ale jak mam czas to coś napiszę.
'''23 IV 2026''' - To samo co wcześniej. Ciągle muszę się czegoś uczyć. Po poniedziałku mam nadzieję że będę miał czas.
'''18 X 2026''' - Jestem w 8. klasie więc biorę się do pracy.
hzi79hs0qrdcgfe8h3is4koovk0xjab
559522
559518
2026-10-18T15:18:22Z
YxiCode
34510
559522
wikitext
text/x-wiki
{{Multiuserbox
|pl-N
|en-5
|de-1
|mat
|m
|{{Staż|dzień=26|miesiąc=09|rok=2025}}
}}
Pochodzę z Żagania i jestem uczniem klasy VIII szkoły podstawowej. Uczestniczę w konkursach kuratoryjnych (m.in. z matematyki i języka angielskiego) oraz stale kształcę się z zakresu przedmiotów ścisłych. Jestem twórcą ''[[Matematyka dla ostatnich klas szkoły podstawowej|Matematyki dla ostatnich klas szkoły podstawowej]]'', którą każdy może edytować. Wprawdzie nie jest ona dokończona - lecz staram się nanosić poprawki, wprowadzać nowe pojęcia w sposób intuicyjny oraz tworzyć własne schematy, rysunki i diagramy. Jestem przeciwnikiem korzystania ze sztucznej inteligencji do prac kreatywnych, takich właśnie jak '''pisanie podręczników''' lub tworzenie obrazów.
Jeżeli ty, Czytelniku mojego profilu, masz jakieś pytania, proszę do mnie napisać na dyskusji.
== Bardzo skrótowy mini-dzienik ==
* '''14 III 2026''' - Rzadziej tu zaglądam ze względu na to, że mam dość dużo nauki w szkole (7 kartkówek i sprawdzianów). Ale jak mam czas to coś napiszę.
* '''23 IV 2026''' - To samo co wcześniej. Ciągle muszę się czegoś uczyć. Po poniedziałku mam nadzieję że będę miał czas.
* '''18 X 2026''' - Jestem w 8. klasie więc biorę się do pracy. Rygorystycznie oceniłem podręcznik pt. "Przyroda" a zarazem dodałem wiele informacji do swojej książki. Jutro mam egzamin próbny z j. polskiego.
m9cj9umbxx3z65wt11ad30xcbxn5lzk
559545
559522
2026-10-18T17:23:49Z
YxiCode
34510
559545
wikitext
text/x-wiki
{{Multiuserbox
|pl-N
|en-5
|de-1
|mat
|m
|{{Staż|dzień=26|miesiąc=09|rok=2025}}
}}
Pochodzę z Żagania i jestem uczniem klasy VIII szkoły podstawowej. Uczestniczę w konkursach kuratoryjnych (m.in. z matematyki i języka angielskiego) oraz stale kształcę się z zakresu przedmiotów ścisłych. Jestem twórcą ''[[Matematyka dla ostatnich klas szkoły podstawowej|Matematyki dla ostatnich klas szkoły podstawowej]]'', którą każdy może edytować. Wprawdzie nie jest ona dokończona - lecz staram się nanosić poprawki, wprowadzać nowe pojęcia w sposób intuicyjny oraz tworzyć własne schematy, rysunki i diagramy. Jestem przeciwnikiem korzystania ze sztucznej inteligencji do prac kreatywnych, takich właśnie jak '''pisanie podręczników''' lub tworzenie obrazów.
Jeżeli ty, Czytelniku mojego profilu, masz jakieś pytania, proszę do mnie napisać na dyskusji.
'''Zobacz!'''
* [[Wikipedysta:YxiCode/Brudnopis|"Odchudzenie" strony głównej]] - jaka powinna być treść, zanim zostanie zmieniona szata graficzna
== Bardzo skrótowy mini-dzienik ==
* '''14 III 2026''' - Rzadziej tu zaglądam ze względu na to, że mam dość dużo nauki w szkole (7 kartkówek i sprawdzianów). Ale jak mam czas to coś napiszę.
* '''23 IV 2026''' - To samo co wcześniej. Ciągle muszę się czegoś uczyć. Po poniedziałku mam nadzieję że będę miał czas.
* '''18 X 2026''' - Jestem w 8. klasie więc biorę się do pracy. Rygorystycznie oceniłem podręcznik pt. "Przyroda" a zarazem dodałem wiele informacji do swojej książki. Jutro mam egzamin próbny z j. polskiego.
82jbzuq4xda9qbki8kmkmotnis2kiac
Matematyka dla ostatnich klas szkoły podstawowej/Odpowiedzi do zadań
0
61596
559507
529568
2026-10-18T12:07:30Z
YxiCode
34510
559507
wikitext
text/x-wiki
{{Mat:Uwg
|Odpowiedzi te nie są aktualizowane regularnie. Rozwiązań do większości zadań brakuje.
}}
== [[Matematyka dla ostatnich klas szkoły podstawowej/Mnożenie wielomianów|III.7]] ==
1a. <math>x^2+8x+15</math>
1b. <math>a^2+5a-14</math>
2a. <math>2x^2-7x+4</math>
2b. <math>6k^2-13k+6</math>
3a. <math>x^2+xy-2y^2</math>
3b. <math>6a^2+10ab-4b^2</math>
4. <math>x^3+8</math>
5. <math>x^3+2x^2-x-2</math>
6. <math>a^3+a^2-a+2</math>
7a. <math>5x^2-5</math>
7b. <math>8a-10</math>
8. <math>x+10</math>
dla <math>x=-2</math>: <math>8</math>
9a. <math>(x+3)(x+5)</math>
9b. <math>x^2+8x+15</math>
10b. <math>ab+3a+2b+6</math>
11. <math>x^2+x-12</math> cm<sup>2</sup>
12. <math>n^2-n-6</math>
13a. <math>x+5</math> m <math>\times x</math> m
13b. <math>P=(x+2)(x+4)=x^2+6x+8</math> m<sup>2</sup>
14. różnica <math>=2m-r-2</math>, nie ma gwarancji.
15. <math>(x-2)(x+2)-(x-3)(x+3)=x^2-4-x^2+9=5</math> c.n.d.
16. Niech dwie kolejne liczby całkowite to <math>n</math> i <math>n+1</math>.
<math>n(n+1)=n^2+n</math>
<math>n^2+n+(n+1)=n^2+2n+1</math>
<math>n^2+2n+1=(n+1)^2</math>
c.n.d.
17. <math>(n+2)(n+3)-(n-2)(n+7)=</math>
<math>(n^2+5n+6)-(n^2+5n-14)=</math>
<math>n^2+5n+6-n^2-5n+14=</math>
<math>6+14=20</math>
Skoro wyrażenie zawsze daje 20, a 20 jest podzielne przez 10, to suma jest podzielne przez 10.
c.n.d.
== [[Matematyka dla ostatnich klas szkoły podstawowej/System rzymski|IX.1]] ==
1. IIX i MMMM są niepoprawnie zapisane, gdyż:
* IIX: Gdy mniejsza cyfra stoi przed większą, oznacza to odejmowanie. [...] Tylko jedna cyfra może działać w ten sposób.
* MMMM: Tych samych znaków I, X, C oraz M nie stawiamy obok siebie więcej niż trzy razy.
2a. XXVII
2b. CCCXCIX
2c. MMXXI
2d. MDLXXXVI
3a. 774
3b. 1 230
3c. 2 014
3d. 988
4a. 1 999
4b. 1 786
4c. 2 447
5a. <span style="text-decoration: overline;">V</span>
5b. <span style="text-decoration: overline;">X</span>
5c. <span style="text-decoration: overline;">XII</span>CCCXLV
6a. 8 442
6b. 12 012
6c. 1 090 004
ds29hukb2g6zxjlufyuhuhl6ae1sj5l
559508
559507
2026-10-18T12:09:09Z
YxiCode
34510
/* III.7 */
559508
wikitext
text/x-wiki
{{Mat:Uwg
|Odpowiedzi te nie są aktualizowane regularnie. Rozwiązań do większości zadań brakuje.
}}
== [[Matematyka dla ostatnich klas szkoły podstawowej/Mnożenie wielomianów|III.7]] ==
1a. <math>x^2+8x+15</math>
1b. <math>a^2+5a-14</math>
2a. <math>2x^2-7x+4</math>
2b. <math>6k^2-13k+6</math>
3a. <math>x^2+xy-2y^2</math>
3b. <math>6a^2+10ab-4b^2</math>
4. <math>x^3+8</math>
5. <math>x^3+2x^2-x-2</math>
6. <math>a^3+a^2-a+2</math>
7a. <math>5x^2-5</math>
7b. <math>8a-10</math>
8. <math>x+10</math>
dla <math>x=-2</math>: <math>8</math>
9a. <math>(x+3)(x+5)</math>
9b. <math>x^2+8x+15</math>
10b. <math>ab+3a+2b+6</math>
11. <math>x^2+x-12</math> cm<sup>2</sup>
12. <math>n^2-n-6</math>
13a. <math>x+5</math> m <math>\times x</math> m
13b. <math>P=(x+2)(x+4)=x^2+6x+8</math> m<sup>2</sup>
14. różnica <math>=2m-r-2</math>, nie ma gwarancji.
15. <math>(x-2)(x+2)-(x-3)(x+3)=x^2-4-x^2+9=5</math> c.n.d.
16. Niech dwie kolejne liczby całkowite to <math>n</math> i <math>n+1</math>.
<math>n(n+1)=n^2+n</math>
<math>n^2+n+(n+1)=n^2+2n+1</math>
<math>n^2+2n+1=(n+1)^2</math>
c.n.d.
17. <math>(n+2)(n+3)-(n-2)(n+7)=</math>
<math>(n^2+5n+6)-(n^2+5n-14)=</math>
<math>n^2+5n+6-n^2-5n+14=</math>
<math>6+14=20</math>
Skoro wyrażenie zawsze daje 20, a 20 jest podzielne przez 10, to suma jest podzielna przez 10.
c.n.d.
== [[Matematyka dla ostatnich klas szkoły podstawowej/System rzymski|IX.1]] ==
1. IIX i MMMM są niepoprawnie zapisane, gdyż:
* IIX: Gdy mniejsza cyfra stoi przed większą, oznacza to odejmowanie. [...] Tylko jedna cyfra może działać w ten sposób.
* MMMM: Tych samych znaków I, X, C oraz M nie stawiamy obok siebie więcej niż trzy razy.
2a. XXVII
2b. CCCXCIX
2c. MMXXI
2d. MDLXXXVI
3a. 774
3b. 1 230
3c. 2 014
3d. 988
4a. 1 999
4b. 1 786
4c. 2 447
5a. <span style="text-decoration: overline;">V</span>
5b. <span style="text-decoration: overline;">X</span>
5c. <span style="text-decoration: overline;">XII</span>CCCXLV
6a. 8 442
6b. 12 012
6c. 1 090 004
1x2y86o5pmwjs6s2e0ljcctoy4j79r6
559511
559508
2026-10-18T12:23:34Z
YxiCode
34510
559511
wikitext
text/x-wiki
{{Mat:Uwg
|Odpowiedzi te nie są aktualizowane regularnie. Rozwiązań do większości zadań brakuje.
}}
== [[Matematyka dla ostatnich klas szkoły podstawowej/Mnożenie wielomianów|III.7]] ==
1a. <math>x^2+8x+15</math>
1b. <math>a^2+5a-14</math>
2a. <math>2x^2-7x+4</math>
2b. <math>6k^2-13k+6</math>
3a. <math>x^2+xy-2y^2</math>
3b. <math>6a^2+10ab-4b^2</math>
4. <math>x^3+8</math>
5. <math>x^3+2x^2-x-2</math>
6. <math>a^3+a^2-a+2</math>
7a. <math>5x^2-5</math>
7b. <math>8a-10</math>
8. <math>x+10</math>
dla <math>x=-2</math>: <math>8</math>
9a. <math>(x+3)(x+5)</math>
9b. <math>x^2+8x+15</math>
10b. <math>ab+3a+2b+6</math>
11. <math>x^2+x-12</math> cm<sup>2</sup>
12. <math>n^2-n-6</math>
13a. <math>x+5</math> m <math>\times x</math> m
13b. <math>P=(x+2)(x+4)=x^2+6x+8</math> m<sup>2</sup>
14. różnica <math>=2m-r-2</math>, nie ma gwarancji.
15. <math>(x-2)(x+2)-(x-3)(x+3)=x^2-4-x^2+9=5</math> c.n.d.
16. Niech dwie kolejne liczby całkowite to <math>n</math> i <math>n+1</math>.
<math>n(n+1)=n^2+n</math>
<math>n^2+n+(n+1)=n^2+2n+1</math>
<math>n^2+2n+1=(n+1)^2</math>
c.n.d.
17. <math>(n+2)(n+3)-(n-2)(n+7)=</math>
<math>(n^2+5n+6)-(n^2+5n-14)=</math>
<math>n^2+5n+6-n^2-5n+14=</math>
<math>6+14=20</math>
Skoro wyrażenie zawsze daje 20, a 20 jest podzielne przez 10, to suma jest podzielna przez 10.
c.n.d.
== [[Matematyka dla ostatnich klas szkoły podstawowej/System rzymski|IX.1]] ==
1. IIX i MMMM są niepoprawnie zapisane, gdyż:
* IIX: Gdy mniejsza cyfra stoi przed większą, oznacza to odejmowanie. [...] Tylko jedna cyfra może działać w ten sposób.
* MMMM: Tych samych znaków I, X, C oraz M nie stawiamy obok siebie więcej niż trzy razy.
2a. XXVII
2b. CCCXCIX
2c. MMXXI
2d. MDLXXXVI
3a. 774
3b. 1 230
3c. 2 014
3d. 988
4a. 1 999
4b. 1 786
4c. 2 447
5a. <span style="text-decoration: overline;">V</span>
5b. <span style="text-decoration: overline;">X</span>
5c. <span style="text-decoration: overline;">XII</span>CCCXLV
6a. 8 442
6b. 12 012
6c. 1 090 004
== XI.4 ==
1a. <math>6\sqrt{2}</math> cm
1b. <math>10\sqrt{2}</math> m
1c. <math>\frac{7\sqrt{2}}{2}</math> dm
1d. 14 m
1e. <math>3\sqrt{6}</math> cm
2a. <math>5\sqrt{3}</math> cm
2b. <math>25\sqrt{3}</math> cm<sup>2</sup>
3. 8 cm
4. B, <math>12-6\sqrt{2}\text{ cm}\approx 3{,}51</math> cm
5a. <math>4\sqrt{5}</math>
5b. 8,94
6. <math>27\sqrt{3}</math> cm<sup>2</sup>
7. <math>4\sqrt{2}</math> cm
8. 12 cm
9. 2 cm
10. <math>2a^2</math> cm<sup>2</sup>
12. 3:2
== XI.5 ==
1. <math>35+3\sqrt{2}-3\sqrt{3}</math>
0490y373hi050daoykb94xyn8ghh7vc
Matematyka dla ostatnich klas szkoły podstawowej/Przekątna kwadratu i wysokość w trójkącie równobocznym
0
61609
559509
559499
2026-10-18T12:15:07Z
YxiCode
34510
559509
wikitext
text/x-wiki
== Teoria ==
Gdybyś nie miał wzoru, jakbyś obliczył przekątną pewnego kwadratu? Zdecydowana większość powiedziałaby: "Skorzystam z Twierdzenia Pitagorasa, podstawię bok kwadratu do liczb <math>a</math> i <math>b</math>, a następnie obliczę przekątną <math>c</math>". Rozważmy np. kwadrat o boku długości 5. Przekątną obliczamy (bez wzoru) tak:
{{Mat:Prz
|<math>5^2+5^2=d^2</math>
<math>25+25=d^2</math>
<math>50=d^2</math>
<math>d=5\sqrt{2}</math>
}}
Czy można to uogólnić, a zarazem ułatwić sobie życie?
=== Przekątna kwadratu ===
Za pomocą twierdzenia Pitagorasa możemy znaleźć przekątną każdego kwadratu.
[[Plik:Przekątna kwadratu.svg|400px|centruj]]
{{Mat:Wz
|W kwadracie o boku <math>a</math> przekątna ma długość <math>a\sqrt{2}</math>.
}}
Z tego wzoru możemy korzystać też, gdy znamy '''przekątną kwadratu''' i chcemy poznać jego bok.
{{Mat:Prz
|Przekątna kwadratu ma długość <math>7\sqrt{2}</math>. Oblicz długość boku tego kwadratu.
<math>a\sqrt{2}=7\sqrt{2}</math>
<math>a=7</math>
Długość boku wynosi 8.
}}
=== Trójkąt równoboczny ===
Aby odnaleźć wzór na wysokość trójkąta równobocznego, potrzeba odrobinę więcej pracy. Zauważ, że wysokość trójkąta równoramiennego, a zarazem równobocznego dzieli podstawę na '''dwie równe części'''. Z tej własności korzystamy w następującym wyprowadzeniu.
[[Plik:Wysokość trójkąta równobocznego.svg|400px|centruj]]
{{Mat:Wz
|W trójkącie równobocznym o boku <math>a</math> wszystkie trzy wysokości mają długość <math>\frac{a\sqrt{3}}{2}</math>.
}}
=== Pole trójkąta równobocznego i sześciokąta foremnego===
Podstawiając otrzymane <math>h</math> do wzoru na pole trójkąta otrzymujemy wzór na pole trójkąta równobocznego. Wystarczy wykonać odpowiednie przekształcenia algebraiczne (zob. dział X).
{{Mat:Wz
|Pole trójkąta równobocznego wynosi:
<math>P=\frac{a\cdot h}{2}=\frac{a\cdot \frac{a\sqrt{3}}{2}}{2}=\frac{\frac{a^2\sqrt{3}}{2}}{2}=\frac{a^2\sqrt{3}}{4}</math>
}}
Pola figur złożonych możemy obliczyć, łącząc różne wzory na pole ze sobą. Sześciokąt foremny składa się z '''sześciu trójkątów równobocznych'''. Aby obliczyć jego wzór na pole, należy pomnożyć wzór na pole trójkąta równobocznego przez 6, a następnie go odpowiednio skrócić.
{{Mat:Wz
|Pole sześciokąta foremnego wynosi:
<math>P=6\cdot\frac{a^2\sqrt{3}}{4}=\frac{3a^2\sqrt{3}}{2}</math>
}}
== Zadania ==
'''1.''' Oblicz długość przekątnej kwadratu, którego bok ma długość:
<ol type="a">
<li>6 cm</li>
<li>10 m</li>
<li>3,5 dm</li>
<li><math>7\sqrt{2}</math> m</li>
<li><math>3\sqrt{3}</math> cm</li>
</ol>
'''2.''' Dany jest trójkąt równoboczny o boku długości 10 cm. Oblicz:
<ol type="a">
<li>wysokość tego trójkąta,</li>
<li>pole tego trójkąta.</li>
</ol>
'''3.''' Kwadrat ma przekątną <math>8\sqrt{2}</math> cm. Oblicz długość jego boku.
'''4.''' Kwadrat A ma bok 6 cm, a kwadrat B ma bok <math>3\sqrt{8}</math>. Który kwadrat ma dłuższą przekątną i o ile?
'''5.''' Kwadrat ma bok równy <math>\sqrt{40}</math>. Oblicz:
<ol type="a">
<li>długość przekątnej w formie pierwiastkowej,</li>
<li>[[Plik:Oxygen480-apps-accessories-calculator.svg|16px|bezramki]] długość przekątnej przybliżoną do dwóch miejsc po przecinku.</li>
</ol>
'''6.''' Wysokość trójkąta równobocznego wynosi 9 cm. Oblicz pole tego trójkąta. Wynik zapisz w postaci <math>a\sqrt{b}</math>.
'''7.''' Na rysunku przedstawiono kwadrat ABCD. Przekątne AC i BD przecinają się w punkcie O. Oblicz długość AO, jeśli bok kwadratu wynosi 8 cm.
[[Plik:Zadanie 5 Przekątna kwadratu.svg|200px|centruj]]
'''8.''' Wysokość trójkąta równobocznego jest równa przekątnej kwadratu o boku <math>3\sqrt{6}</math> cm. Oblicz długość boku tego trójkąta równobocznego.
<span style="color: #65A835"><b>E</span></b> '''9.''' Agata postanowiła przygotować kartkę okolicznościową w kształcie prostokąta, ozdobioną wzorem dokładnie takim, jak przedstawiony na rysunku. Kartka ta będzie miała wymiary 15 cm × 18 cm. Do jej ozdobienia Agata chce użyć jednakowych kwadratów, których bok wyraża się całkowitą liczbą centymetrów. Niektóre z tych kwadratów będzie musiała przeciąć na dwie lub na cztery jednakowe części.
[[Plik:Zadanie 6 Przekątna kwadratu.svg|200px|centruj]]
Oblicz maksymalną długość boku jednego kwadratu. Do obliczeń przyjmij przybliżenie <math>\sqrt{2}\approx1{,}4</math>.
<small>Źródło: Próbny egzamin ósmoklasisty CKE 2018, zad. 19</small>
'''10.''' Dany jest kwadrat ABCD. Na przekątnej AC dorysowano nowy kwadrat ACEF. Znajdź wzór na pole kwadratu ACEF, jeżeli bok AB ma długość <math>a</math> cm.
'''*11.''' Bok trójkąta równobocznego ma długość 4 cm, a przekątna pewnego kwadratu ma długość <math>2\sqrt{2}\sqrt[4]{3}</math>. Uzasadnij, że pola obu tych figur są równe.
<small>Uwaga. Zapis <math>\sqrt[4]{x}</math> oznacza pierwiastek 4. stopnia z <math>x</math>. Przykład: <math>\sqrt[4]{16}=2</math>. Przypomnij sobie własności pierwiastków ([[Matematyka dla ostatnich klas szkoły podstawowej/Działania na potęgach i pierwiastkach|IX.5]], [[Matematyka dla ostatnich klas szkoły podstawowej/Działania na pierwiastkach|II.9]]).</small>
'''*12.''' Sześciokąt foremny i trójkąt równoboczny mają jednakowe obwody. Oblicz stosunek pola sześciokąta do pola trójkąta.
<small>Wskazówka. Sześciokąt foremny możemy podzielić na 6 trójkątów równobocznych.</small>
<small>Źródło: Konkurs kuratoryjny z matematyki 2024/2025, woj. lubuskie, etap wojewódzki, zad. 13 </small>
{{Nawigacja|Matematyka dla ostatnich klas szkoły podstawowej|
[[Matematyka dla ostatnich klas szkoły podstawowej/Do czego stosujemy twierdzenie Pitagorasa?|Do czego stosujemy twierdzenie Pitagorasa?]]|
[[Matematyka dla ostatnich klas szkoły podstawowej/Trójkąty 90°, 45°, 45° oraz 90°, 30°, 60°|Trójkąty 90°, 45°, 45° oraz 90°, 30°, 60°]]|
}}</noinclude>
2nt7hv1laxl3anbgx3s36w02o1i2abs
559510
559509
2026-10-18T12:15:22Z
YxiCode
34510
559510
wikitext
text/x-wiki
== Teoria ==
Gdybyś nie miał wzoru, jakbyś obliczył przekątną pewnego kwadratu? Zdecydowana większość powiedziałaby: "Skorzystam z Twierdzenia Pitagorasa, podstawię bok kwadratu do liczb <math>a</math> i <math>b</math>, a następnie obliczę przekątną <math>c</math>". Rozważmy np. kwadrat o boku długości 5. Przekątną obliczamy (bez wzoru) tak:
{{Mat:Prz
|<math>5^2+5^2=d^2</math>
<math>25+25=d^2</math>
<math>50=d^2</math>
<math>d=5\sqrt{2}</math>
}}
Czy można to uogólnić, a zarazem ułatwić sobie życie?
=== Przekątna kwadratu ===
Za pomocą twierdzenia Pitagorasa możemy znaleźć przekątną każdego kwadratu.
[[Plik:Przekątna kwadratu.svg|400px|centruj]]
{{Mat:Wz
|W kwadracie o boku <math>a</math> przekątna ma długość <math>a\sqrt{2}</math>.
}}
Z tego wzoru możemy korzystać też, gdy znamy '''przekątną kwadratu''' i chcemy poznać jego bok.
{{Mat:Prz
|Przekątna kwadratu ma długość <math>7\sqrt{2}</math>. Oblicz długość boku tego kwadratu.
<math>a\sqrt{2}=7\sqrt{2}</math>
<math>a=7</math>
Długość boku wynosi 7.
}}
=== Trójkąt równoboczny ===
Aby odnaleźć wzór na wysokość trójkąta równobocznego, potrzeba odrobinę więcej pracy. Zauważ, że wysokość trójkąta równoramiennego, a zarazem równobocznego dzieli podstawę na '''dwie równe części'''. Z tej własności korzystamy w następującym wyprowadzeniu.
[[Plik:Wysokość trójkąta równobocznego.svg|400px|centruj]]
{{Mat:Wz
|W trójkącie równobocznym o boku <math>a</math> wszystkie trzy wysokości mają długość <math>\frac{a\sqrt{3}}{2}</math>.
}}
=== Pole trójkąta równobocznego i sześciokąta foremnego===
Podstawiając otrzymane <math>h</math> do wzoru na pole trójkąta otrzymujemy wzór na pole trójkąta równobocznego. Wystarczy wykonać odpowiednie przekształcenia algebraiczne (zob. dział X).
{{Mat:Wz
|Pole trójkąta równobocznego wynosi:
<math>P=\frac{a\cdot h}{2}=\frac{a\cdot \frac{a\sqrt{3}}{2}}{2}=\frac{\frac{a^2\sqrt{3}}{2}}{2}=\frac{a^2\sqrt{3}}{4}</math>
}}
Pola figur złożonych możemy obliczyć, łącząc różne wzory na pole ze sobą. Sześciokąt foremny składa się z '''sześciu trójkątów równobocznych'''. Aby obliczyć jego wzór na pole, należy pomnożyć wzór na pole trójkąta równobocznego przez 6, a następnie go odpowiednio skrócić.
{{Mat:Wz
|Pole sześciokąta foremnego wynosi:
<math>P=6\cdot\frac{a^2\sqrt{3}}{4}=\frac{3a^2\sqrt{3}}{2}</math>
}}
== Zadania ==
'''1.''' Oblicz długość przekątnej kwadratu, którego bok ma długość:
<ol type="a">
<li>6 cm</li>
<li>10 m</li>
<li>3,5 dm</li>
<li><math>7\sqrt{2}</math> m</li>
<li><math>3\sqrt{3}</math> cm</li>
</ol>
'''2.''' Dany jest trójkąt równoboczny o boku długości 10 cm. Oblicz:
<ol type="a">
<li>wysokość tego trójkąta,</li>
<li>pole tego trójkąta.</li>
</ol>
'''3.''' Kwadrat ma przekątną <math>8\sqrt{2}</math> cm. Oblicz długość jego boku.
'''4.''' Kwadrat A ma bok 6 cm, a kwadrat B ma bok <math>3\sqrt{8}</math>. Który kwadrat ma dłuższą przekątną i o ile?
'''5.''' Kwadrat ma bok równy <math>\sqrt{40}</math>. Oblicz:
<ol type="a">
<li>długość przekątnej w formie pierwiastkowej,</li>
<li>[[Plik:Oxygen480-apps-accessories-calculator.svg|16px|bezramki]] długość przekątnej przybliżoną do dwóch miejsc po przecinku.</li>
</ol>
'''6.''' Wysokość trójkąta równobocznego wynosi 9 cm. Oblicz pole tego trójkąta. Wynik zapisz w postaci <math>a\sqrt{b}</math>.
'''7.''' Na rysunku przedstawiono kwadrat ABCD. Przekątne AC i BD przecinają się w punkcie O. Oblicz długość AO, jeśli bok kwadratu wynosi 8 cm.
[[Plik:Zadanie 5 Przekątna kwadratu.svg|200px|centruj]]
'''8.''' Wysokość trójkąta równobocznego jest równa przekątnej kwadratu o boku <math>3\sqrt{6}</math> cm. Oblicz długość boku tego trójkąta równobocznego.
<span style="color: #65A835"><b>E</span></b> '''9.''' Agata postanowiła przygotować kartkę okolicznościową w kształcie prostokąta, ozdobioną wzorem dokładnie takim, jak przedstawiony na rysunku. Kartka ta będzie miała wymiary 15 cm × 18 cm. Do jej ozdobienia Agata chce użyć jednakowych kwadratów, których bok wyraża się całkowitą liczbą centymetrów. Niektóre z tych kwadratów będzie musiała przeciąć na dwie lub na cztery jednakowe części.
[[Plik:Zadanie 6 Przekątna kwadratu.svg|200px|centruj]]
Oblicz maksymalną długość boku jednego kwadratu. Do obliczeń przyjmij przybliżenie <math>\sqrt{2}\approx1{,}4</math>.
<small>Źródło: Próbny egzamin ósmoklasisty CKE 2018, zad. 19</small>
'''10.''' Dany jest kwadrat ABCD. Na przekątnej AC dorysowano nowy kwadrat ACEF. Znajdź wzór na pole kwadratu ACEF, jeżeli bok AB ma długość <math>a</math> cm.
'''*11.''' Bok trójkąta równobocznego ma długość 4 cm, a przekątna pewnego kwadratu ma długość <math>2\sqrt{2}\sqrt[4]{3}</math>. Uzasadnij, że pola obu tych figur są równe.
<small>Uwaga. Zapis <math>\sqrt[4]{x}</math> oznacza pierwiastek 4. stopnia z <math>x</math>. Przykład: <math>\sqrt[4]{16}=2</math>. Przypomnij sobie własności pierwiastków ([[Matematyka dla ostatnich klas szkoły podstawowej/Działania na potęgach i pierwiastkach|IX.5]], [[Matematyka dla ostatnich klas szkoły podstawowej/Działania na pierwiastkach|II.9]]).</small>
'''*12.''' Sześciokąt foremny i trójkąt równoboczny mają jednakowe obwody. Oblicz stosunek pola sześciokąta do pola trójkąta.
<small>Wskazówka. Sześciokąt foremny możemy podzielić na 6 trójkątów równobocznych.</small>
<small>Źródło: Konkurs kuratoryjny z matematyki 2024/2025, woj. lubuskie, etap wojewódzki, zad. 13 </small>
{{Nawigacja|Matematyka dla ostatnich klas szkoły podstawowej|
[[Matematyka dla ostatnich klas szkoły podstawowej/Do czego stosujemy twierdzenie Pitagorasa?|Do czego stosujemy twierdzenie Pitagorasa?]]|
[[Matematyka dla ostatnich klas szkoły podstawowej/Trójkąty 90°, 45°, 45° oraz 90°, 30°, 60°|Trójkąty 90°, 45°, 45° oraz 90°, 30°, 60°]]|
}}</noinclude>
bssnr1ftlihtlqesups37aan04v2o6w
Dyskusja wikipedysty:Igor123121
3
61679
559519
552154
2026-10-18T13:47:41Z
YxiCode
34510
/* Historia dla klas 7-8 i inne absurdy */ Odpowiedź
559519
wikitext
text/x-wiki
{{Witaj}} [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:43, 13 paź 2025 (CEST)
== Książka kucharska ==
Jak tworzysz książkę kucharską, stosuj szablon {{s|SortKuchWolumin}}, on sam sortuje, i może mieć dowolną dowolną liczbę numerowanych parametrów, szczególny na jego stronie dokumentacji! A przykład użycia na stronie: {{lg|Książka_kucharska/Adżika}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:43, 13 paź 2025 (CEST)
: I jak zobaczysz coś w stopniach Celsiusza, to stosuj szablon {{s|C}}, przykład: wywołanie: {{s|C|120}}, wynik: {{C|120}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:53, 13 paź 2025 (CEST)
::@[[Wikipedysta:Persino|Persino]] bardzo dziękuje za wskazówki - szablony w książce kucharskiej poprawiłem a jakbym się napotkał na stopnie Celsiusza to będę poprawiał. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 20:54, 13 paź 2025 (CEST)
: Jak napotkasz na rysunki. to stosuj szablon {{s|Plik}}, przykład:
:* kod oryginalny: <nowiki>[[Plik:Rumfordsuppe.jpg|mały|200px|right|To jest opis]]</nowiki>,
:* kod po zamianie: {{s|Plik|plik{{=}}Rumfordsuppe.jpg|ramka{{=}}mały|rozmiar{{=}}200px|pozycja{{=}}prawo|opis{{=}}To jest opis}}.
: Też są przykłady w twoich artykułach książki kucharskiej.
: Szablon {{s|Plik}}, tym się różni od normalnego wywołania plikowego <nowiki>[[Plik:coś|...]]</nowiki>, że posiada obsługę błędów (walidację).
[[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:58, 14 paź 2025 (CEST)
: I jeszcze do twoich rysunków, byłoby dobrze, gdybyś dodał opis w parametrze {{Parametr|opis}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:05, 14 paź 2025 (CEST)
:@[[Wikipedysta:Persino|Persino]] Bardzo dziękuję za rady, wszystkie błędy techniczne poprawie wieczorem [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:07, 14 paź 2025 (CEST)
== Nowe przepisy ==
Hej, jestem rozczarowana dopisywaniem, a raczej przepisywaniem z książek przepisów do naszej wikibookowej książki kucharskiej. Dzisiaj dopisałeś cztery nowe sałatki, a jestem pewna, że ich nawet nie wypróbowałeś. Pewnie dlatego brakuje przy nich fotografii? Czy mógłbyś mi powiedzieć, dlaczego to robisz? Po co nam duża ilość przy beznadziejnej jakości. Moim zdaniem nie tędy droga. Robisz teraz to samo, co swego czasu Świętokrzyskie z ta drobną różnicą, że podajesz źródło. Na wstępie książki kucharskiej widnieje zdanie: "Jeśli chcesz – podziel się z nami własnym przepisem." Czy moglibyśmy się tego trzymać? To znaczy nieważne, skąd ten przepis pochodzi, ważnym jest, że danie zostało przez ciebie przygotowane, wypróbowane, ocenione na bardzo dobry, sfotografowane i zamieszczone w Wikibooku. Bo jeżeli chcesz sobie zapisać pewne przepisy "na potem", to masz przecież brudnopis. Co o tym myślisz? Pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:01, 22 paź 2025 (CEST)
== Odp. ==
Hej, ok, rozumiem twój punkt widzenia, ale jeżeli to stara książka (autor zmarł ponad 70 lat temu), to może publikować to w Wikiźródłach? Tam jest sporo starych książek kucharskich. Pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:34, 22 paź 2025 (CEST)
== Prace dyplomowe na wikibooks do usuniecia? ==
Hej, w Barze zadalam pytania na temat prac magisterskich, dyplomowych itp. Czy zechcialbys odniesc sie do moich pytan? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:03, 27 paź 2025 (CET)
== Linkujące i dokończenie prac ==
Dokończyłem twoje przenoszenie, teraz sprawdź linkujące, czy jakaś strona odnosi się do skasowanych artykułów, i one zamień na nową nazwę podręcznika, czy mam to zrobi sam? Bo jeszcze przenoszenie tak naprawdę nie jest do końca zrobione i dokończone! Będę sprawdzał! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:18, 31 paź 2025 (CET)
* A wiesz, co to jest linkujące! Sprawdź pod: Specjalna:Linkujące/<Nazwa artykułu>, i poprawiaj! A to <Nazwa artykułu>, to nazwa artykułu przed przeniesieniem!? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:32, 31 paź 2025 (CET)
** To musisz zrobić, tym razem ręcznie, sprawdź też strony dyskusji! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:35, 31 paź 2025 (CET)
*** Też sprawdź linki nie napisane w postaci linków w nawigacjach, które w nich stają się linkami, jeden z nich poprawiłem! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:39, 31 paź 2025 (CET)
*** Sprawdź też linki w <nowiki><imagemap></imagemap></nowiki>. Ja jeden z artykułów poprawiłem taki. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:50, 31 paź 2025 (CET)
*** Popraw też strony dyskusji użytkowników w linkujących. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:07, 31 paź 2025 (CET)
*** Sprawdź w stronach przenoszonych, przed przeniesieniem, czy one linkują, na stronie {{lz|s=Specjalna:Rejestr|c=type=move&user=&page=&excludetempacct=1&wpdate=&tagfilter=&wpfilters[]=newusers&wpFormIdentifier=logeventslist}}, i w edycjach przy tych artykułach przenoszonych, a zobaczysz, co wcześniej źle robiłeś, też zaglądaj na stronę: {{lc2|Strony według prefiksu}}, i dlatego musiałem poprawiać lub dokończyć przenoszenie tych książek wcześniej przenoszonych przez Ciebie! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:05, 2 lis 2025 (CET)
== Historia dla klas 7-8 i inne absurdy ==
A sprawdzałeś ty w ogóle program nauczania? Właściwie, to obejmujesz tutaj klasy od 4 do 8, nie zaś od 7 do 8. O ile dobrze pamiętam, klasy 7-8 do było od wielkiej kolonizacji do współczesności.
No ale po co sprawdzać? Popełniłeś ogrom takich błędów. Proszę, rozważaj, w co klikasz i ile klikasz. Świeżo zdobyte uprawnienia może podniecają, lecz w pracy administratora trzeba patrzeć na wszystko zimno. [[Wikipedysta:Lordmichigan|Lordmichigan]] ([[Dyskusja wikipedysty:Lordmichigan|dyskusja]]) 13:43, 2 lis 2025 (CET)
:Właściwie to historia różniła się do 2026 r. podstawami w klasach IV i klasach V-VIII. Klasa IV omawia podstawy historii jako nauki oraz czasu, a następnie wydarzenia związane z historią Polski. Klasy V-VIII omawiają historię międzynarodową i polską od starożytności po współczesność. Książka omawia więc zagadnienia dla klas V-VIII.
:Jednak przyszła Sz. P. Nowacka i wszystko oczywiście musiała zmienić. Teraz IV-VI ma materiał taki sam jak dotychczas, ale IV przyłączono do głównej podstawy. Klasy IV-VI są od pradziejów do momentu tuż przed rozpoczęciem I wojny światowej. Klasy VII-VIII są od I wojny światowej do współczesności. Sensowne byłoby rozdzielenie zagadnień. Należy zachować dział współczesność w dotychczasowym artykule, a pozostałe przenieść do nowego artykułu Historia dla klas IV-VI. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 15:47, 18 paź 2026 (CEST)
== Pisownia po dwukropku w artykule Wikijunior:Polska/Rzecznik Praw Dziecka ==
Hej, w tym przypadku po dwukropku małą literą ([https://sjp.pwn.pl/poradnia/haslo/wielka-litera-po-dwukropku;8986.html]) Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 19:31, 7 lis 2025 (CET)
== Czy temat "gimnazjum" jest jeszcze aktualny? ==
Hej, poniewaz pozostala taka kategoria: https://pl.wikibooks.org/wiki/Kategoria:Gimnazjum. Czy tak jest ok, czy chcialbys z tym tez zrobic jeszcze porzadek? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:33, 12 lis 2025 (CET)
== edukacja zdrowotna ==
Świetny pomysł na podręcznik. Dodałem na końcu link do standardowego rozdziału "o podręczniku" Gdybyś mógł tam podlinkować podstawę programową byłbym wdzięczny. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 12:01, 9 gru 2025 (CET)
== Czy plagiat ==
Skąd masz te książki, które piszesz, czy one są zgodne z licencją {{NS|l=tak|w=tak}}. A przy okazji, naprawiłem problem z filtrem tytułu od powtarzania. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:26, 13 gru 2025 (CET)
: A jeżeli one są zgodne, to dopisz licencję na stronie głównej z każdej z książek, które umieściłeś na projekcie, tak też rób dla każdej z tych ksiąg, które zaczynasz! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:33, 13 gru 2025 (CET)
::Ale w czym problem? Przecież na dole każdej strony i przy każdej edycji deklaruje się licencję CC:BY-SA [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 20:54, 18 gru 2025 (CET)
: Jaką licencję mam ustawić w twoich książkach? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 17:57, 18 gru 2025 (CET)
: A ci wystarczy to oznaczyć szablonem {{s|Licencja}} (jak np. na: [[Fizyka statystyczna]]), czy innym? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:31, 18 gru 2025 (CET)
: Teraz lepiej, bo wiadomo, że to ty napisałeś te książki, a nie kto inny! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:31, 18 gru 2025 (CET)
== Twoje książki ==
Mam jedno krótkie pytanie! Kiedy ukończysz swoje książki? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:52, 24 gru 2025 (CET)
* A uwzględniłeś artykuł: [[Etyka dla szkoły podstawowej/Intencje i motywy – po co coś robię]], który filtr zablokował, a teraz go nie blokuje! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 17:52, 24 gru 2025 (CET)
== Streszczenia lektur ==
Chyba mamy problem - '''nie istnieje żadna kategoria tematyczna''', w której można to umieścić. Czy zakładamy nową (np. ''Literatura''), czy może koncentrujemy się na rozbudowywaniu, a na kategorie przyjdzie pora? [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 22:01, 27 gru 2025 (CET)
== Ad:Pytanie ==
;[{{fullurl:Dyskusja_wikipedysty:Marek_Mazurkiewicz|oldid=529490}}#Pytanie Ad:Pytanie]
Tak mam w planach ich rozbudowę ale jeszcze zastanawiam się nad formą. Cały ten podręcznik jest zalążkiem jak się spojrzy w podstawę programową. Zapewne dodam tam objawy i może porównanie z prawidłowym kariotypem. Dzięki za uwagę, chętnie przyjmę podpowiedzi. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 23:56, 4 sty 2026 (CET)
== Notice of expiration of your sysop right ==
<div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "sysop" (Administratorzy) will expire on 2026-01-28 11:48:36. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Wikipedysta:Leaderbot|Leaderbot]] ([[Dyskusja wikipedysty:Leaderbot|dyskusja]]) 20:42, 21 sty 2026 (CET)</div>
== Brak litery w wyrazie ==
W wyrażeniu: "szkół ponadpostawowych", a nie powinno się pisać: "szkół ponadpodstawowych"?! Brak właśnie tu jest litery "d"! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:48, 8 lut 2026 (CET)
:@[[Wikipedysta:Persino|Persino]] faktycznie w podręczniku i podstronach występuje literówka. Chcesz przenieść osobiście pod prawidłową nazwę czy mam się tym zająć? Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 15:51, 8 lut 2026 (CET)
:: {{Ping|Igor123121}} Poczekaj przed następną edycją, zaraz przenoszę! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:53, 8 lut 2026 (CET)
== [[Order Orła Białego/Nadawanie odznaczenia przez Rząd RP na Uchodźstwie]] ==
Już możesz stworzyć ten artykuł, zmodyfikowałem filtr 21. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 07:52, 6 mar 2026 (CET)
:@[[Wikipedysta:Persino|Persino]] super, dziekuję Ci bardzo! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 07:55, 6 mar 2026 (CET)
== You may be an eligible candidate for the U4C election ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Greetings,
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee (U4C)]] seeks candidates for the 2026 election. The U4C is the global committee responsible for overseeing enforcement of the [[foundation:Special:MyLanguage/Policy:Universal Code of Conduct|Universal Code of Conduct]]. Elections are held annually, if elected a committee member serves for two years.
This year the U4C requires candidates to hold administrator rights on at least one wiki, which is why you are being contacted as you appear to hold this right. There are other requirements, such as candidates must be at least 18 years old and may not be employed by the Wikimedia Foundation or other related chapters and affiliates. You can find more information in the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026#Call_for_Candidates|call for candidates on Meta-wiki]]. Additionally, the committee's working language is English; some ability to communicate in English is required.
The election opens on 18 May, if you are eligible and interested you have until 10 May to submit your candidacy. There will be a week in between for candidates to answer questions from the community. Voting takes place privately in [[m:Special:MyLanguage/SecurePoll|SecurePoll]], successful candidates must receive at least 60% support. More information is available on [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|the 2026 Elections page]], including timelines and other candidacy information. If you read over the material and consider yourself qualified, please consider submitting your name to run for the committee. If you think someone else in your community might be interested and qualified, please encourage them to run.
In partnership with the U4C -- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User_talk:Keegan (WMF)|talk]]) 22:07, 28 kwi 2026 (CEST) </div>
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/test&oldid=30472432 -->
== Notice of expiration of your sysop right ==
<div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "sysop" (Administratorzy) will expire on 2026-07-28 11:48:00. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Wikipedysta:Leaderbot|Leaderbot]] ([[Dyskusja wikipedysty:Leaderbot|dyskusja]]) 21:42, 21 lip 2026 (CEST)</div>
== Użytkownik [[User:Esperantysta Druhomił|Esperantysta Druhomił]] ==
Te edycje tego użytkownika trzeba cofnąć, lub poprawić, jak myślisz? Zobacz je w: [[Specjalna:Wkład/Esperantysta_Druhomił]]... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:51, 27 lip 2026 (CEST)
:@[[Wikipedysta:Persino|Persino]] powiem ci szczerze, że ciężko mi się ustosunkować, ponieważ w kwestii języków jestem mało obeznany. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 22:28, 27 lip 2026 (CEST)
== Wandalizmy ==
Jestem w trakcie usuwania wandalizmów z: [[Special:Wkład/Esperantysta Druhomił]] (już wandalizmy usunąłem - ale trzeba sprawdzić je jeszcze raz) i [[Special:Wkład/Świętokrzyskie3]] (w trakcie). Czy mógłbyś zajrzeć na [[Special:Ostatnie zmiany]], by korygować mnie, jakby coś było nie tak! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 00:35, 29 lip 2026 (CEST)
:@[[Wikipedysta:Persino|Persino]] oczywiście będę przeglądał, a gdy gdzieś wkradnie się jakiś błąd to poprawię. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 00:37, 29 lip 2026 (CEST)
nzwmaaaqcjbqeuir7wrgw86n5wbd4hs
559549
559519
2026-10-18T18:42:13Z
ŁacinniK
38948
559549
wikitext
text/x-wiki
559551
559549
2026-10-18T18:42:41Z
ŁacinniK
38948
559551
wikitext
text/x-wiki
559552
559551
2026-10-18T18:44:45Z
ŁacinniK
38948
559552
wikitext
text/x-wiki
559553
559552
2026-10-18T18:46:03Z
ŁacinniK
38948
559553
wikitext
text/x-wiki
559554
559553
2026-10-18T18:51:03Z
NguoiDungKhongDinhDanh
32749
Wycofano edycje użytkownika [[Special:Contributions/ŁacinniK|ŁacinniK]] ([[User talk:ŁacinniK|dyskusja]]). Autor przywróconej wersji to [[User:YxiCode|YxiCode]].
559519
wikitext
text/x-wiki
{{Witaj}} [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:43, 13 paź 2025 (CEST)
== Książka kucharska ==
Jak tworzysz książkę kucharską, stosuj szablon {{s|SortKuchWolumin}}, on sam sortuje, i może mieć dowolną dowolną liczbę numerowanych parametrów, szczególny na jego stronie dokumentacji! A przykład użycia na stronie: {{lg|Książka_kucharska/Adżika}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:43, 13 paź 2025 (CEST)
: I jak zobaczysz coś w stopniach Celsiusza, to stosuj szablon {{s|C}}, przykład: wywołanie: {{s|C|120}}, wynik: {{C|120}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 20:53, 13 paź 2025 (CEST)
::@[[Wikipedysta:Persino|Persino]] bardzo dziękuje za wskazówki - szablony w książce kucharskiej poprawiłem a jakbym się napotkał na stopnie Celsiusza to będę poprawiał. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 20:54, 13 paź 2025 (CEST)
: Jak napotkasz na rysunki. to stosuj szablon {{s|Plik}}, przykład:
:* kod oryginalny: <nowiki>[[Plik:Rumfordsuppe.jpg|mały|200px|right|To jest opis]]</nowiki>,
:* kod po zamianie: {{s|Plik|plik{{=}}Rumfordsuppe.jpg|ramka{{=}}mały|rozmiar{{=}}200px|pozycja{{=}}prawo|opis{{=}}To jest opis}}.
: Też są przykłady w twoich artykułach książki kucharskiej.
: Szablon {{s|Plik}}, tym się różni od normalnego wywołania plikowego <nowiki>[[Plik:coś|...]]</nowiki>, że posiada obsługę błędów (walidację).
[[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:58, 14 paź 2025 (CEST)
: I jeszcze do twoich rysunków, byłoby dobrze, gdybyś dodał opis w parametrze {{Parametr|opis}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 11:05, 14 paź 2025 (CEST)
:@[[Wikipedysta:Persino|Persino]] Bardzo dziękuję za rady, wszystkie błędy techniczne poprawie wieczorem [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 11:07, 14 paź 2025 (CEST)
== Nowe przepisy ==
Hej, jestem rozczarowana dopisywaniem, a raczej przepisywaniem z książek przepisów do naszej wikibookowej książki kucharskiej. Dzisiaj dopisałeś cztery nowe sałatki, a jestem pewna, że ich nawet nie wypróbowałeś. Pewnie dlatego brakuje przy nich fotografii? Czy mógłbyś mi powiedzieć, dlaczego to robisz? Po co nam duża ilość przy beznadziejnej jakości. Moim zdaniem nie tędy droga. Robisz teraz to samo, co swego czasu Świętokrzyskie z ta drobną różnicą, że podajesz źródło. Na wstępie książki kucharskiej widnieje zdanie: "Jeśli chcesz – podziel się z nami własnym przepisem." Czy moglibyśmy się tego trzymać? To znaczy nieważne, skąd ten przepis pochodzi, ważnym jest, że danie zostało przez ciebie przygotowane, wypróbowane, ocenione na bardzo dobry, sfotografowane i zamieszczone w Wikibooku. Bo jeżeli chcesz sobie zapisać pewne przepisy "na potem", to masz przecież brudnopis. Co o tym myślisz? Pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:01, 22 paź 2025 (CEST)
== Odp. ==
Hej, ok, rozumiem twój punkt widzenia, ale jeżeli to stara książka (autor zmarł ponad 70 lat temu), to może publikować to w Wikiźródłach? Tam jest sporo starych książek kucharskich. Pozdrawiam serdecznie. [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:34, 22 paź 2025 (CEST)
== Prace dyplomowe na wikibooks do usuniecia? ==
Hej, w Barze zadalam pytania na temat prac magisterskich, dyplomowych itp. Czy zechcialbys odniesc sie do moich pytan? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:03, 27 paź 2025 (CET)
== Linkujące i dokończenie prac ==
Dokończyłem twoje przenoszenie, teraz sprawdź linkujące, czy jakaś strona odnosi się do skasowanych artykułów, i one zamień na nową nazwę podręcznika, czy mam to zrobi sam? Bo jeszcze przenoszenie tak naprawdę nie jest do końca zrobione i dokończone! Będę sprawdzał! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:18, 31 paź 2025 (CET)
* A wiesz, co to jest linkujące! Sprawdź pod: Specjalna:Linkujące/<Nazwa artykułu>, i poprawiaj! A to <Nazwa artykułu>, to nazwa artykułu przed przeniesieniem!? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:32, 31 paź 2025 (CET)
** To musisz zrobić, tym razem ręcznie, sprawdź też strony dyskusji! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:35, 31 paź 2025 (CET)
*** Też sprawdź linki nie napisane w postaci linków w nawigacjach, które w nich stają się linkami, jeden z nich poprawiłem! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:39, 31 paź 2025 (CET)
*** Sprawdź też linki w <nowiki><imagemap></imagemap></nowiki>. Ja jeden z artykułów poprawiłem taki. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:50, 31 paź 2025 (CET)
*** Popraw też strony dyskusji użytkowników w linkujących. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:07, 31 paź 2025 (CET)
*** Sprawdź w stronach przenoszonych, przed przeniesieniem, czy one linkują, na stronie {{lz|s=Specjalna:Rejestr|c=type=move&user=&page=&excludetempacct=1&wpdate=&tagfilter=&wpfilters[]=newusers&wpFormIdentifier=logeventslist}}, i w edycjach przy tych artykułach przenoszonych, a zobaczysz, co wcześniej źle robiłeś, też zaglądaj na stronę: {{lc2|Strony według prefiksu}}, i dlatego musiałem poprawiać lub dokończyć przenoszenie tych książek wcześniej przenoszonych przez Ciebie! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:05, 2 lis 2025 (CET)
== Historia dla klas 7-8 i inne absurdy ==
A sprawdzałeś ty w ogóle program nauczania? Właściwie, to obejmujesz tutaj klasy od 4 do 8, nie zaś od 7 do 8. O ile dobrze pamiętam, klasy 7-8 do było od wielkiej kolonizacji do współczesności.
No ale po co sprawdzać? Popełniłeś ogrom takich błędów. Proszę, rozważaj, w co klikasz i ile klikasz. Świeżo zdobyte uprawnienia może podniecają, lecz w pracy administratora trzeba patrzeć na wszystko zimno. [[Wikipedysta:Lordmichigan|Lordmichigan]] ([[Dyskusja wikipedysty:Lordmichigan|dyskusja]]) 13:43, 2 lis 2025 (CET)
:Właściwie to historia różniła się do 2026 r. podstawami w klasach IV i klasach V-VIII. Klasa IV omawia podstawy historii jako nauki oraz czasu, a następnie wydarzenia związane z historią Polski. Klasy V-VIII omawiają historię międzynarodową i polską od starożytności po współczesność. Książka omawia więc zagadnienia dla klas V-VIII.
:Jednak przyszła Sz. P. Nowacka i wszystko oczywiście musiała zmienić. Teraz IV-VI ma materiał taki sam jak dotychczas, ale IV przyłączono do głównej podstawy. Klasy IV-VI są od pradziejów do momentu tuż przed rozpoczęciem I wojny światowej. Klasy VII-VIII są od I wojny światowej do współczesności. Sensowne byłoby rozdzielenie zagadnień. Należy zachować dział współczesność w dotychczasowym artykule, a pozostałe przenieść do nowego artykułu Historia dla klas IV-VI. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 15:47, 18 paź 2026 (CEST)
== Pisownia po dwukropku w artykule Wikijunior:Polska/Rzecznik Praw Dziecka ==
Hej, w tym przypadku po dwukropku małą literą ([https://sjp.pwn.pl/poradnia/haslo/wielka-litera-po-dwukropku;8986.html]) Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 19:31, 7 lis 2025 (CET)
== Czy temat "gimnazjum" jest jeszcze aktualny? ==
Hej, poniewaz pozostala taka kategoria: https://pl.wikibooks.org/wiki/Kategoria:Gimnazjum. Czy tak jest ok, czy chcialbys z tym tez zrobic jeszcze porzadek? Pozdrawiam serdecznie [[Wikipedysta:EdytaT|EdytaT]] ([[Dyskusja wikipedysty:EdytaT|dyskusja]]) 21:33, 12 lis 2025 (CET)
== edukacja zdrowotna ==
Świetny pomysł na podręcznik. Dodałem na końcu link do standardowego rozdziału "o podręczniku" Gdybyś mógł tam podlinkować podstawę programową byłbym wdzięczny. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 12:01, 9 gru 2025 (CET)
== Czy plagiat ==
Skąd masz te książki, które piszesz, czy one są zgodne z licencją {{NS|l=tak|w=tak}}. A przy okazji, naprawiłem problem z filtrem tytułu od powtarzania. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:26, 13 gru 2025 (CET)
: A jeżeli one są zgodne, to dopisz licencję na stronie głównej z każdej z książek, które umieściłeś na projekcie, tak też rób dla każdej z tych ksiąg, które zaczynasz! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 22:33, 13 gru 2025 (CET)
::Ale w czym problem? Przecież na dole każdej strony i przy każdej edycji deklaruje się licencję CC:BY-SA [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 20:54, 18 gru 2025 (CET)
: Jaką licencję mam ustawić w twoich książkach? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 17:57, 18 gru 2025 (CET)
: A ci wystarczy to oznaczyć szablonem {{s|Licencja}} (jak np. na: [[Fizyka statystyczna]]), czy innym? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:31, 18 gru 2025 (CET)
: Teraz lepiej, bo wiadomo, że to ty napisałeś te książki, a nie kto inny! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:31, 18 gru 2025 (CET)
== Twoje książki ==
Mam jedno krótkie pytanie! Kiedy ukończysz swoje książki? [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:52, 24 gru 2025 (CET)
* A uwzględniłeś artykuł: [[Etyka dla szkoły podstawowej/Intencje i motywy – po co coś robię]], który filtr zablokował, a teraz go nie blokuje! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 17:52, 24 gru 2025 (CET)
== Streszczenia lektur ==
Chyba mamy problem - '''nie istnieje żadna kategoria tematyczna''', w której można to umieścić. Czy zakładamy nową (np. ''Literatura''), czy może koncentrujemy się na rozbudowywaniu, a na kategorie przyjdzie pora? [[Wikipedysta:Benjamin E. Schneider|Benjamin E. Schneider]] ([[Dyskusja wikipedysty:Benjamin E. Schneider|dyskusja]]) 22:01, 27 gru 2025 (CET)
== Ad:Pytanie ==
;[{{fullurl:Dyskusja_wikipedysty:Marek_Mazurkiewicz|oldid=529490}}#Pytanie Ad:Pytanie]
Tak mam w planach ich rozbudowę ale jeszcze zastanawiam się nad formą. Cały ten podręcznik jest zalążkiem jak się spojrzy w podstawę programową. Zapewne dodam tam objawy i może porównanie z prawidłowym kariotypem. Dzięki za uwagę, chętnie przyjmę podpowiedzi. [[Wikipedysta:Marek Mazurkiewicz|Marek Mazurkiewicz]] ([[Dyskusja wikipedysty:Marek Mazurkiewicz|dyskusja]]) 23:56, 4 sty 2026 (CET)
== Notice of expiration of your sysop right ==
<div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "sysop" (Administratorzy) will expire on 2026-01-28 11:48:36. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Wikipedysta:Leaderbot|Leaderbot]] ([[Dyskusja wikipedysty:Leaderbot|dyskusja]]) 20:42, 21 sty 2026 (CET)</div>
== Brak litery w wyrazie ==
W wyrażeniu: "szkół ponadpostawowych", a nie powinno się pisać: "szkół ponadpodstawowych"?! Brak właśnie tu jest litery "d"! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:48, 8 lut 2026 (CET)
:@[[Wikipedysta:Persino|Persino]] faktycznie w podręczniku i podstronach występuje literówka. Chcesz przenieść osobiście pod prawidłową nazwę czy mam się tym zająć? Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 15:51, 8 lut 2026 (CET)
:: {{Ping|Igor123121}} Poczekaj przed następną edycją, zaraz przenoszę! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:53, 8 lut 2026 (CET)
== [[Order Orła Białego/Nadawanie odznaczenia przez Rząd RP na Uchodźstwie]] ==
Już możesz stworzyć ten artykuł, zmodyfikowałem filtr 21. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 07:52, 6 mar 2026 (CET)
:@[[Wikipedysta:Persino|Persino]] super, dziekuję Ci bardzo! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 07:55, 6 mar 2026 (CET)
== You may be an eligible candidate for the U4C election ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Greetings,
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee (U4C)]] seeks candidates for the 2026 election. The U4C is the global committee responsible for overseeing enforcement of the [[foundation:Special:MyLanguage/Policy:Universal Code of Conduct|Universal Code of Conduct]]. Elections are held annually, if elected a committee member serves for two years.
This year the U4C requires candidates to hold administrator rights on at least one wiki, which is why you are being contacted as you appear to hold this right. There are other requirements, such as candidates must be at least 18 years old and may not be employed by the Wikimedia Foundation or other related chapters and affiliates. You can find more information in the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026#Call_for_Candidates|call for candidates on Meta-wiki]]. Additionally, the committee's working language is English; some ability to communicate in English is required.
The election opens on 18 May, if you are eligible and interested you have until 10 May to submit your candidacy. There will be a week in between for candidates to answer questions from the community. Voting takes place privately in [[m:Special:MyLanguage/SecurePoll|SecurePoll]], successful candidates must receive at least 60% support. More information is available on [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|the 2026 Elections page]], including timelines and other candidacy information. If you read over the material and consider yourself qualified, please consider submitting your name to run for the committee. If you think someone else in your community might be interested and qualified, please encourage them to run.
In partnership with the U4C -- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User_talk:Keegan (WMF)|talk]]) 22:07, 28 kwi 2026 (CEST) </div>
<!-- Wiadomość wysłana przez User:Keegan (WMF)@metawiki przy użyciu listy na https://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/test&oldid=30472432 -->
== Notice of expiration of your sysop right ==
<div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "sysop" (Administratorzy) will expire on 2026-07-28 11:48:00. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Wikipedysta:Leaderbot|Leaderbot]] ([[Dyskusja wikipedysty:Leaderbot|dyskusja]]) 21:42, 21 lip 2026 (CEST)</div>
== Użytkownik [[User:Esperantysta Druhomił|Esperantysta Druhomił]] ==
Te edycje tego użytkownika trzeba cofnąć, lub poprawić, jak myślisz? Zobacz je w: [[Specjalna:Wkład/Esperantysta_Druhomił]]... [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:51, 27 lip 2026 (CEST)
:@[[Wikipedysta:Persino|Persino]] powiem ci szczerze, że ciężko mi się ustosunkować, ponieważ w kwestii języków jestem mało obeznany. [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 22:28, 27 lip 2026 (CEST)
== Wandalizmy ==
Jestem w trakcie usuwania wandalizmów z: [[Special:Wkład/Esperantysta Druhomił]] (już wandalizmy usunąłem - ale trzeba sprawdzić je jeszcze raz) i [[Special:Wkład/Świętokrzyskie3]] (w trakcie). Czy mógłbyś zajrzeć na [[Special:Ostatnie zmiany]], by korygować mnie, jakby coś było nie tak! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 00:35, 29 lip 2026 (CEST)
:@[[Wikipedysta:Persino|Persino]] oczywiście będę przeglądał, a gdy gdzieś wkradnie się jakiś błąd to poprawię. Pozdrawiam! [[Wikipedysta:Igor123121|Igor123121]] ([[Dyskusja wikipedysty:Igor123121|dyskusja]]) 00:37, 29 lip 2026 (CEST)
nzwmaaaqcjbqeuir7wrgw86n5wbd4hs
Matematyka dla ostatnich klas szkoły podstawowej/Trójkąty 90°, 45°, 45° oraz 90°, 30°, 60°
0
62048
559502
526201
2026-10-18T11:59:50Z
YxiCode
34510
559502
wikitext
text/x-wiki
== Teoria ==
Przypomnij sobie własności przekątnej kwadratu i wysokości trójkąta równobocznego. '''Oblicz''' kąty tych trójkątów. Zastanów się, czy poznane własności tyczą się również każdemu trójkątowi o tych kątach.
Już wiesz, że możemy ułatwić sobie życie w przypadku poszczególnych odcinków w figurach, m.in. '''przekątnej kwadratu''' oraz '''wysokości trójkąta równobocznego'''. Możemy też jednak zacząć obliczać boki trójkątów o poszczególnych kątach - które właśnie się bazują na poprzednim temacie ([[Matematyka_dla_ostatnich_klas_szkoły_podstawowej/Przekątna_kwadratu_i_wysokość_w_trójkącie_równobocznym|XI.4]]).
=== Trójkąt o kątach 90°, 45°, 45° ===
Taki trójkąt to połówka kwadratu, in. trójkąt prostokątny równoramienny. Powstaje on po przecięciu kwadratu wzdłuż przekątnej.
{{Mat:Tw
|
[[Plik:Trójkąt o kątach 90°, 45°, 45°.svg|200px|prawo]]
Jeżeli przyprostokątne trójkąta prostokątnego równoramiennego mają długość <math>a</math>, to przeciwprostokątna ma długość <math>a\sqrt{2}</math>.
Z twierdzenia Pitagorasa:
<math>a^2+a^2=c^2</math>
<math>2a^2=c^2</math>
<math>c=\sqrt{2a^2}=a\sqrt{2}</math>
}}
=== Trójkąt o kątach 90°, 30°, 60° ===
Taki trójkąt to połówka trójkąta równobocznego. Powstaje on po przecięciu trójkąta równobocznego wzdłuż wysokości.
== Zadania ==
'''*1.''' W trapezie kąty przy dłuższej podstawie mają miary 30 i 45. Dłuższa podstawa ma długość 16, a wysokość trapezu jest równa 3. Jaki obwód ma ten trapez?
{{Nawigacja|Matematyka dla ostatnich klas szkoły podstawowej|
[[Matematyka dla ostatnich klas szkoły podstawowej/Przekątna kwadratu i wysokość w trójkącie równobocznym|Przekątna kwadratu i wysokość w trójkącie równobocznym]]|
[[Matematyka dla ostatnich klas szkoły podstawowej/Odcinki a układ współrzędnych|Odcinki a układ współrzędnych]]|
}}</noinclude>
d5knzvggi2wtimildvytrh1la864un9
559504
559502
2026-10-18T12:01:07Z
YxiCode
34510
/* Trójkąt o kątach 90°, 45°, 45° */
559504
wikitext
text/x-wiki
== Teoria ==
Przypomnij sobie własności przekątnej kwadratu i wysokości trójkąta równobocznego. '''Oblicz''' kąty tych trójkątów. Zastanów się, czy poznane własności tyczą się również każdemu trójkątowi o tych kątach.
Już wiesz, że możemy ułatwić sobie życie w przypadku poszczególnych odcinków w figurach, m.in. '''przekątnej kwadratu''' oraz '''wysokości trójkąta równobocznego'''. Możemy też jednak zacząć obliczać boki trójkątów o poszczególnych kątach - które właśnie się bazują na poprzednim temacie ([[Matematyka_dla_ostatnich_klas_szkoły_podstawowej/Przekątna_kwadratu_i_wysokość_w_trójkącie_równobocznym|XI.4]]).
=== Trójkąt o kątach 90°, 45°, 45° ===
Taki trójkąt to połówka kwadratu, in. trójkąt prostokątny równoramienny. Powstaje on po przecięciu kwadratu wzdłuż przekątnej.
{{Mat:Tw
|
[[Plik:Trójkąt o kątach 90°, 45°, 45°.svg|200px|prawo]]
Jeżeli przyprostokątne trójkąta prostokątnego równoramiennego mają długość <math>a</math>, to przeciwprostokątna ma długość <math>a\sqrt{2}</math>. Dzieląc kąt prosty na pół (<math>90:2=45</math>) otrzymujemy kąty 45°, stąd się one bowiem biorą.
Z twierdzenia Pitagorasa:
<math>a^2+a^2=c^2</math>
<math>2a^2=c^2</math>
<math>c=\sqrt{2a^2}=a\sqrt{2}</math>
}}
=== Trójkąt o kątach 90°, 30°, 60° ===
Taki trójkąt to połówka trójkąta równobocznego. Powstaje on po przecięciu trójkąta równobocznego wzdłuż wysokości.
== Zadania ==
'''*1.''' W trapezie kąty przy dłuższej podstawie mają miary 30 i 45. Dłuższa podstawa ma długość 16, a wysokość trapezu jest równa 3. Jaki obwód ma ten trapez?
{{Nawigacja|Matematyka dla ostatnich klas szkoły podstawowej|
[[Matematyka dla ostatnich klas szkoły podstawowej/Przekątna kwadratu i wysokość w trójkącie równobocznym|Przekątna kwadratu i wysokość w trójkącie równobocznym]]|
[[Matematyka dla ostatnich klas szkoły podstawowej/Odcinki a układ współrzędnych|Odcinki a układ współrzędnych]]|
}}</noinclude>
3u3ztqlii1ml0rltlig67upt1v8zgwd
559505
559504
2026-10-18T12:01:18Z
YxiCode
34510
/* Zadania */
559505
wikitext
text/x-wiki
== Teoria ==
Przypomnij sobie własności przekątnej kwadratu i wysokości trójkąta równobocznego. '''Oblicz''' kąty tych trójkątów. Zastanów się, czy poznane własności tyczą się również każdemu trójkątowi o tych kątach.
Już wiesz, że możemy ułatwić sobie życie w przypadku poszczególnych odcinków w figurach, m.in. '''przekątnej kwadratu''' oraz '''wysokości trójkąta równobocznego'''. Możemy też jednak zacząć obliczać boki trójkątów o poszczególnych kątach - które właśnie się bazują na poprzednim temacie ([[Matematyka_dla_ostatnich_klas_szkoły_podstawowej/Przekątna_kwadratu_i_wysokość_w_trójkącie_równobocznym|XI.4]]).
=== Trójkąt o kątach 90°, 45°, 45° ===
Taki trójkąt to połówka kwadratu, in. trójkąt prostokątny równoramienny. Powstaje on po przecięciu kwadratu wzdłuż przekątnej.
{{Mat:Tw
|
[[Plik:Trójkąt o kątach 90°, 45°, 45°.svg|200px|prawo]]
Jeżeli przyprostokątne trójkąta prostokątnego równoramiennego mają długość <math>a</math>, to przeciwprostokątna ma długość <math>a\sqrt{2}</math>. Dzieląc kąt prosty na pół (<math>90:2=45</math>) otrzymujemy kąty 45°, stąd się one bowiem biorą.
Z twierdzenia Pitagorasa:
<math>a^2+a^2=c^2</math>
<math>2a^2=c^2</math>
<math>c=\sqrt{2a^2}=a\sqrt{2}</math>
}}
=== Trójkąt o kątach 90°, 30°, 60° ===
Taki trójkąt to połówka trójkąta równobocznego. Powstaje on po przecięciu trójkąta równobocznego wzdłuż wysokości.
== Zadania ==
'''*1.''' W trapezie kąty przy dłuższej podstawie mają miary 30° i 45°. Dłuższa podstawa ma długość 16, a wysokość trapezu jest równa 3. Jaki obwód ma ten trapez?
{{Nawigacja|Matematyka dla ostatnich klas szkoły podstawowej|
[[Matematyka dla ostatnich klas szkoły podstawowej/Przekątna kwadratu i wysokość w trójkącie równobocznym|Przekątna kwadratu i wysokość w trójkącie równobocznym]]|
[[Matematyka dla ostatnich klas szkoły podstawowej/Odcinki a układ współrzędnych|Odcinki a układ współrzędnych]]|
}}</noinclude>
bcxhd9y73gqttjx2b1im0u32nmpud2e
559506
559505
2026-10-18T12:03:18Z
YxiCode
34510
559506
wikitext
text/x-wiki
== Teoria ==
Przypomnij sobie własności przekątnej kwadratu i wysokości trójkąta równobocznego. '''Oblicz''' kąty tych trójkątów. Zastanów się, czy poznane własności tyczą się również każdemu trójkątowi o tych kątach.
Już wiesz, że możemy korzystać ze wzorów aby obliczyć długości poszczególnych odcinków w figurach, m.in. '''przekątnej kwadratu''' oraz '''wysokości trójkąta równobocznego'''. Możemy również zacząć obliczać boki trójkątów o poszczególnych kątach - które właśnie się bazują na poprzednim temacie ([[Matematyka_dla_ostatnich_klas_szkoły_podstawowej/Przekątna_kwadratu_i_wysokość_w_trójkącie_równobocznym|XI.4]]).
=== Trójkąt o kątach 90°, 45°, 45° ===
Taki trójkąt to połówka kwadratu, in. trójkąt prostokątny równoramienny. Powstaje on po przecięciu kwadratu wzdłuż przekątnej.
{{Mat:Tw
|
[[Plik:Trójkąt o kątach 90°, 45°, 45°.svg|200px|prawo]]
Jeżeli przyprostokątne trójkąta prostokątnego równoramiennego mają długość <math>a</math>, to przeciwprostokątna ma długość <math>a\sqrt{2}</math>. Dzieląc kąt prosty na pół (<math>90:2=45</math>) otrzymujemy kąty 45°, stąd się one bowiem biorą.
Z twierdzenia Pitagorasa:
<math>a^2+a^2=c^2</math>
<math>2a^2=c^2</math>
<math>c=\sqrt{2a^2}=a\sqrt{2}</math>
}}
=== Trójkąt o kątach 90°, 30°, 60° ===
Taki trójkąt to połówka trójkąta równobocznego. Powstaje on po przecięciu trójkąta równobocznego wzdłuż wysokości.
== Zadania ==
'''*1.''' W trapezie kąty przy dłuższej podstawie mają miary 30° i 45°. Dłuższa podstawa ma długość 16, a wysokość trapezu jest równa 3. Jaki obwód ma ten trapez?
{{Nawigacja|Matematyka dla ostatnich klas szkoły podstawowej|
[[Matematyka dla ostatnich klas szkoły podstawowej/Przekątna kwadratu i wysokość w trójkącie równobocznym|Przekątna kwadratu i wysokość w trójkącie równobocznym]]|
[[Matematyka dla ostatnich klas szkoły podstawowej/Odcinki a układ współrzędnych|Odcinki a układ współrzędnych]]|
}}</noinclude>
lhe64u9fwigyknuyqmn14zopw5761i6
Wikipedysta:YxiCode/Brudnopis
2
62601
559537
530408
2026-10-18T17:00:02Z
YxiCode
34510
559537
wikitext
text/x-wiki
<noinclude><!--
--><templatestyles src="Szablon:Strona główna/styles.css" />
{{ProstaStronaStart|pasek przewijania=auto}}
{{Div start|klasa=mainpage siatka-mobilna}}
{{Div start|klasa=maintext}}<!--
--></noinclude><!--
-->{{ElastycznyWiersz2
|styl=margin-top:0.25rem;margin-bottom:0.25rem;width:auto;box-sizing:border-box
|1={{Pudełko ramkowe 4
|styl=margin-right:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika-bez-div=tak
|grafika={{Plik|plik=RedondoExclamação.png|pozycja=prawo|rozmiar=100px|rys=tak}}
|tytuł=Ty też możesz rozwijać podręczniki!
|tekst={{Strona główna/Podręczniki}}
}}
|2={{Pudełko ramkowe 4
|styl=margin-left:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Info|50}}
|tytuł=Strony serwisowe na polskim {{NS|pk=mj|l=tak|w=tak}}
|tekst={{Strona główna/Serwis}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|1={{Pudełko ramkowe 4
|styl=width:100%;margin-right:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Kv|50}}
|tytuł=Informacje odnośnie pisania podręczników w polskim serwisie {{NS|l=tak|w=tak}}
|tekst={{Strona główna/Pomoc}}
}}
|2={{Pudełko ramkowe 4
|styl=width:100%;margin-left:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{Ikona|portal|50}}
|tytuł=Strony portali
|tekst={{Strona główna/Portale}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|klasa=menu-listy-kategorii
|1={{Menu listy kategorii portali}}
|2={{Menu listy kategorii poziomu}}
|3={{Menu listy kategorii statusu}}
|4={{Menu listy kategorii tematycznych}}
|5={{Menu listy kategorii Światy dla dzieci}}
}}<!--
--><noinclude><!--
-->{{Div koniec}}
{{Div koniec}}
{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
-->__NOTOC__<!--
--></noinclude>
tdl8w78syc6y0921u2tlhdeghxf7qax
559539
559537
2026-10-18T17:06:52Z
YxiCode
34510
559539
wikitext
text/x-wiki
<noinclude><!--
--><templatestyles src="Szablon:Strona główna/styles.css" />
{{ProstaStronaStart|pasek przewijania=auto}}
{{Div start|klasa=mainpage siatka-mobilna}}
{{Div start|klasa=maintext}}<!--
--></noinclude><!--
-->{{ElastycznyWiersz2
|styl=margin-top:0.25rem;margin-bottom:0.25rem;width:auto;box-sizing:border-box
|1={{Pudełko ramkowe 4
|styl=margin-right:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika-bez-div=tak
|grafika={{Plik|plik=RedondoExclamação.png|pozycja=prawo|rozmiar=100px|rys=tak}}
|tytuł=Ty też możesz rozwijać podręczniki!
|tekst={{Wikipedysta:YxiCode/Brudnopis/Stronaglownapodreczniki}}
}}
|2={{Pudełko ramkowe 4
|styl=margin-left:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Info|50}}
|tytuł=Strony serwisowe na polskim {{NS|pk=mj|l=tak|w=tak}}
|tekst={{Strona główna/Serwis}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|1={{Pudełko ramkowe 4
|styl=width:100%;margin-right:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Kv|50}}
|tytuł=Informacje odnośnie pisania podręczników w polskim serwisie {{NS|l=tak|w=tak}}
|tekst={{Strona główna/Pomoc}}
}}
|2={{Pudełko ramkowe 4
|styl=width:100%;margin-left:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{Ikona|portal|50}}
|tytuł=Strony portali
|tekst={{Strona główna/Portale}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|klasa=menu-listy-kategorii
|1={{Menu listy kategorii portali}}
|2={{Menu listy kategorii poziomu}}
|3={{Menu listy kategorii statusu}}
|4={{Menu listy kategorii tematycznych}}
|5={{Menu listy kategorii Światy dla dzieci}}
}}<!--
--><noinclude><!--
-->{{Div koniec}}
{{Div koniec}}
{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
-->__NOTOC__<!--
--></noinclude>
1ilkdk7cdqjhe2ag4bs58g1p00zbzbl
559543
559539
2026-10-18T17:20:35Z
YxiCode
34510
559543
wikitext
text/x-wiki
<noinclude><!--
--><templatestyles src="Szablon:Strona główna/styles.css" />
{{ProstaStronaStart|pasek przewijania=auto}}
{{Div start|klasa=mainpage siatka-mobilna}}
{{Div start|klasa=maintext}}<!--
--></noinclude><!--
-->{{ElastycznyWiersz2
|styl=margin-top:0.25rem;margin-bottom:0.25rem;width:auto;box-sizing:border-box
|1={{Pudełko ramkowe 4
|styl=margin-right:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika-bez-div=tak
|grafika={{Plik|plik=Book_icon_1.png|pozycja=prawo|rozmiar=100px|rys=tak}}
|tytuł=Ty też możesz rozwijać podręczniki!
|tekst={{Wikipedysta:YxiCode/Brudnopis/Stronaglownapodreczniki}}
}}
|2={{Pudełko ramkowe 4
|styl=margin-left:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Info|50}}
|tytuł=Strony serwisowe na polskim {{NS|pk=mj|l=tak|w=tak}}
|tekst={{Strona główna/Serwis}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|1={{Pudełko ramkowe 4
|styl=width:100%;margin-right:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Kv|50}}
|tytuł=Informacje odnośnie pisania podręczników w polskim serwisie {{NS|l=tak|w=tak}}
|tekst={{Strona główna/Pomoc}}
}}
|2={{Pudełko ramkowe 4
|styl=width:100%;margin-left:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{Ikona|portal|50}}
|tytuł=Strony portali
|tekst={{Strona główna/Portale}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|klasa=menu-listy-kategorii
|1={{Menu listy kategorii portali}}
|2={{Menu listy kategorii poziomu}}
|3={{Menu listy kategorii statusu}}
|4={{Menu listy kategorii tematycznych}}
|5={{Menu listy kategorii Światy dla dzieci}}
}}<!--
--><noinclude><!--
-->{{Div koniec}}
{{Div koniec}}
{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
-->__NOTOC__<!--
--></noinclude>
e4ids11hecof0j5rp10c17lprg831l2
559547
559543
2026-10-18T17:30:04Z
YxiCode
34510
559547
wikitext
text/x-wiki
<noinclude><!--
--><templatestyles src="Szablon:Strona główna/styles.css" />
{{ProstaStronaStart|pasek przewijania=auto}}
{{Div start|klasa=mainpage siatka-mobilna}}
{{Div start|klasa=maintext}}<!--
--></noinclude><!--
-->{{ElastycznyWiersz2
|styl=margin-top:0.25rem;margin-bottom:0.25rem;width:auto;box-sizing:border-box
|1={{Pudełko ramkowe 4
|styl=margin-right:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika-bez-div=tak
|grafika={{Plik|plik=Book_icon_1.png|pozycja=prawo|rozmiar=100px|rys=tak}}
|tytuł=Ty też możesz rozwijać podręczniki!
|tekst={{Wikipedysta:YxiCode/Brudnopis/Stronaglownapodreczniki}}
}}
|2={{Pudełko ramkowe 4
|styl=margin-left:0.125rem;width:100%;height:auto;box-sizing:border-box;flex:1 1 auto;overflow-y:auto;max-height:24.088rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Info|50}}
|tytuł=Strony serwisowe na polskim {{NS|pk=mj|l=tak|w=tak}}
|tekst={{Wikipedysta:YxiCode/Brudnopis/Stronaglownaserwis}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|1={{Pudełko ramkowe 4
|styl=width:100%;margin-right:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{ikona|Kv|50}}
|tytuł=Informacje odnośnie pisania podręczników w polskim serwisie {{NS|l=tak|w=tak}}
|tekst={{Strona główna/Pomoc}}
}}
|2={{Pudełko ramkowe 4
|styl=width:100%;margin-left:0.125rem;flex:1 1 auto;overflow-y:auto;max-height:20.577rem;
|klasa=mw-overflow-y menu-listy-elastyczny-wprowadzenie
|styl wprowadzenia=margin-right:-0.125rem;
|grafika={{Ikona|portal|50}}
|tytuł=Strony portali
|tekst={{Strona główna/Portale}}
}}
}}<!--
-->{{ElastycznyWiersz2
|styl=margin-bottom:0.25rem;
|klasa=menu-listy-kategorii
|1={{Menu listy kategorii portali}}
|2={{Menu listy kategorii poziomu}}
|3={{Menu listy kategorii statusu}}
|4={{Menu listy kategorii tematycznych}}
|5={{Menu listy kategorii Światy dla dzieci}}
}}<!--
--><noinclude><!--
-->{{Div koniec}}
{{Div koniec}}
{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
-->__NOTOC__<!--
--></noinclude>
ag7fxvqqpy8zotmt4tklrn934ha369o
Wikibooks:Moduły/StronicowyParser/Rozdziały
4
63903
559586
557976
2026-10-19T07:12:30Z
Persino
2851
/* Rozdziały */
559586
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Rozdziały}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== Wstęp ==
Poniższe funkcje służą do analizowania stron spisu treści, aby przygotować je do analizowania przez moduł: {{Code|{{ld2|StronicowyParser/SpisTreści}}}}.
=== Rozdziały {{ZobaczTeż|typy rozdziałów}} ===
* Dodatnie - dzielimy je na normalne i inne, a te na rozdziały centrowane znacznikowe i centrowane:
** normalne (równaniowe) - to są rozdziały napisane za pomocą znaku {{Code|{{=}}}}, które po prawej i lewej stronie znajduje się tych znaków minimalnie taka sama liczba, a pomiędzy nimi jest zwykły tekst, i nie tylko, są to rozdziały typu, np.: {{Code|<nowiki>== Tekst rozdziału ==</nowiki>}},
** Inne (nierównaniowe):
*** Rozdziały centrowane znacznikowe - są to rozdziały dodatnie napisane za pomocą znacznika: {{Tag|center}}, przykład: {{Tag|center|zawartość=Tekst rozdziału}},
*** Rozdziały centrowane szablonowe - są to rozdziały dodatnie napisane przy pomocy jednego szablonu z: {{s|Center}}, {{s|Centruj}} lub {{s|Ce}}, przykład: {{Code|{{s|Center|Tekst rozdziału}}}},
*** Rozdziały sztucznego napisu wprowadzenia tekstu, dla szablonów takich jak: {{s|HNumer}}, gdzie jego parametr pierwszy, to zwykły anormalny rozdział dodatni równaniowy, nawet z niedozwoloną liczbą równa się po obu stronach,
* Ujemne - to są listy w liniach zaczynających się od znaku: {{Code|<nowiki>[;%*:#]</nowiki>}}, nie mogą być to znaczniki list, za tymi znakami znajduje się zwykły tekst, i nie tylko, są to rozdziały typu: {{Code|<nowiki>:** Tekst rozdziału</nowiki>}},
* Zerowe - to są rozdziały nie będące ani dodatnie, czy ujemne, ale nie wszystkie takie są zerowe, to zależy od pewnych kryteriów ustalanych przez funkcję: {{Code|{{sr|#p.CzyZerowyNapisWprowadzeniaTekstu|p=StronicowyParser/Rozdziały/Tom II}}}}, są to rozdziały typu: {{Code|Tekst rozdziału:}}.
=== Zmienne spotykane w opisywanych tutaj funkcjach ===
==== Zmienne bazy ====
W poniższych funkcjach często spotykamy parametry:
{{OpisParametrów
| 1 = {{Code|tekst}} {{Patrz|tekst}} (cały tekst), {{Code|linia}} {{Patrz|linia}} (linia w tekście) | _1 = Tekst przeważnie zakodowany funkcją kodującą, mogący być modyfikowany przez inne funkcje.
| 2 = {{Code|szablon}} {{Patrz|szablon}} | _2 = Zakodowany {{ZobaczTeż|szablon}} tekst szablonu, jak w: {{LinkPatrz|tekst}}, tym szablonem może być też nie tylko normalnie szablon, ale może być to jakikolwiek instrukcja warunkowa wikikodu.
| 3 = {{Code|pelna_nazwa_spisu_tresci}} {{Patrz|pelna_nazwa_spisu_tresci}} | _3 = Uchwyt tabeli, zwykle równy adresowi strony, z zawartością, którego bazujemy, ale nie zawsze, bazy kodów wewnątrz pamięci: {{Code|{{m|Szablonowe}}}}, gdy zmienna: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, jest równa wartości: {{Code|nil}}.
| 4 = {{Code|pelna_nazwa_spisu_tresci_szablonowa}} {{Patrz|pelna_nazwa_spisu_tresci_szablonowa}} | _4 = Pełna nazwa strony szablonowe jakiegoś spisu podręcznika, potrzebna do analizy adresów: {{Code|./}} lub {{Code|../}}, do rozwijania ich adresów względnych do bezwzględnych. Jest liczona bez nazwy przestrzeni {{Np|Template|link=tak}}, w tej przestrzeni, a w innych z przestrzeniami, a w {{Np|(main)|link=tak}} z dwukropkiem na początku.
}}
==== Zmienne szablonowe rozkładu ich na czynniki pierwsze ====
{{OpisParametrów
| 1 = {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} | _1 = Tabela parametrów szablonu. Parametry nienazwane są w postaci mają klucze w postaci liczb całkowitych, nie łańcuchów znakowych, a te liczby nie mogą mieć na początku zera, ani znaku: {{Code|+}}, ale za może mieć: {{Code|-}}. A inne parametry są o kluczach nazwanych. Wartości tych parametrów są łańcuchami znakowymi.
| 2 = {{Code|nazwa_szablonu}} {{Patrz|nazwa_szablonu}} | _2 = Nazwa szablonu, w wersji szablonowej, czyli nazwa ta jest bez przestrzeni nazw: {{Np|Template|link=tak}}, a w przypadku przestrzeni nazw: {{Np|(main)|link=tak}}, jest on z dwukropkiem, dla odróżnienia z nazwą szablonową dla specjalnie szablonów, a dla innych przestrzeni nazwy stron są równe ich pełnym nazwą strony.
| 3 = {{Code|tabela_modyfikatorow}} {{Patrz|tabela_modyfikatorow}} | _3 = Tabela jego modyfikatorów uruchomień szablonów ich w wywołaniach. Pełna tabela modyfikatorów znajduje się w kodzie: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, tzn. {{Code|{{ld2|Szablonowe/dane}}}}.
}}
==== Zmienne znacznikowe: '''{{lpg|HTML}}''' i mechanizmu '''{{NS|k=mw|w=tak|l=tak}}''' ====
{{OpisParametrów
| 1 = {{Code|nazwa}} {{Patrz|nazwa}} | _1 = Nazwa znacznika, napisana małymi literami, nie może zaczynać się od cyfry, ani nie może mieć w sobie żadnych odstępów.
| 2 = {{Code|zawartosc}} {{Patrz|zawartosc}} | _2 = Zawartość znacznika, pomiędzy tagami.
| 3 = {{Code|atrybuty}} {{Patrz|atrybuty}} | _3 = Tabela z atrybutami znacznika, w tagach. Kluczami tej tabeli są nazwy tych atrybutów, a wartościami, są wartości atrybutów o pewnych nazwach. Nazwa taga nie może mieć w sobie żadnych odstępów.
}}
==== Baza danych wikikodu ====
Tutaj są opisywane funkcje i zmienne, które dotyczą kodowania baz danych wikikodu.
===== Zmienne bazy danych i do nich parametrów =====
{{OpisParametrów
| 1 = {{Code|nazwa_modulu}} {{Patrz|nazwa_modulu}} | _1 = Nazwa modułu (uchwyt) używana zamiast tabeli bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, jeżeli taki istnieje w bazie wewnętrznym funkcji: {{Code|{{m|Szablonowe}}}}.
| 2 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} | _2 = Tablica kodów bazy: {{Code|{{m|Szablonowe}}}}, generowaną przez funkcję: {{LinkPatrz|KodowanieSzablonowegoTekstuZObiektamiWikikodu}}, z modułu: {{Code|{{ld2|Szablonowe/Potrzebne}}}}, i modyfikowane przez inne.
| 3 = {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} | _3 = Tablica parametrów rozłożeń na mniejsze elementy różnych elementów bazy.
}}
===== Inne elementy bazy =====
{{OpisParametrów
| 1 = {{Code|tab_nazwa_spisow_przekierowaniowych}} {{Patrz|tab_nazwa_spisow_przekierowaniowych}} | _1 = Tabela potrzebna do rozważań dla funkcji: {{LinkPatrz|AnalizujLinkSzablonyOrazLinki}}, mówiąca coś o przekierowaniach, aby nie liczyć pewnych parametrów od począdku.
}}
==== Funkcje bazy danych i do nich parametrów ====
{{OpisParametrów
| 1 = {{Code|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}} {{Patrz|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}} | _1 = Funkcja, która usuwa elementy w tablicy: {{Code|tablica_danych_parametrow_szablonu_strony}} {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}, o danym kodzie, przyporządkowanym danej funkcji, i kodzie numeru danego obiektu: {{Code|obiekt}} {{LinkPatrz|obiekt}}, czyli: {{Code|kod}} {{LinkPatrz|kod}}.
| 2 = {{Code|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}} {{Patrz|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}} | _2 = Funkcja, która usuwa elementy, i w ich powiązanych metatablicach, w tablicy: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, o danym typie, obiekcie: {{Code|obiekt}} {{LinkPatrz|obiekt}}, i numerze w nim: {{Code|kod}} {{LinkPatrz|kod}}.
}}
==== Inne funkcje ====
Inne funkcje używane przez opisywany moduł.
===== Funkcje bazy =====
{{OpisParametrów
| 1 = {{Code|{{sr|#p.KodowanieSzablonowegoTekstuZObiektamiWikikodu|p=Szablonowe/Potrzebne}}}} {{Patrz|KodowanieSzablonowegoTekstuZObiektamiWikikodu}} | _1 = Funkcja służąca do kodowania i modyfikowania tekstu, zastępując w nim elementy ich kodami, tworząc tablicę kodów: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, wewnątrz funkcji, przy pomocy uchwytu: {{Code|pelna_nazwa_spisu_tresci}}, lub bezpośrednio podając tą tabelę do funkcji. Elementy zbazowanego tekstu są umieszczane w tej tabeli.
| 2 = {{Code|{{sr|#p.IteratorSzablonowyZakodowanegoTekstu|p=Szablonowe}}}} {{Patrz|IteratorSzablonowyZakodowanegoTekstu}} | _2 = Służy on jako iterator po zakodowany elementach, w tym elementach szablonowych, ale też w tym warunkowych. Przy podanym uchwycie lub tabeli potrzebnej: {{LinkPatrz|KodowanieSzablonowegoTekstuZObiektamiWikikodu}}.
| 3 = {{Code|{{sr|#p.NormaWzoruKodowaniaTekstu|p=Szablonowe}}}} {{Patrz|NormaWzoruKodowaniaTekstu}} | _3 = Sprawdzająca, czy w kodzie są kody (czy tekst jest zakodowany), tzn. czy są kody o jakikolwiek {{Code|obiekt}} {{LinkPatrz|obiekt}} (typ obiektu kodu) i {{Code|kod}} {{LinkPatrz|kod}} (o liczbie całkowitej dodatniej).
}}
===== Inne =====
{{OpisParametrów
| 1 = {{Code|{{sr|#p.AnalizujLinkSzablonyOrazLinki|p=StronicowyParser/Potrzebne}}}} {{Patrz|AnalizujLinkSzablonyOrazLinki}} | _1 = Funkcja do analizowania linków zwykłych wewnętrznych i zewnętrznych oraz linków, tzw. inteligentnych.
}}
==== Elementy bazy ====
{{OpisParametrów
| 1 = {{Code|szablon}} {{LinkPatrz|szablon}} | _1 = Wnętrze {{LinkZobaczTeż|szablon}}, też zakodowane, obiektu kodowanego o typie {{LinkPatrz|obiekt}} i numerze {{LinkPatrz|kod}}.
| 2 = {{Code|obiekt}} {{Patrz|obiekt}} | _2 = Parametr, w postaci łańcucha znakowego typu elementu w kodzie.
| 3 = {{Code|kod}} {{Patrz|kod}} | _3 = Numer tego elementu o danym typie {{LinkPatrz|obiekt}}. Te numery mogą mieć przerwy, możliwie zaczynające się od jedynki, ale nigdy od zera, dla kodów tego samego typu, bo za pomocą innych funkcji można skasować to z jedynką lub elementy powodujące przerwy, te operacje są według {{LinkPatrz|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}}.
}}
==== Inne zmienne ====
{{OpisParametrów
| 1 = {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} | _1 = te parametry przedstawiają: nazwę przestrzeni nazw strony, nazwę przestrzeni książki i nazwę ksiązki,
| 2 = {{Code|nazwa_spisu_tresci}} {{Patrz|nazwa_spisu_tresci}} | _2 = Nazwa artykułu spisu treści.
}}
=== Przykładowy kod funkcji: {{Code|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}}, do usuwania elementów tabeli parametrów ===
Funkcję: {{LinkPatrz|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}}, często ją się definiuje:
<syntaxhighlight lang="lua">
local szablonowe_modul=require("Module:Szablonowe");
local tab_analiza=szablonowe_modul.LiczbyParametroweInformacjiBazyKodowaniaWikikodu();
local __FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE=function(szablon,obiekt,kod,poziom_iteracji)
local tab_obiekt=tab_analiza[obiekt];
if(not tab_obiekt)then return;end;
for _,wartosc in pairs(tab_obiekt)do
local element_wartosc=tablica_danych_parametrow_szablonu_strony[wartosc];
if(element_wartosc)then
element_wartosc[kod]=nil;
end;
end;
end;
</syntaxhighlight>
Ta funkcja usuwa elementy tablicy: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}, które są reprezentowane przez element liczbowy {{Code|kod}} {{LinkPatrz|kod}}.
=== Przykładowy kod funkcji: {{Code|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}}, do usuwania elementów tabeli bazy ===
A funkcję: {{LinkPatrz|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}}, można zdefiniować, usuwając z tablicy wielowymiarowej jeden element reprezentowany przez dwie zmienne:
<syntaxhighlight lang="lua">
local __FUNKCJA_OPERACJE_USUWANIE_BAZOWE=function(szablon,obiekt,kod,poziom_iteracji)
tablica_analizy_obiektow_strony_dany_modul[obiekt][kod]=nil;
end;
</syntaxhighlight>
Przy tej funkcji należy uważać, aby nie wywołać błędu języka {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jakby element {{Code|obiekt}} {{LinkPatrz|obiekt}} nie istniał w tabeli.
Ta funkcja usuwa elementy z tablicy: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, które są reprezentowane przez zmienne: {{Code|obiekt}} {{LinkPatrz|obiekt}} i {{Code|kod}} {{LinkPatrz|kod}}.
== Spis treści ==
Przedstawia funkcje do zbierania informacji o spisach, ale w sferze wstępnej w wersji preanalizowanej, nie tak jak robi moduł: {{Code|{{ld2|StronicowyParser/SpisTreści}}}}, które wykorzystuje ten moduł opisywany, do zbierania informacji o nagłówkach i w nich rozdziałami, z informacjami, które są elementami charakteryzującymi dany artykuł, a nawet rozdział, czyli w tej dokumentacji są te funkcje.
{{Hr}}
{{Kolumny|2|2=
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom I}} - Operacje na sekcjach ===
Funkcje do uzyskiwania informacji o sekcji, w tym o jej numerze, i jej tekście rozdziału pomiędzy poszczególnymi sekcjami o danych identyfikatorach. One służą w operacjach w skryptach {{lpg|JavaScript}}.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom II}} - Tworzenie i wydobywania coś z sekcji ===
Funkcje do analizowania napisów wprowadzenia tekstu z postaci surowej, w tym rozdziały dodatnie, czy nagłówkowe, a nawet według szablonu {{s|HNumer}}. Funkcje tworzące nagłowki o dowolnym poziomie, raz jako nagłówki dodatnie równaniowo, a za innym razem według znaczników nagłówków, albo tylko według znaczników nagłówków. Funkcje są tam od wydzielania z nagłówka samego napisu wprowadzenia tekstu, tzn. jego zawartość. Funkcje wykrywające, czy w nim są rozdziały dodatnie rówaniowo, czy pozycje listy.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom III}} - Modyfikacje elementów w celu uzyskania lepszego formatu ===
Funkcje do modyfikacji analizowanej strony do lepszego formatu, by później łatwo dało się ją parsować, by uzyskać pewne, ściśle okreslone elementy informacyjne. One sprawdzają, czy w nich są szablony, które muszą być w spisie, któryś przynajmniej z nich, ale nie zawsze. Funkcje sparwdzające, czy w nich są specjalne obiekty. Czy szablony mają odpowiednie nazwy według szablonów kompletowania. Funkcje usuwające kolejne spacje i dolne myślniki zamieniając je na jedną spacje. Funkcje wydzielające z wnętrza szablonu ich odpowiednią zawartość, według ściśle okreslonej procedury. Funkcje tworzące elementy według wzoru. Fukcje zamieniające znaczniki i szablony, nowej linii i kresek, na kolejno na znaki nowej linii. Funkcje do integracji tekstu.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom IV}} - Parsowanie innych linii niż rozdziały dodatnie równaniowo ===
Funkcje do parsowania linii, ale nie linii będących rozdziałem dodatnim równaniowym, za pomocą zwróconej funkcji, która poza ciałem, ale w wiekszej funkcji rodzicu, są zbieranne informacje, o analizowanych liniach, które mogą być rozdziałami, ale nie muszą być, bo niekażda linia jest sekcją w uznaniu fukncji w opisywanym tym module.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom V}} - Zbieranie informacji o sekcjach i ich tekstach rozdziałów ===
Funkcje do skladania, upraszczania ich oraz zbierania informacji o rozdziałach i ich tekstach rozdziałów (w tym ich modyfikacji i tworzeniu), i z nimi stowarzyszącymi elementami, jest to robione przy pomocy iteratora, który analizuje poszczególne sekcje, wraz z ich informacjami.
}}
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
0183zfpit7o5n5nwcoyql3yv9ie9uum
559587
559586
2026-10-19T07:12:58Z
Persino
2851
/* Rozdziały {{ZobaczTeż|typy rozdziałów}} */
559587
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Rozdziały}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== Wstęp ==
Poniższe funkcje służą do analizowania stron spisu treści, aby przygotować je do analizowania przez moduł: {{Code|{{ld2|StronicowyParser/SpisTreści}}}}.
=== Rozdziały {{nobold|{{ZobaczTeż|typy rozdziałów}}}} ===
* Dodatnie - dzielimy je na normalne i inne, a te na rozdziały centrowane znacznikowe i centrowane:
** normalne (równaniowe) - to są rozdziały napisane za pomocą znaku {{Code|{{=}}}}, które po prawej i lewej stronie znajduje się tych znaków minimalnie taka sama liczba, a pomiędzy nimi jest zwykły tekst, i nie tylko, są to rozdziały typu, np.: {{Code|<nowiki>== Tekst rozdziału ==</nowiki>}},
** Inne (nierównaniowe):
*** Rozdziały centrowane znacznikowe - są to rozdziały dodatnie napisane za pomocą znacznika: {{Tag|center}}, przykład: {{Tag|center|zawartość=Tekst rozdziału}},
*** Rozdziały centrowane szablonowe - są to rozdziały dodatnie napisane przy pomocy jednego szablonu z: {{s|Center}}, {{s|Centruj}} lub {{s|Ce}}, przykład: {{Code|{{s|Center|Tekst rozdziału}}}},
*** Rozdziały sztucznego napisu wprowadzenia tekstu, dla szablonów takich jak: {{s|HNumer}}, gdzie jego parametr pierwszy, to zwykły anormalny rozdział dodatni równaniowy, nawet z niedozwoloną liczbą równa się po obu stronach,
* Ujemne - to są listy w liniach zaczynających się od znaku: {{Code|<nowiki>[;%*:#]</nowiki>}}, nie mogą być to znaczniki list, za tymi znakami znajduje się zwykły tekst, i nie tylko, są to rozdziały typu: {{Code|<nowiki>:** Tekst rozdziału</nowiki>}},
* Zerowe - to są rozdziały nie będące ani dodatnie, czy ujemne, ale nie wszystkie takie są zerowe, to zależy od pewnych kryteriów ustalanych przez funkcję: {{Code|{{sr|#p.CzyZerowyNapisWprowadzeniaTekstu|p=StronicowyParser/Rozdziały/Tom II}}}}, są to rozdziały typu: {{Code|Tekst rozdziału:}}.
=== Zmienne spotykane w opisywanych tutaj funkcjach ===
==== Zmienne bazy ====
W poniższych funkcjach często spotykamy parametry:
{{OpisParametrów
| 1 = {{Code|tekst}} {{Patrz|tekst}} (cały tekst), {{Code|linia}} {{Patrz|linia}} (linia w tekście) | _1 = Tekst przeważnie zakodowany funkcją kodującą, mogący być modyfikowany przez inne funkcje.
| 2 = {{Code|szablon}} {{Patrz|szablon}} | _2 = Zakodowany {{ZobaczTeż|szablon}} tekst szablonu, jak w: {{LinkPatrz|tekst}}, tym szablonem może być też nie tylko normalnie szablon, ale może być to jakikolwiek instrukcja warunkowa wikikodu.
| 3 = {{Code|pelna_nazwa_spisu_tresci}} {{Patrz|pelna_nazwa_spisu_tresci}} | _3 = Uchwyt tabeli, zwykle równy adresowi strony, z zawartością, którego bazujemy, ale nie zawsze, bazy kodów wewnątrz pamięci: {{Code|{{m|Szablonowe}}}}, gdy zmienna: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, jest równa wartości: {{Code|nil}}.
| 4 = {{Code|pelna_nazwa_spisu_tresci_szablonowa}} {{Patrz|pelna_nazwa_spisu_tresci_szablonowa}} | _4 = Pełna nazwa strony szablonowe jakiegoś spisu podręcznika, potrzebna do analizy adresów: {{Code|./}} lub {{Code|../}}, do rozwijania ich adresów względnych do bezwzględnych. Jest liczona bez nazwy przestrzeni {{Np|Template|link=tak}}, w tej przestrzeni, a w innych z przestrzeniami, a w {{Np|(main)|link=tak}} z dwukropkiem na początku.
}}
==== Zmienne szablonowe rozkładu ich na czynniki pierwsze ====
{{OpisParametrów
| 1 = {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} | _1 = Tabela parametrów szablonu. Parametry nienazwane są w postaci mają klucze w postaci liczb całkowitych, nie łańcuchów znakowych, a te liczby nie mogą mieć na początku zera, ani znaku: {{Code|+}}, ale za może mieć: {{Code|-}}. A inne parametry są o kluczach nazwanych. Wartości tych parametrów są łańcuchami znakowymi.
| 2 = {{Code|nazwa_szablonu}} {{Patrz|nazwa_szablonu}} | _2 = Nazwa szablonu, w wersji szablonowej, czyli nazwa ta jest bez przestrzeni nazw: {{Np|Template|link=tak}}, a w przypadku przestrzeni nazw: {{Np|(main)|link=tak}}, jest on z dwukropkiem, dla odróżnienia z nazwą szablonową dla specjalnie szablonów, a dla innych przestrzeni nazwy stron są równe ich pełnym nazwą strony.
| 3 = {{Code|tabela_modyfikatorow}} {{Patrz|tabela_modyfikatorow}} | _3 = Tabela jego modyfikatorów uruchomień szablonów ich w wywołaniach. Pełna tabela modyfikatorów znajduje się w kodzie: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, tzn. {{Code|{{ld2|Szablonowe/dane}}}}.
}}
==== Zmienne znacznikowe: '''{{lpg|HTML}}''' i mechanizmu '''{{NS|k=mw|w=tak|l=tak}}''' ====
{{OpisParametrów
| 1 = {{Code|nazwa}} {{Patrz|nazwa}} | _1 = Nazwa znacznika, napisana małymi literami, nie może zaczynać się od cyfry, ani nie może mieć w sobie żadnych odstępów.
| 2 = {{Code|zawartosc}} {{Patrz|zawartosc}} | _2 = Zawartość znacznika, pomiędzy tagami.
| 3 = {{Code|atrybuty}} {{Patrz|atrybuty}} | _3 = Tabela z atrybutami znacznika, w tagach. Kluczami tej tabeli są nazwy tych atrybutów, a wartościami, są wartości atrybutów o pewnych nazwach. Nazwa taga nie może mieć w sobie żadnych odstępów.
}}
==== Baza danych wikikodu ====
Tutaj są opisywane funkcje i zmienne, które dotyczą kodowania baz danych wikikodu.
===== Zmienne bazy danych i do nich parametrów =====
{{OpisParametrów
| 1 = {{Code|nazwa_modulu}} {{Patrz|nazwa_modulu}} | _1 = Nazwa modułu (uchwyt) używana zamiast tabeli bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, jeżeli taki istnieje w bazie wewnętrznym funkcji: {{Code|{{m|Szablonowe}}}}.
| 2 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} | _2 = Tablica kodów bazy: {{Code|{{m|Szablonowe}}}}, generowaną przez funkcję: {{LinkPatrz|KodowanieSzablonowegoTekstuZObiektamiWikikodu}}, z modułu: {{Code|{{ld2|Szablonowe/Potrzebne}}}}, i modyfikowane przez inne.
| 3 = {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} | _3 = Tablica parametrów rozłożeń na mniejsze elementy różnych elementów bazy.
}}
===== Inne elementy bazy =====
{{OpisParametrów
| 1 = {{Code|tab_nazwa_spisow_przekierowaniowych}} {{Patrz|tab_nazwa_spisow_przekierowaniowych}} | _1 = Tabela potrzebna do rozważań dla funkcji: {{LinkPatrz|AnalizujLinkSzablonyOrazLinki}}, mówiąca coś o przekierowaniach, aby nie liczyć pewnych parametrów od począdku.
}}
==== Funkcje bazy danych i do nich parametrów ====
{{OpisParametrów
| 1 = {{Code|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}} {{Patrz|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}} | _1 = Funkcja, która usuwa elementy w tablicy: {{Code|tablica_danych_parametrow_szablonu_strony}} {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}, o danym kodzie, przyporządkowanym danej funkcji, i kodzie numeru danego obiektu: {{Code|obiekt}} {{LinkPatrz|obiekt}}, czyli: {{Code|kod}} {{LinkPatrz|kod}}.
| 2 = {{Code|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}} {{Patrz|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}} | _2 = Funkcja, która usuwa elementy, i w ich powiązanych metatablicach, w tablicy: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, o danym typie, obiekcie: {{Code|obiekt}} {{LinkPatrz|obiekt}}, i numerze w nim: {{Code|kod}} {{LinkPatrz|kod}}.
}}
==== Inne funkcje ====
Inne funkcje używane przez opisywany moduł.
===== Funkcje bazy =====
{{OpisParametrów
| 1 = {{Code|{{sr|#p.KodowanieSzablonowegoTekstuZObiektamiWikikodu|p=Szablonowe/Potrzebne}}}} {{Patrz|KodowanieSzablonowegoTekstuZObiektamiWikikodu}} | _1 = Funkcja służąca do kodowania i modyfikowania tekstu, zastępując w nim elementy ich kodami, tworząc tablicę kodów: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, wewnątrz funkcji, przy pomocy uchwytu: {{Code|pelna_nazwa_spisu_tresci}}, lub bezpośrednio podając tą tabelę do funkcji. Elementy zbazowanego tekstu są umieszczane w tej tabeli.
| 2 = {{Code|{{sr|#p.IteratorSzablonowyZakodowanegoTekstu|p=Szablonowe}}}} {{Patrz|IteratorSzablonowyZakodowanegoTekstu}} | _2 = Służy on jako iterator po zakodowany elementach, w tym elementach szablonowych, ale też w tym warunkowych. Przy podanym uchwycie lub tabeli potrzebnej: {{LinkPatrz|KodowanieSzablonowegoTekstuZObiektamiWikikodu}}.
| 3 = {{Code|{{sr|#p.NormaWzoruKodowaniaTekstu|p=Szablonowe}}}} {{Patrz|NormaWzoruKodowaniaTekstu}} | _3 = Sprawdzająca, czy w kodzie są kody (czy tekst jest zakodowany), tzn. czy są kody o jakikolwiek {{Code|obiekt}} {{LinkPatrz|obiekt}} (typ obiektu kodu) i {{Code|kod}} {{LinkPatrz|kod}} (o liczbie całkowitej dodatniej).
}}
===== Inne =====
{{OpisParametrów
| 1 = {{Code|{{sr|#p.AnalizujLinkSzablonyOrazLinki|p=StronicowyParser/Potrzebne}}}} {{Patrz|AnalizujLinkSzablonyOrazLinki}} | _1 = Funkcja do analizowania linków zwykłych wewnętrznych i zewnętrznych oraz linków, tzw. inteligentnych.
}}
==== Elementy bazy ====
{{OpisParametrów
| 1 = {{Code|szablon}} {{LinkPatrz|szablon}} | _1 = Wnętrze {{LinkZobaczTeż|szablon}}, też zakodowane, obiektu kodowanego o typie {{LinkPatrz|obiekt}} i numerze {{LinkPatrz|kod}}.
| 2 = {{Code|obiekt}} {{Patrz|obiekt}} | _2 = Parametr, w postaci łańcucha znakowego typu elementu w kodzie.
| 3 = {{Code|kod}} {{Patrz|kod}} | _3 = Numer tego elementu o danym typie {{LinkPatrz|obiekt}}. Te numery mogą mieć przerwy, możliwie zaczynające się od jedynki, ale nigdy od zera, dla kodów tego samego typu, bo za pomocą innych funkcji można skasować to z jedynką lub elementy powodujące przerwy, te operacje są według {{LinkPatrz|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}}.
}}
==== Inne zmienne ====
{{OpisParametrów
| 1 = {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} | _1 = te parametry przedstawiają: nazwę przestrzeni nazw strony, nazwę przestrzeni książki i nazwę ksiązki,
| 2 = {{Code|nazwa_spisu_tresci}} {{Patrz|nazwa_spisu_tresci}} | _2 = Nazwa artykułu spisu treści.
}}
=== Przykładowy kod funkcji: {{Code|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}}, do usuwania elementów tabeli parametrów ===
Funkcję: {{LinkPatrz|__FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE}}, często ją się definiuje:
<syntaxhighlight lang="lua">
local szablonowe_modul=require("Module:Szablonowe");
local tab_analiza=szablonowe_modul.LiczbyParametroweInformacjiBazyKodowaniaWikikodu();
local __FUNKCJA_OPERACJE_USUWANIE_PARAMETROWE=function(szablon,obiekt,kod,poziom_iteracji)
local tab_obiekt=tab_analiza[obiekt];
if(not tab_obiekt)then return;end;
for _,wartosc in pairs(tab_obiekt)do
local element_wartosc=tablica_danych_parametrow_szablonu_strony[wartosc];
if(element_wartosc)then
element_wartosc[kod]=nil;
end;
end;
end;
</syntaxhighlight>
Ta funkcja usuwa elementy tablicy: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}, które są reprezentowane przez element liczbowy {{Code|kod}} {{LinkPatrz|kod}}.
=== Przykładowy kod funkcji: {{Code|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}}, do usuwania elementów tabeli bazy ===
A funkcję: {{LinkPatrz|__FUNKCJA_OPERACJE_USUWANIE_BAZOWE}}, można zdefiniować, usuwając z tablicy wielowymiarowej jeden element reprezentowany przez dwie zmienne:
<syntaxhighlight lang="lua">
local __FUNKCJA_OPERACJE_USUWANIE_BAZOWE=function(szablon,obiekt,kod,poziom_iteracji)
tablica_analizy_obiektow_strony_dany_modul[obiekt][kod]=nil;
end;
</syntaxhighlight>
Przy tej funkcji należy uważać, aby nie wywołać błędu języka {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, jakby element {{Code|obiekt}} {{LinkPatrz|obiekt}} nie istniał w tabeli.
Ta funkcja usuwa elementy z tablicy: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, które są reprezentowane przez zmienne: {{Code|obiekt}} {{LinkPatrz|obiekt}} i {{Code|kod}} {{LinkPatrz|kod}}.
== Spis treści ==
Przedstawia funkcje do zbierania informacji o spisach, ale w sferze wstępnej w wersji preanalizowanej, nie tak jak robi moduł: {{Code|{{ld2|StronicowyParser/SpisTreści}}}}, które wykorzystuje ten moduł opisywany, do zbierania informacji o nagłówkach i w nich rozdziałami, z informacjami, które są elementami charakteryzującymi dany artykuł, a nawet rozdział, czyli w tej dokumentacji są te funkcje.
{{Hr}}
{{Kolumny|2|2=
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom I}} - Operacje na sekcjach ===
Funkcje do uzyskiwania informacji o sekcji, w tym o jej numerze, i jej tekście rozdziału pomiędzy poszczególnymi sekcjami o danych identyfikatorach. One służą w operacjach w skryptach {{lpg|JavaScript}}.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom II}} - Tworzenie i wydobywania coś z sekcji ===
Funkcje do analizowania napisów wprowadzenia tekstu z postaci surowej, w tym rozdziały dodatnie, czy nagłówkowe, a nawet według szablonu {{s|HNumer}}. Funkcje tworzące nagłowki o dowolnym poziomie, raz jako nagłówki dodatnie równaniowo, a za innym razem według znaczników nagłówków, albo tylko według znaczników nagłówków. Funkcje są tam od wydzielania z nagłówka samego napisu wprowadzenia tekstu, tzn. jego zawartość. Funkcje wykrywające, czy w nim są rozdziały dodatnie rówaniowo, czy pozycje listy.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom III}} - Modyfikacje elementów w celu uzyskania lepszego formatu ===
Funkcje do modyfikacji analizowanej strony do lepszego formatu, by później łatwo dało się ją parsować, by uzyskać pewne, ściśle okreslone elementy informacyjne. One sprawdzają, czy w nich są szablony, które muszą być w spisie, któryś przynajmniej z nich, ale nie zawsze. Funkcje sparwdzające, czy w nich są specjalne obiekty. Czy szablony mają odpowiednie nazwy według szablonów kompletowania. Funkcje usuwające kolejne spacje i dolne myślniki zamieniając je na jedną spacje. Funkcje wydzielające z wnętrza szablonu ich odpowiednią zawartość, według ściśle okreslonej procedury. Funkcje tworzące elementy według wzoru. Fukcje zamieniające znaczniki i szablony, nowej linii i kresek, na kolejno na znaki nowej linii. Funkcje do integracji tekstu.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom IV}} - Parsowanie innych linii niż rozdziały dodatnie równaniowo ===
Funkcje do parsowania linii, ale nie linii będących rozdziałem dodatnim równaniowym, za pomocą zwróconej funkcji, która poza ciałem, ale w wiekszej funkcji rodzicu, są zbieranne informacje, o analizowanych liniach, które mogą być rozdziałami, ale nie muszą być, bo niekażda linia jest sekcją w uznaniu fukncji w opisywanym tym module.
=== {{lru|Moduły/StronicowyParser/Rozdziały/Tom V}} - Zbieranie informacji o sekcjach i ich tekstach rozdziałów ===
Funkcje do skladania, upraszczania ich oraz zbierania informacji o rozdziałach i ich tekstach rozdziałów (w tym ich modyfikacji i tworzeniu), i z nimi stowarzyszącymi elementami, jest to robione przy pomocy iteratora, który analizuje poszczególne sekcje, wraz z ich informacjami.
}}
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
ost2mh4lt8v0ysmbsgzszou0wb3m0yd
Wikibooks:Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom VII
4
63922
559563
559483
2026-10-19T04:33:33Z
Persino
2851
559563
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
==== Wydzielanie spisu właściwego ====
===== Korekcja uzyskanego wyniku =====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
hrk9bq1f2uzx8q09klrcrup7f078vm4
559564
559563
2026-10-19T04:42:39Z
Persino
2851
559564
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu '''bibliografii''' i '''literatury''' ======
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
dwqnrdqjltyiyecpquxku5r01sxgrpn
559565
559564
2026-10-19T04:45:05Z
Persino
2851
/* Redagowania testu zawartości spisu bibliografii i literatury */
559565
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
3dxulkh3nnu5ek35n8wr62l0sjd8nna
559566
559565
2026-10-19T04:51:19Z
Persino
2851
/* Wydzielanie spisu właściwego */
559566
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
bdxjpze5ky85kfxcjnrrgd1pr0tnhg3
559567
559566
2026-10-19T05:02:13Z
Persino
2851
/* Punkt końcowy */
559567
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
j9jmwu37ihh04y33x4ccfkjyu912jsf
559568
559567
2026-10-19T05:02:26Z
Persino
2851
/* Punkt końcowy */
559568
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
pdcack12uaz58i2xj5xeofyzu02cfbt
559569
559568
2026-10-19T05:03:26Z
Persino
2851
/* Punkt końcowy */
559569
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
iut1od79cru17m6gh3wcmfi14r54u5r
559570
559569
2026-10-19T05:04:19Z
Persino
2851
559570
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
bfkehij7kpvyxgm5139uy3jude1h76b
559571
559570
2026-10-19T05:06:17Z
Persino
2851
559571
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
7gkn1gx6hg1n2lne2i0vzur4crzod2c
559572
559571
2026-10-19T05:07:24Z
Persino
2851
559572
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
ow0ea8yux7czigclig69h1e06gj9c1h
559573
559572
2026-10-19T05:40:51Z
Persino
2851
/* Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy */
559573
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
* Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa.
* Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona.
* Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}.
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
rci5tju178xnn56rzt04npk5x71dftp
559574
559573
2026-10-19T05:42:05Z
Persino
2851
/* Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy */
559574
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
* Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa.
* Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona.
* Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}.
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
7m247517mq3fpi49w2fcbutm4y0d37q
559575
559574
2026-10-19T05:52:29Z
Persino
2851
/* Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy */
559575
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artkuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest artykuł dozwolony (okłądkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
* Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa.
* Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona.
* Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}.
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
g13sok4omc65d5yaodc2rrns78f857b
559576
559575
2026-10-19T05:53:29Z
Persino
2851
/* Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy */
559576
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
* Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa.
* Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona.
* Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}.
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
kr77vtx6yuaoa3l04hyrs61lrmdefx5
559577
559576
2026-10-19T05:55:36Z
Persino
2851
/* Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy */
559577
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
o5g0trnp82yhvquaz607m7l8oa4clrm
559578
559577
2026-10-19T06:11:12Z
Persino
2851
/* Obsługa linków nieokładkowych (dozwolonych) artykułów książki */
559578
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
slv5mnh5h7aiuakoku1159jpy4pizlp
559579
559578
2026-10-19T06:35:05Z
Persino
2851
/* Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika */
559579
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
6atvd6qpi7d2omnp95ts1vmnvicab1m
559580
559579
2026-10-19T06:38:43Z
Persino
2851
/* Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika */
559580
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
dzm7tacytha5405kjomi5eifb1113jo
559581
559580
2026-10-19T06:43:00Z
Persino
2851
/* Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika */
559581
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
g7e1qwkk3167i8xpoctel07xyx95ukx
559582
559581
2026-10-19T06:44:48Z
Persino
2851
559582
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
e6veb9vnmggcd86kr56gu5p8728lgmm
559583
559582
2026-10-19T06:47:33Z
Persino
2851
/* Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika */
559583
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
dom8881czrrnk39qrtn52nt7cjqppxp
559584
559583
2026-10-19T07:07:37Z
Persino
2851
/* Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika */
559584
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
g52d75r7eogwpyw0twuy7r5h7airsmt
559585
559584
2026-10-19T07:08:29Z
Persino
2851
/* Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika */
559585
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
nsgeno1mv1iverm2ykk4eb6uue0ogsy
559588
559585
2026-10-19T07:13:09Z
Persino
2851
/* Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika */
559588
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
ial96qiegj9tw96ne54ggtrjfg35tn7
559589
559588
2026-10-19T09:23:23Z
Persino
2851
/* Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści */
559589
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{LinkPatrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści,a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight blang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
p8r4qcuor5lykbgoddd49x1o7x88wkd
559590
559589
2026-10-19T09:23:55Z
Persino
2851
/* Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści */
559590
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{LinkPatrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight blang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
38cyhsji1oihv98vkzy6o1olb9zmw69
559591
559590
2026-10-19T09:24:27Z
Persino
2851
/* Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści */
559591
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight blang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
6ktcy60j67i42jbo2xo3ws0akbtje9o
559592
559591
2026-10-19T09:25:13Z
Persino
2851
/* Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści */
559592
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
di4kjcm89q4iewwp0hfnme1sbykam15
559593
559592
2026-10-19T10:28:54Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559593
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
nlh0o69ec6p5mm9sio6qbq8kvdvaafv
559594
559593
2026-10-19T10:34:11Z
Persino
2851
/* Obsługa linków nieokładkowych (dozwolonych) artykułów książki */
559594
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _1 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 2 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _2 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 3 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _3 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 4 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _4 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 5 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _5 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 6 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _6 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
31tz54b7diwfeglkfte7s96jllja7ip
559595
559594
2026-10-19T10:38:36Z
Persino
2851
/* Znajdowanie pierwszego artykułu książki */
559595
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
i8es6vjp4307uzs9te18e8tkcfkqwlv
559596
559595
2026-10-19T10:50:45Z
Persino
2851
/* Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy */
559596
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
54qiv2oeqp1asx474ekvsg2by2gu5hy
559597
559596
2026-10-19T11:04:02Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559597
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 =
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _2 =
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _3 =
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
e586u2x7xw8pa4i0q2jfi2kunxk4r3b
559598
559597
2026-10-19T11:04:45Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559598
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 =
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 =
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 =
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
i2f5kxv03psjb97am4tyqz2py6rfwee
559599
559598
2026-10-19T11:09:46Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559599
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{Code|p.AnalizowanieSekcjowe}} {{LinkPatrz|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom VI}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{Code|p.AnalizowanieSekcjowe}} {{LinkPatrz|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom VI}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
8p3i9v917penylngvkz9cpck4nacn2a
559600
559599
2026-10-19T11:10:37Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559600
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{Code|p.AnalizowanieSekcjowe}} {{LinkPatrz|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{Code|p.AnalizowanieSekcjowe}} {{LinkPatrz|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
aupafjr5jnltgz9p75mzjmco0z26odi
559601
559600
2026-10-19T11:11:55Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559601
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{Code|p.AnalizowanieSekcjowe}} {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{Code|p.AnalizowanieSekcjowe}} {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
b2y9smhquv6k0n3i4a39yo3zhyoja6d
559602
559601
2026-10-19T11:12:39Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559602
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
auixss08yxi97e2ew104xsck3tolwjl
559603
559602
2026-10-19T11:24:48Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559603
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
Wywołujemy funkcję: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}, wyszukujące obiekty od: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, do: {{Code|liczba_start_rozdzial}} {{LinkPatrz|liczba_start_rozdzial}}, sprawdzając tekst pomiędzy od: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}, do najbliższego wyszukanego rozdziału, czy jest prawidłowy, to jest sprawdzane dzięki: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
; Końcowe obliczenia inicjujące podobne zmienne lokalne z tabeli{{dk}} {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}{{dk}}
Nadajemy wartości normalnym zmiennym o pewnej nazwie od wartości z tabeli o nazwach o takich samych kluczach, tzn. na podstawie:
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
Te zmienne mają jakieś sensowne wartości, jeśli pod warunkiem, nie zostały one wyzerowane lub nie mogły nastąpić takie operacje ze względu na wartość zmiennej: {{Code|czy_zeruj}} {{LinkPatrz|czy_zeruj}}.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
khd4ut9mp6c1lluqssb3tzlbufimdbm
559604
559603
2026-10-19T11:25:27Z
Persino
2851
/* Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści */
559604
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} {{Patrz|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
Wywołujemy funkcję: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}, wyszukujące obiekty od: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, do: {{Code|liczba_start_rozdzial}} {{LinkPatrz|liczba_start_rozdzial}}, sprawdzając tekst pomiędzy od: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}, do najbliższego wyszukanego rozdziału, czy jest prawidłowy, to jest sprawdzane dzięki: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
; Końcowe obliczenia inicjujące podobne zmienne lokalne z tabeli{{dk}} {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}{{dk}}
Nadajemy wartości normalnym zmiennym o pewnej nazwie od wartości z tabeli o nazwach o takich samych kluczach, tzn. na podstawie:
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
Te zmienne mają jakieś sensowne wartości, jeśli pod warunkiem, nie zostały one wyzerowane lub nie mogły nastąpić takie operacje ze względu na wartość zmiennej: {{Code|czy_zeruj}} {{LinkPatrz|czy_zeruj}}.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
ivcellkukic0ig5mtomq4b6zwud1m3k
559605
559604
2026-10-19T11:43:10Z
Persino
2851
/* Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów */
559605
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} {{Patrz|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
Wywołujemy funkcję: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}, wyszukujące obiekty od: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, do: {{Code|liczba_start_rozdzial}} {{LinkPatrz|liczba_start_rozdzial}}, sprawdzając tekst pomiędzy od: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}, do najbliższego wyszukanego rozdziału, czy jest prawidłowy, to jest sprawdzane dzięki: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja nadaje wartość zmiennym: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}}.
; Końcowe obliczenia inicjujące podobne zmienne lokalne z tabeli{{dk}} {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}{{dk}}
Nadajemy wartości normalnym zmiennym o pewnej nazwie od wartości z tabeli o nazwach o takich samych kluczach, tzn. na podstawie:
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
Te zmienne mają jakieś sensowne wartości, jeśli pod warunkiem, nie zostały one wyzerowane lub nie mogły nastąpić takie operacje ze względu na wartość zmiennej: {{Code|czy_zeruj}} {{LinkPatrz|czy_zeruj}}.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
31aiou4z4hq4l1suxybhc6vli2s0q4y
559606
559605
2026-10-19T11:55:05Z
Persino
2851
/* Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści */
559606
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
== {{Śródtytuł|p.AnalizaSpisuRzeczy}}{{Code|p.AnalizaSpisuRzeczy}} ==
Funkcja służy z zakodowanego i z przetworzonego tekstu artykułu danego spisu, wydzielić z niej właściwy fragment, który jest tym odpowiednim spisem treści.
Funkcja uwzględnia w swojej budowie, że on ma w sobie zawierać również szablony przypisów: jak: {{s|Przypisy}}, i licencji jak: {{s|Licencja}}, robi to za pomocą odpowiednich funkcji korekcji (korygowania) wydzielonego spisu.
=== Parametry funkcji ===
Przedstawimy tutaj fragment definicji tej funkcji, a także opis odnośnikowy jej parametrów.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.AnalizaSpisuRzeczy(tekst_rozwiniety_calego_artykulu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych)...end;
</syntaxhighlight>
Parametry funkcji:
{{OpisParametrów
| 1 = {{Code|tekst_rozwiniety_calego_artykulu}} | _1 = Jak w: {{LinkPatrz|tekst_rozwiniety_calego_artykulu|StronicowyParser/AnalizaSpisuRzeczy}}.
| 2 = Parametry z sekcji: {{LinkZobaczTeż|Parametry zakodowanego spisu|StronicowyParser/AnalizaSpisuRzeczy}}. | komórka2 = tak
}}
=== Parametry zwracane ===
* Funkcja zwraca wydzielony tekst spis treści z tekstu zakodowanego i przetworzonego artykułu (spisu książki - podręcznika).
<syntaxhighlight lang="lua">
--- Licencja ----
local licencja_koniec,szablon_licencja=p.KoniecStronyLicencja(tekst_rozwiniety_calego_artykulu,liczba_koniec,pelna_nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
if((licencja_koniec)and(licencja_koniec>=liczba_koniec))then
liczba_koniec=licencja_koniec;
end;
---- Wydzielenie właściwego spisu treści z całej treści zakodowanego artykułu spisu;
local tekst=mw.ustring.sub(tekst_rozwiniety_calego_artykulu,liczba_start,liczba_koniec);
---- Korygowanie danych wydzielonego spisu według powyższej metody, korekcja odbywa się po wszystkich możliwościach tabeli;
for _,tab_wzor in ipairs(stronicowyparser_obiekty_modul.tablica_nazw_wprowadzenia_tekstu_generalnego_spisu_rzeczy_woluminu_dodatkowe)do
---- Kolejne iteracje korekcji odpowiedniego spisu, kolejnymi krokami według poniższej funkcji;
tekst=p.KorygowanieTekstuSpisuRzeczy(tekst,tab_wzor,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,pelna_nazwa_spisu_tresci_szablonowa,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tab_nazwa_spisow_przekierowaniowych);
end;
---- Zwracanie wydzielonego i skorygowanego spisu treści;
return tekst;
</syntaxhighlight>
=== Wydzielanie właściwego spisu treści, liczenie punktów granicznych ===
Za pomocą tych dwóch liczb granicznych, punktu startowego i końcowego, będziemy wydzielać właściwy tekst spisu treści z całości zakodowanego spisu treści, ale najpierw te dwie liczby musimy wyznaczyć za pomocą pewnych ustalonych procedur. Będziemy to robić za pomocą funkcji w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}.
==== Punkt startowy ====
Będziemy tu znajdować punkt startowy, przed którym tekst zostanie ucięty w wyniku końcowym w wyniku zwracania wartości przez tę funkcję.
===== Znajdowanie pierwszego artykułu książki =====
Pierwszy kod szablonowy według bazy kodów znajdujemy według następującego źródła:
<syntaxhighlight lang="lua">
---- Według bazy kodów, to reprezentuje, to wyrażenie regularne, dowolny kod bazy modułu: Szablonowe;
local szablon_normy_kodowania_szablonu=szablonowe_modul.NormaWzoruKodowaniaTekstu();
---- Wyrażenie regularne wyszukiwania, względem warunków przechwytywania:
---- lista_szablon,
---- odstepy_poczatku_rozdzialu,
---- przerwa_szablon,
---- obiekt_szablon,
---- kod_szablon,
---- dalszy_tekst;
local wzor_szablonu_list="([%*:#;<>]*)([^%S\n]*)([^\n]-)[^%S\n]*[\'\"]*[^%S\n]*"..szablon_normy_kodowania_szablonu.."[^%S\n]*[\'\"]*[^%S\n]*([^\n]-)[^%S\n]*";
---- Uruchomienie nieskończonej pętli wyszukiwania, która wewnętrznie zostanie zakończona;
while(true)do
---- szukanie elementów, według wyrażenia regularnego powyższego, tzn. początku i końca jego wyszukiwania, powyższych elementów przechwyconych przez tę funkcję;
local liczba_start_szablon,liczba_koniec_szablon,lista_szablon,odstepy_poczatku_rozdzialu,przerwa_szablon,obiekt_szablon,kod_szablon,dalszy_tekst=p.SzukanieNaPodstawieWzoruElementuLinii(tekst_rozwiniety_calego_artykulu,wzor_szablonu_list,liczba_obiekt_koniec,nil,false);
</syntaxhighlight>
Szukamy kolejne linie, używając funkcji: {{LinkŚródtytuł|p.SzukanieNaPodstawieWzoruElementuLinii|StronicowyParser/AnalizaSpisuRzeczy/Tom I}}, mając wyrażenie regularne powyższe, szukamy, co najmniej pozycji list, a co najwyżej rozdziałów dodatnich, lub nawet zwykłej linii, oczywiście z jakimś kodem. Szukane elementy, numerując je odpowiednio, to są:
{{OpisParametrów
| 1 = {{Code|liczba_start_szablon}} {{Patrz|liczba_start_szablon}} | _1 = Początek linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 2 = {{Code|liczba_koniec_szablon}} {{Patrz|liczba_koniec_szablon}} | _2 = Koniec linii wyszukanej z obietem kodu kodowania, w tymm również elementu z linkiem, jeżeli tak jakąś istnieje.
| 3 = {{Code|lista_szablon}} {{Patrz|lista_szablon}} | _3 = Odpowiednie tą są znaki pozycji listy, lub nie ma ich wcale. Te znaki pozycji listy są: {{Code|<nowiki>[%*:#;<>]*</nowiki>}}. Może być ich liczba zero lub więcej.
| 4 = {{Code|odstepy_poczatku_rozdzialu}} {{Patrz|odstepy_poczatku_rozdzialu}} | _4 = Jest to ciąg odstępów {{Code|<nowiki>[^%S]*</nowiki>}} (czyli inaczej: {{Code|<nowiki>%s*</nowiki>}}) bez znaku nowej linii {{Code|\n}}.
| 5 = {{Code|przerwa_szablon}} {{Patrz|przerwa_szablon}} | _5 = Elementy te i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, gdzie mogą znajdować się tam elementy rozdziału dodatniego przy pustych wykrytych łańcuchach: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, to tam również mogą znajdować się znaki, typu: {{Code|<}} lub {{Code|>}}, oprócz tego.
| 6 = {{Code|obiekt_szablon}} {{Patrz|obiekt_szablon}} | _6 = Jest to typ obiektu, który znajdujemy w kodzie, akceptowalne rodzaje, to {{ZobaczTeż|akceptowalne kody}}: {{Code|LINKW}} - linki wewnętrzne, {{Code|LINKZ}} - linki zewnętrzne, i {{Code|SZABLON}} - kody szablonowe, w tym linki inteligentne i inne linki, a nieakceptowalnymi kodami są to różnego rodzaju nagłówki wraz z istniejącymi zawartościami, ale też {{Code|SZABLON}} - inne niż te linki, a może {{Code|ZNACZNIK}}.
| 7 = {{Code|kod_szablon}} {{Patrz|kod_szablon}} | _7 = Numer kodu o typie: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, który może być przetłumaczony na liczbę w wyniku transformacji przez funkcję: {{LzLua|tonumber}}, zamieniającą łańcuch znakowy na liczbę naturalną dodatnią.
| 8 = {{Code|dalszy_tekst}} {{Patrz|dalszy_tekst}} | _8 = Jest to dalszy kod, za pierwszym takim zauważalnym kodzie bazy kodów tekstu.
}}
====== Wyszukiwanie kolejnych możliwości linii z kodami szablonowymi bazy kodów, znając powyższe zmienne ======
Przy możliwych akceptowalnych kodach typu: {{LinkZobaczTeż|akceptowalne kody}}, będziemy znajdować kolejne możliwości:
* Pozycje akceptowalne przez funkcje listy:
** Pozycje dowolnej listy przy niepustym łańcuchu znakowym: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i pustym: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, co oznacza jego znaki, czyli to, że za nim bezpośrednio znajduje się kod bazy kodowania, np. linku, ale akceptowalnego elementu,
** Pozycje listy, gdzie: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, nie zaczyna się od dwukropka {{Code|:}},
** Dowolna lista dwukropkowa, czyli: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, zaczyna się na dwukropek, a: {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, to mogą znaki jeden z: {{Code|<}} i {{Code|>}},
* Początkowe znaki linii dalszego tekstu: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, tzn: nie jest: {{Code|>}}, gdy: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, są puste,
* Dowolny rozdział równaniowy dodatni, gdy zmienne: {{Code|lista_szablon}} {{LinkPatrz|lista_szablon}}, i {{Code|odstepy_poczatku_rozdzialu}} {{LinkPatrz|odstepy_poczatku_rozdzialu}}, są puste, a {{Code|przerwa_szablon}} {{LinkPatrz|przerwa_szablon}}, zaczyna się od równa się, a: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, kończy się też na to.
; Gdy nie znaleziono elementów według powyższych punktów, tzn. szukamy według{{dk}}
* Gdy linii nie można było przydzielić, do któryś z powyższych punktów, to badamy, czy: {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, i {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}} - przetłumaczony na numer, czy w nim ewentualnie da się znaleźć kody lnków, jeżeli one są szablonami, czy znacznikami, centrowania, lub sztucznymi nagłówkami, a nawet nagłówkami znacznikowymi,
* Szukamy w ich zawartości elementów, i tzn. bezpośrednio zmiennych kodowych linków {{ZobaczTeż|inne_kody}}: {{Code|szablon}}, {{Code|obiekt_szablon}} {{LinkPatrz|obiekt_szablon}}, {{Code|kod_szablon}} {{LinkPatrz|kod_szablon}}, i {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, przy pomocy funkcji: {{LinkŚródtytuł|p.SzukaniePierwszegoLinkuNapisuNiestandardowegoWprowadzeniaTekstu|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}.
* W ten sposób znaleźliśmy inne kody i dalszy jego tekst w postaci elementów podanych w: {{LinkZobaczTeż|inne_kody}}.
===== Gdy znaleziono taki link zwykły, wewnętrzny lub zewnętrzny, albo szablonowy inteligentny, bądź spisowy =====
; Nadawanie zmiennym wartości{{dk}}
Nadawane są wartości dwom zmiennym w postaci kodu zawartego:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec}} {{Patrz|liczba_obiekt_koniec}} | _1 = Tej zamiennej jest madawana wartość z: {{Code|liczba_koniec_szablon}} {{LinkPatrz|liczba_koniec_szablon}}:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec=liczba_koniec_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie od razu po znalezieniu oobiektu z linią dla danego kodu.
| 2 = {{Code|liczba_obiekt_start}} {{Patrz|liczba_obiekt_start}} | _2 = Tej zamiennej jest madawana wartość z: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}:
<syntaxhighlight lang="lua">
local liczba_obiekt_start=liczba_start_szablon;
</syntaxhighlight>
* Tej zmiennej nadajemy wartość w punkcie po znalezieniu oobiektu z linią dla danego kodu, ale jeszczze bardziej po stwierdzeniu, że nim jest: {{Code|LINKW}}, {{Code|LINKZ}} i {{Code|SZABLON}}.
}}
; Badanie tam zwartych linków{{dk}}
Po dojściu do instrukcji warunkowej,jeżeli znaleziono w kodzie w pewien sposób link: {{Code|LINKW}}, {{Code|LINKZ}} lub {{Code|SZABLON}} (inteligentny lub spisowy, ale szablonowy)
Gdy znaleziono taki link do artykułu: {{Code|LINKW}}, czy zewnętrzny: {{Code|LINKZ}}, a nawet inteligentny, bądź spisowy, ale szablonowy: {{Code|SZABLON}}, to funkcja sprawdza, jakie go typu linkiem on jest, robi to za pomocą funkcji: {{LinkŚródtytuł|p.SzukanieLinkuWeSzablonieOrazDalszymNapisie|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja zwraca parametry:
<syntaxhighlight lang="lua">
local tak,czy_element_spisu,numer_rodzaju_artykulu,czy_podrecznik,czy_okladka;
</syntaxhighlight>
Opis tych elementów wyjściowych:
{{OpisParametrów
| 1 = {{Code|tak}} | _1 = Czy znaleziono taki link szukany w funkcji wydzielania właściwego spisu treści, lub przyjmuje wartość odpowiadającą fałszywej.
| 2 = {{Code|czy_element_spisu}} | _2 = Czy to jest artykuł, czy strona w spisie treści, uważaną za niegłówną.
| 3 = {{Code|numer_rodzaju_artykulu}} | _3 = Numer typu artykułu linku spisu.
| 4 = {{Code|czy_podrecznik}} | _4 = Czy to jest artykuł podręcznika ksiązki, o właściwej nazwie.
| 5 = {{Code|czy_okladka}} | _5 = Czy to jest strona artykularna, ale nie artykuł, dozwolony (okładkowy nawet) książki (woluminu).
}}
Funkcja ta robi to przy pomocy obiektu {{Code|obiekt}} {{LinkPatrz|obiekt|StronicowyParser/AnalizaSpisuRzeczy}} i {{Code|kod}} {{LinkPatrz|kod|StronicowyParser/AnalizaSpisuRzeczy}}, do sprawdzania, czy to jest artykułem linkiem dopuszczalnym książki, a jeżeli on nie jest linkiem, to jest sprawdzane: {{Code|dalszy_tekst}} {{LinkPatrz|dalszy_tekst}}, czy w nim jednak to się znajduje, a jeśli już tu tak, to zwracany jest wynik z pierwszym parametrem prawdziwym, z dalszymi zmiennymi dotyczących stron, a jeśli nie znalazł tu tego, to tylko zrzuca pierwszy parametr odpowiadający wartości fałszywej.
; Policzone zmienne w tym punkcie przez funkcję na podstawie parametrów linkowych{{dk}}
{{OpisParametrów
| 1 = Funkcja liczy zmienną: {{Code|liczba_pierwszy_rozdzialowy_artykul}} {{Patrz|liczba_pierwszy_rozdzialowy_artykul}}, mówiącą, jaki jest pierwszy rozdziałowy artykuł, to może być artykuł linku wewnętrznego, ale też zewnętrznego. A właściwe i jest to jego pozycja początkowa, nie końcowa. | komórka1 = tak
| 2 = Generowana jest również zmienna: {{Code|liczba_nie_okladka_artykul}} {{Patrz|liczba_nie_okladka_artykul}} - pierwsza początkowa pozycja artykułu niebędącą artykułem okładką lub stroną niedozwolona. | komórka2 = tak
| 3 = Obliczana jest pozycja końcowa artykułu dozwolonego: {{Code|liczba_nie_okladka_artykul_koniec}} {{Patrz|liczba_nie_okladka_artykul_koniec}}. | komórka3 = tak
}}
W powyższych przypadkach, gdy nie znaleziono takiego artykułu, jako pierwszą taką pozycję, to te one przyjmują wartość nilową (nienadaną).
===== Obsługa linków nieokładkowych (dozwolonych) artykułów książki =====
Funkcja wchodzi do instrukcji warunkowej sprawdzającą jaki jest początek właściwego spisu treści, który jeśli owy znajdzie, to pętla szukania tego zostanie przerwana, oto ona:
<syntaxhighlight lang="lua">
if((czy_element_spisu)and(numer_rodzaju_artykulu==1)and(czy_podrecznik)and(not czy_okladka))then
</syntaxhighlight>
W przeciwnym wypadku jest pętla nieprzerywana, chyba, że skończą się dane, a ta instrukcja:
<syntaxhighlight lang="lua">
liczba_obiekt_koniec_poprz=((czy_element_spisu)and(numer_rodzaju_artykulu<=2)) and liczba_obiekt_koniec or liczba_obiekt_koniec_poprz;
</syntaxhighlight>
Opis parametru:
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_koniec_poprz}} {{Patrz|liczba_obiekt_koniec_poprz}} | _1 = Jest to poprzednia ostatnia pozycja artykułu z przestrzeni książkowej projektu polskiego {{NS|l=tak|w=tak|pk=d}}.
}}
====== Znajdowanie i nadawanie wartości, pewnym zmiennym,jako wartości początkowe liczenia pozycji początkowej (startowej) ======
Na samym początku są wyznaczane lub inicjowane zmienne:
; Liczone zmienne{{dk}}
{{OpisParametrów
| 1 = {{Code|liczba_obiekt_start_nowe}} {{Patrz|liczba_obiekt_start_nowe}} | _1 = Początek, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_start_nowe=liczba_nie_okladka_artykul or liczba_obiekt_start;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}.
| 2 = {{Code|liczba_obiekt_koniec_nowe}} {{Patrz|liczba_obiekt_koniec_nowe}} | _2 = Koniec, pozycja znakowa w tekście artykułu spisu, nieokładkowego artykułu:
<syntaxhighlight lang="lua">
local liczba_obiekt_koniec_nowe=liczba_nie_okladka_artykul_koniec or liczba_obiekt_koniec;
</syntaxhighlight>
Jeśli nie ma zmiennej: {{Code|liczba_nie_okladka_artykul_koniec}} {{LinkPatrz|liczba_nie_okladka_artykul}}, to ustalamy ją ten parametr w ramce za pomocą: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_koniec}}.
| 3 = {{Code|liczba_obiekt_start_nowe_temp}} {{Patrz|liczba_obiekt_start_nowe_temp}} | _3 = Jest to stara pozycja: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}.
| 4 = {{Code|czy_ten_rozdzial}} {{Patrz|czy_ten_rozdzial}} | _4 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
local czy_ten_rozdzial=true;
</syntaxhighlight>
| 5 = {{Code|czy_bez_naglowka}} {{Patrz|czy_bez_naglowka}}| _5 = Zmienna pomocnicza:
<syntaxhighlight lang="lua">
czy_bez_naglowka=nil;
</syntaxhighlight>
}}
====== Znajdowanie nagłówków spisu treści dla danego artykułu podręcznika ======
Znajdujemy nagłówek spisu treści w spisie artykułu, typu: '''Spis treści''', czy: '''SPIS RZECZY''', i na podstawie tego pewne zmienne przy pomocy: {{LinkŚródtytuł|p.WprowadzenieTekstuCentrowaneZnacznikowoSzablonowoLubDodatnie|StronicowyParser/AnalizaSpisuRzeczy/Tom IV}}, wyszukujący różnego rodzaju nagłówki dodatnie, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}}, dzięki podfunkcji jej pomocniczej: {{LinkŚródtytuł|p.ParsowanieNapisuWprowadzeniaTekstuSpisuStron|StronicowyParser/AnalizaSpisuRzeczy/Tom III}}, która sprawdza, czy napis wprowadzenia tekstu jest nagłówkiem spisu treści różnie znormowanym i napisanym.
Funkcja generuje zmienne:
<syntaxhighlight lang="lua">
local liczba_spis_tresci_start,liczba_spis_tresci_koniec,spis_naglowka_dodatni_start,spis_naglowka_dodatni_stare_start,poziom_naglowka_start;
</syntaxhighlight>
Wytłumaczenie zmiennych:
{{OpisParametrów
| 1 = {{Code|liczba_spis_tresci_start}} {{Patrz|liczba_spis_tresci_start}} | _1 = Pozycja początkowa napisu wprowadzenia tekstu rozdziału dodatniego.
| 2 = {{Code|liczba_spis_tresci_koniec}} {{Patrz|liczba_spis_tresci_koniec}} | _2 = Jak powyżej, tylko, że końcowa.
| 3 = {{Code|spis_naglowka_dodatni_start}} {{Patrz|spis_naglowka_dodatni_start}} | _3 = Nagłówek po policzeniu.
| 4 = {{Code|spis_naglowka_dodatni_stare_start}} {{Patrz|spis_naglowka_dodatni_stare_start}} | _4 = To samo, co powyżej, ale przed wyznaczeniem.
| 5 = {{Code|poziom_naglowka_start}} {{Patrz|poziom_naglowka_start}} | _5 = Poziom nagłówka dodatniego, może być o wartości {{Code|nil}}.
}}
====== Wyszukiwanie rozdziałów niespisowych przed artykułem lub nagłówkiem spisu treści ======
Wyszukujemy rozdział następny spełniający pewne warunki nad napisem wprowadzenia tekstu nagłówka spisu treści, za pomocą: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}. A jeżeli taki spis treści nie istnieje, to nad artykułem ostatnim wyszukanym w kolejnym obiegu pętli.
Jej zwracane parametry to:
<syntaxhighlight lang="lua">
local liczba_start_naglowek,liczba_koniec_naglowek,naglowek,poziom_naglowka;
</syntaxhighlight>
Te parametry sa
Opis parametrów, ten nagłówek nie musi być dodatni, może być ujemny, czy zerowy, tzn.: {{LinkZobaczTeż|typy rozdziałów|StronicowyParser/Rozdziały}} {{ZobaczTeż|p.SzukanieKolejnychSekcji}}:
{{OpisParametrów
| 1 = {{Code|liczba_start_naglowek}} {{Patrz|liczba_start_naglowek}} | _1 = Znak początku wyszukania nagłówka nie spisu treści.
| 2 = {{Code|liczba_koniec_naglowek}} {{Patrz|liczba_koniec_naglowek}} | _2 = Znak końca wyszukania tego powyżej.
| 3 = {{Code|poziom_naglowka}} {{Patrz|poziom_naglowka}} | _3 = Poziom tego nagłówka.
}}
; Przed uruchomieniem tej funkcji wyszukiwania wielu nagłówków{{dk}}
Wtedy są zbierane są dane w tabeli {{Patrz|tab_zmienne}}:
<syntaxhighlight lang="lua">
local tab_zmienne={
liczba_nie_okladka_artykul=liczba_nie_okladka_artykul,
liczba_pierwszy_rozdzialowy_artykul=liczba_pierwszy_rozdzialowy_artykul,
czy_ten_rozdzial=czy_ten_rozdzial,
};
</syntaxhighlight>
A także są inicjowane zmienne:
<syntaxhighlight lang="lua">
local czy_zeruj=(not liczba_spis_tresci_start)and true or false;
liczba_obiekt_start_nowe=liczba_spis_tresci_start or liczba_obiekt_start_nowe;
</syntaxhighlight>
Opis zmiennych inicjowanych:
{{OpisParametrów
| 1 = {{Code|czy_zeruj}} {{Patrz|czy_zeruj}} | _1 = Mówi, czy zmienne w tabeli: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, mają być zerowane do wartości nilowej, tzn. {{Code|nil}}, jeśli zajdzie taka potrzeba.
| 2 = {{Code|liczba_obiekt_start_nowe}} | _2 = Jak w: {{LinkPatrz|liczba_obiekt_start_nowe}}, tylko zaktualizowana o nagłówek istniejący spisu treści, a jeśli go nie ma, to według kodu przyjmuje wartość poprzednią.
}}
; Po uruchomieniu tej funkcji znajdowania wielu nagłówków{{dk}}
Na podstawie parametrów: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}} inicjowane są wtedy zmienne: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, według kodu (podobnie jak w tym linku referencji odnośnika):
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
====== Powtórzenie wyszukiwania w przypadku jego nieprawidłowego znalezienia tych rozdziałów ======
; Nadawanie zmiennym wartości ze strony innych{{dk}}
Gdy zmienna: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, przyjmuje wartość odpowiadającą fałszywej, wtedy wchodzimy do instrukcji warunkowej, a następnie dalej do innej przy sprawdzeniu, czy: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, jest nierówne tej: {{Code|liczba_obiekt_start_nowe_temp}} {{LinkPatrz|liczba_obiekt_start_nowe_temp}}, a jeśli tak to wchodzimy do instrukcji warunkowej, która to poprzednia, jak i ta, nie ma instrukcji: '''else'''.
Po wejściu do instrukcji warunkowej inicjujemy pewne zmienne innymi:
{{OpisParametrów
| 1 = {{Code|liczba_start_rozdzial}} {{Patrz|liczba_start_rozdzial}} | _1 = Nadawanie wartości końca wyszukiwania od tyłu:
<syntaxhighlight lang="lua">
liczba_start_rozdzial=liczba_obiekt_start_nowe_temp;
</syntaxhighlight>
| 2 = {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}} | _2 = Nadawanie wartości początku wyszukiwania przy liczeniu funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
liczba_obiekt_start_nowe=liczba_obiekt_start;
</syntaxhighlight>
| 3 = {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}} | _3 = Nadawanie wartości, czy ma zerować zmienne w funkcji zwracanej przez: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
<syntaxhighlight lang="lua">
czy_ten_rozdzial=true;
</syntaxhighlight>
Tą zmienną inicjujemy podzmienną tabelowa: {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}, przy pomocy: {{Code|czy_ten_rozdzial}} {{LinkPatrz|czy_ten_rozdzial}}, według:
<syntaxhighlight lang="lua">
tab_zmienne.czy_ten_rozdzial=czy_ten_rozdzial;
</syntaxhighlight>
}}
; Nadawanie zmiennych rozdziałowych ze strony jednej tylko funkcji wyszukujących wiele rozdziałów w jednej funkcji przy wykorzystywaniu innych{{dk}}
Wywołujemy funkcję: {{LinkŚródtytuł|p.SzukanieKolejnychSekcji|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}, wyszukujące obiekty od: {{Code|liczba_obiekt_start}} {{LinkPatrz|liczba_obiekt_start}}, do: {{Code|liczba_start_rozdzial}} {{LinkPatrz|liczba_start_rozdzial}}, sprawdzając tekst pomiędzy od: {{Code|liczba_obiekt_start_nowe}} {{LinkPatrz|liczba_obiekt_start_nowe}}, do najbliższego wyszukanego rozdziału, czy jest prawidłowy, to jest sprawdzane dzięki: {{LinkŚródtytuł|p.AnalizowanieSekcjowe|StronicowyParser/AnalizaSpisuRzeczy/Tom V}}.
Ta funkcja nadaje wartość zmiennym: {{LinkZobaczTeż|p.SzukanieKolejnychSekcji}}.
; Końcowe obliczenia inicjujące podobne zmienne lokalne z tabeli{{dk}} {{Code|tab_zmienne}} {{LinkPatrz|tab_zmienne}}{{dk}}
Nadajemy wartości normalnym zmiennym o pewnej nazwie od wartości z tabeli o nazwach o takich samych kluczach, tzn. na podstawie:
<syntaxhighlight lang="lua">
liczba_nie_okladka_artykul,liczba_pierwszy_rozdzialowy_artykul,czy_ten_rozdzial=tab_zmienne.liczba_nie_okladka_artykul,tab_zmienne.liczba_pierwszy_rozdzialowy_artykul,tab_zmienne.czy_ten_rozdzial;
</syntaxhighlight>
Te zmienne mają jakieś sensowne wartości, jeśli pod warunkiem, nie zostały one wyzerowane lub nie mogły nastąpić takie operacje ze względu na wartość zmiennej: {{Code|czy_zeruj}} {{LinkPatrz|czy_zeruj}}.
====== Wybieranie pomiędzy znalezionym rozdziałem, a spisem treści ======
Na podstawie wartości: {{Code|liczba_spis_tresci_start}} {{LinkPatrz|liczba_spis_tresci_start}}, oraz zmiennych poziomu: {{Code|poziom_naglowka_start}} {{LinkPatrz|poziom_naglowka_start}}, i {{Code|poziom_naglowka}} {{LinkPatrz|poziom_naglowka}}, jest wybierana w ten sposób zmienna: {{Code|liczba_spis_tresci_start}} {{LinkPatrz|liczba_spis_tresci_start}}, lub {{Code|}} {{LinkPatrz|liczba_start_naglowek}}. Najpierw pierwszeństwo ma ta pierwsza, a później ta druga, jeśli by wybrano tą nilową zmienną pierwszą.
====== Sprawdzanie aktualnej pozycji linkowej ======
====== Zebrane dane o początku ustalenia właściwego spisu ======
==== Punkt końcowy ====
===== Punkty wyszukiwania końca spisu właściwego ze spisu treści podręcznika =====
===== Znajdowanie napisów wprowadzenia testu wraz z linkami artykułów =====
==== Wydzielanie spisu właściwego na podstawie punktu startowego i końcowego właściwego spisu treści z całego artykułu danego spisu książki ====
===== Znajdowanie szablonu licencji i pierwsza korekcja końca spisu =====
===== Wydzielanie właściwego spisu treści z artykułu zawartości spisu =====
====== Redagowania testu zawartości spisu o nazwie: {{Tt|Bibliografia}} i {{Tt|Literatura}} - zmienianie i usuwanie szablonów i pewnych linków ======
==== Co uzyskaliśmy w wyniku działania funkcji wydzielania konkretnego spisu treści z całego artykułu spisu ====
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
reiyosi4fxx5i1tet393rql35v4ix0c
Szablon:OpisParametrów/opis
10
64148
559501
559492
2026-10-18T11:59:36Z
Persino
2851
559501
wikitext
text/x-wiki
{{Podstrona dokumentacji}}
{{Lua|Ramka|GridTabela}}
{{Wysokie ryzyko|częste użycie}}
{{Wysokie ryzyko|skomplikowany}}
<!-- DODAWAJ KATEGORIE NA DOLE STRONY -->
== Użycie ==
== Opis parametrów ==
== Przykład ==
; Przykład
{{Pre|
{{s|OpisParametrów
| 1 {{=}} Adres kodowy projektu siostrzanego lub lokalnego polskiego: {{s|Code|Wikibooks}}: | nagłówek1 {{=}} tak
| 2 {{=}} {{s|Code|klucz projektu}} | _2 {{=}} Kody języka i projektu podana w jednej zmiennej oddzielone od siebie dwukropkami, może być dowolna liczba tych kodów.
| 3 {{=}} {{s|Code|kod projektu}} | _3 {{=}} Kod projektu danego wiki.
| 4 {{=}} {{s|Code|kod języka}} | _4 {{=}} Kod języka danego wiki.
| 5 {{=}} {{s|Code|po polsku}} | _5 {{=}} Tłumaczy nazwę kanoniczną danej przestrzeni nazw na jej wersję polską, tzn. na język polski, a jeżeli jej wersja polska nie istnieje, to pisze jej wersję w języku angielskim, czyli w postaci nazwy kanonicznej.
| 6 {{=}} {{s|Code|awaryjnie}} | _6 {{=}} Za pomocą projektu {{s|NS|l{{=}}tak|k{{=}}d}} tłumaczy daną nazwę przestrzeni nazw w jednym języku (jej nazwę kanoniczną jakieś przestrzeni nazw) na drugi, gdy wartość jest pusta, to tłumaczy na jej nazwę kanoniczną, jeżeli, przy tym parametrze lub bez, jej wersja w innym danym języku nie istnieje zdefiniowana w module {{s|m|Nazwy/przestrzenie}}.
| 7 {{=}} Parametry: {{s|Code|nazwij projektem}} i {{s|Code|nazwij dyskusją projektu}}, używa się tak samo jak dla funkcji: {{s|m|Nazwy|Np}}, tylko z różnicą, że w funkcji: {{s|m|Nazwy|NpDane}}, musimy skorzystać koniecznie z parametru: {{s|Code|kanoniczna}}, z wartością niepustą, a wtedy wydrukowane wartości są w postaci wersji kanonicznej w języku angielskim, tak jak z ostatnim szablonem. | nagłówek7 {{=}} tak
}}
}}
; Wynik
{{OpisParametrów
| 1 = Adres kodowy projektu siostrzanego lub lokalnego polskiego: {{Code|Wikibooks}}: | nagłówek1 = tak
| 2 = {{Code|klucz projektu}} | _2 = Kody języka i projektu podana w jednej zmiennej oddzielone od siebie dwukropkami, może być dowolna liczba tych kodów.
| 3 = {{Code|kod projektu}} | _3 = Kod projektu danego wiki.
| 4 = {{Code|kod języka}} | _4 = Kod języka danego wiki.
| 5 = {{Code|po polsku}} | _5 = Tłumaczy nazwę kanoniczną danej przestrzeni nazw na jej wersję polską, tzn. na język polski, a jeżeli jej wersja polska nie istnieje, to pisze jej wersję w języku angielskim, czyli w postaci nazwy kanonicznej.
| 6 = {{Code|awaryjnie}} | _6 = Za pomocą projektu {{NS|l=tak|k=d}} tłumaczy daną nazwę przestrzeni nazw w jednym języku (jej nazwę kanoniczną jakieś przestrzeni nazw) na drugi, gdy wartość jest pusta, to tłumaczy na jej nazwę kanoniczną, jeżeli, przy tym parametrze lub bez, jej wersja w innym danym języku nie istnieje zdefiniowana w module {{m|Nazwy/przestrzenie}}.
| 7 = Parametry: {{Code|nazwij projektem}} i {{Code|nazwij dyskusją projektu}}, używa się tak samo jak dla funkcji: {{m|Nazwy|Np}}, tylko z różnicą, że w funkcji: {{m|Nazwy|NpDane}}, musimy skorzystać koniecznie z parametru: {{Code|kanoniczna}}, z wartością niepustą, a wtedy wydrukowane wartości są w postaci wersji kanonicznej w języku angielskim, tak jak z ostatnim szablonem. | nagłówek7 = tak
}}
== Błędy ==
Błędy należy zgłaszać na stronie {{Kwestie techniczne}}.
== Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) ==
<templatedata>
{
"params": {
}
}
</templatedata>
== Zobacz też ==
{{BrClear}}
<includeonly><!--
++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII -->
{{Kategorie
| Szablony formułujące tabele
| Szablony specjalne
| Szablony opisów
}}
</includeonly>
pw469rtw9akg3y3y3g335aj2ddn86dk
559503
559501
2026-10-18T12:00:22Z
Persino
2851
559503
wikitext
text/x-wiki
{{Podstrona dokumentacji}}
{{Lua|GridTabela|Ramka}}
{{Wysokie ryzyko|częste użycie}}
{{Wysokie ryzyko|skomplikowany}}
<!-- DODAWAJ KATEGORIE NA DOLE STRONY -->
== Użycie ==
== Opis parametrów ==
== Przykład ==
; Przykład
{{Pre|
{{s|OpisParametrów
| 1 {{=}} Adres kodowy projektu siostrzanego lub lokalnego polskiego: {{s|Code|Wikibooks}}: | nagłówek1 {{=}} tak
| 2 {{=}} {{s|Code|klucz projektu}} | _2 {{=}} Kody języka i projektu podana w jednej zmiennej oddzielone od siebie dwukropkami, może być dowolna liczba tych kodów.
| 3 {{=}} {{s|Code|kod projektu}} | _3 {{=}} Kod projektu danego wiki.
| 4 {{=}} {{s|Code|kod języka}} | _4 {{=}} Kod języka danego wiki.
| 5 {{=}} {{s|Code|po polsku}} | _5 {{=}} Tłumaczy nazwę kanoniczną danej przestrzeni nazw na jej wersję polską, tzn. na język polski, a jeżeli jej wersja polska nie istnieje, to pisze jej wersję w języku angielskim, czyli w postaci nazwy kanonicznej.
| 6 {{=}} {{s|Code|awaryjnie}} | _6 {{=}} Za pomocą projektu {{s|NS|l{{=}}tak|k{{=}}d}} tłumaczy daną nazwę przestrzeni nazw w jednym języku (jej nazwę kanoniczną jakieś przestrzeni nazw) na drugi, gdy wartość jest pusta, to tłumaczy na jej nazwę kanoniczną, jeżeli, przy tym parametrze lub bez, jej wersja w innym danym języku nie istnieje zdefiniowana w module {{s|m|Nazwy/przestrzenie}}.
| 7 {{=}} Parametry: {{s|Code|nazwij projektem}} i {{s|Code|nazwij dyskusją projektu}}, używa się tak samo jak dla funkcji: {{s|m|Nazwy|Np}}, tylko z różnicą, że w funkcji: {{s|m|Nazwy|NpDane}}, musimy skorzystać koniecznie z parametru: {{s|Code|kanoniczna}}, z wartością niepustą, a wtedy wydrukowane wartości są w postaci wersji kanonicznej w języku angielskim, tak jak z ostatnim szablonem. | nagłówek7 {{=}} tak
}}
}}
; Wynik
{{OpisParametrów
| 1 = Adres kodowy projektu siostrzanego lub lokalnego polskiego: {{Code|Wikibooks}}: | nagłówek1 = tak
| 2 = {{Code|klucz projektu}} | _2 = Kody języka i projektu podana w jednej zmiennej oddzielone od siebie dwukropkami, może być dowolna liczba tych kodów.
| 3 = {{Code|kod projektu}} | _3 = Kod projektu danego wiki.
| 4 = {{Code|kod języka}} | _4 = Kod języka danego wiki.
| 5 = {{Code|po polsku}} | _5 = Tłumaczy nazwę kanoniczną danej przestrzeni nazw na jej wersję polską, tzn. na język polski, a jeżeli jej wersja polska nie istnieje, to pisze jej wersję w języku angielskim, czyli w postaci nazwy kanonicznej.
| 6 = {{Code|awaryjnie}} | _6 = Za pomocą projektu {{NS|l=tak|k=d}} tłumaczy daną nazwę przestrzeni nazw w jednym języku (jej nazwę kanoniczną jakieś przestrzeni nazw) na drugi, gdy wartość jest pusta, to tłumaczy na jej nazwę kanoniczną, jeżeli, przy tym parametrze lub bez, jej wersja w innym danym języku nie istnieje zdefiniowana w module {{m|Nazwy/przestrzenie}}.
| 7 = Parametry: {{Code|nazwij projektem}} i {{Code|nazwij dyskusją projektu}}, używa się tak samo jak dla funkcji: {{m|Nazwy|Np}}, tylko z różnicą, że w funkcji: {{m|Nazwy|NpDane}}, musimy skorzystać koniecznie z parametru: {{Code|kanoniczna}}, z wartością niepustą, a wtedy wydrukowane wartości są w postaci wersji kanonicznej w języku angielskim, tak jak z ostatnim szablonem. | nagłówek7 = tak
}}
== Błędy ==
Błędy należy zgłaszać na stronie {{Kwestie techniczne}}.
== Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) ==
<templatedata>
{
"params": {
}
}
</templatedata>
== Zobacz też ==
{{BrClear}}
<includeonly><!--
++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII -->
{{Kategorie
| Szablony formułujące tabele
| Szablony specjalne
| Szablony opisów
}}
</includeonly>
m6kgmlxf8zl0qx7ibpf73y5p7p85t57
Dyskusja:Przyroda
1
64421
559512
2026-10-18T12:47:02Z
YxiCode
34510
/* Potrzebna przebudowa */ nowa sekcja
559512
wikitext
text/x-wiki
== Potrzebna przebudowa ==
Moim zdaniem ten podręcznik zbyt skrótowo omawia poszczególne zagadnienia i ma styl trochę jak vademecum, tylko że dla 4-klasisty. Między innymi przejrzałem temat [[Przyroda/Opady i osady atmosferyczne – przykłady i stan skupienia wody]]. Jako porównanie przeciwstawiłem artykuł książce wydawnictwa MAC [https://epublikacje.mac.pl/P/P_PR4/przyroda-podr/mobile/index.html#p=44].
Część o stanach skupienia nie ma przykładów ich obecności w życiu codziennym/praktyce, co więcej nie są opisane nazwy przemian: topnięcie, krzepnięcie, parowanie. Nie ma np. schematu aby 10-letni uczeń mógł zapamiętać te pojęcia w sposób taki, że nie są one od siebie rozdzielone. Należy mocniej podkreślić, że jest to ta sama substancja (bo będzie to na chemii w klasie VII, a warto postawić już fundament w takim wieku). Myślnik o stanie ciekłym (woda) jest jak masło maślane, lepiej by było napisać: w rzece, w jeziorze, w potoku, w strumieniu; czy inne podobne określenia.
Tekst o opadach atmosferycznych można co najwyżej nazwać trochę rozwiniętym słownikiem. Przykłady opadów nie zaopatrzono odpowiadającym obrazkiem. Wiemy, że opady to woda spadająca z chmur - ale co to jest chmura? Korzystając tylko i wyłącznie z wiedzy z poprzedniej części, można to wyjaśnić. Warto by było przy okazji omówić zachmurzenie i mgłę. Uczeń może zadać pytanie: "co to jest mgła?" a tekst nie odpowie. Nie opisano żadnych skutków opadów. Grad może niszczyć dachy, pojazdy, co stanowi zagrożenie; tutaj o tym nie ma nawet słowa.
Zbyt skrótowo omówione są osady i nie mają również obrazków. Nie ma żadnej wzmianki o gołoledzi ani jej znaczenia w bezpieczeństwie uczestników ruchu drogowego. Ostatnie zdanie jest sensowne i warto jest je zatrzymać.
Podsumowanie w tabeli można by było umieścić na końcu.
Różne jednostki tematyczne warto by było po prostu scalić lub przenieść do innego tematu. '''Deszczomierz''' ''bardzo dobrze'' odnalazł by się tutaj jako nowe pojęcie i przyrząd, lecz jest on w temacie wraz z innymi narzędziami. Burza oraz tęcza są związane z chmurami i opadami atmosferycznymi, oraz stanami skupienia wody.
Warto by było również rozszerzyć tematy o ciekawostki lub linki do innych stron dla uzupełnienia wiedzy. Moim zdaniem cały podręcznik potrzebuje gruntownej przebudowy. Wymagane są nowe schematy, akapity, treści, oraz przebudowa jednostek tematycznych i całego spisu treści. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 14:47, 18 paź 2026 (CEST)
8dclmp4sy6um8qrilfu0limrmbgxdut
559513
559512
2026-10-18T12:49:27Z
YxiCode
34510
/* Potrzebna przebudowa */
559513
wikitext
text/x-wiki
== Potrzebna przebudowa ==
Moim zdaniem ten podręcznik zbyt skrótowo omawia poszczególne zagadnienia i ma styl trochę jak vademecum, tylko że dla 4-klasisty. Między innymi przejrzałem temat [[Przyroda/Opady i osady atmosferyczne – przykłady i stan skupienia wody]]. Jako porównanie przeciwstawiłem artykuł książce wydawnictwa MAC [https://epublikacje.mac.pl/P/P_PR4/przyroda-podr/mobile/index.html#p=44].
Część o stanach skupienia nie ma przykładów ich obecności w życiu codziennym/praktyce, co więcej nie są opisane nazwy przemian: topnięcie, krzepnięcie, parowanie. Nie ma np. schematu aby 10-letni uczeń mógł zapamiętać te pojęcia w sposób taki, że nie są one od siebie rozdzielone. Należy mocniej podkreślić, że jest to ta sama substancja (bo będzie to na chemii w klasie VII, a warto postawić już fundament w takim wieku). Myślnik o stanie ciekłym (woda) jest jak masło maślane, lepiej by było napisać: w rzece, w jeziorze, w potoku, w strumieniu; czy inne podobne określenia.
Tekst o opadach atmosferycznych można co najwyżej nazwać trochę rozwiniętym słownikiem. Przykłady opadów nie zaopatrzono odpowiadającym obrazkiem. Wiemy, że opady to woda spadająca z chmur - ale co to jest chmura? Korzystając tylko i wyłącznie z wiedzy z poprzedniej części, można to wyjaśnić. Warto by było przy okazji omówić zachmurzenie i mgłę. Uczeń może zadać pytanie: "co to jest mgła?" a tekst nie odpowie. Nie opisano żadnych skutków opadów. Grad może niszczyć dachy, pojazdy, co stanowi zagrożenie; tutaj o tym nie ma nawet słowa.
Zbyt skrótowo omówione są osady i nie mają również obrazków. Nie ma żadnej wzmianki o gołoledzi ani jej znaczenia w bezpieczeństwie uczestników ruchu drogowego. Ostatnie zdanie jest sensowne i warto jest je zatrzymać.
Podsumowanie w tabeli można by było umieścić na końcu.
Różne jednostki tematyczne warto by było po prostu scalić lub przenieść do innego tematu. '''Deszczomierz''' ''bardzo dobrze'' odnalazł by się tutaj jako nowe pojęcie i przyrząd, lecz jest on w temacie wraz z innymi narzędziami. Burza oraz tęcza są związane z chmurami i opadami atmosferycznymi, oraz stanami skupienia wody.
Również zaleciłbym rozszerzyć tematy o ciekawostki lub linki do innych stron dla uzupełnienia wiedzy. Moim zdaniem cały podręcznik potrzebuje gruntownej przebudowy. Wymagane są nowe schematy, akapity, treści, oraz przebudowa jednostek tematycznych i całego spisu treści. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 14:47, 18 paź 2026 (CEST)
5ctalyuga0eff0g5p3onsdxhtnbuhud
559520
559513
2026-10-18T14:21:00Z
YxiCode
34510
/* Potrzebna przebudowa */ Odpowiedź
559520
wikitext
text/x-wiki
== Potrzebna przebudowa ==
Moim zdaniem ten podręcznik zbyt skrótowo omawia poszczególne zagadnienia i ma styl trochę jak vademecum, tylko że dla 4-klasisty. Między innymi przejrzałem temat [[Przyroda/Opady i osady atmosferyczne – przykłady i stan skupienia wody]]. Jako porównanie przeciwstawiłem artykuł książce wydawnictwa MAC [https://epublikacje.mac.pl/P/P_PR4/przyroda-podr/mobile/index.html#p=44].
Część o stanach skupienia nie ma przykładów ich obecności w życiu codziennym/praktyce, co więcej nie są opisane nazwy przemian: topnięcie, krzepnięcie, parowanie. Nie ma np. schematu aby 10-letni uczeń mógł zapamiętać te pojęcia w sposób taki, że nie są one od siebie rozdzielone. Należy mocniej podkreślić, że jest to ta sama substancja (bo będzie to na chemii w klasie VII, a warto postawić już fundament w takim wieku). Myślnik o stanie ciekłym (woda) jest jak masło maślane, lepiej by było napisać: w rzece, w jeziorze, w potoku, w strumieniu; czy inne podobne określenia.
Tekst o opadach atmosferycznych można co najwyżej nazwać trochę rozwiniętym słownikiem. Przykłady opadów nie zaopatrzono odpowiadającym obrazkiem. Wiemy, że opady to woda spadająca z chmur - ale co to jest chmura? Korzystając tylko i wyłącznie z wiedzy z poprzedniej części, można to wyjaśnić. Warto by było przy okazji omówić zachmurzenie i mgłę. Uczeń może zadać pytanie: "co to jest mgła?" a tekst nie odpowie. Nie opisano żadnych skutków opadów. Grad może niszczyć dachy, pojazdy, co stanowi zagrożenie; tutaj o tym nie ma nawet słowa.
Zbyt skrótowo omówione są osady i nie mają również obrazków. Nie ma żadnej wzmianki o gołoledzi ani jej znaczenia w bezpieczeństwie uczestników ruchu drogowego. Ostatnie zdanie jest sensowne i warto jest je zatrzymać.
Podsumowanie w tabeli można by było umieścić na końcu.
Różne jednostki tematyczne warto by było po prostu scalić lub przenieść do innego tematu. '''Deszczomierz''' ''bardzo dobrze'' odnalazł by się tutaj jako nowe pojęcie i przyrząd, lecz jest on w temacie wraz z innymi narzędziami. Burza oraz tęcza są związane z chmurami i opadami atmosferycznymi, oraz stanami skupienia wody.
Również zaleciłbym rozszerzyć tematy o ciekawostki lub linki do innych stron dla uzupełnienia wiedzy. Moim zdaniem cały podręcznik potrzebuje gruntownej przebudowy. Wymagane są nowe schematy, akapity, treści, oraz przebudowa jednostek tematycznych i całego spisu treści. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 14:47, 18 paź 2026 (CEST)
:PS W ramach reformy 2026 pt. "Kompas jutra" zalecałbym rozszerzenie zakresu książki na również klasy IV-VI. [[Wikipedysta:YxiCode|YxiCode]] ([[Dyskusja wikipedysty:YxiCode|dyskusja]]) 16:21, 18 paź 2026 (CEST)
92a6852mai2cqirtx0n9bjywjwege61
Kategoria:User en-5
14
64422
559517
2026-10-18T13:06:26Z
YxiCode
34510
Utworzono nową stronę „{{Multiuserbox|en-5}}”
559517
wikitext
text/x-wiki
{{Multiuserbox|en-5}}
o4h6v0e5nkbj36ayl0miyhrin4o322w
Wikipedysta:YxiCode/Brudnopis/Stronaglownapodreczniki
2
64423
559538
2026-10-18T17:06:09Z
YxiCode
34510
Utworzono nową stronę „<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude> Współtwórz wolne podręczniki! Poznaj {{lr|Czym jest Wikibooks|projekt Wikibooks}}; dowiedz się, {{lr|Dlaczego używać wolnych podręczników|dlaczego warto z niego korzystać}} i sprawdź {{lr|Dlaczego warto rozpocząć współpracę|jak możesz pomóc}}. Zapraszamy do przeglądania naszych książek i materiałów edukacyjnych. * {{lr|Księgozbiór}} - główny katalog podręcznikó…”
559538
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude>
Współtwórz wolne podręczniki! Poznaj {{lr|Czym jest Wikibooks|projekt Wikibooks}}; dowiedz się, {{lr|Dlaczego używać wolnych podręczników|dlaczego warto z niego korzystać}} i sprawdź {{lr|Dlaczego warto rozpocząć współpracę|jak możesz pomóc}}.
Zapraszamy do przeglądania naszych książek i materiałów edukacyjnych.
* {{lr|Księgozbiór}} - główny katalog podręczników:
** {{lru|Księgozbiór/Alfabetycznie}} - układ alfabetyczny,
** {{lru|Księgozbiór/Poziom}} - według poziomu nauczania,
** {{lru|Księgozbiór/Status}} - według statusu publikacji,
** {{lru|Księgozbiór/Tematycznie}} - według tematyki,
** {{lru|Księgozbiór/Wybrane}} - książki polecane, kompletne i dziecięce.
{{Hr}}
* {{lk|Kategorie tematyczne|Kategorie tematyczne}} – przegląd książek według zagadnień.
* {{lk|Spis alfabetyczny}} – alfabetyczny spis stron w {{NS|pk=mj|l=tak|w=tak}}.
* {{lk|Kolekcje}} – zestawy książek przygotowane do wydruku.
* {{lk|Strony zbiorcze podręczników przystosowane do czytania lub druku}} – wersje do czytania i drukowania.
* {{lk|Strony podręcznikowe na licencji}} – zestawienie materiałów według licencji.
'''Pomoc techniczna'''
* {{lg|MediaWiki}}; tworzenie książek i korzystanie z MediaWiki.
* {{lg|Unicode}}; zapis znaków i kodowanie tekstu.
* {{lg|HTML}} i {{lg|CSS}}; podstawy tworzenia i formatowania stron internetowych.
<noinclude><!--
-->{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
--></noinclude>
obzd9me1qjlpb96000ihmhlkeojnzku
559540
559538
2026-10-18T17:09:35Z
YxiCode
34510
559540
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude>
Współtwórz wolne podręczniki! Poznaj {{lr|Czym jest Wikibooks|projekt Wikibooks}}; dowiedz się, {{lr|Dlaczego używać wolnych podręczników|dlaczego warto z niego korzystać}} i sprawdź {{lr|Dlaczego warto rozpocząć współpracę|jak możesz pomóc}}.
Zapraszamy do przeglądania naszych książek i materiałów edukacyjnych.
* {{lr|Księgozbiór}} - główny katalog podręczników:
** {{lru|Księgozbiór/Alfabetycznie}} - układ alfabetyczny,
** {{lru|Księgozbiór/Poziom}} - według poziomu nauczania,
** {{lru|Księgozbiór/Status}} - według statusu publikacji,
** {{lru|Księgozbiór/Tematycznie}} - według tematyki,
** {{lru|Księgozbiór/Wybrane}} - książki polecane, kompletne i dziecięce.
{{Hr}}
* {{lk|Kategorie tematyczne|Kategorie tematyczne}} - przegląd książek według zagadnień.
* {{lk|Spis alfabetyczny}} - alfabetyczny spis stron w {{NS|pk=mj|l=tak|w=tak}}.
* {{lk|Kolekcje}} - zestawy książek przygotowane do wydruku.
* {{lk|Strony zbiorcze podręczników przystosowane do czytania lub druku|Wersje do czytania i druku}} - wersje do czytania i drukowania.
* {{lk|Strony podręcznikowe na licencji}} - zestawienie materiałów według licencji.
'''Pomoc techniczna'''
* {{lg|MediaWiki}}; tworzenie książek i korzystanie z MediaWiki.
* {{lg|Unicode}}; zapis znaków i kodowanie tekstu.
* {{lg|HTML}} i {{lg|CSS}}; podstawy tworzenia i formatowania stron internetowych.
<noinclude><!--
-->{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
--></noinclude>
mhc983hc97dvisqq1vp11v9plpifovi
559541
559540
2026-10-18T17:12:18Z
YxiCode
34510
559541
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude>
Współtwórz wolne podręczniki! Poznaj {{lr|Czym jest Wikibooks|projekt Wikibooks}}; dowiedz się, {{lr|Dlaczego używać wolnych podręczników|dlaczego warto z niego korzystać}} i sprawdź {{lr|Dlaczego warto rozpocząć współpracę|jak możesz pomóc}}.
Zapraszamy do przeglądania naszych książek i materiałów edukacyjnych.
* {{lr|Księgozbiór}} - główny katalog podręczników:
** {{lru|Księgozbiór/Alfabetycznie}} - układ alfabetyczny,
** {{lru|Księgozbiór/Poziom}} - według poziomu nauczania,
** {{lru|Księgozbiór/Status}} - według statusu publikacji,
** {{lru|Księgozbiór/Tematycznie}} - według tematyki,
** {{lru|Księgozbiór/Wybrane}} - książki polecane, kompletne i dziecięce.
{{Hr}}
* {{lk|Kategorie tematyczne|Kategorie tematyczne}} - przegląd książek według zagadnień.
* {{lk|Spis alfabetyczny}} - alfabetyczny spis stron
* {{lk|Kolekcje}} - zestawy książek przygotowane do wydruku.
* {{lk|Strony zbiorcze podręczników przystosowane do czytania lub druku|Wersje do czytania i druku}}
* {{lk|Strony podręcznikowe na licencji}} - zestawienie materiałów według licencji.
'''Pomoc techniczna'''
* {{lg|MediaWiki}}
* {{lg|Unicode}}
* {{lg|HTML}} i {{lg|CSS}}
<noinclude><!--
-->{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
--></noinclude>
ngh9n8bjui3jqow6wjx2xefvb2wrgwt
559542
559541
2026-10-18T17:19:39Z
YxiCode
34510
559542
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude>
Współtwórz wolne podręczniki! Poznaj {{lr|Czym jest Wikibooks|projekt Wikibooks}}; dowiedz się, {{lr|Dlaczego używać wolnych podręczników|dlaczego warto z niego korzystać}} i sprawdź {{lr|Dlaczego warto rozpocząć współpracę|jak możesz pomóc}}.
Zapraszamy do przeglądania naszych książek i materiałów edukacyjnych.
* {{lr|Księgozbiór}} - główny katalog podręczników:
** {{lru|Księgozbiór/Alfabetycznie}} - układ alfabetyczny,
** {{lru|Księgozbiór/Poziom}} - według poziomu nauczania,
** {{lru|Księgozbiór/Tematycznie}} - według tematyki,
{{Hr}}
* {{lk|Kategorie tematyczne|Kategorie tematyczne}} - przegląd książek według zagadnień.
* {{lk|Spis alfabetyczny}} - alfabetyczny spis stron
* {{lk|Kolekcje}} - zestawy książek przygotowane do wydruku.
* {{lk|Strony zbiorcze podręczników przystosowane do czytania lub druku|Wersje do czytania i druku}}
* {{lk|Strony podręcznikowe na licencji}} - zestawienie materiałów według licencji.
'''Pomoc techniczna'''
* {{lg|MediaWiki}}
* {{lg|Unicode}}
* {{lg|HTML}} i {{lg|CSS}}
<noinclude><!--
-->{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
--></noinclude>
5hnebsxdazm76pzvcq2r7q2h4himvuz
559544
559542
2026-10-18T17:21:23Z
YxiCode
34510
559544
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude>
Współtwórz wolne podręczniki! Poznaj {{lr|Czym jest Wikibooks|projekt Wikibooks}}; dowiedz się, {{lr|Dlaczego używać wolnych podręczników|dlaczego warto z niego korzystać}} i sprawdź {{lr|Dlaczego warto rozpocząć współpracę|jak możesz pomóc}}.
Zapraszamy do przeglądania naszych książek i materiałów edukacyjnych.
* {{lr|Księgozbiór}} - główny katalog podręczników:
** {{lru|Księgozbiór/Alfabetycznie}} - układ alfabetyczny,
** {{lru|Księgozbiór/Poziom}} - według poziomu nauczania,
** {{lru|Księgozbiór/Tematycznie}} - według tematyki.
{{Hr}}
* {{lk|Kategorie tematyczne|Kategorie tematyczne}} - przegląd książek według zagadnień.
* {{lk|Spis alfabetyczny}} - alfabetyczny spis stron
* {{lk|Kolekcje}} - zestawy książek przygotowane do wydruku.
* {{lk|Strony zbiorcze podręczników przystosowane do czytania lub druku|Wersje do czytania i druku}}
* {{lk|Strony podręcznikowe na licencji}} - zestawienie materiałów według licencji.
'''Pomoc techniczna'''
* {{lg|MediaWiki}}
* {{lg|Unicode}}
* {{lg|HTML}} i {{lg|CSS}}
<noinclude><!--
-->{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
--></noinclude>
oxe3jwf894qmx2cx1g4oc3hi455mg76
Wikipedysta:YxiCode/Brudnopis/Stronaglownaserwis
2
64424
559546
2026-10-18T17:29:33Z
YxiCode
34510
Utworzono nową stronę „<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude> '''Poznaj Wikibooks''' * {{lp|Spis treści}} - przewodnik po serwisie. * {{lr|Przestrzenie nazw}} * {{lr|Skróty}} * {{lr|Brudnopis}} * {{lc|Strony specjalne}} * {{lr|Import stron}} {{Hr}} '''Aktywność''' * {{lc|Losowa strona}} * {{lc|Nowe strony}} * {{lc|Ostatnie zmiany}} {{Hr}} '''Społeczność''' * {{lr|Bar}} * {{lr|Tablica ogłoszeń}} * {{lr|Portal użytkowników}} <noinclude><!--…”
559546
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart|szerokość strony=43.75rem}}</noinclude>
'''Poznaj Wikibooks'''
* {{lp|Spis treści}} - przewodnik po serwisie.
* {{lr|Przestrzenie nazw}}
* {{lr|Skróty}}
* {{lr|Brudnopis}}
* {{lc|Strony specjalne}}
* {{lr|Import stron}}
{{Hr}}
'''Aktywność'''
* {{lc|Losowa strona}}
* {{lc|Nowe strony}}
* {{lc|Ostatnie zmiany}}
{{Hr}}
'''Społeczność'''
* {{lr|Bar}}
* {{lr|Tablica ogłoszeń}}
* {{lr|Portal użytkowników}}
<noinclude><!--
-->{{ProstaStronaKoniec}}
{{Kategoria|Strona główna}}<!--
--></noinclude>
t4ucwra360ivsdm5oxjzt8ob59jd6ov
Matematyka dla ostatnich klas szkoły podstawowej/Rodzaje liczb
0
64425
559550
2026-10-18T18:42:39Z
YxiCode
34510
Utworzono nową stronę „== Teoria == Liczby możemy uporządkować w zbiory. Dotychczasowo posługiwaliśmy się m.in.: liczbami dodatnimi, liczbami ujemnymi, ułamkami zwykłymi i dziesiętnymi. Każde z tych znajdują swoje miejsce w jednym ze zbiorów: {{Mat:Def|DEFINICJE |* zbiór '''liczb naturalnych''' - np. 0, 1, 2, 3, 4, 5, ... * zbiór '''liczb całkowitych''' - np. ..., -3, -2, -1, 0, 1, 2, 3, ... * zbiór '''liczb wymiernych''' - zbiór wszystkich liczb, które można przed…”
559550
wikitext
text/x-wiki
== Teoria ==
Liczby możemy uporządkować w zbiory. Dotychczasowo posługiwaliśmy się m.in.: liczbami dodatnimi, liczbami ujemnymi, ułamkami zwykłymi i dziesiętnymi. Każde z tych znajdują swoje miejsce w jednym ze zbiorów:
{{Mat:Def|DEFINICJE
|* zbiór '''liczb naturalnych''' - np. 0, 1, 2, 3, 4, 5, ...
* zbiór '''liczb całkowitych''' - np. ..., -3, -2, -1, 0, 1, 2, 3, ...
* zbiór '''liczb wymiernych''' - zbiór wszystkich liczb, które można przedstawić w postaci ułamka zwykłego <math>\frac{p}{q}</math>, gdzie <math>p</math> i <math>q</math> to liczby całkowite, a <math>q</math> jest różne od zera (<math>q\neq0</math>).
}}
6wm0j54fwai6lmnjk0s0nf8f3jsdi4x
559555
559550
2026-10-18T19:07:03Z
YxiCode
34510
559555
wikitext
text/x-wiki
== Teoria ==
Liczby możemy uporządkować w zbiory. Dotychczasowo posługiwaliśmy się m.in.: liczbami dodatnimi, liczbami ujemnymi, ułamkami zwykłymi i dziesiętnymi. Każde z tych znajdują swoje miejsce w jednym ze zbiorów:
{{Mat:Def|DEFINICJE
|* zbiór '''liczb naturalnych''' - np. 0, 1, 2, 3, 4, 5, ...
* zbiór '''liczb całkowitych''' - np. ..., -3, -2, -1, 0, 1, 2, 3, ...
* zbiór '''liczb wymiernych''' - zbiór wszystkich liczb, które można przedstawić w postaci ułamka zwykłego <math>\frac{p}{q}</math>, gdzie <math>p</math> i <math>q</math> to liczby całkowite, a <math>q</math> jest różne od zera (<math>q\neq0</math>).
}}
Każda liczba naturalna jest zarazem liczbą całkowitą, jak i wymierną. Każda liczba całkowita jest liczbą wymierną.
Liczbami wymiernymi z definicji są wszystkie ułamki zwykłe i dziesiętne, a również liczby mieszane.
=== Jak wykazać, że liczba jest wymierna? ===
Definicja liczby wymiernej wskazuje na to, że aby uzasadnić wymierność liczby, należy przedstawić ją w postaci ułamka zwykłego. Rozważmy liczbę '''3'''.
{{Mat:Prz
|'''Wykaż, że liczba 3 jest wymierna.'''
Liczby całkowite, przedstawione jako ułamek zwykły, mają mianownik 1.
<math>3=\frac{3}{1}</math>
3 przedstawiliśmy jako ułamek zwykły, zatem jest to liczba wymierna.
}}
=== Przedstawianie liczb mieszanych i ułamków dziesiętnych w postaci ułamków zwykłych ===
Przypomnij sobie z klasy IV jak zamieniamy liczby mieszane na ułamki niewłaściwe.
{{Mat:Prz
|'''Zamień <math>4\frac{1}{4}</math> na ułamek zwykły.'''
'''Krok po kroku'''
Rozdzielamy liczbę mieszaną na sumę liczby całkowitej i części ułamkowej. Zamieniamy liczbę całkowitą na ułamek o mianowniku 1.
<math>4\frac{1}{4}=4+\frac{1}{4}=\frac{4}{1}+\frac{1}{4}</math>
Wiemy, że aby dodać do siebie ułamki, należy je sprowadzić do wspólnego mianownika. Tym mianownikiem jest 4.
<math>\frac{4\cdot4}{4}+\frac{1}{4}=\frac{16}{4}+\frac{1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
<math>4\frac{1}{4}</math> w postaci ułamka zwykłego to <math>\frac{17}{4}</math>.
'''Na skróty'''
Zauważ, że <math>17=4\cdot4+1</math>. Możemy uogólnić regułę opisaną powyżej.
Liczby mieszane to takie liczby, które zapisujemy w formie <math>a\frac{b}{c}</math>, gdzie <math>a,b,c</math> to liczby całkowite. Aby zapisać taką liczbę w postaci ułamka zwykłego, możemy zastosować wzór: <math>a\frac{b}{c}=\frac{a\cdot c+b}{c}</math>. Pełne przekształcenie algebraiczne, które zalecamy aby zobaczyć '''po''' opanowaniu działu III, możesz zobaczyć [[Matematyka dla ostatnich klas szkoły podstawowej/Rodzaje liczb/Zamiana liczb mieszanych|tutaj]].
<math>4\frac{1}{4}=\frac{4\cdot4+1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
}}
6840kg910uahjkctttj4h82h8xtdn8j
559557
559555
2026-10-18T19:09:17Z
YxiCode
34510
/* Przedstawianie liczb mieszanych i ułamków dziesiętnych w postaci ułamków zwykłych */
559557
wikitext
text/x-wiki
== Teoria ==
Liczby możemy uporządkować w zbiory. Dotychczasowo posługiwaliśmy się m.in.: liczbami dodatnimi, liczbami ujemnymi, ułamkami zwykłymi i dziesiętnymi. Każde z tych znajdują swoje miejsce w jednym ze zbiorów:
{{Mat:Def|DEFINICJE
|* zbiór '''liczb naturalnych''' - np. 0, 1, 2, 3, 4, 5, ...
* zbiór '''liczb całkowitych''' - np. ..., -3, -2, -1, 0, 1, 2, 3, ...
* zbiór '''liczb wymiernych''' - zbiór wszystkich liczb, które można przedstawić w postaci ułamka zwykłego <math>\frac{p}{q}</math>, gdzie <math>p</math> i <math>q</math> to liczby całkowite, a <math>q</math> jest różne od zera (<math>q\neq0</math>).
}}
Każda liczba naturalna jest zarazem liczbą całkowitą, jak i wymierną. Każda liczba całkowita jest liczbą wymierną.
Liczbami wymiernymi z definicji są wszystkie ułamki zwykłe i dziesiętne, a również liczby mieszane.
=== Jak wykazać, że liczba jest wymierna? ===
Definicja liczby wymiernej wskazuje na to, że aby uzasadnić wymierność liczby, należy przedstawić ją w postaci ułamka zwykłego. Rozważmy liczbę '''3'''.
{{Mat:Prz
|'''Wykaż, że liczba 3 jest wymierna.'''
Liczby całkowite, przedstawione jako ułamek zwykły, mają mianownik 1.
<math>3=\frac{3}{1}</math>
3 przedstawiliśmy jako ułamek zwykły, zatem jest to liczba wymierna.
}}
=== Przedstawianie liczb mieszanych i ułamków dziesiętnych w postaci ułamków zwykłych ===
Przypomnij sobie z klasy IV jak zamieniamy liczby mieszane na ułamki niewłaściwe.
{{Mat:Prz
|'''Zamień <math>4\frac{1}{4}</math> na ułamek zwykły.'''
'''Krok po kroku'''
Rozdzielamy liczbę mieszaną na sumę liczby całkowitej i części ułamkowej. Zamieniamy liczbę całkowitą na ułamek o mianowniku 1.
<math>4\frac{1}{4}=4+\frac{1}{4}=\frac{4}{1}+\frac{1}{4}</math>
Wiemy, że aby dodać do siebie ułamki, należy je sprowadzić do wspólnego mianownika. Tym mianownikiem jest 4.
<math>\frac{4\cdot4}{4}+\frac{1}{4}=\frac{16}{4}+\frac{1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
<math>4\frac{1}{4}</math> w postaci ułamka zwykłego to <math>\frac{17}{4}</math>.
'''Na skróty'''
Zauważ, że <math>17=4\cdot4+1</math>. Możemy uogólnić regułę opisaną powyżej.
Liczby mieszane to takie liczby, które zapisujemy w formie <math>a\frac{b}{c}</math>, gdzie <math>a,b,c</math> to liczby całkowite. Aby zapisać taką liczbę w postaci ułamka zwykłego, możemy zastosować wzór: <math>a\frac{b}{c}=\frac{a\cdot c+b}{c}</math>. Pełne przekształcenie algebraiczne, które zalecamy zobaczyć '''po''' opanowaniu działu III, możesz zobaczyć [[Matematyka dla ostatnich klas szkoły podstawowej/Rodzaje liczb/Zamiana liczb mieszanych|tutaj]].
<math>4\frac{1}{4}=\frac{4\cdot4+1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
}}
556coagk418mmzqo092tg9yleash1ax
559559
559557
2026-10-18T19:19:10Z
YxiCode
34510
559559
wikitext
text/x-wiki
== Teoria ==
Liczby możemy uporządkować w zbiory. Dotychczasowo posługiwaliśmy się m.in.: liczbami dodatnimi, liczbami ujemnymi, ułamkami zwykłymi i dziesiętnymi. Każde z tych znajdują swoje miejsce w jednym ze zbiorów:
{{Mat:Def|DEFINICJE
|* zbiór '''liczb naturalnych''' - np. 0, 1, 2, 3, 4, 5, ...
* zbiór '''liczb całkowitych''' - np. ..., -3, -2, -1, 0, 1, 2, 3, ...
* zbiór '''liczb wymiernych''' - zbiór wszystkich liczb, które można przedstawić w postaci ułamka zwykłego <math>\frac{p}{q}</math>, gdzie <math>p</math> i <math>q</math> to liczby całkowite, a <math>q</math> jest różne od zera (<math>q\neq0</math>).
}}
Każda liczba naturalna jest zarazem liczbą całkowitą, jak i wymierną. Każda liczba całkowita jest liczbą wymierną.
Liczbami wymiernymi z definicji są wszystkie ułamki zwykłe i dziesiętne, a również liczby mieszane.
=== Jak wykazać, że liczba jest wymierna? ===
Definicja liczby wymiernej wskazuje na to, że aby uzasadnić wymierność liczby, należy przedstawić ją w postaci ułamka zwykłego. Rozważmy liczbę '''3'''.
{{Mat:Prz
|'''Wykaż, że liczba 3 jest wymierna.'''
Liczby całkowite, przedstawione jako ułamek zwykły, mają mianownik 1.
<math>3=\frac{3}{1}</math>
3 przedstawiliśmy jako ułamek zwykły, zatem jest to liczba wymierna.
}}
=== Przedstawianie liczb mieszanych i ułamków dziesiętnych w postaci ułamków zwykłych ===
Przypomnij sobie z klasy IV jak zamieniamy liczby mieszane na ułamki niewłaściwe.
{{Mat:Prz
|'''Zamień <math>4\frac{1}{4}</math> na ułamek zwykły.'''
'''Krok po kroku'''
Rozdzielamy liczbę mieszaną na sumę liczby całkowitej i części ułamkowej. Zamieniamy liczbę całkowitą na ułamek o mianowniku 1.
<math>4\frac{1}{4}=4+\frac{1}{4}=\frac{4}{1}+\frac{1}{4}</math>
Wiemy, że aby dodać do siebie ułamki, należy je sprowadzić do wspólnego mianownika. Tym mianownikiem jest 4.
<math>\frac{4\cdot4}{4}+\frac{1}{4}=\frac{16}{4}+\frac{1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
<math>4\frac{1}{4}</math> w postaci ułamka zwykłego to <math>\frac{17}{4}</math>.
'''Na skróty'''
Zauważ, że <math>17=4\cdot4+1</math>. Możemy uogólnić regułę opisaną powyżej.
Liczby mieszane to takie liczby, które zapisujemy w formie <math>a\frac{b}{c}</math>, gdzie <math>a,b,c</math> to liczby całkowite. Aby zapisać taką liczbę w postaci ułamka zwykłego, możemy zastosować wzór: <math>a\frac{b}{c}=\frac{a\cdot c+b}{c}</math>. Pełne przekształcenie algebraiczne, które zalecamy zobaczyć '''po''' opanowaniu działu III, możesz zobaczyć [[Matematyka dla ostatnich klas szkoły podstawowej/Rodzaje liczb/Zamiana liczb mieszanych|tutaj]].
<math>4\frac{1}{4}=\frac{4\cdot4+1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
}}
=== Liczby przeciwne ===
Liczby przeciwne to takie liczby, który mają przeciwne znaki.
{{Mat:Def
|Dla danej liczby <math>a</math>, liczba przeciwna do niej to <math>-a</math>.
}}
Oznacza to, że liczba przeciwna do 5 to <math>-5</math>, a dla <math>-3</math> to 3. Nie zapisujemy plusa ze zwyczaju.
9gut142h3jufdcqqo2cda8u1in0p137
559560
559559
2026-10-18T19:20:12Z
YxiCode
34510
/* Liczby przeciwne */
559560
wikitext
text/x-wiki
== Teoria ==
Liczby możemy uporządkować w zbiory. Dotychczasowo posługiwaliśmy się m.in.: liczbami dodatnimi, liczbami ujemnymi, ułamkami zwykłymi i dziesiętnymi. Każde z tych znajdują swoje miejsce w jednym ze zbiorów:
{{Mat:Def|DEFINICJE
|* zbiór '''liczb naturalnych''' - np. 0, 1, 2, 3, 4, 5, ...
* zbiór '''liczb całkowitych''' - np. ..., -3, -2, -1, 0, 1, 2, 3, ...
* zbiór '''liczb wymiernych''' - zbiór wszystkich liczb, które można przedstawić w postaci ułamka zwykłego <math>\frac{p}{q}</math>, gdzie <math>p</math> i <math>q</math> to liczby całkowite, a <math>q</math> jest różne od zera (<math>q\neq0</math>).
}}
Każda liczba naturalna jest zarazem liczbą całkowitą, jak i wymierną. Każda liczba całkowita jest liczbą wymierną.
Liczbami wymiernymi z definicji są wszystkie ułamki zwykłe i dziesiętne, a również liczby mieszane.
=== Jak wykazać, że liczba jest wymierna? ===
Definicja liczby wymiernej wskazuje na to, że aby uzasadnić wymierność liczby, należy przedstawić ją w postaci ułamka zwykłego. Rozważmy liczbę '''3'''.
{{Mat:Prz
|'''Wykaż, że liczba 3 jest wymierna.'''
Liczby całkowite, przedstawione jako ułamek zwykły, mają mianownik 1.
<math>3=\frac{3}{1}</math>
3 przedstawiliśmy jako ułamek zwykły, zatem jest to liczba wymierna.
}}
=== Przedstawianie liczb mieszanych i ułamków dziesiętnych w postaci ułamków zwykłych ===
Przypomnij sobie z klasy IV jak zamieniamy liczby mieszane na ułamki niewłaściwe.
{{Mat:Prz
|'''Zamień <math>4\frac{1}{4}</math> na ułamek zwykły.'''
'''Krok po kroku'''
Rozdzielamy liczbę mieszaną na sumę liczby całkowitej i części ułamkowej. Zamieniamy liczbę całkowitą na ułamek o mianowniku 1.
<math>4\frac{1}{4}=4+\frac{1}{4}=\frac{4}{1}+\frac{1}{4}</math>
Wiemy, że aby dodać do siebie ułamki, należy je sprowadzić do wspólnego mianownika. Tym mianownikiem jest 4.
<math>\frac{4\cdot4}{4}+\frac{1}{4}=\frac{16}{4}+\frac{1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
<math>4\frac{1}{4}</math> w postaci ułamka zwykłego to <math>\frac{17}{4}</math>.
'''Na skróty'''
Zauważ, że <math>17=4\cdot4+1</math>. Możemy uogólnić regułę opisaną powyżej.
Liczby mieszane to takie liczby, które zapisujemy w formie <math>a\frac{b}{c}</math>, gdzie <math>a,b,c</math> to liczby całkowite. Aby zapisać taką liczbę w postaci ułamka zwykłego, możemy zastosować wzór: <math>a\frac{b}{c}=\frac{a\cdot c+b}{c}</math>. Pełne przekształcenie algebraiczne, które zalecamy zobaczyć '''po''' opanowaniu działu III, możesz zobaczyć [[Matematyka dla ostatnich klas szkoły podstawowej/Rodzaje liczb/Zamiana liczb mieszanych|tutaj]].
<math>4\frac{1}{4}=\frac{4\cdot4+1}{4}=\frac{16+1}{4}=\frac{17}{4}</math>
}}
=== Liczby przeciwne ===
Liczby przeciwne to takie liczby, który mają przeciwne znaki.
{{Mat:Def
|Dla danej liczby <math>a</math>, liczba przeciwna do niej to <math>-a</math>.
}}
Oznacza to, że liczba przeciwna do 5 to <math>-5</math>, a dla <math>-3</math> to 3. Nie zapisujemy plusa ze zwyczaju.
Ponieważ zero nie ma znaku, liczba przeciwna do 0 to nadal 0.
0186zr33jlrg8vu3yir5ve68dxcapsj
Matematyka dla ostatnich klas szkoły podstawowej/Rodzaje liczb/Zamiana liczb mieszanych
0
64426
559556
2026-10-18T19:08:55Z
YxiCode
34510
Utworzono nową stronę „'''Zamiana liczb mieszanych na ułamek zwykły''' <math>a\frac{b}{c}=\frac{a}{1}+\frac{b}{c}=\frac{ac}{c}+\frac{b}{c}=\frac{ac+b}{c}</math>”
559556
wikitext
text/x-wiki
'''Zamiana liczb mieszanych na ułamek zwykły'''
<math>a\frac{b}{c}=\frac{a}{1}+\frac{b}{c}=\frac{ac}{c}+\frac{b}{c}=\frac{ac+b}{c}</math>
rzvwkcoatq58ae46etc4amlz1d8bp7b