summaryrefslogtreecommitdiff
path: root/support/TVS/misc/uvod_analyza.tex
blob: ee6d2131193aa698016ae30663731c06aaee0c8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
\documentclass[11pt,a4paper]{article}

\usepackage{a4wide}
\usepackage{czech}                                   
\usepackage{times}

%\newcommand{\TVS}{T\kern-.1667em\lower.5ex\hbox{V}\kern-.125emS}
%To S asi chce kousek doprava\ldots
\newcommand{\TVS}{T\kern-.1667em\lower.5ex\hbox{V}\kern-.1emS}

\begin{document}
\part{Úvod}
Aèkoli \TeX\ sám garantuje, ¾e dokument pøelo¾ený 
kdykoli a kdekoli bude zalomen v¾dy naprosto stejnì, vìc má jeden malý
háèek. Toto tvrzení platí, pokud \TeX u poskytneme pøesnì stejné vstupní
soubory.

Stejné vstupní soubory snadno zajistíme, pokud se omezíme na pou¾ívání
primitivních pøíkazù a nejvý¹e maker plain a problémy nebudou mít ani ti,
kteøí zaèínají ka¾dý dokument \begin{verb} \input{MyMacros} \end{verb}
a verze tohoto souboru si peèlivì ohlídají.

Co si ale mají poèít nebozí \LaTeX isté, kteøí po¾ívají výhod nepøeberného
mno¾ství dostupných maker? Dokument pøelo¾ený napøíklad na distribuci
{\tt texlive-4} se u¾ o~rok pozdìji na {\tt texlive-5} stejnì zalomit nemusí
napøíklad proto, ¾e pou¾ívá balík pro nestandardní sazbu poznámek na
okraji, jeho¾ autor se na jednom místì rozhodl namísto
\begin{verb} \penalty50 \end{verb} napsat v~novìj¹í verzi
\begin{verb} \penalty20 \end{verb}.

Potøebujeme systém, který k~dokumentu v~\LaTeX u pøipojí ve vhodné
formì v¹echny makrobalíky, na kterých je tento dokument závislý a poté
doká¾e z~takového makrodokumentu rekonstruovat podobu distribuce, na které
probìhne zlom dokumentu identicky s~pøekladem pùvodním. Tedy potøebujeme
\TVS , \TeX\ Versioning System.

V~ideálním pøípadì by èinnost \TVS\ nemìla záviset na distribuci \TeX u,
v~nejhor¹ím pøípadì by mìl \TVS\ pracovat na v¹ech distribucích dodr¾ujících
souborovou strukturu TDS.
Dal¹ím po¾adavkem je platformová nezávislost, proto se pøedpokládá
implementace v~jazyce Perl, jako¾to vhodném nástroji pro zpracování
textových dat.

Dal¹ím problémem obvyklým pøi zpracování \LaTeX ových dokumentù jsou
lokální rozdíly mezi distribucemi. Napøíklad na Fakultì informatiky si
ka¾dý student mù¾e z~WWW stáhnout svùj rozvrh mimo jiné ve formátu
\LaTeX2e.

Zaèáteèník si {\tt rozvrh.tex} pøinese domù, tam má obvykle {\tt te\TeX}
z~RPM nebo {\tt texlive} na Linuxu, spustí {\tt cslatex rozvrh.tex} a
\ldots A~nic. Proto¾e nemá makra pro sazbu rozvrhu ani fakultní logo,
pøeklad skonèí neúspì¹nì.
Ani pro pokroèilej¹ího \TeX istu není situace o~mnoho jednodu¹¹í. Také si
toti¾ (vìt¹inou a¾ doma) v¹imne, ¾e prakticky tøi ètvrtiny potøebných
souborù mu chybí.

Pro jednotlivosti, jako je rozvrh, lze problém pøevést na pøedchozí
úlohu, pøelo¾it rozvrh ve ¹kole, zjistit, co v¹e je potøeba a pou¾ít
vý¹e popsanou metodu. Hor¹í situace nastává, pokud se takových dokumentù
musí pøená¹et více.

Potøebujeme, aby bylo mo¾no vytvoøit \uv{lokální kopii lokálních
úprav}, tedy zjistit, jak se lokální instalace li¹í od standardní
distribuce, která pro ni byla základem. Tyto informace mù¾e napøíklad
vytváøet správce lokální instalace (a udr¾ovat je aktuální po ka¾dé
provedené zmìnì). U¾ivatel si pøinese soubor (\TeX diff?) tam, kde
chce vytvoøit dal¹í repliku tìchto úprav a vytvoøí pomocí \TVS\ pøesnou
kopii svého obvyklého nastavení.
Pravdìpodobnì zde nebude mo¾no dodr¾et po¾adavek nezávislosti na
distribuci.

Plánem do budoucna je roz¹íøení systému, které pøi chybovém hlá¹ení
o~chybìjícím souboru tento stáhne z~CTANu a pøípadnì také roz¹íøení udr¾ující
verze maker tak, aby bylo mo¾no pøekládat dokumenty stylem \uv{pøelo¾
tohle, jako by bylo 1. bøezna 1998}.
Zvlá¹tì poslední z~uvedených námìtù bude patrnì vy¾adovat spolupráci
s~distribucí a~výraznì pøekraèuje rozsah tohoto projektu.

\end{document}