Diskuse k modulu:AL

Z Wikislovníku
Skočit na navigaci Skočit na vyhledávání

Kvalita[editovat]

  1. V popisu může být i jiná interpunkce, např.: {{subst:AL|čtverný (čtyřmocný) prvek}}, což je následně interpretováno chybně: čtverný (čtyřmocný) prvek
  2. Oddělování lemmatu a tvaru lomítkem nefunguje (viz ukázky níže).
  3. Oddělování lemmatu a tvaru lomítkem není vhodné jednak kvůli výskytu hesel typu a/s (výsledek modulu: as), jednak kvůli bodu výše (např. {{subst:AL|první a/nebo druhý}}první anebo druhý)
  4. Celé to lze vyřešit dvěma řádky kódu a není pro to potřeba takovéto monstrum.
  5. Vhodnější by to bylo jako udělátko.

Danny B. ( diskusemail přehled příspěvků ) 26. 7. 2017, 11:28 (CEST)[odpovědět]

Ah, mezitím, co jsem to psal, byla doplněna dokumentace, takže bod 2 je nyní nevalidní (původní námitka byla na základě původní dokumentace), což nic nemění na zbylých námitkách. Kromě toho na základě přidané dokumentace přidávám další bod, a to že standardní substitucí pro mezeru je v MediaWiki podtržítko (které navíc těžko bude - na rozdíl od aktuálního plusu - v rámci interpunkce), takže plus je nevhodný spojovač víceslovných názvů.
Danny B. ( diskusemail přehled příspěvků ) 26. 7. 2017, 11:36 (CEST)[odpovědět]

