Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Navazuji na Olinův příspěvek.
Aha, tak to se omlouvám, nerozumím latexu tolik, takže jsem nepochopil, jak ten tvůj příklad funguje.
Ale to bychom vlastně museli předat skriptu mathtex.cgi všechny nahrazení v url. Není nějaké omezení na délku adresy?
Chápu tedy dobře, že
\catcode154=\active
zruší předchozí definici znaku 154 a
\def^^9a{\v s}
předefinuje znak? Pochopil jsem, že 9a je šestnáctkový zápis 154, ale co znamená ^^?
Offline
↑ BrozekP:
> Není nějaké omezení na délku adresy?
Jo, toho bych se bál, IE má nebo měl limit 2083 znaků.
Offline
↑ BrozekP:
Dvě stříšky s hexovou hodnotou zastupují přesně znak s danou ASCII hodnotou. Jde v podstatě jen o praktické opatření, zamezující nějakým nesprávným interpretacím při prohlížení v jiných kódováních. Fungovat bude i
\defš{\v s}
(což vypadá trochu podivně). Přenastavení kategorie na začátku ještě neruší původní význam š, ovšem dovoluje mu to chovat se "aktivně", tj. třeba jako znak ~ (způsobující nedělitelnou mezeru). Nového významu nabývá až nadefinováním.
Také zatím o moc hlouběji do texu nevidím, učím se tak nějak za pochodu luštěním cizích maker a občasným nahlížením do TeXbooku naruby.
A není možné třeba vytvořit nějaký soubor jako nasezmeny.tex, přičemž se v url bude volat jen \input nasezmeny?
Offline
↑ Olin:
Díky za vysvětlení. \input je v mathtexu zakázaný, takže takhle jednoduše by to nešlo.
Offline
Pravda, zakázáno je toho i spousta dalšího (\def, \newcommand, \catcode atd.). Takže tudy asi cesta opravdu nevede.
Offline
Co je zakázáno se dá dobře vyčíst ze zdrojáku k mathtexu:
/* --- list of invalid \commands --- */ static struct { int action; /* 0=ignore, 1=apply, 2=abort */ char *command; /* invalid \command */ int nargs; /* #args, \command{arg1}...{nargs} */ int optionalpos; /* #{args} before optional [arg] */ int argformat; /* 0=LaTeX {arg} or [arg], 1=arg */ char *displaystring; } /* display this instead */ invalid[] = { /* list of invalid commands */ #if defined(INVALID) /* cc -DINVALID=\"filename\" */ #include INVALID /* filename with invalid \commands */ #endif /* as illustrated below... */ /* actn "command" #args pos fmt "replacement string" or NULL * ---- ----------------- ----- --- --- -------------------------- */ { 1, "\\newcommand", 2, 1, 0, NULL }, { 1, "\\providecommand", 2, 1, 0, NULL }, { 1, "\\renewcommand", 2, 1, 0, NULL }, { 1, "\\input", 1, -1, 0, NULL }, /* --plain TeX commands with non-{}-enclosed args we can't parse-- */ { 1, "\\def", 2, -1, 20, NULL }, { 1, "\\edef", 2, -1, 20, NULL }, { 1, "\\gdef", 2, -1, 20, NULL }, { 1, "\\xdef", 2, -1, 20, NULL }, { 1, "\\loop", 0, -1, 0, NULL }, { 1, "\\csname", 0, -1, 0, NULL }, { 1, "\\catcode", 0, -1, 0, NULL }, { 1, "\\output", 0, -1, 0, NULL }, { 1, "\\everycr", 0, -1, 0, NULL }, { 1, "\\everypar", 0, -1, 0, NULL }, { 1, "\\everymath", 0, -1, 0, NULL }, { 1, "\\everyhbox", 0, -1, 0, NULL }, { 1, "\\everyvbox", 0, -1, 0, NULL }, { 1, "\\everyjob", 0, -1, 0, NULL }, { 1, "\\openin", 0, -1, 0, NULL }, { 1, "\\read", 0, -1, 0, NULL }, { 1, "\\openout", 0, -1, 0, NULL }, { 1, "\\write", 0, -1, 0, NULL }, /* --- other dangerous notation --- */ { 1, "^^", 0, -1, 0, NULL }, #if 0 /* --- test cases --- */ /*{ 1, "\\input", 1, -1, 0, "{\\mbox{$\\backslash$input\\{#1\\}}}" },*/ { 1, "\\input", 1, -1, 0, "{\\mbox{~$\\backslash$input\\{#1\\}~not~permitted~}}" }, { 1, "\\newcommand", 2, 1, 0, NULL}, /*"{\\mbox{~$\\backslash$newcommand\\{#1\\}[#0]\\{#2\\}" "~not~permitted~}}" },*/ #endif { 0, NULL, 0, -1, 0, NULL } } ; /* end-of-list */
Offline
Vrátil jsem zpět tu změnu kódování, abychom si vůbec mohli všimnout, že už na hostingu provedli změnu.
Offline
↑ BakyX:
Znaková sada cp1250 je středoevropská, měla by tedy vyhovovat i slovenštině.
Myslel jsem, že by se balík bable nahrával automaticky, ale pokud má fungovat správně i slovenština, tak to asi bude komplikovanější. (Jde o dělení slov, nahrazování „Chapter“->„Kapitola“ a podobně.)
Offline