Monstrum to je. Nejsem profesionální programátor. Hlavní je, aby to fungovalo. Udělátko udělat neumím, tohle je pro mně osobně jednodušší. Jestli se vám chce, tak klidně udělátko udělejte.
Závorky by to mělo ignorovat jako to teď ignoruje čárky a středníky na konci slova. To už jsem si mezi tím taky uvědomil.
Oddělování lemmatu a tvaru lomítkem mi funguje tak, jak jsem to zamýšlel, tzn. aby a/b vložilo [[a]]b. Hesel typu a/s je naprosté minimum a tento typ případů by šel řešit nějakou formou zdvojenéhom zápisu (třeba a//s).
Jestli + nebo _ pro mezeru mi je celkem jedno, asi by se mělo zvolit to, co je pro editora nejjednodušší. --Auvajs (diskuse) 26. 7. 2017, 13:15 (CEST)[odpovědět]

S přístupem hlavní je, aby to fungovalo se před pár lety podařilo "neprofesionálním programátorům" na několik hodin odstavit kompletně celou farmu Wikimedia serverů...
Jenže ono nejde jen o závorky, máme i jinou interpunkci. Kromě toho jsou i další věci, které by se zjevně linkovat neměly, např. čísla zapsaná ciframi (potažmo vědeckou notací).
Ano, hesla typu a/s jsou tu aktuálně čtyři, ale opomíjíte lomítko jako interpunkci - ostatně vizte můj příklad. Nehledě na to, že v popisech bývají využívány zlomky typu 1/2 apod., které to pak "přeloží" na 12 apod. Zdvojování je neintuitivní.
Vzhledem k tomu, že znak + může být obsažen v popisu, zatímco pravděpodobnost podtržítka tamtéž silně konverguje k nule, a vzhledem k již zmíněnému faktu, že v prostředí MediaWiki je podtržítko jako zástupná identita pro mezeru, je výběr celkem jasný.
Neřeší to odkazy na sekce ({{subst:AL|červený a#čeština černý}}červený a#čeština černý).
Danny B. ( diskusemail přehled příspěvků ) 26. 7. 2017, 14:12 (CEST)[odpovědět]

Předělal jsem to. Dokonalé to není, ale rozhodně lepší než před tím, hehe. Akorát teď koukám, že jsem zapomněl na odstraňování self-linků, takaže minimálně toto je nutné dodělat.
Vložena možnost jednoduše nelinkovat slovo odpovídající reg. výrazu; teď to vůbec nelinkuje čísla, čísla v závorce a zlomky. Nevím, co myslíte vědeckou notací, ale můžete do tabulky noLinks vložit příslušný reg. výraz. Dále přidána možnost, že to nelinkuje slovo začínající na vykřičník, přičemž tento vykřičník se nevloží.
Potom přidána možnost nezahrnovat do odkazů určitou definovanou interpunkci; resp. interpunkce na konci slova se vloží až za ]] odkazu. Šlo by to je jednoduše rozšířit o další interpunkční znaménka.
A zdvojené // vloží /. Nevím, proč by to mělo být neintuitivní, naopak mi to přijde velmi intuitivní. Odkazy obsahující lomítko se každopádně moc často v hlavním NS nepoužívají.
Odkazy na sekce (aka a#čeština) jsou k dopracování.
Plus na podtržítko u mezer jsem změnil. --Auvajs (diskuse) 26. 7. 2017, 23:12 (CEST)[odpovědět]

Pořád je to zbytečné monstrum, jehož funkcionalita jde napsat na dva řádky.
To nelinkování cifer zjevně moc nefunguje. w:Vědecký zápis čísel. Override vykřičníkem není úplně špatný nápad (byť bych opět použil jiný znak), ale pokud by to bylo celé napsáno korektně, nebyl by v podstatě zapotřebí - pakliže se linkuje všechno kromě interpunkce a čísel, tak proč by se něco nemělo linkovat? Nějaký usecase?
(Manuální) udržování seznamu interpunkce je zbytečné, když se to dá vyřešit mnohem jednodušeji a počítá to rovnou automaticky se vším. Jak se to chová k nedělitelné mezeře ("ulice v Praze")?
Zvykovým územ pro použití duplikace znaku je zobrazení onoho konkrétního znaku v případě, že je používán jako escapovací (typicky to bývá \). Použití lomítka v prostředí MediaWiki k jinému účelu než označení podstránek je rovněž zavádějící a matoucí.
Podtržítko kvituji.
Danny B. ( diskusemail přehled příspěvků ) 27. 7. 2017, 17:45 (CEST)[odpovědět]

Heleďte, k tomu, že to je monstrum, už jsem se vyjadřoval. Nerozporuju, že jste mnohem lepší programátor a že by to šlo udělat lépe. Kdybych s váma neměl extrémně špatnou zkušenost, tak bych vás vyzval, abyste to upravil. Jenže se bojím toho, že byste to celé překopal, změnil podle svých představ a následně by s váma nebyla možná domluva. Takže nejlepší by asi bylo, abyste naprogramoval vlastní modul se stejnou funkcí a vstupy podle vlastních představ a uživatel by pak aspoň měl možnost volby. (Mimochodem, nic vám tu dlouhé roky nebránilo něco takového dávno naprogramovat.)
Linkování cifer funguje, ale byl tam regex "^[0-9]+$", takže to nelinkovalo JEN cifry a linkovalo cifry končící na tečku atd. Tohle by mělo být lepší]].
Nenapadá mě případ, kdy by se měl použít override, ale určitě to není vyloučeno. Rovněž by tam měla být možnost naopak vložit odkaz na výraz, který se defaultně nelinkuje.
S lomítkem jsem spokojený, přijde mi intuitivní.
Máte usecase, kdy se v NS v definici významů (což je primární cílové užití té šablony) užívá nedělitelná mezera? Podle mě se to vůbec nepoužívá.
--Auvajs (diskuse) 27. 7. 2017, 19:03 (CEST)[odpovědět]

Tak to trvalo přesně 1 den, 7 hodin a 35 minut, než jste to zatáhl do osobní roviny...
byste to celé překopal - Pokud jde o vlastní kód, tak to celkem logicky - vzhledem k tomu, že jsem opakovaně psal, že se to dá napsat mnohem efektivněji. Co se funkcionality týče, ta by pochopitelně zůstala stejná. U syntaxe nesouhlasím z důvodů, které jsem opakovaně uvedl, s lomítkem. Každopádně nemá smysl mít dvě věci dělající totéž, přičemž jedna to dělá neefektivně a s chybami.
Cifry to nyní podchytilo lépe, nicméně stále ne úplně.
Ad overridy: Nemá smysl programovat věci, k nimž nejsou známy usecasy. Zcela zbytečně se tím zesložiťuje jak zdrojový kód, tak jeho vlastní exekuce. Až se najde dostatečné množství reálných příkladů nějakého usecase, lze k němu příslušné chování dopsat.
Na lomítku se zjevně neshodneme. Dokonce ani v lingvistice se (minimálně k takovémuto účelu) nepoužívá. Bohužel jste nedodal žádnou objektivní argumentaci na jeho podporu, pouze subjektivní spokojenost. Kromě toho stále opomíjíte lomítko jako interpunkci.
K   mám aktuálně 26 příkladů použití.
Danny B. ( diskusemail přehled příspěvků ) 28. 7. 2017, 15:32 (CEST)[odpovědět]

Replacements[editovat]

Nově přidaná funkcionalita předdefinovaných náhrad je z uživatelského hlediska spíše kontraproduktivní a matoucí, neboť uživatel neznající slovník náhrad nazpaměť v domnění, že některé (obecné) slovo je na seznamu, ho tak bez použití svislice nalinkuje nelemmaticky.
Kromě toho je to algoritmicky hrubě nevhodné, protože se pro každé slovo musí dělat až tolik porovnání, kolik je ve slovníku náhrad dohromady slov, což v aktuálním případě znamená, že např. pro průměrně dlouhý popis čítající 7 slov jen v tuto chvíli činí už 315 řetězcových porovnání. A s každým dalším slovem do slovníku přidaným ta suma rychle roste. A co teprve, když bude někdo chtít vložit slovo s více významy jako např. koruna - tam už je aktuálně 1260 porovnání.
Danny B. ( diskusemail přehled příspěvků ) 28. 7. 2017, 23:26 (CEST)[odpovědět]