diff options
Diffstat (limited to 'Master/texmf-doc/source/polish')
-rw-r--r-- | Master/texmf-doc/source/polish/texlive-pl/Makefile | 68 | ||||
-rw-r--r-- | Master/texmf-doc/source/polish/texlive-pl/live.tex | 3451 | ||||
-rw-r--r-- | Master/texmf-doc/source/polish/texlive-pl/live4ht.cfg | 48 | ||||
-rw-r--r-- | Master/texmf-doc/source/polish/texlive-pl/tex-livep.sty | 427 | ||||
-rw-r--r-- | Master/texmf-doc/source/polish/texlive-pl/tex4ht.env | 259 |
5 files changed, 4253 insertions, 0 deletions
diff --git a/Master/texmf-doc/source/polish/texlive-pl/Makefile b/Master/texmf-doc/source/polish/texlive-pl/Makefile new file mode 100644 index 00000000000..468914c3638 --- /dev/null +++ b/Master/texmf-doc/source/polish/texlive-pl/Makefile @@ -0,0 +1,68 @@ +# $Id: //depot/Master/texmf-doc/source/english/texlive-en/Makefile#10 $ $Date: 2004/11/16 $ $Author: karl $ +# Makefile for TeX Live documentation. Public domain. +doc = live + +all: pdf html + +env = TEXINPUTS=../../general/texlive-common:; export TEXINPUTS; + +pdf: + rm -f *.aux *.toc *.lof *.lot *.xref* *.tmp *.out + $(env) pdflatex '\nonstopmode\def\Status{1}\input $(doc)' + $(env) pdflatex '\nonstopmode\def\Status{1}\input $(doc)' + $(env) pdflatex '\nonstopmode\def\Status{1}\input $(doc)' + +html: + rm -f *.aux *.toc *.lof *.lot *.xref* *.tmp *.out *.4tc +# this sequence is equivalent to running "ht latex $(doc)". We do it +# this way so we can \def\Status for the \ifcase in tex-live.sty. + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) tex4ht $(doc) + $(env) t4ht $(doc) + +clean: + rm -f *.aux *.log *.blg *.toc *.out *.lot tex4ht.ps *.4* + rm -f *.xref* *.lg *.idv *.out *.otc *.tmp tmp.* + rm -f live.dvi live.ps + +realclean: clean + rm -f live.pdf + rm -f *.html *.htm *.css *.gif *.jpg + + +insttop = ../../../doc +instfiles = live*html live.css *.png live.pdf +install: + lang=`dirname \`pwd\` | sed 's,.*/,,'`; \ + tldir=`pwd | sed 's,.*/,,'`; \ + instdir=$(insttop)/$$lang/$$tldir; \ + echo tldoc install to $$instdir; \ + for f in $(instfiles); do \ + cmp -s $$f $$instdir/$$f && continue; \ + p4 edit $$instdir/$$f; \ + cp $$f $$instdir/$$f; \ + done + @echo "Don't forget to p4 submit." + + +# don't use these, they don't work. +dvi: + rm -f *.aux *.toc + latex '\nonstopmode\def\Status{0}\input $(doc)' + latex '\nonstopmode\def\Status{0}\input $(doc)' + latex '\nonstopmode\def\Status{0}\input $(doc)' + +baskerville: + rm -f *.aux *.toc + latex '\def\Status{3}\input $(doc)' + latex '\def\Status{3}\input $(doc)' + latex '\def\Status{3}\input $(doc)' + +tugboat: + rm -f *.aux *.toc + latex '\def\Status{4}\input $(doc)' + latex '\def\Status{4}\input $(doc)' + latex '\def\Status{4}\input $(doc)' diff --git a/Master/texmf-doc/source/polish/texlive-pl/live.tex b/Master/texmf-doc/source/polish/texlive-pl/live.tex new file mode 100644 index 00000000000..518fd463fae --- /dev/null +++ b/Master/texmf-doc/source/polish/texlive-pl/live.tex @@ -0,0 +1,3451 @@ +% iso8859-2 +% $Id: live.tex,v 24 2005/11/01 +% TeX Live documentation. +% Originally written by Sebastian Rahtz and Michel Goossens, +% now maintained by Karl Berry and others. +% Polish translation and additions by Staszek Wawrykiewicz et al. +% Public domain. +% ---- +\documentclass{article} +\let\tldocenglish=0 % for live4ht.cfg +\def\La{La} +\let\textsl\textit +\usepackage{tex-livep} +\usepackage{polski} %% for PL +\usepackage[latin2]{inputenc} %% for PL +\exhyphenpenalty=10000 %% for PL +\def\Dash{---} +\widowpenalty=10000 +\clubpenalty=10000 +%% redefined MF logo! %% for PL +%\def\MF{\textlogo{META}\-\textlogo{FONT}} %% for PL +%\def\MP{\textlogo{META}\-\textlogo{POST}} %% *** TP *** +\def\shac{\char178} % for PL + qtmr (HTML) +\def\aac{\char225} % for PL + qtmr (HTML) +\def\iac{\char237} % for PL + qtmr (HTML) +\renewcommand{\samp}[1]{,,\texttt{#1}''} %% for PL +%% Polish style for sections +\makeatletter +\renewcommand{\@seccntformat}[1]{% + \csname the#1\endcsname.\hspace{.5em}} %% +\def\numberline#1{\hb@xt@\@tempdima{#1.\hfill}} +\makeatother +\hyphenation{tex-basic la-tex pdf-tex} +%% ----- +\begin{document} + +\title{{\huge \textit{Przewodnik po \protect\TL}\\\strut} + {\LARGE \textsf\TK{} 2005} +} + +\author{Redakcja: Sebastian Rahtz \& Karl Berry \\[3mm] + \url{http://tug.org/texlive/} +} + +\date{Listopad 2005} + +\maketitle +%\thispagestyle{empty} % no need for page number +%\newpage +%\clearpage % however (SW) + +\begin{multicols}{2} +\tableofcontents +\listoftables +\end{multicols} +%-------------------------- +\section{Wstęp}\label{sec:intro} +Niniejsza dokumentacja opisuje oprogramowanie \TL{} -- +dystrybucję \TeX-a/\LaTeX-a dla systemów \acro{GNU}/Linux, różnych +wersji Unix +(w~tym \MacOSX{}) oraz Windows. (Uwaga: dystrybucja jest mało przydatna dla +starszych systemów Mac i~\acro{MS-DOS}.) \TL{} zawiera skompilowane +programy \TeX{}, \LaTeXe{}, \mbox{\MF}, \MP, +\BibTeX{} i~wiele innych oraz bogaty zestaw pakietów makr o~wielorakim +zastosowaniu, a także fonty i~dokumentacje, umożliwiające skład publikacji +w~wielu językach. \TL{} wchodzi w~skład \TK{} +(kolekcji opisanej w~skrócie poniżej), utworzonej wspólnym wysiłkiem grup +użytkowników systemu \TeX. + +Nowsze wersje pakietów można znaleźć na serwerach \acro{CTAN}, np. +\url{http://www.ctan.org}. + +Lista najważniejszych zmian, jakie dokonano w~tej edycji \TL{} +znajduje się w~części~\ref{sec:tlcurrent}, na str.~\pageref{sec:tlcurrent}. + +Nie opisujemy tu, czym jest system \TeX{}, a~jedynie kwestie instalacji +i~konfiguracji oprogramowania \TL. +Początkujący użytkownicy mogą zapoznać się z~podstawowymi pojęciami +np. w~artykule {\it Przewodnik po systemie \TeX\/}: +\OnCD{texmf-doc/doc/polish/tex-virtual-academy-pl/cototex.html}. + +\subsection{Podstawy użycia \protect\TL{}} +\label{sec:basic} + +Z~\TL{} można korzystać na co najmniej trzy sposoby: + +\begin{enumerate} +\item uruchamiać wszystkie programy bezpośrednio z~płytki \DVD{} +(patrz rozdział~\ref{sec:multiple-dist} na str.~\pageref{sec:multiple-dist}); +na dysku twardym znajdą się jedynie niezbędne pliki konfiguracyjne +i~chociaż wydajność będzie mniejsza niż w~wypadku instalacji na twardym dysku, +instalacja taka będzie w pełni funkcjonalna. + +\item zainstalować część lub cały system na lokalnym twardym dysku; + jest to najczęstsze wykorzystanie \TL; wymagane jest + co najmniej 100 megabajtów, ok. 310 megabajtów dla instalacji + zalecanej i~ok. 730 megabajtów dla instalacji kompletnej. + +\item doinstalować wybrane pakiety do istniejącego systemu \TeX{} + lub systemu \TL{} zainstalowanego wcześniej. +\end{enumerate} + +\noindent Szczegóły procedur instalacyjnych podane zostaną dalej +w~rozdziałach poświęconych konkretnym systemom operacyjnym, niemniej jednak +podamy tu skrócony przepis: + +\begin{itemize*} + +\item głównym skryptem instalacyjnym dla systemów Unix i~\MacOSX{} jest +\texttt{install-tl.sh}; + +\item pojedyncze pakiety instalujemy za pomocą skryptu +\texttt{install-pkg.sh}; + +\item programem instalacyjnym dla Windows jest \texttt{tlpmgui.exe}. +Program ten może być użyty wielokrotnie do dodawania bądź usuwania pakietów, +a~także do zarządzania instalacją (patrz część~\ref{sec:win-install} i~\ref{sec:win-managing}). + +\end{itemize*} + +\subsection{Dostępna pomoc} +\label{sec:help} + +Społeczność \TeX-owa jest bardzo aktywna i~pomocna, stąd też większość +poważnych zapytań nie zostanie pozostawiona bez odpowiedzi. Przed zadaniem +pytania warto je uprzednio dobrze przemyśleć i~sformułować, ponieważ +respondenci to wolontariusze, wśród których znaleźć się mogą mniej lub +bardziej doświadczeni użytkownicy. +(Jeśli preferujemy komercyjne wsparcie techniczne, możemy zamiast +\TL{} zakupić system u~jednego z~dostawców, których listę znaleźć +można na \url{http://tug.org/interest.html#vendors}.) + +Oto lista źródeł pomocy, w~kolejności przez nas rekomendowanej: + +\begin{description} +\item [\TeX{} \acro{FAQ}] \TeX-owy \acro{FAQ} jest obszernym zbiorem +odpowiedzi na wszelkie rodzaje pytań, od najprostszych do najbardziej +zaawansowanych. Jest on załączony na \TL{} w~katalogu \OnCD{texmf-doc/doc/english/FAQ-en}, +a~także dostępny w~sieci: \url{http://faq.tug.org}. Proponujemy +tam najpierw zajrzeć. Uruchomiono też serwis \acro{FAQ} +w~języku polskim: \url{http://faq.gust.org.pl}. + +\item [\TeX{} Catalogue] Jeśli poszukujemy konkretnego pakietu, fontu, +programu itp., polecamy \TeX{} Catalogue. Jest to obszerne zestawienie +wszelkich tematów dotyczących \TeX-a. Patrz: +\OnCD{texmf-doc/doc/english/catalogue} +lub \url{http://www.ctan.org/tex-archive/help/Catalogue}. + +\item [\TeX{} Web Resources] Strona \url{http://tug.org/interest.html} +zawiera wiele odsyłaczy, w~szczególności do książek, podręczników +i~artykułów poświęconych wszelkim aspektom pracy z~systemem \TeX. + +\item [archiwa pomocy] Dwa główne forum pomocy to grupa +Usenet \url{news:comp.text.tex} oraz lista dyskusyjna +\email{texhax@tug.org}. Warto przeszukać archiwa list dyskusyjnych +zawierające mnóstwo pytań i odpowiedzi zbieranych przez wiele lat; +odpowiednio \url{http://groups.google.com/groups?group=comp.text.tex} oraz +\url{http://tug.org/mail-archives/texhax}. Nie zaszkodzi +skorzystanie z~wyszukiwarki, np. \url{http://www.google.com}. + +\item [wysyłanie pytań] Jeśli nadal nie znajdujemy rozwiązania problemu, +możemy wysłać pytanie do \dirname{comp.text.tex} korzystając z~Google, +czytnika wiadomości bądź pisząc list na adres \email{texhax@tug.org}. +Przedtem jednak \emph{należy} zapoznać się z~poradami dotyczącymi sposobu +zadawania pytań, zawartymi w~\acro{FAQ}: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. +Polscy użytkownicy mają do dyspozycji listę dyskusyjną GUST (Grupy +Użytkowników Systemu \TeX); informacje o niej +znajdziemy na stronie \url{http://www.gust.org.pl}. + +\item [wsparcie \TL{}] Gdy chcemy zgłosić błąd bądź sugestie +i~komentarze dotyczące dystrybucji \TL{}, instalacji lub dokumentacji, +mamy do dyspozycji listę dyskusyjną \email{tex-live@tug.org}. Gdy kwestia +dotyczy konkretnego programu (pakietu makr itp.) zawartego na \TL{}, +lepiej jednak skierować pytanie do osoby opiekującej się danym programem +lub na specjalistyczną listę dyskusyjną. + +\end{description} + +Druga strona medalu to pomaganie tym, którzy mają problemy. Zarówno +\dirname{comp.text.tex}, jak i~\code{texhax} (oraz lista dyskusyjna GUST) +są otwarte dla każdego, +a~więc zapraszamy do włączenia się, czytania wiadomości i~pomagania +innym w~miarę własnych możliwości. Witamy wśród użytkowników +systemu \TeX! + +%-------------------------- +\section{Struktura \protect\TeX\protect\ Live}\label{sec:struct-tl} + +Omówimy tutaj strukturę i~zawartość dystrybucji \TL{}, a~także \TK{} -- +płytki \DVD, w~skład której wchodzi \TL. + +\subsection{Rozmaitość dystrybucji: \protect\pkgname{live}, + \protect\pkgname{inst}, \protect\pkgname{protext}} +\label{sec:multiple-dist} + +Ograniczona pojemność formatu \acro{CD-ROM} zmusiła nas +do podzielenia \TK{} na następujące dystrybucje: + +\begin{description} + +\item [live] kompletny system na \acro{DVD}, z możliwością uruchamiania +bezpośrednio z~płyty (zbyt obszerny aby się zmieścił na \acro{CD-ROM}); +płytka zawiera ponadto zrzut zawartości archiwów \CTAN{}, niezależne +od \TL{} dystrybucje \pkgname{protext} (dla Windows), Mac\TeX\ (dla \MacOSX) +oraz wybór dodatkowych pakietów w~katalogu \texttt{texmf-extra}. +Płytka \DVD{} otrzymała nazwę \TK. + +\CTAN, \pkgname{protext}, Mac\TeX{} i~\texttt{texmf-extra} nie spełniają +przyjętych dla \TL{} wymogów dotyczących swobody kopiowania, wobec +tego należy ten fakt uwzględnić przy redystrybucji bądź modyfikacji zawartości +wymienionych katalogów. + +\item [inst(alowany)] kompletny system na \CD, gdzie wszystkie pakiety +zostały skompresowane; płytka ta nie nadaje się do bezpośredniego +uruchamiania programów, a~jedynie instalacji na twardym dysku. + +\item [protext] dystrybucja dla Windows, oparta na dystrybucji \MIKTEX +rozszerzonej o~dodatkowe narzędzia; całkowicie niezależna od \TL; +\ProTeXt\ posiada własny, łatwy w~obsłudze program instalacyjny i~również +może być uruchamiany bezpośrednio z~płytki. Strona domowa projektu +to \url{http://tug.org/protext}. \ProTeXt\ dostarczono na \pkgname{live} +\DVD oraz na odrębnym nośniku~\CD. + +%\item [demo] dystrybucja na \CD-ie, pozwalająca zarówno na uruchamianie +%bezpośrednio z~nośnika, jak i~zainstalowanie na dysku; wersja ta jest nieco +%uboższa od wersji pełnej: brak tu bardzo obszernego zestawu \acro{CJK} +%(wsparcie dla języków: chińskiego, japońskiego i~koreańskiego) oraz równie +%obszernych pakietów rzadziej używanych fontów (cm-super i~cbtype1), +%znajdziemy tu jedynie programy dla systemów Linux, MacOSX i~Windows. + +\end{description} + +Poszczególne dystrybucje są rozpoznawalne po nazwie pliku +\texttt{00\var{typ}.TL}, znajdującego się w~głównym katalogu każdej z~płytek. + +Każda z~grup użytkowników systemu \TeX{} może rozpowszechniać dowolną +płytkę wedle własnych potrzeb i~uznania (\acro{TUG} dostarcza swoim +członkom wszystkie trzy płytki). + +\subsection{Główne katalogi} +\label{sec:tld} + +Poniżej wymieniono ważniejsze podkatalogi głównego katalogu dystrybucji \TL. +Na płytce \pkgname{live} \DVD cała dystrybucja \TL{} została +umieszczona w katalogu \dirname{texlive}, nie zaś w~katalogu głównym +(poniżej traktujemy go jako katalog główny we wszystkich odniesieniach +dotyczących \TL). + +\smallskip +\begingroup + \renewcommand{\arraystretch}{1.3} % open up interrow spacing +\begin{tabular}{>{\ttfamily}lp{.78\hsize}} +bin & wykonywalne programy \TeX-owe, zorganizowane w~podkatalogach według + platform systemowych; \\ + %MacOSX & programy pomocnicze dla użytkowników MacOSX (patrz + % część~\ref{sec:mac-install} na str.~\pageref{sec:mac-install}); \\ +source & źródła wszystkich programów, włącznie z~głównymi dystrybucjami + \Webc{} \TeX-a i~\MF{}-a; są one umieszczone w~skompresowanym programem + bzip2 archiwum tar; \\ +support & różne programy związane z~\TeX-em, które \emph{nie} + są domyślnie instalowane, takie jak Musix\TeX{} i~inne programy pomocnicze; + dla użytkowników systemów Windows dołączono ponadto szereg programów + (edytory, ,,shelle TeX-owe''), których zwykle brak w~typowej instalacji + Windows (programy te mogą być szczególnie przydatne dla początkujących); \\ +texmf & drzewo katalogów plików pomocniczych i~dokumentacji dla + \emph{programów} + (patrz: \texttt{TEXMFMAIN} w~następnej części);\\ +texmf-dist & główne drzewo katalogów formatów i~pakietów (zawiera makra, + fonty i~dokumentacje; patrz: + \texttt{TEXMDIST} w~następnej części);\\ +texmf-doc & drzewo samodzielnych dokumentacji (m.in. podręczniki itp.), + niezwiązane z~konkretnymi pakietami, zorganizowane wg. języków. \\ +texmf-var & drzewo dla plików generowanych automatycznie + (patrz: \texttt{TEXMFSYSVAR} w~następnej części);\\ +xemtex & programy pomocnicze + dla Windows; w~systemach Unix programy te są zazwyczaj dostępne bądź łatwe + do samodzielnego skompilowania. \\ +\end{tabular} +\endgroup + +\smallskip +Prócz podkatalogów wymienionych powyżej, katalog główny zawiera skrypty +instalacyjne oraz pliki \filename{README}, w~formacie tekstowym lub HTML, +w~kilku językach (również polskim). + +Katalog \dirname{texmf-doc} zawiera, jak wspomniano wyżej, dokumentacje +ogólne, np. podręczniki (także w~wersjach językowych, jak np. niniejsza +dokumentacja). Dokumentacje programów (man, info) znajdują się w~katalogu +\dirname{texmf/doc}, zaś dokumentacje pakietów makr, fontów i~formatów w~katalogu \dirname{texmf-dist/doc}. Znalezienie konkretnej +dokumentacji w~dowolnym z~wymienionych katalogów ułatwi skorzystanie +z~programów \cmdname{texdoc} lub \cmdname{texdoctk}. Pomocnym może być +także plik \OnCD{doc.html}, który znajdziemy w~głównym katalogu. + +\subsection{Predefiniowane drzewa katalogów texmf} +\label{sec:texmftrees} + +W tej części wymieniono wszystkie predefiniowane zmienne specyfikujące +drzewa katalogów texmf, wykorzystywane przez +system, a~także ich przeznaczenie. Uruchomienie polecenia \texttt{texconfig +conf} pokaże wartości tych zmiennych, dzięki czemu łatwo odnaleźć +które katalogi w~naszej instalacji są przypisane do konkretnych zmiennych. + +\begin{ttdescription} +\item [TEXMFMAIN] Drzewo katalogów zawierające podstawowe dla + dystrybucji elementy systemu, jak skrypty (np. \verb+web2c/mktexdir+), + pliki pool i~inne pliki pomocnicze. +\item [TEXMFDIST] Drzewo katalogów gromadzące pakiety makr, fontów itp., + tak jak są one oryginalnie dystrybuowane; drzewo to może + być współdzielone z~dowolną dystybucją. +\item [TEXMFLOCAL] Drzewo katalogów, które administratorzy mogą wykorzystać + do przechowywania lokalnych makr, fontów itp., dostępnych dla wszystkich + użytkowników serwera. +\item [TEXMFHOME] Drzewo katalogów dla prywatnych makr, fontów itp. + użytkownika. Rozwinięcie tej zmiennej zależy domyślnie od wartości przypisanej + zmiennej systemowej \verb+$HOME+. +\item [TEXMFCONFIG] Drzewo katalogów wykorzystywane przez narzędzia te\TeX-a + \verb+texconfig+, \verb+updmap+ oraz \verb+fmtutil+ do przechowywania + danych konfiguracyjnych (domyślnie w~ramach \verb+$HOME+). +\item [TEXMFSYSCONFIG] Drzewo katalogów wykorzystywane przez narzędzia + te\TeX-a \verb+texconfig-sys+, \verb+updmap-sys+ oraz \verb+fmtutil-sys+ + do przechowywania danych konfiguracyjnych dla całej instalacji. +\item [TEXMFVAR] Drzewo katalogów wykorzystywane przez \verb+texconfig+, + \verb+updmap+ i \verb+fmtutil+ do przechowywania wygenerowanych plików + formatów i map fontowych (domyślnie w~ramach \verb+$HOME+). +\item [TEXMFSYSVAR] Drzewo katalogów wykorzystywane przez + \verb+texconfig-sys+, \verb+updmap-sys+ and \verb+fmtutil-sys+ + do przechowywania wygenerowanych plików formatów i~map fontowych + dla całej instalacji. +\end{ttdescription} + +Więcej informacji na temat \texttt{texconfig} znajdziemy +w~części~\ref{sec:texconfig}, na str.~\pageref{sec:texconfig}. + +\subsection{Rozszerzenia \protect\TeX-a} +\label{sec:tex-extensions} + +\TL{} zawiera trzy rozszerzenia standardowego \TeX-a: + +\begin{description} +\item [\eTeX] wersja \label{text:etex} programu \TeX{}, która zawiera +dodatkowo niewielki, lecz silny zestaw nowych poleceń wbudowanych +(dotyczących głównie rozwijania makr, leksemów znakowych, interpretacji +znaczników itp.) oraz rozszerzenie \TeXXeT{} dla składu +od prawej do lewej. W~trybie domyślnym \eTeX{} jest w~100\% zgodny ze +standardowym programem \TeX. Więcej szczegółów znaleźć można na \CD, +w~\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] program, który wynik składu może zapisywać zarówno +w~formacie Acrobat PDF, jak i~\dvi{}. Podręczniki znajdziemy +w~katalogu \OnCD{texmf/doc/pdftex/manual/}, zaś przykład +wykorzystania w~pliku \OnCD{texmf/doc/pdftex/manual/samplepdf/samplepdf.tex}. + %\LaTeX-owy pakiet \pkgname{hyperref} posiada opcję ,,\optname{pdftex}'', + %która uaktywnia dostęp do wszystkich cech programu. + +\item [pdfe\TeX] łączy rozszerzenia pdf\TeX\ i~\eTeX\ i~obecnie jest +używany jako domyślny program dla większości formatów (prócz plain \TeX). + +\item [\OMEGA{} (Omega)] program, który pracuje wewnętrznie ze znakami +kodowanymi 16-bitowo (Unicode), pozwalając pracować jednocześnie +z~większością tekstów spotykanych na świecie. Wspomaga także dynamicznie +ładowane tzw. ,,procesy tłumaczenia \OMEGA'' (\acro{OTP}), co pozwala +użytkownikowi definiować złożone transformacje wykonywane na dowolnych +strumieniach wejściowych. Więcej szczegółów znaleźć można na \CD: +\OnCD{texmf-dist/doc/omega/base/doc-1.8.tex} (dokumentacja niezbyt aktualna). + +\item [Aleph] łączy rozszerzenia \OMEGA\ i~\eTeX; powstał jako niezależny +projekt z~potrzeby stabilnej ,,używalności'' programu Omega, w~sytuacji +gdy ten jest ciągle w~fazie eksperymentalnej. + +\end{description} + +\subsection{Inne ważniejsze programy \protect\TL} + +Poniżej zestawiono inne najczęściej używane programy dostępne +w~dystrybucji \TL{}: + +\begin{cmddescription} + +\item[bibtex] tworzenie spisów bibliograficznych; + +\item[makeindex] tworzenie posortowanych skorowidzów; + +\item[dvips] konwersja \dvi{} do \PS{}; + +\item[xdvi] przeglądarka plików \dvi{} dla X~Window; + +\item[dvilj] sterownik dla drukarek HP LaserJet; + +\item [dv2dt, dt2dv] konwerter \dvi{} do/z tekstu ASCII; + +\item [dviconcat, dviselect] programy do manipulacji stronami w~plikach + \dvi{}; + +\item [dvipdfmx] konwersja \dvi{} do PDF, metoda alternatywna w~stosunku + do wspomnianego wyżej programu pdf\TeX{} (pakiety + \pkgname{ps4pdf} i~\pkgname{pdftricks} dostarczają kolejnych możliwości); + +\item [psselect, psnup, \ldots] narzędzia manipulacji na plikach \PS-owych; + +\item [lacheck] kontrola syntaktyki plików \LaTeX-owych; + +\item [texexec] program uruchomieniowy dla Con\TeX{}t; + +\item [tex4ht] konwerter \TeX{} do HTML. + +\end{cmddescription} + +%% zostawiam tę część, choć wyleciała z wersji oryginalnej!!! 27.08.2003 + +\subsection[Pakiety i ich zestawy]{Pakiety i ich zestawy} +\label{packages} +Zawartość drzew \texttt{texmf} na \TL{} została do celów instalacji +zorganizowana w~szereg ,,zestawów'' (\emph{collections}), +z~których każdy posiada zbiór ,,pakietów'' (\emph{packages}; jest ich +ponad 1000). Normalna instalacja pozwala użytkownikowi skopiować +z~\CD{} (\DVD{}) na twardy dysk jeden lub więcej zestawów, jest też jednak +możliwe zainstalowanie jedynie pojedynczego pakietu. + +Zestawy pozwalają lepiej dobrać instalowane składniki, a~także określić +jakie języki będą obsługiwane po instalacji. Najważniejszy zestaw, wymagany +dla większości zastosowań, to ,,basic''. Zestawy ,,latex'' +i~,,pdftex'' są rekomendowane dla większości użytkowników. Pozostałe +zestawy są opcjonalne. + +Oto dostępne zestawy (zdefiniowane w~plikach XML o~nazwach poprzedzonych +członem \texttt{collection-}, umieszczonych +w~podkatalogu \texttt{texmf/tpm/}) i~krótki opis ich zawartości: + +\begin{description} +\item[basic] podstawowe programy, pakiety makr i~fontów systemu \TeX{}, + pliki konfiguracyjne dla podstawowych sterowników; +\item[bibtexextra] dodatkowa, obszerna biblioteka stylów Bib\TeX{}owych + i~bazy danych bibliograficznych (podstawowe style znajdują się w~zestawie + ,,basic''); +\item[chemistry] pakiety makr do składu wzorów chemicznych; +\item[context] pakiet makr do Con\TeX{}t -- ,,dialektu'' \TeX-a + autorstwa Hansa Hagena; +\item[documentation] dodatkowe, użyteczne dokumentacje; +\item[etex] pliki pomocnicze dla programu e-\TeX; +\item[extrabin] różne programy pomocnicze; zestaw zawiera m.in. + programy i~makra dla systemu texinfo, programy do manipulacji na plikach + DVI itp.; +\item[fontbin] programy do konwersji plików fontowych oraz testowania + i~instalacji fontów (zestaw do tworzenia fontów wirtualnych, manipulacji + plikami .gf i~.pk, programy \texttt{mft}, \texttt{fontinst} itp.); +\item[fontsrecommended] obszerna biblioteka częściej używanych fontów + w~postaci źródłowej (.mf) bądź obwiedniowych oraz pliki definicyjne + i~stylów \LaTeX-a dla tych fontów; +\item[fontsextra] biblioteka różnych rzadziej używanych fontów; +\item[formatsextra] pliki pomocnicze do generowania dodatkowych + ,,formatów'' (tj. obszerne zestawy makr służące do wstępnego przetworzenia + i~utworzenia pliku \texttt{.fmt}); +\item[games] pakiety do prezentacji zapisu różnych gier (szachy, + brydż itp.); +\item[genericextra] obszerna biblioteka makr, trudnych do sklasyfikowania, + działających z~różnymi formatami (Plain, LaTeX itp.); +\item[htmlxml] pakiety konwersji \LaTeX{}a do XML/HTML oraz do składu + dokumentów XML/SGML; +\item[lang\dots] wsparcie poszczególnych języków; zestawy zawierają + wzorce przenoszenia wyrazów i~makra obsługi danych języków, czasem też + specyficzne fonty itp., przykładowo: + %\item[langarmenian] armeński; +%\item[langcjk] pakiety CJK (obsługa chińskiego, japońskiego i~koreańskiego); +%\item[langcroatian] chorwacki; +%\item[langcyrillic] fonty i makra do składu cyrylicą; +%\item[langczechslovak] fonty i pakiety makr dla czeskiego i~słowackiego; +%\item[langdanish] duński; +%\item[langdutch] holenderski; +%\item[langfinnish] fiński; +%\item[langfrench] francuski; +%\item[langgerman] niemiecki; +%\item[langgreek] grecki; +%\item[langhungarian] węgierski; +%\item[langindic] wsparcie dla języków indyjskich; +%\item[langitalian] włoski; +%\item[langlatin] łacina; +%\item[langmanju] język Manju; +%\item[langmongolian] mongolski; +%\item[langnorwegian] norweski; +%\item[langother] wzorce przenoszenia wyrazów dla innych języków; +\item[langpolish] zawiera polskie pakiety: makra do tworzenia formatu MeX, + pakiety \texttt{platex}, \texttt{mwcls}, fonty, makra dodatkowe, przydatne dla + polskich użytkowników, dokumentacje w~języku polskim; +%\item[langportuguese] portugalski; +%\item[langspanish] hiszpański; +%\item[langswedish] szwedzki; +%\item[langtibetan] fonty i~wsparcie do składu tybetańskiego; +%\item[langukenglish] angielski (brytyjski); +%\item[langvietnamese] wietnamski; +\item[latex] podstawowe pakiety \LaTeX-a; +\item[latexrecommended] rekomendowany zestaw często używanych pakietów + dodatkowych; +\item[latex3] pakiety-,,zwiastuny'' \LaTeX3, działające z~\LaTeXe; +\item[latexextra] bogaty wybór dodatkowych pakietów dla \LaTeX-a; +\item[mathextra] dodatkowe pakiety do składu zaawansowanej matematyki; +\item[metapost] MetaPost i~pakiety do tworzenia rysunków z~użyciem + MetaFonta; +\item[music] makra do sładu nutowego; +\item[omega] rozszerzenie \TeX{}a autorstwa Johna Plaice'a i~Yannisa Haralambousa, działające ze znakami kodowanymi 16-bitowo; +\item[pdftex] pliki pomocnicze dla pdf\TeX{}-a, wersji programu \TeX{} + tworzącej pliki w~formacie PDF; +\item[pictures] pakiety do tworzenia diagramów i~innych obiektów graficznych; +\item[plainextra] dodatkowe biblioteki makr dla plain \TeX; +\item[psutils] narzędzia do manipulacji plikami \PS-owymi; +\item[publishers] pakiety makr pochodzące od różnych wydawnictw; +\item[t1utils] narzędzia do fontów w~formacie Type~1; +\item[texbooks] przykłady i~inne materiały autorstwa D.E.~Knutha; +\item[ttfutils] narzędzia do konwersji fontów True Type; + %\item[xemacs] dodatkowe programy wspomagające dla Windows (zaawansowany + % edytor XEmacs -- zintegrowane środowisko do pracy z~\TeX{}em, Perl, programy + % konwersji grafiki, itp.); +\end{description} +%-------------------------- +Katalog \texttt{texmf/lists/} (wykorzystywany podczas instalacji) +zawiera spis wszystkich plików w~każdym pakiecie. + +%% koniec pozostawionej sekcji 27.08.2003 + +\section{Instalacja i~użytkowanie w systemach Unix} +\label{sec:unix-install} + +Jak już wspomniano w~części ~\ref{sec:basic} na str.~\pageref{sec:basic}, +\TL{} można używać na trzy sposoby: + +\begin{enumerate} +\item zamontować płytę (\emph{mount}) \CD{} w~systemie plików, + uruchomić skrypt \texttt{install-tl.sh} i~wybrać opcję \verb|<R>| + (\textit{do not install files, set up to run off CD-ROM/DVD} -- + bez instalacji plików, dostosuj do uruchamiania z~\CD/DVD). Pozwala to + na uruchamianie wszystkich programów bezpośrednio z~płytki; na dysku twardym + znajdą się jedynie niezbędne pliki konfiguracyjne. +\item zainstalować część lub cały system na lokalnym twardym dysku. +\item doinstalować wybrane pakiety do istniejącego systemu \TeX{} + lub systemu \TL{} zainstalowanego wcześniej. +\end{enumerate} + +\noindent Każda z~tych metod jest dokładniej opisana w~dalszych rozdziałach. + +%%-- ramka z ostrzeżeniem +\ifSingleColumn \begin{figure}[ht]\noindent \fi +\begin{warningbox} +\textbf{Uwaga: } \CD{} i~\DVD{} + %wchodzące w~skład \TK{} + są w~formacie +ISO 9660 (High Sierra), z~rozszerzeniami Rock Ridge (i~Joliet dla Windows). +Aby skorzystać z~wszystkich zalet płytki pod Unixem, twój system operacyjny powinien +obsługiwać rozszerzenie Rock Ridge. Prosimy zapoznać się z~dokumentacją +komendy \cmdname{mount} w~twoim systemie aby sprawdzić, czy to jest możliwe. +Jeżeli używasz wielu różnych maszyn w~sieci lokalnej, zobacz czy możesz +zamontować \CD{}/\DVD{} na tej, która pozwala na użycie Rock Ridge. + +\leavevmode\quad +Współczesne systemy operacyjne + %Linux, FreeBSD, Sun i~\acro{SGI} + powinny umieć bez problemów korzystać z~\CD{}/\DVD. + %Będziemy wdzięczni za wszelkie wskazówki od użytkowników innych systemów, + %którym udało się skorzystać z~niniejszych płytek, z~których to wskazówek + %moglibyśmy skorzystać w~przyszłych wersjach tej dokumentacji. + Dalsze kroki opisane są przy założeniu, że udało się zamontować \CD{}/\DVD{} +w~pełnej zgodności z~Rock Ridge. +\end{warningbox} +\ifSingleColumn\end{figure}\fi + + +\subsection{Uruchamianie \protect\TL{} z~płytki (Unix)} + +\def\runlive{% text repeated in windows section + %Na \CD-ie \texttt{demo} zawarto programy jedynie dla systemów + %Linux, \MacOSX oraz Windows. + Aby korzystać bezpośrednio z~nośnika w~systemach Unix należy użyć + płyty \pkgname{live} \DVD. +} + +\def\startinst{% repeated in other subsections + Najpierw należy zamontować \CD{} lub \DVD{} -- postać polecenia jest zależna +od konkretnej platformy, poniższe działa w~Linux, choć nazwa urządzenia +(tu: \filename{/dev/cdrom}) może się różnić. W~przykładach podajemy +\texttt{>} jako znak zgłoszenia powłoki, zaś to, co wpisuje użytkownik, +jest \Ucom{\texttt{podkreślone}}. +\begin{alltt} +> \Ucom{mount -t iso9660 /dev/cdrom /mnt/cdrom} +\end{alltt} + +\noindent następnie zmieniamy katalog bieżący na katalog montowania: +\begin{alltt} +> \Ucom{cd /mnt/cdrom} +\end{alltt} + +\noindent W~systemie \MacOSX katalog ten znajduje się zwykle w~ramach +\dirname{/Volumes} zaś nośnik montowany jest automatycznie. + +\noindent Uruchamiamy skrypt instalacyjny \filename{install-tl.sh}: +\begin{alltt} +> \Ucom{sh install-tl.sh} + +Welcome to TeX Live... +\end{alltt} + +Po ukazaniu się głównego menu mamy do wyboru listę opcji, wprowadzanych +poprzez naciśnięcie wybranego znaku oraz klawisza Enter (nie należy +wpisywać znaków \verb|<>|; wielkie i~małe litery są tożsame, w~przykładach +podajemy małe litery). +} + +\runlive +\startinst + +Dla uruchamiania bezpośrednio z~płytki wybieramy najpierw opcję +\Ucom{d}, następnie podopcję \Ucom{1}, która pozwoli nam określić +katalog na generowane przez \TeX-a pliki (fonty, formaty, pliki +konfiguracyjne do modyfikacji ustawień). Jeśli odpowiadają nam ustawienia +domyślne (\dirname{/usr/local/texlive/2005}), możemy pominąć poniższy +fragment. +W~naszym przykładzie użyjemy \dirname{/opt/texlive2005}: +\begin{alltt} +Enter command: \Ucom{d} +Current directories setup: +<1> TEXDIR: /usr/local/texlive/2005 +... +Enter command: \Ucom{1} +New value for TEXDIR [/usr/local/texlive/TeX]: \Ucom{/opt/texlive2005} +... +Enter command: \Ucom{r} +\end{alltt} + +\noindent wciśnięcie klawisza \Ucom{r} powoduje powrót do głównego menu, +gdzie wybieramy opcję uruchamiania bezpośrednio z~nośnika, bez instalacji +właściwej na dysku: +\begin{alltt} +Enter command: \Ucom{r} +Preparing destination directories... +... +Welcome to the TeX Live system! +> +\end{alltt} + +Następnie należy uaktualnić zmienną \texttt{PATH}, dołączając do niej +katalog zawierający binaria dla danej architektury, +a~także ustawić zmienną \envname{TEXMFSYSVAR} na podany powyżej katalog. Dla +powłoki zgodnej z~Bourne shell (\cmdname{sh}, \cmdname{bash}, \cmdname{ksh}) +możemy dopisać do pliku \filename{$HOME/.profile}: +\begin{alltt} +PATH=/mnt/cdrom/bin/\var{archname}:$PATH; export PATH +TEXMFSYSVAR=/opt/texlive2005/texmf-var; export TEXMFSYSVAR +\end{alltt} + +\noindent gdzie \emph{archname} oznacza konkretną platformę. +W~tabeli~\ref{tab:archlist} zamieszczono spis obsługiwanych systemów +operacyjnych i~odpowiednich dla nich nazw podkatalogów. + %Należy pamiętać, że \emph{demo} \CD{} + %zawiera jedynie binaria dla Windows, Linux dla Intel i~Mac~OSX. + %Dla innych systemów Unix należy zastosować drugi \CD{} bądź \DVD{}. + %W~nazwie podkatalogu możemy pominąć numer wersji, np. + %\dirname{sparc-solaris} jest dowiązaniem do \dirname{sparc-solaris2.7}. + +Dla powłok zgodnych z C shell (\cmdname{csh}, \cmdname{tcsh}), +należy dopisać do pliku \filename{$HOME/.cshrc}: +\begin{alltt} +setenv PATH /mnt/cdrom/bin/\var{archname}:$PATH +setenv TEXMFSYSVAR /opt/texlive2005/texmf-var +\end{alltt} + +\noindent gdzie \emph{archname} -- jak wyżej. + +%\noindent Then log out, log back in, and test your installation +%(see section~\ref{sec:test-install}, \p.\pageref{sec:test-install}). + +\def\textruntexconfig{% +Po zakończeniu instalacji i~ustawieniu zmiennych systemowych warto +uruchomić \cmdname{texconfig} lub \cmdname{texconfig-sys} aby dostroić +instalację do własnych potrzeb +(patrz część~\ref{sec:texconfig}, str.~\pageref{sec:texconfig}). +} +\textruntexconfig + +\begin{table*}[ht] +\caption[Obsługiwane systemy operacyjne]{Obsługiwane systemy operacyjne} +\label{tab:archlist} +\begin{tabular}{>{\ttfamily}ll} +alpha-linux & HP Alpha GNU/Linux \\ +%alphaev5-osf4.0d & Compaq Alphaev5 OSF \\ +%hppa2.0-hpux10.20 & HP9000 HPUX 10.20 \\ +i386-darwin & Intel x86 \MacOSX \\ +i386-freebsd & Intel x86 FreeBSD \\ +i386-linux & Intel x86 GNU/Linux \\ +%i386-openbsd3.3 & Intel x86 OpenBSD \\ +%i386-solaris2.8 & Intel x86 Solaris \\ +mips-irix & SGI IRIX \\ +powerpc-aix & IBM RS/6000 AIX \\ +powerpc-darwin & \MacOSX \\ +sparc-linux & Sun Sparc GNU/Linux \\ +sparc-solaris & Sun Sparc Solaris \\ +win32 & Windows (32-bit) \\ +x86\_64-linux & Intel x86 64-bit GNU/Linux \\ +\hline +\end{tabular} +\end{table*} + +%Wydawałoby się, że potrzeba wygenerowania fontów czy zmiana konfiguracji +%może spowodować problemy, ponieważ nie można zmieniać plików na \CD. +%Można jednak posiadać na dysku drugie, równoległe drzewo +%\TeX-owe, w~którym można dokonywać zmian. Drzewo takie jest przeszukiwane +%przed głównym drzewem \CD. +%Domyślną lokalizacją jest \path|texmf-var| na \CD{} (katalog, +%który faktycznie nie istnieje!), wobec tego \emph{należy} +%ją zmienić poprzez deklarację zmiennej środowiska \texttt{VARTEXMF}. +% +%Przykładowo, użytkownicy \emph{sh} lub \emph{bash} na Intel PC z~systemem +%Linux mogą zamontować \CD{} \TL{} w~katalogu \file{/mnt/cdrom} za pomocą +%polecenia: +% +%\begin{alltt} +%>> \Ucom{mount -t iso9660 /dev/cdrom /mnt/cdrom} +%\end{alltt} +% +%Po zmianie katalogu bieżącego na główny katalog \CD{} +%należy uruchomić skrypt: +% +%\begin{alltt} +%>> \Ucom{sh install-tl.sh} +%\end{alltt} +%Odpowiednie pliki pomocnicze zostaną zainstalowane na twardym dysku po +%wybraniu opcji \verb|<R>| +%(\emph{do not install files, set up to run off CD-ROM} -- +%bez instalacji pików, dostosuj do uruchamiania z~\CD). +% +%Struktura oprogramowania \Webc{} oznacza, że można uruchamiać programy +%przez zwykłe dodanie do zmiennej \texttt{PATH} odpowiedniego podkatalogu +%katalogu \path|bin| na \CD. Potrzebne pliki będą znajdowane bez dalszych +%problemów. +% +%W~razie wątpliwości najlepiej zwrócić się do lokalnego guru systemowego +%o~pomoc przy instalowaniu \CD{} i~w~wyborze katalogu dla systemu \TeX. + +Po ponownym uruchomieniu sesji polski użytkownik może użyć bezpośrednio m.in. +polecenia \texttt{mex} (spolonizowany format plain), +\texttt{platex} (\LaTeX{} z~polskimi i~anglo\dywiz amerykańskimi wzorcami +przenoszenia wyrazów) oraz ich wersji dla programu \texttt{pdfTeX} (tworzącego +pliki PDF), odpowiednio: \texttt{pdfmex} i~\texttt{pdfplatex}. Potrzebne +pliki formatów zostaną wygenerowane automatycznie podczas pierwszego +uruchomienia danego polecenia i~zapisane w~lokalnym katalogu. Katalog ten, +domyślnie \dirname{/usr/local/texlive/2005/texmf-var/}, a~w~naszym przykładzie +\dirname{/usr/local/texlive/texmf-var/}, zawiera pliki konfiguracyjne, +które mogą być modyfikowane przez użytkownika. W~konfigurowaniu pomocne jest +uruchomienie skryptu \cmdname{texconfig}, opisanego +w~części~\ref{sec:texconfig}. + +%------------------------------------------------ +\subsection{Instalacja \protect\TeX\ \protect Live na twardym dysku} +\label{sec:unix-install-disk} + +Instalacja części lub całości dystrybucji na twardym dysku wymaga +zamontowania płyty \CD{} (lub \DVD) w~systemie, przejścia do jego katalogu +głównego i~uruchomienia skryptu instalacyjnego: +\begin{alltt} +> \Ucom{sh install-tl.sh} +\end{alltt} +(W niektórych systemach Unix może zajść potrzeba użycia \cmdname{sh5} +lub \cmdname{bash}.) + +\noindent Skrypt ten przeszukuje listy +zestawów i~pakietów z~\CD{} oraz próbuje odgadnąć, z~jakim systemem +komputerowym ma do czynienia. + +Następnie pokaże on główną stronę konfiguracyjną + %(tab.~\ref{tab:main-menu-options}), + umożliwiającą wybór: + +% I prefer here description instead of the table (SW) +\begin{description} +\item \verb|<P>| \emph{Current platform} (systemu operacyjnego, dla którego + chcemy dokonać instalacji, na wypadek gdyby zawiodła automatyczna detekcja); +\item \verb|<B>| \emph{Binary architectures} (dodatkowo instalowanych + binariów dla innych platform, np. na serwerze, z~którego będą korzystać + użytkownicy innych systemów); +\item \verb|<S>| \emph{Installation scheme} (predefiniowanego zestawu + instalacyjnego, np. \emph{full} -- pełnego, \emph{medium} -- + wystarczającego do większości zastosowań, \emph{basic} -- podstawowego; + mamy tu też do wyboru zestaw + proponowany polskim użytkownikom: \emph{GUST scheme}); +\item \verb|<C>| \emph{Standard collections} (zestawów, których wybór + pomaga zmodyfikować dany schemat instalacji); +\item \verb|<L>| \emph{Language collections} (zestawów dla obsługiwanych + języków); +\item \verb|<D>| \emph{Installation directories} (katalogu bazowego na + dysku, przeznaczonego na instalację); +\item \verb|<O>| ustawienia trybu pracy niektórych programów. +\end{description} + +Po wybraniu opcji |<C>| -- \emph{Standard collections}, wyświetlone zostaną +dostępne zestawy. Każdy zestaw zawiera szereg pakietów: makr, fontów itp. +Zaznaczenie zestawu do zaistalowania polega na wciśnięciu odpowiedniego +klawisza, ponowne naciśnięcie tego samego klawisza wyłącza zaznaczenie +(uwaga: wielkie i małe litery są rozróżniane!). + +Po wybraniu opcji |<L>| -- \emph{Language collections}, +wyświetlone zostaną dostępne zestawy dla różnych języków. +Zawierają one najczęściej wzorce przenoszenia wyrazów, czasami +dodatkowe pakiety makr i fontów. Aby zainstalować polskie pakiety +(fonty, makra, dokumentacje), należy w~tym menu wybrać klawisz +odpowiadający opcji \texttt{Polish}. + +Po powrocie do głównego menu można dodatkowo wybrać inne opcje. I~tak: + +\smallskip\noindent +\verb|<D>| \emph{directories} pozwala zmienić domyślne katalogi +instalacji, przypisane zmiennym wewnętrznym: \label{text:instdir} + +\vskip-5pt +\begin{ttdescription} +\item [TEXDIR] katalog bazowy, w~ramach którego zostaną zainstalowane wszystkie + pliki; domyślnie jest to \dirname{/usr/local/texlive/2005}, ale można + go zmienić np. na \dirname{/opt/texlive2005}. + +W systemie \MacOSX{} dostępne programy instalacyjne +(\emph{TeXShop}, \emph{ITeXMac}, \ldots) korzystają z~domyślnej +lokalizacji \teTeX{}, czyli \dirname{/usr/local/teTeX}. Wobec czego +użytkownicy Mac dla instalacji \TL{} powinni rozważyć wybór +katalogu \dirname{/usr/local/teTeX} zamiast \dirname{/usr/local/texlive/2005}. + +\item [TEXMFLOCAL] katalog przeznaczony na lokalne pliki makr i~fontów +użytkownika, a~także indywidualne, nie związane z~dystrybucją, uzupełnienia +instalacji; domyślnie jest to \dirname{/usr/local/texlive/texmf-local}. +(Katalog ten jest niezależny od opisanego wyżej katalogu bazowego, ponieważ jest +przeznaczony na lokalnie dodawane makra czy fonty.) + +\item [TEXMFSYSVAR] katalog, który przechowuje pliki generowane przez system + (np. formaty) + (patrz część~\ref{sec:texconfig}, str.~\pageref{sec:texconfig}); + domyślnie \dirname{TEXDIR/texmf-var}. + Istnieje ponadto \envname{TEXMFSYSCONFIG}, katalog dla + aktualnie używanych plików konfiguracyjnych, modyfikowanych + najczęściej przez program \cmdname{texconfig}. +\end{ttdescription} + +\noindent +\verb|<O>| \emph{Other options} -- inne opcje: + +\begin{ttdescription} +\item [a] \emph{alternate directory for generated fonts} -- pozwala określić + katalog dla generowanych fontów (np. jeżeli chcemy zainstalować główny pakiet + w~trybie ,,tylko do odczytu'' + (\emph{read-only})); domyślnie fonty generowane są + w~katalogu określonym przez zmienną \envname{TEXMFVAR}. + +\item [l] \emph{create symbolic links in standard directories} -- pozwala + określić + czy utworzyć dowiązania symboliczne (\emph{links}) dla stron \cmdname{man}, + \acro{GNU} \cmdname{info} i~programów w~standardowych katalogach systemu + operacyjnego, np. \dirname{/usr/local/man}, \dirname{/usr/local/info} oraz + \dirname{/usr/local/bin}. + Wymagane do tego są, oczywiście, uprawnienia administratora. + +\item [d] \emph{do not install font/macro doc tree} -- pozwala pominąć + instalowanie dokumentacji fontów bądź makr, np. dla zaoszczędzenia miejsca + na dysku. + +\item [s] \emph{do not install font/macro source tree} -- + pozwala pominąć instalowanie plików źródłowych fontów bądź makr (dostępnych + np. w~postaci plików \texttt{.dtx}), które nie są wykorzystywane + do bieżącej pracy; + +\end{ttdescription} + +Po zakończeniu ustawień i~po powrocie go głównego menu, +można rozpocząć instalację (klawisz~\Ucom{I}). +Program instalacyjny, uwzględniając wybrane zestawy i~systemy, sprawdzi +spisy plików na \CD{}/\DVD, stworzy listę plików do skopiowania, po czym +skopiuje je na twardy dysk. + +Po instalacji wystarczy dodać do zmiennej \texttt{PATH} właściwy +podkatalog \texttt{bin} instalacji \TeX-a, uaktywnić tę zmienną i~można +już zacząć pracę. + %Jeśli zajdzie potrzeba, można przenieść binaria wyżej o~jeden poziom, + %np. z~\dirname{/usr/local/bin/i386-linux} do \dirname{/usr/local/bin}; + %jednakże po tym należy wyedytować plik \dirname{texmf/web2c/texmf.cnf} + %i~zmienić linię znajdującą się blisko początku pliku: + %\begin{verbatim} + % TEXMFMAIN = $SELFAUTOPARENT + %\end{verbatim} + %na + %\begin{verbatim} + % TEXMFMAIN = $SELFAUTODIR + %\end{verbatim} + %Jeśli przeniesiemy całość instalacji do innego katalogu, należy dokładnie + %to określić, modyfikując zmienną \envname{TEXMFMAIN} w~pliku + %\texttt{texmf.cnf}, a~także ustawiając \envname{TEXMFCNF} na + %\dirname{$TEXMFMAIN/texmf/web2c}. + +\textruntexconfig + +%------------------------------------------------ +\subsection{Instalacja pojedynczych pakietów z~\protect\TL{} +na twardym dysku} +\TL{} można używać zarówno do aktualizacji istniejącej instalacji, +jak i~do dodawania składników do instalacji wcześniejszej. +Główny program instalacyjny przeznaczony jest do użycia tylko za pierwszym +razem, natomiast później należy używać znajdującego się na \CD{} (\DVD) +skryptu \texttt{install-pkg.sh}. +Uruchamia się go przez zamontowanie nośnika, przejście do katalogu +punktu montowania i~wydanie polecenia: + +\begin{alltt} +> \Ucom{sh install-pkg.sh \emph{opcje}} +\end{alltt} + +Skrypt posiada dziewięć parametrów; pierwsze cztery pozwalają wybrać: +pojedynczy pakiet do instalacji, cały zestaw (np. \texttt{mathextra}), +nazwę katalogu zamontowanego \CD, oraz nazwę katalogu zawierającego +pliki ze spisami zawartości pakietów (zwykle te dwa ostatnie ustawiane +są automatycznie): + +\begin{ttdescription} +\item [-{}-package=\var{pkgname}] pojedynczy pakiet do zainstalowania; + +\item [-{}-collection=\var{colname}] pojedynczy zestaw do zainstalowania; + +\item [-{}-cddir=\var{dir}] katalog źródłowy (domyślnie jest to katalog + bieżący, z~którego uruchomiono skrypt); + +\item [-{}-listdir=\var{dir}] katalog ze spisami plików (domyślnie + \dirname{./texmf/tpm/lists}). + +\end{ttdescription} + +Proces instalacji jest określony dokładniej przez pięć kolejnych parametrów: +pierwsze dwa pozwalają wyłączyć z~instalacji dokumentacje i~pliki źródłowe, +trzeci wyłącza domyślne uruchamianie na koniec skryptu \texttt{mktexlsr}, +przebudowującego bazę danych o~plikach, czwarty uruchamia na koniec +skrypt konfiguracyjny \code{texconfig init}, zaś piąty powoduje jedynie +wypisanie plików, które miałyby być zainstalowane: + +\begin{tabular}{ll} +\texttt{-{}-nodoc} & \\ +\texttt{-{}-nosrc} & \\ +\texttt{-{}-nohash} & \\ +\texttt{-{}-config} & \\ +\texttt{-{}-listonly} & \\ +\end{tabular} + +Można także określić, czy zamiast instalować pliki, skrypt powinien +utworzyć z~nich w~wybranej lokalizacji archiwum \cmdname{tar}: + +\begin{tabular}{ll} +\texttt{-{}-archive=}\var{nazwa} & \\ +\end{tabular} + +Dodatkowa opcja \texttt{-{}-verbose} pozwala wyświetlić podczas uruchomienia +bardziej szczegółowe komunikaty. + +Tak więc, jeżeli chcielibyśmy tylko zobaczyć przed zainstalowaniem, +jakie pliki tworzą pakiet \pkgname{fancyhdr}, nasze polecenie wyglądałoby +następująco: + +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh -{}-package=fancyhdr -{}-listonly} +\else> \Ucom{sh install-pkg.sh -{}-package=fancyhdr \bs} +> \Ucom{-{}-listonly} +\fi{} +texmf/source/latex/fancyhdr/README +texmf/doc/latex/fancyhdr/fancyhdr.pdf +... +\end{alltt} +Oto inne przykłady użycia: +\begin{itemize} +\item zainstaluj \LaTeX-owy pakiet \texttt{natbib}: +\begin{alltt} +> \Ucom{sh install-pkg.sh -{}-package=natbib} +\end{alltt} +\item zainstaluj \LaTeX-owy pakiet \texttt{alg} bez plików źródłowych +i~bez dokumentacji: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh -{}-package=alg -{}-nosrc -{}-nodoc} +\else> \Ucom{sh install-pkg.sh -{}-package=alg \bs} +> \Ucom{-{}-nosrc -{}-nodoc} +\fi\end{alltt} +\item zainstaluj wszystkie pakiety dostępne w~zestawie +dodatkowych makr dla plain \TeX: +\begin{alltt} +> \Ucom{sh install-pkg.sh -{}-collection=plainextra} +\end{alltt} +\item spakuj wszystkie pliki wymagane dla PSTricks +do~pliku \cmdname{tar}, w~katalogu \dirname{/tmp}: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh -{}-package=pstricks -{}-archive=/tmp/pstricks.tar} +\else +> \Ucom{sh install-pkg.sh -{}-package=pstricks \bs} +> \Ucom{-{}-archive=/tmp/pstricks.tar} +\fi\end{alltt} +\end{itemize} + +% czeka na tłumaczenie! ale mozna pominąć +%\section{Post-installation} +%\label{sec:postinstall} + +\subsection{Program texconfig} +\label{sec:texconfig} + Po zakończeniu instalacji i~uaktywnieniu modyfikacji zmiennej systemowej +\envname{PATH}, można użyć programu \cmdname{texconfig}, +do skonfigurowania systemu według własnych potrzeb. Program ten może +być w~każdej chwili uruchomiony do zmiany ustawień, w~trybie in\-ter\-fej\-su +pełnoekranowego lub z~linii poleceń. Program \cmdname{texconfig} powinien być +używany do wszelkich zmian, takich jak deklaracja używanych drukarek czy +przebudowywanie bazy danych o~plikach. Obydwa tryby pracy posiadają tekst pomocy, +opisujący dostępne możliwości. + +Przykłady użycia z~wiersza poleceń: + +\begin{ttdescription} +\item [texconfig dvips paper letter] ustawienie formatu papieru na ,,letter'' + dla programu \cmdname{dvips}; +\item [texconfig xdvi letter] jak wyżej, ale dla programu \cmdname{xdvi}; +\item [texconfig rehash] aktualizacja wszystkich baz danych instalacji + systemu \TeX; +\item [texconfig faq] wyświetla \acro{FAQ} dystrybucji \teTeX{} + (na dystrybucji tej oparto \TL); +\item [texconfig help] wyświetla dostępne opcje skryptu. + +\end{ttdescription} + +Skrypt \cmdname{texconfig} pozwala na zmianę jedynie najważniejszych +ustawień. Głównym plikiem konfiguracyjnym jest \filename{texmf.cnf}. +Zlokalizujemy go uruchamiając polecenie \samp{kpsewhich texmf.cnf}. +Plik ten zawiera sporo użytecznych komentarzy, wyjaśniających +reguły ustawień domyślnych, a także podaje przykłady ustawień alternatywnych. + +Od roku 2005, zgodnie ze zmianami, które zaszły w te\TeX{}~3.0, +\cmdname{texconfig} zapisuje pliki w~katalogu użytkownika +(\dirname{$HOME/.texlive2005}). Jeśli instalujemy system dla wielu +użytkowników, powinniśmy zatem uruchomić polecenie \cmdname{texconfig-sys}. + +Podobnie rzecz ma się ze skryptami \cmdname{updmap} oraz \cmdname{fmtutil}; +także i~one zapisują pliki w~\dirname{$HOME/.texlive2005}. Aby zmienić globalne +ustawienia, wygenerować mapy bądź formaty, należy użyć poleceń +\cmdname{updmap-sys} i~\cmdname{fmtutil-sys}. W~przypadku instalacji +dla wielu użytkowników warto wygenerować wspólne pliki formatów +(polecenie \texttt{fmtutil-sys --missing}), dzięki czemu uniknie +się generowania tychże przez każdego użytkownika, na jego własne potrzeby. + +\subsection{Testowanie instalacji} +\label{sec:test-install} + +Po zainstalowaniu \TL{} warto sprawdzić czy programy działają +prawidłowo. Opiszemy tu podstawowe procedury testujące funkcjonowanie +systemu w~systemach Unix. W~\MacOSX{} i~Windows najczęściej użyjemy +środowiska graficznego (\acro{GUI}), ale reguły będą podobne. + +\begin{enumerate} +\item Sprawdzamy najpierw czy uruchamia się program \cmdname{tex}: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.141592 (Web2C 7.5.5) +kpathsea version 3.5.3 +Copyright (C) 1997-2004 D.E. Knuth. +... +\end{alltt} +Jeśli uruchomienie zakończy się komunikatem \emph{command not found}, +oznacza to, że nieprawidłowo zadeklarowano zmienną \envname{PATH}. + +\item Następnie przetwarzamy prosty plik \LaTeX-owy: +\begin{alltt} +> \Ucom{latex sample2e.tex} +This is pdfeTeXk, Version 3.141592... +... +Output written on sample2e.dvi (3 pages, 7496 bytes). +Transcript written on sample2e.log. +\end{alltt} +Gdy program nie znajduje \filename{sample2e.tex} (bądź innych wymaganych +plików), może to oznaczać, że nadal działają ustawienia zmiennych środowiska +bądź pliki konfiguracyjne z~poprzedniej instalacji. +Dogłębną analizę gdzie są przeszukiwane i~znajdywane pliki umożliwia +diagnostyka opisana w~części \ref{sec:Debugging} na str.~\pageref{sec:Debugging}. + +\item Podgląd wyniku składu: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} +\end{alltt} +Polecenie to wymaga uruchomionego środowiska graficznego X~Window. + +\item Przetwarzanie wyniku składu do \PS{} w~celu wyświetlenia lub wydruku: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Tworzenie dokumentu bezpośrednio w~formacie \acro{PDF}: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Podgląd dokumentu \acro{PDF}: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{lub:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Programy \cmdname{gv} i~\cmdname{xpdf} są dostarczane zwykle +w~ramach systemu operacyjnego, wobec tego nie zawarto ich +na \TL. Przed samodzielną instalacją warto odwiedzić strony, +odpowiednio: \url{http://www.gnu.org/software/gv} +i~\url{http://www.foolabs.com/xpdf}. W~sieci dostępny jest także +bezpłatny program Adobe Reader (\url{http://www.adobe.com}). + +\item Inne przydatne pliki testowe: + +\begin{ttdescription} +\item [small2e.tex] przykład prostszy niż \filename{sample2e}; +\item [testpage.tex] test położenia wydruku na kartce papieru, przydatny + do sprawdzenia, czy nasza drukarka nie wprowadza przesunięć; +\item [nfssfont.tex] służy do wydruku tablic fontowych; +\item [testfont.tex] jak wyżej, ale zamiast \LaTeX-a wymaga jedynie plain + \TeX{}; +\item [story.tex] najbardziej kanoniczny przykład dla plain \TeX{}; + na zakończenie przetwarzania uruchomionego poleceniem \Ucom{tex story}, + po ukazaniu się \code{*}, należy wpisać \Ucom{\bs bye}. +\end{ttdescription} + +\end{enumerate} + +Początkującym użytkownikom polecamy stronę +\url{http://tug.org/begin.html} oraz podręcznik +Petera Flynna \textsl{Formatting Information}, dostępny pod adresem +\url{http://www.ctan.org/tex-archive/documentation/beginlatex}. + +%-------------- +\section{Instalacja dla systemu \MacOSX{}} +\label{sec:mac-install} + +Na komputerach Macintosh \TL{} działa jedynie pod systemem operacyjnym +\MacOSX (starsze systemy z~działającym systemem \TeX{} mogą +korzystać z~makr, fontów i~dokumentacji o~ile zainstalujemy rozszerzenie +Joliet dostępne na \url{http://www.tempel.org/joliet}). + +\noindent Instalacja pod \MacOSX{} może być wykonana na dwa sposoby. + +W 2005 r. rekomendowana jest instalacja Mac\TeX, nowej dystrybucji +dostępnej na \pkgname{live} \DVD{} w~katalogu \dirname{mactex/}. +Zawiera ona własny program instalacyjny pełnej dystrybucji systemu \TeX, +która jest kombinacją te\TeX-a, \TL{} i~dodatkowych programów oraz +dokumentacji. Szczegóły na temat projektu Mac\TeX{} znajdują się na stronie: +\url{http://tug.org/mactex}. + +Jeśli wolimy, w~\MacOSX{} można także zaistalować \TL, wykorzystując +skrypty \filename{install*}. Wymagane jest do tego posiadanie powłoki +\cmdname{bash}. Od wersji \MacOSX{} 10.2 \cmdname{bash} jest standardowo +dostępny, a~więc instalujemy podobnie jak opisano to powyżej w~części +\ref{sec:unix-install} na str.~\pageref{sec:unix-install}. Wcześniejsze +wersje systemu operacyjnego wymagają aktualizacji, czyli pobrania z~sieci +powłoki \cmdname{bash}. + +%% Mac & bash notes removed 17.11.2004 +% +%\subsection{Środowiska pracy w~\MacOSX{}} +% +%Na komputerach Macintosh używamy zwykle \TeX-a w~środowisku pracy +%obejmującym wiersz poleceń, edytor, program do podglądu itp. +%Mamy do wyboru kilka takich środowisk: +% +%\begin{cmddescription} +%\item [TeXShop] dostępny na \TL{} w~pliku +%\filename{./MacOSX/texshop.dmg}. Szczegółowe informacje można znaleźć +%na stronie \url{http://www.uoregon.edu/~koch/texshop/texshop.html}. +% +%\item [ITeXMac] dostępny na \TL{} w~pliku +%\filename{./MacOSX/iTeXMac-*.dmg}. Patrz też +%\url{http://itexmac.sourceforge.net}. +% +%\item [Mac-emacs] implementacja Emacs dla \MacOSX{} zintegrowana +%z~\pkgname{AucTeX}. Patrz też +%\url{http://www.cs.man.ac.uk/~franconi/mac-emacs}. +% +%\end{cmddescription} +% +%Powyższe środowiska stosują \dirname{/usr/local/teTeX} jako domyślną +%lokalizację oprogramowania \TeX-owego, wobec tego instalację należy +%wykonać w~tym katalogu (bądź zmienić konfigurację środowiska). + +\subsection{Strona kodowa Macintosh CE} +Piszący po polsku użytkownicy \MacOSX{} mają do wyboru stosowanie dwóch +8-bit\-owych stron kodowych: +\begin{description} +\item[iso8859-2] -- co wiąże się z~wykorzystywaniem standardowego + oprogramowania uniksowego (Cocoa używa wyłącznie unikodu), jak na przykład + Emacsa. +\item[Mac CE] -- co pozwala na stosowanie tradycyjnego (Carbon) oprogramowania + jak np.~BBEdit. Weźmy pod uwagę ten przypadek. +\end{description} + +Na \TL{} w~standardowych pakietach \LaTeX-a znajduje się plik +\verb|macce.def|, który pozwala \LaTeX-owi wczytywać polski tekst +z~wykorzystaniem pakietu \verb|inputenc|: + +\verb|\usepackage[macce]{inputenc}| + +Ponadto mamy tablice przekodowań dla Mac~CE, niewymagające stosowania +pakietu \verb|\inputenc|. Zamiast niego wystarczy wpisać w~pierwszym wierszu +pliku deklarację: + +\verb|%& --translate-file=macce-pl| + +%-------------------------- +\section{Instalacja i~użytkowanie pod Windows} +\label{sec:win-install} + +Niniejsze wydanie \TL{} ponownie zawiera program instalacyjny dla Windows; +jest to obecnie \cmdname{tlpmgui.exe}. Program ten posiada podobne opcje +jak instalator dla systemów Unix: pozwala wybrać schemat, poszczególne +kolekcje, katalogi dla instalacji, a~więc ma funcjonalność opisaną +już w~części~\ref{sec:unix-install-disk} na +str.~\pageref{sec:unix-install-disk}. Dodatkowo, po instalacji właściwej, +możliwe jest dodawanie bądź usuwanie pakietów a~także wykonywanie +najważniejszych czynności administracyjnych, jak aktualizacja bazy danych +instalacji, generowanie formatów czy map fontowych. +Możliwe jest także przygotowanie systemu operacyjnego do uruchamiania +programów bezpośrednio z~\DVD. + +\cmdname{tlpmgui} wykorzystuje jako ,,silnik'' program \cmdname{tlpm}. + +Oprogramowanie dla Windows w~\TL{} jest oparte o~zaktualizowane +programy, zapożyczone z~projektu \XEmTeX{}, sukcesora dystrybucji +\fpTeX{} (patrz \url{http://www.metz.supelec.fr/~popineau/xemtex-1.html}). +Zawiera ponadto niektóre starsze (ale nadal działające) programy, +szczególnie przeglądarkę plików \texttt{dvi}, \textsf{Windvi}, która jest +podobna w~użyciu do znanego z~systemów Unix programu \textsf{xdvi}. +Dokumentacja \textsf{Windvi} znajduje się +w~\OnCD{texmf/doc/html/windvi/windvi.html}. + +\TL{} może być instalowany w systemach Windows 98, \acro{ME}, +\acro{NT}, \acro{2K} lub \acro{XP}. + +\textbf{Uwaga:} Użytkownicy Win9.x powinni zadbać aby system posiadał +wystarczający obszar dla nowych zmiennych środowiskowych. W~tym celu +przed instalacją należy dopisać do pliku \verb|C:\config.sys| wiersz +\texttt{SHELL=<path>COMMAND.COM /E:4096 /P} i~ponownie uruchomić komputer. + +\subsection{Instalacja \protect\TeX\protect\ Live na twardym dysku} + +Po włożeniu płyty do napędu \acro{CD}, autostart powinien uruchomić program +\cmdname{tlpmgui}. Jeśli to nie nastąpi, kliknij menu \guiseq{Start\arw +Uruchom} i~wybierz \verb|<litera CD-ROM>:\setup-win32\tplmgui.exe| (lub +\verb|<litera DVD>:\texlive\setup-win32\tplmgui.exe| jeśli instalujesz +z~płyty \TeX{} Collection DVD), a~następnie kliknij OK. + +Ukaże się okno instalatora zatytułowane \guiseq{Program instalacji +i~konfiguracji TeX Live}. Zawiera ono następujące sekcje: \guiseq{Modyfikacja +schematów}, \guiseq{Instalacja}, \guiseq{Wybierz schemat}, \guiseq{Wybierz +system}, \guiseq{Katalogi} i~\guiseq{Opcje}. + +W~sekcji \guiseq{Katalogi}, obok przycisku \guiseq{CD/DVD} powinien być +wyświetlony dysk instalacyjny, np. \texttt{F:/} (lub \texttt{F:/texlive/} +dla DVD). Jeśli tak nie jest, +naciśnij przycisk \guiseq{CD/DVD} i~wybierz napęd \acro{CD} z~TeX Live CD +(lub katalog \texttt{texlive} na \TeX{} Collection DVD). + +Za pomocą przycisku \guiseq{TLroot} możesz wybrać katalog, w~którym chcesz +zainstalować \TL. Wybrany katalog zostanie wpisany do zmiennej środowiskowej +\texttt{TLroot} do późniejszego użycia. Przyciski \guiseq{TEXMFTEMP} +i~\guiseq{TEXMFCNF} wskazują relatywne do \guiseq{TLRoot} katalogi (pod +koniec instalacji zostaną przypisane zmiennym środowiskowym +\texttt{TEXMFTEMP} i~\texttt{TEXMFCNF}). Katalogi te są automatycznie +aktualizowane przy zmianie TLroot. + +W~sekcji \guiseq{Wybierz schemat} należy wybrać odpowiedni schemat +instalacyjny \TL{} przez naciśnięcie jednego z~dostępnych przycisków +radiowych (np. \guiseq{scheme-gust}). Przy nazwie każdego schematu znajduje się +przycisk \guiseq{Informacje}, po naciśnięciu którego wyświetlana jest lista +kolekcji zawarta w~wybranym schemacie. + +Schematy to obszerne zestawy pakietów przeznaczone do wstępnego wyboru +instalowanych komponentów. Mamy do wyboru schematy dla podstawowej, +przeciętnej i~pełnej instalacji, pozostałe przygotowano z~myślą o~wybranych +grupach użytkowników (np.~GUST i~GUTenberg przygotowały schematy dla swoich +członków) lub zastosowaniach (np.~XML lub Omega). Wstępnie wybrane schematy +można modyfikować. Dodatkowe kolekcje można wybrać w~sekcji +\guiseq{Modyfikacja schematów}. Na przykład po naciśnięciu przycisku +\guiseq{Wybierz} obok \guiseq{Kolekcji standardowych} można wybrać dodatkowe +kolekcje, takie jak Metapost, Omega lub dokumentacje w~różnych językach. +Wybór zaznaczamy haczykiem. + +\textbf{Uwaga:} + Kolekcje \guiseq{Ghostscript}, \guiseq{Perl} i~\guiseq{Wintools} są +zaznaczone domyślnie i~powinny zostać zainstalowane, ponieważ są wymagane +przez wiele programów. Można z~nich zrezygnować, gdy masz je już +zainstalowane i~wiesz, co robisz. + +Ustawiane są także zmienne środowiskowe \verb|PERL5LIB| i~\verb|GS_LIB|. + +W~sekcji \guiseq{Modyfikacja schematów}, po przyciśnięciu przycisku +\guiseq{Wybierz} przy \guiseq{Kolekcjach języków}, otwiera się okno, w~którym +można wybrać do zainstalowania dodatkowe kolekcje z~pakietami dla obsługi +konkretnych języków. Wybór zaznaczamy haczykiem. + +Właściwa instalacja rozpoczyna się po naciśnięciu przycisku +\guiseq{Instaluj}. Zaczekaj cierpliwie aż do pojawienia się komunikatu +o~pomyślnym zakończeniu instalacji. + +Do menu \guiseq{Start\arw Programy\arw TeXLive2005} dodawany jest skrót +do \cmdname{tlpmgui}. + +Jeśli to będzie konieczne (Win9x/WinME), będziesz poproszony o~ponowne +uruchomienie komputera. + +\subsection{Uruchomienie z DVD} + +Przy uruchomieniu z DVD mamy dodatkową zakładkę \guiseq{Uruchom z DVD}. +Pozwala ona przygotować \TL{} do pracy wprost z dysku \acro{DVD} bez +instalacji. Po naciśnięciu przycisku \guiseq{Ustaw} dodawane są zmienne +środowiskowe i~generowane są formaty na dysku lokalnym. +Od tej chwili można korzystać z~\TL, pamiętając tylko o~włożeniu płyty +do napędu DVD. + +%\smallskip {\small\noindent +%Bardziej zaawansowani użytkownicy (szczególnie ci, którzy chcą +%uruchamiać programy z~wiersza poleceń i~samodzielnie modyfikować +%ustawienia programów) mogą przygotować system, wykorzystując +%plik wsadowy \cmdname{mkloctex.bat} (katalog \dirname{bin/win32/}). +%Po skopiowaniu pliku na dysk twardy należy go uruchomić z~wiersza poleceń +%(okno DOS/CMD), podając dwa parametry: literę \CD{} i~literę dysku twardego, +%na którym chcemy utworzyć pomocnicze drzewko \TeX-owe. +%Po zapoznaniu się z~końcowymi komunikatami wyświetlanymi +%przez program, zalecane jest wykonanie sugerowanych tam czynności. +% +%} + +\subsection{Programy pomocnicze dla Windows} +\label{sec:win-xemtex} + +Aby instalacja była kompletna, \TL{} wymaga kilku pomocniczych +programów, które nie są dostarczane wraz z~systemem Windows. +Wiele skryptów napisano w~języku Perl, ponadto wiele narzędzi wymaga +programu Ghostscript (interpretera języka PostScript) do +rasteryzacji bądź konwersji plików. Przydatne są także w~wielu wypadkach +różne programy do obróbki grafiki. Wreszcie~-- posiadanie edytora +zorientowanego na środowisko \TeX{} znacznie ułatwi pracę. + +Wszystkie takie programy dla Windows dosyć łatwo znaleźć w~sieci, +ale ponieważ jest ich spory wybór, postanowiliśmy te najbardziej godne +polecenia umieścić w~dystrybucji \TL: +\begin{itemize*} +\item \cmdname{Ghostscript} 7.07; +\item minimalną dystrybucję \cmdname{Perl} 5.8, wystarczającą do + uruchomienia wszystkich, zawartych na \TL{} skryptów perlowych; + %\item \cmdname{ImageMagick} 5.5.6 + %\item \cmdname{ISpell} -- korektor pisowni + %\item zaawansowany edytor \cmdname{XEmacs} 21.5.14 wraz z~kolekcją + %pakietów do wspomagania pracy w~środowisku programów \TeX-owych. +\item win-tools -- zestaw kilku przydatnych programów (\texttt{bzip2}, +\texttt{gzip}, \texttt{jpeg2ps} i~\texttt{tiff2png}) +\end{itemize*} + +Powyżej wymienione programy zapożyczono z~dystrybucji \XEmTeX{}, +sukcesora fp\TeX. + +Programy \cmdname{Perl} i~\cmdname{Ghostscript} są instalowane domyślnie, +ponieważ są wymagane do uruchamiania wielu ważnych narzędzi. +Istnieje jednakże możliwość rezygnacji z~instalowania obu tyvh programów, jeśli +mamy je już dostępne w~systemie. + +Poniżej zamieszczono listę miejsc, skąd można pobrać programy pomocnicze: + +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.activestate.com/} (uzupełniające, przydatne + pakiety należy pobrać z~zasobów CPAN \url{http://cpan.org}) +\item[ImageMagick] bogaty zestaw narzędzi do wsadowego przetwarzania + plików graficznych (\url{http://www.imagemagick.com}) +\item[NetPBM] zamiast ImageMagick do przetwarzania i~konwersji plików + graficznych możemy użyć NetPBM (\url{http://netpbm.sourceforge.net/}) +\item[Edytory dla systemu \TeX{}] mamy tutaj spory wybór, zależny od + indywidualnych preferencji użytkownika: + \begin{itemize*} + \item \cmdname{GNU Emacs} w~wersji klasycznej dla Windows + (\url{http://www.gnu.org/software/emacs/windows/ntemacs.html}) + \item \cmdname{XEmacs} -- bardziej przyjazna wersja dla Windows + (\url{http://www.xemacs.org/}) + \item \cmdname{WinShell} -- prosty edytor/shell, dostępny na \TL + w~katalogu \dirname{support/WinShell} (\url{http://www.winshell.de}) + \item \cmdname{WinEdt} -- bogaty edytor dla \TeX-a, dostępny jako + \emph{shareware} (\url{http://www.winedt.com}) + \item TeXnicCenter -- kolejny, dosyć bogaty edytor + (\url{http://www.toolscenter.org/products/texniccenter/}) + \item \cmdname{Vim} -- rozbudowany i~bardzo silny edytor, wywodzący się + z~klasycznego dla systemów Unix \cmdname{vi}, dostępny na \TL{} + w~katalogu \dirname{support/vim} (\url{http://www.vim.org}) + \item \cmdname{LEd} -- polski edytor dostępny z + \url{http://www.ctan.org/support/LEd} + \item \cmdname{SciTE} -- edytor dostępny w~sieci pod adresem: + \url{http://www.scintilla.org/SciTE.html} + \end{itemize*} +\end{description} + +Możemy zainstalować z~sieci także inne narzędzia, których zabrakło na +\TL{} z~powodów licencyjnych. Przykładem jest tu \cmdname{GSView}, +wygodny program wykorzystujący \cmdname{Ghostscript} do wyświetlania +i~drukowania plików PS/PDF. Dostępny jest on m.in. +na \url{http://www.cs.wisc.edu/~ghost/gsview/}, a~także na każdym serwerze +\acro{CTAN}. + +\section[Zarządzanie systemem \protect\TL{} w~Windows]{Zarządzanie + systemem \protect\TL{} w~Windows} +\label{sec:win-managing} + +Po zainstalowaniu \TL{} można użyć \texttt{tlpmgui} razem z~\TL{} CD (lub \TeX{} +Collection DVD) do zmian i~administracji Twoją instalacją. +Skrót do \texttt{tlpmgui} dostępny jest w~menu \guiseq{Start\arw Programy\arw +TeXLive2005}. Okno programu zawiera tym razem następujące zakładki: +\guiseq{Dodawanie pakietów}, \guiseq{Usuwanie pakietów}, \guiseq{Zarządzanie +instalacją} i~\guiseq{Odinstalowanie}. + +\subsection{Dodawanie/usuwanie pakietów} + +Zakładki \guiseq{Dodawanie pakietów} lub \guiseq{Usuwanie pakietów} posiadają +następującą funkcjonalność: + +\begin{itemize} +\item W~sekcji \guiseq{Przyciski} naciśnięcie przycisku \guiseq{Szukaj} +wypełnia/odświeża zawartość sekcji \guiseq{Wybierz pakiety do...} czyli +kolekcje i~pakiety do instalacji lub usunięcia. + +Podczas dodawania porównywana jest lista wszystkich pakietów z~\acro{CD} (lub +\acro{DVD}) z~listą uprzednio zainstalowanych. Wyświetlane są tylko +niezainstalowane pakiety. + +Przy usuwaniu wyświetlane są tylko już zainstalowane pakiety. + +Proszę zwrócić uwagę, że w~obu zakładkach wyświetlane są najpierw kolekcje, +a~następnie pojedyncze pakiety. + +\item Wybierz pakiet przez kliknięcie na jego nazwie. Zostanie on +podświetlony. Po naciśnięciu przycisku \guiseq{Informacje} wyświetlany będzie +po prawej krótki opis. Dla wielokrotnego wyboru zaznaczaj kolejne elementy na +liście, klikając na nie przy uprzednio przyciśniętym klawiszu Ctrl lub Shift. +Można zaznaczać również przyciskając lewy klawisz myszy i~przeciągając mysz +w~dół albo w~górę. + +\item Naciśnij przycisk \guiseq{Instaluj} lub \guiseq{Usuń} w~sekcji +\guiseq{Przyciski} by wykonać odpowiednie polecenie. +\end{itemize} + +\subsection{Konfigurowanie i inne zadania administracyjne} + +Polecenia dostępne w~zakładce \guiseq{Zarządzanie instalacją} są pomocne +przy wykonywaniu czynności po dodaniu pakietów językowych, fontów czy +formatów, a~także przy odświeżaniu bazy danych instalacji, czy ręcznym +dodawaniu pakietów (bez pomocy \texttt{tlpmgui}). + +Możemy tu wykonać następujące czynności: + +\begin{itemize} +\item Odświeżenie bazy danych \filename{ls-R} +\item Tworzenie formatów (wszystkich lub brakujących) +\item Edycja \filename{language.dat} +\item Edycja \filename{fmtutil.cnf} +\item Edycja \filename{updmap.cfg} +\end{itemize} + +Uwaga: okno Edycja\dots{} można zamknąć przyciskiem \guiseq{Anuluj} lub +\guiseq{Gotowe}; w~tym drugim wypadku zostaną odbudowane pliki formatów +(bądź mapy fontowe, gdy edytowano \filename{updmap.cfg}), a~następnie zostaną +odświeżone bazy danych instalacji (pliki \filename{ls-R}). + +Więcej informacji na temat indywidualnej konfiguracji zawarto +w~części~\ref{sec:persconf}, na str.~\pageref{sec:persconf}. + +\subsection{Odinstalowanie \protect\TL{}} + +Zakładka \guiseq{Odinstalowanie} udostępnia polecenie, którego działanie nie +jest warte opisu i~nie wiadomo komu jest ono potrzebne\dots :-) + +\textbf{Uwaga:} katalogi \path|texmf-local| (zawierający prywatne fonty, makra +itp.) oraz \path|setup-win32| (zawierający \texttt{tlpmgui} i~związane z~nim +pliki) nie są usuwane podczas odinstalowania. Katalogi te należy usunąć +samodzielnie. + +\subsection{Dodawanie własnych pakietów do instalacji} + +Gdy zamierzamy dodać pakiety, których brak w~dystrybucji +\TL, warto instalować je w~katalogu +specyfikowanym przez zmienną \envname{\$TEXMFLOCAL}. W~ten sposób +zabezpieczymy te pakiety podczas aktualizacji/wymiany oprogramowania +\TL{}. + +Katalog wskazywany przez \envname{\$TEXMFLOCAL} jest początkowo pusty. +Przykładowo: dodajemy pakiet dla Maple (przetwarzanie symboliczne); +pliki stylów należy skopiować do katalogu +\path|...\texmf-local\tex\latex\maple\| \ +zaś pliki dokumentacji do katalogu +\path|...\texmf-local\doc\latex\maple\| + +Na zakończenie należy \textbf{koniecznie} zaktualizować bazę danych +instalacji \texttt{ls-R}: albo poprzez wybór z~menu programu \texttt{tlpmgui}, +albo przez uruchomienie z~linii poleceń \file{mktexlsr}. + +\subsection{Uruchamianie \texttt{tlmp.exe} z linii poleceń} + +Program \cmdname{tlpm.exe} jest intensywnie używany jako ,,silnik'' +\cmdname{tlpmgui}. Może być uruchamiany samodzielnie z~linii poleceń +i~posiada wiele użytecznych opcji, które można wyświetlić po uruchomieniu: +\begin{verbatim} +tlpm --help +\end{verbatim} + +Więcej informacji i~przykładów użycia można znaleźć +w~pliku \path|tlpm.readme| (katalog \path|setup-win32|). + +\subsection{Instalacja sieciowa} + Biblioteka \KPS{} + %(patrz rozdział \ref{}) + rozpoznaje nazwy UNC, wobec tego +możemy ich użyć dla specyfikacji drzew katalogów TEXMF udostępnianych w~sieci +komputerowej. Wszystkie pliki z~wyjątkiem zawartych w~katalogu +\texttt{bin/win32} mogą być współdzielone z~instalacjami \teTeX{} lub \TL{} +systemów Unix/Linux. Oznacza to, że można użyć Samby do zamontowania serwera +NT dla stacji roboczej Unix lub odwrotnie: serwer np. Linux może udostępniać +zasoby dla stacji Windows. + +\noindent Dostępne są następujące możliwości: + \begin{itemize} +\item Instalacja całego oprogramowania na serwerze. Wystarczy dodać + binaria dla wymaganych systemów w~podkatalogach \texttt{bin}, np. + \texttt{bin/win32} i~\texttt{bin/i386-linux}, następnie należy ustawić główne + zmienne środowiska. W~Windows można użyć nazw UNC dla wskazania odpowiednich + katalogów. +\item Instalacja lokalnych kopii binariów i~plików formatów. W~tym wypadku + należy przypisać zmienną \envname{\$TEXMFMAIN} do katalogu dostępnego + na zdalnej maszynie (w~sieci), a~zmienną \envname{\$VARTEXMF} + do katalogu, który będzie przechowywał lokalne pliki konfiguracyjne + i~inne generowane pliki. +\end{itemize} + + +\subsection{Różnice w~stosunku do standardowego \Webc{} w~systemach Win32} +Programy \Webc{} działające w~systemach Win32 posiadają szczególne cechy, +o~których warto wspomnieć: + +\begin{description} +\item[\KPS{}] -- tablice haszowe, tworzone w~\TL{} przez bibliotekę + \KPS{}, są bardzo duże. Aby skrócić czas uruchamiania dowolnego programu, + wykorzystującego \KPS{}, tablice haszowe zostają umieszczone w~pamięci + współdzielonej przez procesy. W~ten sposób zmniejszono znacznie czas + uruchamiania programów wywoływanych kolejno, jeden przez drugi + (np. \texttt{tex} wywołujący \texttt{mpost} wywołujący \texttt{tex}). + Zmianę tę ukryto przed użytkownikiem, z~wyjątkiem sytuacji, gdy + zostanie użyta opcja~\texttt{-1} dla diagnostyki działania \KPS; + można wtedy śledzić wykorzystanie pamięci współdzielonej. +\item[\cmdname{kpsecheck}] -- program ten oferuje kilka opcji + uzupełniających dla programu \cmdname{kpsewhich}. + Pozwala na wylistowanie wszystkich plików, które występują wielokrotnie + w~dostępnych drzewach katalogów texmf. Może to być przydatne, choć + często możemy otrzymywać niepożądane komunikaty o~dziesiątkach plików typu + \texttt{README}. Warto tu wspomnieć, że takie pliki powodują + ,,zapychanie'' się mechanizmu haszowego \KPS{}; na szczęście biblioteka ta + nigdy ich nie wyszukuje. Aby tego uniknąć, należy użyć opcji + \texttt{-multiple-occurences} wraz z~dwiema innymi, pozwalającymi + podać wzorce nazw do pominięcia lub włączenia w~procesie przeszukiwania + (można podać kilka wzorców). + + \cmdname{kpsecheck} raportuje także stan pamięci współdzielonej: używanej + i~nieużywanej. Warto czasem o~tym wiedzieć, gdyż pokazywany + status ,,pamięć w~użyciu'' może oznaczać, że działa kilka procesów + i~efekt wykonania polecenia \cmdname{mktexlsr} zostanie każdorazowo + opóźniony do czasu, aż nie będzie pracował żaden program korzystający + z~\KPS{}. + + \cmdname{kpsecheck} pozwala także określić położenie programu +Ghostscript. W~systemach Win32 łatwiej jest wielu programom skorzystać +z~biblioteki DLL programu Ghostscript i~znaleźć ją na podstawie rejestrów +systemowych, niż na podstawie zmodyfikowanej przez użytkownika zmiennej +\envname{PATH} (ponadto zmienne środowiskowe, szczególnie w~starszych + wersjach systemu Windows, mają dość ograniczoną pojemność). +\item[\Webc{}] -- programy dla Windows posiadają kilka dodatkowych opcji + nieobecnych w~wersjach kompilowanych dla Unix i~jedną działającą nieco + inaczej: + \begin{itemize} + \item \texttt{-halt-on-error} pozwala zatrzymać przetwarzanie + na pierwszym napotkanym błędzie; + \item \texttt{-job-time} ustawia czas tworzonych plików na taki sam + jak pliku przetwarzanego; + \item \texttt{-time-statistics} wyświetla statystyki dotyczące czasu + przetwarzania; warto tu wspomnieć, że systemy Win9x, nie będąc prawdziwymi + systemami wielozadaniowymi, nie mają prawidłowo działającego pomiaru + czasu dla krótkotrwałych procesów, wobec tego wyświetlane wartości są + jedynie przybliżone; w~NT/2K/XP wyniki są bardziej dokładne; w~Win32 brak + polecenia \texttt{time} znanego z~systemów Unix. + \end{itemize} +\end{description} + + +\subsection{Konfiguracja indywidualna} +\label{sec:persconf} +\subsubsection{Dvips} + +Plik konfiguracyjny \verb+config.ps+ programu Dvips znajduje się +w~katalogu \path|C:\TeXlive2005\texmf-var\dvips\config\|. +Plik ten można otworzyć w~dowolnym edytorze (np. w~\cmdname{WinShell}) +po to, aby zmienić niektóre parametry działania Dvips. Najważniejsze z~nich +zgrupowano w~blokach deklaracji: + +\begin{description} +\item [fonty] -- można zmienić domyślne parametry generowania fontów +przez \MF{}-a dla danej drukarki (parametr \texttt{M}) i~rozdzielczość +(parametry \texttt{D}, \texttt{X}, \texttt{Y}). Standardowo +fonty generowane są dla drukarek laserowych, zgodnych z~Hewlett Packard +(tryb ljfour), w~rozdzielczości 600~dpi. Domyślnie ustawiono wykorzystanie +fontów CM (oraz PL) w~ich wersji obwiedniowej (Type~1), wobec tego +Dvips nie powinien odwoływać się zbyt często do programu +\cmdname{mktexpk}. +\item[drukarka] -- parametr `o' określa nazwę portu/przekierowania wydruku. +Gdy nie wpisano nazwy drukarki (portu), wynik pracy będzie +zapisywany w~pliku PostScriptowym \verb+.ps+. Drukarkę specyfikujemy +jednym z~poniższych sposobów: +\begin{verbatim} +o lpt1: +% o | lpr -S server -P myprinter +% o \\server\myprinter +\end{verbatim} + %\item[mapy fontowe] -- do standardowej mapy fontowej \verb+psfonts.map+ + % (wiersz: \verb+p psfonts.map+) możemy dołączyć dodatkowe mapy fontowe, + % np.: + %\begin{verbatim} + %p +bsr.map + %p +hoekwater.map + %\end{verbatim} + %parametr \verb+p+ musi znajdować się w~pierwszej kolumnie; nazwy plików + %z~dołączanymi mapami poprzedzamy znakiem \texttt{+}; zbędne mapy + %można wyłączyć, wstawiając na początku wiersza znak komentarza (\texttt{\%}). + %Wymienione w~przykładzie mapy dotyczą dołączania wersji obwiedniowej fontów + %CM produkcji Blue Sky Research (bsr.map) i~dodatkowych fontów logo, wasy, + %stmaryrd, wykonanych przez Taco Hoekwatera (hoekwater.map). +\item[papier] -- domyślnie Dvips tworzy dokumenty dla formatu A4. + Zmiana formatu (np. na US Letter) wymaga przeniesienia jego definicji + na początek bloku deklaracji formatów (blok ten rozpoczynają wiersze + ze znakiem \texttt{@}). Na początek bloku trzeba więc przenieść wiersze: +\begin{verbatim} +@ letterSize 8.5in 11in +@ letter 8.5in 11in +@+ %%BeginPaperSize: Letter +@+ letter +@+ %%EndPaperSize +\end{verbatim} +\end{description} + +\textbf{Uwaga:} obecna dystrybucja \TL{} posiada ułatwioną +procedurę automatycznej aktualizacji map fontowych dla Dvips +i~Pdftex, wykonywaną przez program \cmdname{updmap}. +Po dodaniu pakietów z~fontami należy zmodyfikować plik \verb+updmap.cfg+ +w~katalogu \path|$VARTEXMF/web2c|, a~następnie uruchomić program +\verb+updmap+. Obie czynności wykonuje odpowiednie menu programu +\guiseq{tlpmgui}. + +\subsubsection{Pdftex} +Konfiguracja programu pdf(la)tex wymaga modyfikacji pliku\\ +\verb+...\TeXlive\texmf-var\generic\config\pdftexconfig.tex+\\ + %W pliku tym możemy deklarować dodatkowe mapy fontowe wczytywane przez + %program, choć obecnie tworzone są one automatycznie + %przez program \cmdname{updmap} (patrz ,,Uwaga'' zamieszczona powyżej). + %Stosowana jest tu nieco + %inna notacja niż w~\verb+config.ps+: + %\begin{verbatim} + %map pdftex.map + %map +lw35.map + %%map +rawfonts.map + %\end{verbatim} + Można tu ustawić parametry pracy programu \texttt{pdftex}: +rozmiar papieru, stopień kompresji itp. Na przykład rozmiar strony dla +formatu letter ustawia się następująco: +\begin{alltt} +\bs{}pdfpagewidth=8.5 true in +\bs{}pdfpageheight=11 true in +\end{alltt} + +\subsubsection{GSView} +Począwszy od wersji zgodnej z~Ghostscript 6.50, GSView jest niestety +programem \textit{shareware}, wobec tego nie mógł znaleźć się na \CD. + +Parametry pracy programu są ustawiane m.in. w~menu \verb+Media+. +W~podmenu \texttt{Display Settings} można poprawić (kosztem szybkości pracy) +sposób wyświetlania: parametry \texttt{Text Alpha} +i~\texttt{Graphics Alpha} należy ustawić na 4~bity. +W~menu \verb+Media+ można też określić rozmiar papieru i~jego orientację. + +Uwagi dotyczące drukowania zawarto poniżej, w~podrozdziale~\ref{printing}. + +\subsubsection{WinDvi} +\label{sec:windvi} + Program \file{tlpmgui.exe} ustawia skojarzenie plików \verb+.dvi+ +z~uruchamianiem programu \file{Windvi}, ale nie tworzy dla tego programu +ikony na pulpicie. W~miarę potrzeby należy zatem wykonać to samodzielnie bądź +uruchamiać program z~linii poleceń lub menu edytora (po jego odpowiednim +skonfigurowaniu). + +W~menu \texttt{View} +\verb+->+\texttt{Options} można ustawić niektóre parametry pracy Windvi, +np. możliwość uruchamiania programów zewnętrznych (\texttt{Allow shell}), +automatyczne odświeżanie zmienionego pliku .dvi (\texttt{Autoscan}), +tryb pracy \MF{}-a i~rozdzielczość generowanych fontów (\texttt{MF mode} +i~\texttt{Pixels per inch}), współpracę z~Ghostscriptem (\texttt{Postscript}) +itp. Po zakończeniu pracy programu parametry zapisywane są +w~pliku \verb+$HOME/windvi.cnf+ (lub \verb+Moje dokumenty/windvi.cnf+). +Położenie tego pliku można ustalić po uruchomieniu z~wiersza poleceń: +\begin{verbatim} +c:\>kpsewhich --expand-var $HOME/windvi.cnf +\end{verbatim} +W~wypadku błędnego ustawienia parametrów pracy Windvi plik konfiguracyjny +wystarczy skasować. + +\subsection{Testowanie} + +Ogólne wskazówki dotyczące weryfikacji instalacji zawarto +w~części~\ref{sec:test-install}, na str.~\pageref{sec:test-install}. +Tutaj omówimy jedynie kwestie specyficzne dla Windows. + +Dla szybkiej kontroli poprawności instalacji należy uruchomić +edytor i~otworzyć plik \verb+sample2e.tex+ +(znajduje się on w~katalogu \path|C:\TeXLive2005\texmf\tex\latex\base\|). +Na belce z~narzędziami wybrać z~menu \guiseq{Command\arw LaTeX} (XEmacs) +lub wcisnąć ikonę uruchamiania programu \verb+latex+ (WinShell). +Następnie wybrać z~menu \guiseq{Command\arw View DVI} (XEmacs), lub +wcisnąć ikonę podglądu DVI (WinShell). Pierwsze uruchomienie \verb+windvi+ +zazwyczaj automatycznie generuje wymagane fonty ekranowe. Po kilku sesjach +komunikaty dotyczące generowania fontów staną się rzadsze. + %Warto ponadto wypróbować uruchamianie Dvips i~GSView z~programu + %\cmdname{WinShell}. + +\textbf{Wskazówka:} jeśli program \verb+latex+ nie może znaleźć pliku +do przetwarzania, naciśnięcie \textbf{Ctrl-Z} spowoduje natychmiastowe +zakończenie jego pracy. + +\subsection{Drukowanie}\label{printing} +Drukowanie bezpośrednio z~programu Windvi odbywa się z~wykorzystaniem +uniwersalnego sterownika druku systemu Windows. Z~definicji powinien być +on zgodny z~większością drukarek, jednakże ma on tendencję do tworzenia +olbrzymich +plików kolejek (spool) i~niektóre (starsze) wersje Windows po prostu +tego nie akceptują. Zaletą sterownika jest jedynie możliwość obsługi +grafik BMP i~WFM. Stosując metodę druku via sterownik Windows należy +prawidłowo ustawić parametry rozdzielczości (patrz +podrozdział~\ref{sec:windvi}), w~przeciwnym wypadku otrzymany wydruk może być +przeskalowany (np. drukując w~rozdzielczości 600dpi na drukarce 300dpi +otrzymamy niespodziewanie 1/4 zamierzonego rozmiaru wydruku). + +Drukowanie znacznie szybsze i~bardziej niezawodne zapewni konwersja pliku +\verb+.dvi+ do \verb+.ps+ programem Dvips i~wykorzystanie GSView. Z~menu +\verb+Plik+ należy wybrać \verb+Drukuj+, co wyświetli okno dialogowe +z~szeregiem opcji. Gdy mamy drukarkę PostScriptową, należy wybrać +\texttt{PostScript printer}. Drukowanie na drukarkach bez interpretera +PostScript wymaga zaznaczenia opcji \texttt{Ghostscript device} +(w~sekcji ,,Print Method'' okna) i~wybrania przyciskiem po prawej stronie +odpowiedniego urządzenia. + +%%% +\subsection{\cmdname{WinShell}}\label{sec:winshell} + +Jeśli nie decydujemy się na rozbudowany (ale i~bardzo silny) edytor +XEmacs, możemy samodzielnie zainstalować prosty i~łatwy w~obsłudze +edytor WinShell. Znajdziemy go na płytkach w~katalogu +\dirname{support/WinShell}. Wystarczy dwukrotnie kliknąć klawiszem myszy +na znajdującym się tam pliku \texttt{.exe}. +Program uruchamiamy z~menu Start bądź z~ikony/skrótu na pulpicie. +Dostosowanie do polskiej wersji Windows wymaga, prócz określenia języka +dla menu i~komunikatów, użycia menu +\verb+Opcje+ (Options) \verb+->+ \verb+Font+ \verb+->+ \verb+Zmień+ +i~wyboru w~wyświetlonym oknie \texttt{Skrypt} +napisu \texttt{Europa Środkowa}. Dzięki temu wpisywane za pomocą +prawego klawisza Alt polskie znaki diakrytyczne będą prawidłowo +wyświetlane. + +Aby skonfigurować uruchamianie programów otwieramy menu +\texttt{Options} \verb+->+ \texttt{Program Calls}. + +\begin{itemize}\itemsep 0pt +\item W zakładce DVIWin, w~polu ,,exe-file'', powinno być już wpisane +\texttt{windvi.exe}. +\item W zakładce Ghostview należy sprawdzić, czy prawidłowo podano +ścieżkę dla gsview32.exe:\\ +\hspace*{1em} \verb+C:\ghostgum\gsview\gsview32.exe+ (dla wersji 3.6 +i~nowszych). +\end{itemize} +Wciskając przycisk \texttt{OK} zatwierdzamy zmiany. + +Instalacja programu ustawia w~Windows skojarzenie plików \texttt{.tex} +z~uruchamianiem \cmdname{WinShell}. Dopóki nie zamierzamy korzystać +z~innego edytora (jak WinEdt lub Emacs) jest to poprawne. + +%\cmdname{WinShell} niestety nie posiada wbudowanej korekty pisowni, +%niemniej jednak po zainstalowaniu zestawu \path|extrabin| +%mamy do dyspozycji program \cmdname{Ispell} (program korekty pisowni, znany +%z~systemów Unix). Ponieważ znajduje się on w~ścieżce przypisanej +%zmiennej PATH, \verb+ispell.exe+ może być uruchamiany z~linii +%poleceń (okno DOS). Informację +%o~Ispell można znaleźć~w: \OnCD{texmf/doc/html/manpages/ispell.html} +%Na \CD{} dostępny jest słownik Ispell dla języka polskiego; +%typowe uruchamianie programu: \verb+ispell -t -b -d polish-win plik.tex+ +%powoduje wczytanie słownika w~kodowaniu Windows cp1250. +% +%Ispell można uruchamiać z poziomu \cmdname{WinShell}; +%w~podrozdziale~\ref{winshell:ispell} opisano jak dodać uruchamianie polecenia +%do menu edytora. + +\cmdname{WinShell} posiada pomoc, dostępną po naciśnięciu symbolu +$\textbf{\underbar{?}}$ na belce z~narzędziami. + +\subsubsection{Użycie plików ,,projektu''} + Wielokrotnie mamy do czynienia z~dokumentami składającymi się z~wielu +części. Najwygodniej gdy są one zapisane w~odrębnych plikach. +\cmdname{WinShell} umożliwia utworzenie pliku projektu (\textit{Project +file}), w~którym deklarujemy poszczególne części większego dokumentu. Nazwy +pliku projektu, traktowanego jako główny edytowany plik (\textit{Main file}), +oraz plików części są wyświetlane w~lewym oknie edytora. Dwukrotne kliknięcie +myszą na nazwie pliku pozwala na szybki wybór i~wyświetlenie potrzebnego +pliku w~głównym oknie edytora. Naciśnięcie ikony LaTeX na belce narzędziowej +uruchamia zawsze przetwarzanie głównego pliku, bez względu na to który plik +jest aktualnie wyświetlany. + +Na belce narzędziowej mamy dodatkowe przyciski pozwalające wyłączyć lub +włączyć wyświetlanie okna projektu (po lewej stronie) i~okna zapisu sesji +(log) -- na dole. Gdy plik projektu nie jest używany, lewą część okna można +zamknąć, wykorzystując całą szerokość ekranu dla edytowanego pliku. + +\subsubsection{Drukowanie z~\cmdname{WinShell} na drukarce PostScriptowej} +\label{winshell:print} + Ikona Dvips belki narzędziowej uruchamia program, który wynik pracy +zapisuje zwykle w~pliku \verb+.ps+. Oglądanie i/lub drukowanie takiego pliku +wymaga uruchomienia GSView. \cmdname{WinShell} pozwala zdefiniować +wygodne wywołanie polecenia dvips, które wynik przetwarzania wyśle od razu +do drukarki posiadającej interpreter PostScript. Przykładowo, dla drukarki +o~nazwie \texttt{vclw}, postępowanie będzie następujące: +\begin{enumerate} +\item Deklaracja danej drukarki w programie: +\begin{itemize} +\item otworzyć \cmdname{WinShell}, wybrać menu \texttt{Opcje} \verb+->+ + \texttt{Programy użytkownika}. +\item wybrać \texttt{Tool 1} w~spisie po prawej stronie i~wypełnić pola + po stronie lewej, np.:\vspace{-3pt} + \begin{quote} + Name: \verb+Drukuj+\\ + exe file: \verb+dvips+\\ + cmd-line: \verb+ -D600 %c.dvi -o vclw+\\ + skasować zaznaczenie okienka ,,najpierw DVIPS'' +\end{quote}%\vspace{-12pt} +\item nacisnąć \texttt{OK}. +\end{itemize} +\item Dodanie polecenia ,,Drukuj'' do belki narzędziowej: +\begin{itemize} +\item wybrać menu \texttt{Opcje} \verb+->+ \texttt{Przeglądaj} \verb+->+ + \texttt{Dostosuj paski}; +\item w okienku \verb+Kategoria+ wybrać \texttt{Programy użytkownika}; +\item wskazać \texttt{Drukuj} i przeciągnąć go myszą na belkę narzędziową, + umieszczając w~dowolnym miejscu obok innych poleceń; +\item w kolejno wyświetlanym oknie dokonać wyboru: ,,Tylko obrazek'' (Image +only), ,,Tylko tekst'' lub ,,Tekst i~obrazek''; najprościej wybrać +,,Tylko tekst'' i~zatwierdzić guzikiem + \texttt{OK}. + Napis \texttt{Drukuj} ukaże się na belce. (Bardziej wymagający użytkownicy + mogą wybrać opcję ,,Tylko obrazek'', następnie ,,Edytuj'' i~skonstruować + sobie własną ikonkę.) +\end{itemize} +\end{enumerate} +Uruchamianie polecenia zostało zdefiniowane. Aby drukować bezpośrednio na +drukarce wystarczy teraz nacisnąć guzik z~napisem ,,Drukuj''. + +%\subsubsection{Dodanie Ispell do \cmdname{WinShell}} +%\label{winshell:ispell} +%\begin{enumerate} +%\item Deklaracja polecenia Ispell: +%\begin{itemize} +%\item otworzyć \cmdname{WinShell}, wybrać menu \texttt{Opcje} \verb+->+ +% \texttt{Wywołanie programów} \verb+->+ \texttt{User defined}. +%\item wybrać \texttt{Tool 1} (lub \texttt{Tool 2}, jeśli \texttt{Tool 1} +% zostało już użyte) i~wypełnić pola po lewej stronie okna:\vspace{-3pt} +%\begin{quote} +% Name: \verb+Ispell+\\ +% exe file: \verb+ispell+\\ +% cmd-line: \verb+ -t -d polish-win %c.tex+\\ +% skasować zaznaczenie okienek ,,najpierw LaTeX'' i ,,najpierw DVIPS'' +%\end{quote}%\vspace{-12pt} +%\item nacisnąć \texttt{OK}. +%\end{itemize} +%\item Dodanie polecenia ,,Ispell'' do belki narzędziowej +% -- analogicznie jak powyżej, dla polecenia ,,Drukuj''. +%\end{enumerate} +% Gdy mamy otwarty dokument \TeX-owy, naciśnięcie guzika ,,Ispell'' uruchomi +%w~odrębnym oknie program Ispell, który rozpocznie sprawdzanie pisowni. +%Niepoprawne (lub nieznane) słowo zostanie wyświetlone, poniżej pojawi +%się kontekst i~czasem sugestie jak naprawić błąd (naciśnięcie klawisza +%cyfry umieszczonej obok sugerowanego słowa dokona zamiany +%błędnie napisanego słowa). Inne reakcje na błąd są wyświetlane +%u~dołu ekranu, np. naciśnięcie klawisza spacji ignoruje dany błąd i~wznawia +%wyszukiwanie. Więcej informacji na temat Ispell można znaleźć +%w:~\verb+C:\Program Files\TeXlive\texmf\doc\html\manpages\ispell.html+. +% +%Uwaga: poprawione słowa nie ukażą się w~oknie \cmdname{WinShell} +%dopóki plik nie zostanie zamknięty (przez naciśnięcie X w~prawym górnym +%rogu okna edytora) i~ponownie otwarty (z~menu Plik). + +\subsection{Wskazówki dla użytkowników Win32} + +\subsubsection{Różne wcielenia Win32} +To, co nazywamy Win32 nie jest właściwie systemem operacyjnym a~jedynie +zbiorem funkcji, z~których wiele (ok. 12000) można użyć do pisania +programów dla różnych systemów operacyjnych rodziny Windows. Spotykamy +różne wersje Windows: +\begin{itemize} +\item Win95 i Win98, które \emph{nie są prawdziwymi systemami +wielozadaniowymi i~wielowątkowymi}. Są to ostatnie (na szczęście) +metamorfozy systemu DOS, co można sprawdzić podczas startu systemu, +wymuszając ładowanie tylko wiersza poleceń: polecenie \texttt{ver} +zwróci wtedy np. napis ,,MS-DOS 7.0''. +\item NT, nowy system operacyjny, napisany od podstaw, wyposażony + w~prawdziwe możliwości wielozadaniowości i~inne zaawansowane cechy. +\item Windows 2000, oparty na NT, z~wszystkimi cechami zewnętrznymi + Win98. +\item Windows XP, występujący w~odmianach Personal i~Pro, jest ostatnim + krokiem połączenia cech obu linii produktów Win9x i~NT. +\end{itemize} + +Win9x mają możliwość uruchamiania jednocześnie programów 16- +i~32-bi\-to\-wych, ale ponieważ sam system nie jest w~całości +napisany dla trybu 32-bi\-to\-wego i~nie posiada ochrony pamięci, programy +16-bi\-to\-we mogą nadpisywać część pamięci wykorzystywanej przez system! +Niektóre elementy systemu, jak GDI (\emph{Graphical Device Interface}) +zarządzają w~sposób ograniczony zasobami (bitmapy, fonty itp.) +gdy wszystkie uruchomione programy jednocześnie korzystają z~tych zasobów. +Wszystkie nagłówki bitmap dostępnych w~tym samym czasie nie mogą przekroczyć +granicy 64KB. Jest to przyczyna spotykanego często gwałtownego spadku +wydajności systemu i~jego zawieszania. + +NT i W2K i~XP nie posiadają takich ograniczeń. Są to systemy w~pełni +wielozadaniowe i~z~ochroną pamięci. Wydają się bardziej stabilne, +ponieważ lepiej zarządzają pamięcią, posiadają lepszy system plików itp. + +\subsubsection{Wiersz poleceń} + Wielu użytkowników może zadać pytanie: ,,po co używać wiersza poleceń +w~systemie Windows?''. Dobre pytanie! Problem ma naturę bardziej ogólną. +Otóż nie wszystkie zadania daje się wykonać jedynie przy użyciu interfejsu +graficznego (\acro{GUI}). Wiersz poleceń dostarcza wielu możliwości rasowego +programowania (zakładając posiadanie przyzwoitego interpretera poleceń). + +\TeX{} jest programem działającym \emph{wsadowo} (\emph{batch}), +a~nie interakcyjnie: wylicza najlepszy wygląd każdej strony, rozwiązuje +odesłania itp. Taki charakter pracy możliwy jest jedynie podczas +globalnego przetwarzania dokumentu, nie ma tu możliwości interakcji. +Oznacza to, że program \TeX{} powinien być używany z~linii poleceń. +W~istocie nie jest to takie złe. Programy działające wsadowo, przeznaczone +do skomplikowanych zadań, są zwykle lepiej opracowane i~pozbawione błędów, +ponieważ nie są związane z~graficznym interfejsem. Do uruchamiania +takich programów można zawsze opracować interfejs graficzny, przekazujący +zadanie do wykonania i~inne parametry. Przykładem takiego właśnie działania +może być graficzny edytor (patrz punkt \ref{sec:winshell}). + +Niemniej jednak częste są sytuacje, gdy przydaje się możliwość uruchamiania +programów bezpośrednio z~linii poleceń, np. diagnostyka błędów w~wypadku +wystąpienia problemów (patrz punkt \ref{sec:Debugging} na +str.~\pageref{sec:Debugging}). + +\begin{description} +\item[Win9x] linia poleceń dostępna jest z~menu \texttt{Start->Programy->Tryb + MS~DOS} albo \texttt{Start->Uruchom}: należy tu wpisać \texttt{command.com}. +\item[NT, 2K, XP] dostęp do linii poleceń z menu \texttt{Start->Akcesoria-> + Command Prompt}; można także w~menu \texttt{Start->Uruchom} + wpisać \texttt{cmd.exe} co uruchomi interpreter poleceń (wyjaśnia to, + dlaczego trudno w~systemach opartych na NT mówić o~,,oknie DOS''). +\end{description} + +\subsubsection{Separatory ścieżek} +API Win32 obsługuje zarówno \texttt{/}, jak i~\path|\| jako separatory ścieżek. +Niestety interpretery poleceń obsługują wyłącznie \path|\|, a~więc +odwołując się do programu w~linii poleceń możemy użyć tylko tego znaku +(wynika to z~potrzeby kompatybilności: znak \texttt{/} używany jest często +jako prefiks dodatkowego parametru). +Gdy nazwa ścieżki jest używana przez program, oba separatory mogą być +stosowane wymiennie, a~nawet mieszane. + +Nie należy się dziwić gdy często spotkamy ścieżki pisane w~konwencji Unix +(a~więc separowane znakiem \texttt{/}). \fpTeX{} jest implementacją \Webc{} +i~z~zasady musi być zgodny między różnymi platformami. Dlatego właśnie +np. wszystkie pliki konfiguracyjne stosują konwencję uniksową notacji +ścieżek. + +\subsubsection{System plików} +\label{sec:clusters} + Najgorszą cechą Win9x z~punktu widzenia systemu \TeX{} jest prawdopodobnie +system plików zwany FAT. \TeX{} używa bardzo wielu niewielkich plików +(1--3KB) i~na współczesnych dyskach o~wielkiej pojemności każdy taki plik +potrafi faktycznie zająć nawet 32KB. Wykorzystanie dysku jest więc bardzo nieefektywne +zaś instalacja wszystkich plików z~\CD{} może w~rzeczywistości zająć wielokrotnie więcej miejsca niż łączna objętość plików. + +Bardziej nowoczesne systemy plików, takie jak NTFS, dostępne są w~nowszych +wersjach Windows są pozbawione ujemnych cech FAT: minimalna jednostka +alokacji dla pliku to zwykle 4KB, choć w~systemie NTFS można ją zredukować +nawet do 512 bajtów. + +\subsubsection{Jak dodać katalog do zmiennej PATH} +Większość programów korzysta ze zmiennych, którym można przypisać pewne +wartości. Zestaw takich przypisań (par: zmienna\dywiz wartość) +nazywamy środowiskiem. Każdy uruchomiony program korzysta z~kopii +środowiska i~może w~ramach tej kopii zmieniać przypisania niektórych +zmiennych (nie są one dostępne dla innych uruchomionych równolegle +programów). Instalator systemu \TeX\ dla Win32 konieczną konfigurację +środowiska przeprowadza automatycznie. Warto jednak wiedzieć, +jak konfigurować środowisko ręcznie. + +\texttt{PATH} jest specjalną zmienną wykorzystywaną do lokalizowania programów +w~systemie. Poszczególne wersje Windows mają różne procedury deklarowania +\texttt{PATH}: + +\begin{description} +\item[Windows 95/98] zmienna PATH jest tu deklarowana w~pliku + \texttt{autoexec.bat} (znajduje się on w~głównym katalogu dysku startowego). + Po wczytaniu pliku do edytora (np. Notatnik, WinShell) należy + odszukać wiersz z~napisem \texttt{PATH=} i~z~szeregiem ścieżek + oddzielanych separatorem \texttt{;} (średnik). Można dopisać kolejne ścieżki + wskazujące położenie programów, np. +\begin{verbatim} +PATH=c:\windows;c:\windows\system;c:\TeXLive2005\bin\win32 +\end{verbatim} + Proszę zauważyć, że ścieżki zawierające spację wymagają ujęcia w~parę + znaków \verb+"+. Poczynione zmiany będą aktywne po restarcie systemu. +\item[Windows ME] należy uruchomić specjalny program + \path|c:\windows\system\msconfig.exe| i~wybrać opcję ,,Środowisko'' + (\emph{Environment}). Po dodaniu lub modyfikacji zmiennej należy ponownie + uruchomić system. +\item[Windows NT/2K/XP] należy wybrać menu \texttt{Start -> Settings -> + Panel Sterowania}, w~opcji ,,System'' otworzyć zakładkę ,,Zaawansowane'', + następnie przycisk ,,Zmienne środowiskowe'' + i~tu modyfikować deklaracje zmiennych, zgodnie z~posiadanymi uprawnieniami. + Istniejącą zmienną \texttt{PATH} modyfikujemy + naciskając lewy klawisz myszy na napisie \texttt{PATH}. Pole ,,Wartość'' + (Value) pokaże listę katalogów rozdzielonych separatorem \texttt{;}. + Należy tu dopisać katalog zawierający programy środowiska \TeX-owego + (np. \path|c:\TeXLive2005\bin\win32|). + Gdy brak jest zmiennej \texttt{PATH}, należy kliknąć pole ,,Zmienna'', + wpisać \texttt{PATH}, przenieść kursor do pola ,,Wartość'' i~wpisać tu + odpowiedni katalog. + + Uwaga: przed zamknięciem okna dialogowego należy zatwierdzić zmiany + przyciskiem ,,Zastosuj''. +\end{description} +Dokonane zmiany można sprawdzić otwierając konsolę i~uruchamiając polecenie: +\begin{verbatim} +set NAZWA_ZMIENNEJ +\end{verbatim} +co wyświetli aktualnie aktywne wartości dla danej zmiennej. + +\subsubsection{,,Maszyny'' \TeX{}} +Z dokumentacji \Webc{} można wyczytać, że różnie nazwane programy +wykorzystują tę samą ,,maszynę'', np. \texttt{tex.exe} i~\texttt{latex.exe} +są dokładnymi kopiami tego samego programu, ale uruchamiają się +z~różnymi plikami formatu, zgodnie z~nazwą podaną w~wywołaniu. + +W~systemach Unix cecha ta jest zaimplementowana poprzez tzw. dowiązanie +symboliczne, co pozwala na zaoszczędzenie wiele miejsca na dysku: ten sam +program uruchamiany jest z~wieloma formatami. + +Interfejs aplikacji systemów Windows (API) nie zna pojęcia dowiązania. +Aby niepotrzebnie nie zajmować miejsca na dysku, zastosowano tu pomysł +umieszczenia głównej ,,maszyny'' \TeX{} w~pliku dynamicznie wiązanej +biblioteki (DLL). Z~kolei programy uruchomieniowe (.exe) umieszczono +w~niewielkich plikach, przekazujących przez nazwę parametr wywołania +(nazwę formatu). Na dysku znajdziemy zatem: +\begin{alltt} +18/09/2005 14:19 3 584 latex.exe +18/09/2005 14:19 3 584 pdfetex.exe +18/09/2005 14:19 524 288 tl90pdfetex.dll +\end{alltt} +Każdy z~tych \emph{identycznych} programów (\texttt{latex.exe}, +\texttt{mex.exe} itp.) korzysta ze wspólnego pliku \texttt{tl90pdfetex.dll}. +Podobne rozwiązanie zastosowano dla grupy programów \texttt{mktex*.exe}, +z~których każdy jest powiązany z~biblioteką \texttt{mktex.dll}. +W~dystrybucji dostępny jest program \texttt{irun.exe}, który tworzy +w~systemach Win32 odpowiedniki dowiązań systemu Unix. + +\subsection{W razie problemów} +\label{troubleshooting} + +\subsubsection{Co zrobić gdy \texttt{latex} nie może znaleźć potrzebnych +plików?} + +Należy użyć programu \cmdname{kpsewhich}, który jest narzędziem +do diagnostyki wszelkich problemów związanych ze znajdowaniem plików +(patrz część~\ref{sec:Debugging} na str.~\pageref{sec:Debugging}). + +\subsubsection{Co zrobić gdy instalacja nadal nie działa prawidłowo?} + +Należy odpowiedzieć sobie na szereg pytań: +\begin{enumerate} +\item czy program \file{tex.exe} jest w~ścieżce wymienionej w~zmiennej + \envname{PATH}? +\item czy zmienna \envname{TEXMFCNF} jest prawidłowo ustawiona + (standardowo \path|c:/TeXLive2005/texmf-var/web2c|)? + %\item czy są jakieś błędy w pliku \verb+.log+ utworzonym przez program + % \file{TeXSetup.exe}? W~pliku \verb+.log+ należy wyszukać słowo + % ,,\verb+Error+''. +\item diagnostyka błędów omówiona została w~części~\ref{sec:Debugging}. +\item opis znanych problemów i~ewentualne rozwiązania oraz poprawki można + znaleźć pod adresem \url{http://www.tug.org/tex-live.html}. +\end{enumerate} + +Oprogramowanie zawarte na \TL{} jest bardzo złożone i~składa się +z~ponad 250 programów i~około 40000 plików różnego pochodzenia. Niesłychanie +trudno przewidzieć wszystkie możliwe przyczyny problemów, niemniej jednak +dołożymy wszelkich starań aby pomóc je rozwiązać. + +%-------------------------- +% don't use \Webc so the \uppercase in the headline works. +\section{Instrukcja obsługi systemu Web2C} + +\Webc{} to zestaw programów związanych z~\TeX-em, tj. sam \TeX{}, \MF{}, +\MP, \BibTeX{} itd. Stanowią one rdzeń dystrybucji \TL. + +Oryginalna implementacja wykonana została przez Tomasa Rokickiego, który +w~roku 1987 stworzył pierwszy system \TeX{}-to-C, adaptując pliki wymiany +(\emph{change files}) pod Unix-em (pierwotnie były one dziełem Howarda +Trickey'a oraz Pavela Curtisa). W~czasie gdy Tim Morgan zajmował się +systemem, jego nazwa została zmieniona na Web-to-C\@. W~1990 roku prace nad +projektem przejął Karl Berry wraz z~dziesiątkami współpracowników, a~w~roku +1997 pałeczkę przejął Olaf Weber. + +\Webc{} działa na platformach systemowych, takich jak Unix (w~tym \MacOSX), +Windows 9x/\acro{NT/2K/XP} i~innych. +System wykorzystuje oryginalne źródła \TeX-owe autorstwa Donalda Knutha +oraz inne programy napisane w~\web{} i~tłumaczy je na kod źródłowy~C. +Ponadto system udostępnia spory zestaw makr i~funkcji stworzonych dla +zwiększenia funkcjonalności oryginalnych zasobów oprogramowania +związanego z~\TeX-em. Podstawowymi składnikami systemu są: + +\begin{cmddescription} +\item[bibtex] tworzenie spisów bibliograficznych; +\item[dmp] konwersja \cmdname{troff} do MPX (rysunki \MP{}-owe); +\item[dvicopy] modyfikowanie pliku \dvi; +\item[dvitomp] konwersja \dvi{} do MPX (rysunki \MP{}-owe); +\item[dvitype] konwersja \dvi{} na plik tekstowy (ASCII); +\item[gftodvi] zamiana fontu GF na plik \dvi; +\item[gftopk] zamiana fontu w~formacie GF na font spakowany (PK); +\item[gftype] zamiana fontu GF na plik tekstowy (ASCII); +\item[makempx] skład etykiet \MP{}-owych; +\item[mf] generowanie fontów bitmapowych w formacie GF; +\item[mft] skład plików źródłowych \MF{}-a; +\item[mpost] tworzenie rysunków oraz diagramów technicznych; +\item[mpto] ekstrakcja etykiet \MP{}-owych; +\item[newer] porównywanie czasów modyfikacji; +\item[patgen] tworzenie wzorców przenoszenia wyrazów; +\item[pktogf] zamiana fontów w formacie PK na fonty GF; +\item[pktype] zamiana fontu PK na plik tekstowy (ASCII); +\item[pltotf] konwersja tekstowej listy właściwości do TFM; +\item[pooltype] wyświetlanie \web-owych plików pool; +\item[tangle] konwersja \web{} do języka Pascal; +\item[tex] skład tekstu; +\item[tftopl] konwersja TFM do tekstowej listy właściwości (PL); +\item[vftovp] konwersja fontów wirtualnych do wirtualnej listy + właściwości (VPL); +\item[vptovf] konwersja wirtualnej listy właściwości do fontów wirtualnych; +\item[weave] konwersja \web{} do \TeX-a. +\end{cmddescription} + +\noindent +Dokładny opis funkcji oraz składni tych programów zawarty jest +w~dokumentacji poszczególnych pakietów samego \Webc{}. +Jednak do optymalnego wykorzystania instalacji \Webc{} pomocna będzie +znajomość kilku zasad rządzących całą rodziną programów. + +Wszystkie programy obsługują standardowe opcje \acro{GNU}: +\begin{description} +\item[\texttt{-{}-help\ \ \ }] podaje podstawowe zasady użytkowania; +\item[\texttt{-{}-verbose}] podaje dokładny raport z~działania programu; +\item[\texttt{-{}-version}] podaje informację o~wersji, po czym kończy + działanie programu. +\end{description} + +W~celu lokalizacji plików programy \Webc{} używają biblioteki do +przeszukiwania ścieżek zwanej \KPS{}. +Dla optymalizacji przeszukiwania \TeX-owego drzewa podkatalogów biblioteka ta +używa kombinacji zmiennych środowiskowych oraz kilku plików konfiguracyjnych. +\Webc{} potrafi obsługiwać jednocześnie więcej niż jedno drzewo +podkatalogów, co jest użyteczne w~przypadku, gdy chce się przechowywać +standardową dystrybucję \TeX-a jak i~lokalne rozszerzenia w~dwóch różnych +drzewach katalogów. +Aby przyspieszyć poszukiwanie plików, katalog główny każdego drzewa ma swój +plik \file{ls-R}, zawierający pozycje określające nazwę i~względną ścieżkę +dla wszystkich plików zawartych w~tym katalogu. + +\subsection{Przeszukiwanie ścieżek przez Kpathsea} + +Opiszemy najpierw ogólny mechanizm przeszukiwania ścieżek przez bibliotekę +\KPS{}. + +Tym, co nazywamy \emph{ścieżką przeszukiwania}, jest rozdzielona dwukropkami +lub średnikami lista \emph{elementów ścieżki}, które zasadniczo są nazwami +podkatalogów. +Ścieżka przeszukiwania może pochodzić z~(kombinacji) wielu źródeł. +Przykładowo, aby odnaleźć plik \samp{my-file} w~ścieżce \samp{.:/dir}, \KPS{} +sprawdza czy istnieje dany element ścieżki w~następującej kolejności: najpierw +\file{./my-file}, potem \file{/dir/my-file}, zwracając pierwszy +odnaleziony (lub możliwie wszystkie). + +Aby optymalnie zaadaptować się do konwencji wszystkich systemów operacyjnych, +na systemach nieunixowych \KPS{} może używać +jako separatorów nazw ścieżek znaków innych +niż dwukropek (\samp{:}) oraz ,,ciach'' (\samp{/}). + +W~celu sprawdzenia konkretnego elementu \var{p} ścieżki, \KPS{} najpierw +sprawdza czy zbudowana wcześniej baza danych (patrz ,,Baza nazw plików'' na +stronie~\pageref{Filename-database}) odnosi sie do \var{p}, tj. +czy baza danych znajduje się w~podkatalogu z~prefiksem~\var{p}. +Jeżeli tak, to specyfikacja ścieżki jest porównywana z~zawartością bazy. + +Jeśli baza danych nie istnieje, lub nie odnosi się do danego elementu +ścieżki, albo też nie zawiera elementów zgodnych, przeszukiwany jest system +plików (jeżeli nie zostało to zabronione przez specyfikację rozpoczynającą +się od~\samp{!!}\ oraz jeżeli poszukiwany plik musi istnieć). +\KPS{} konstruuje listę podkatalogów, które korespondują z~danym elementem +ścieżki, a~następnie sprawdza w~każdym z~nich czy nie ma tam poszukiwanego +pliku. + +Warunek mówiący, że ,,plik musi istnieć'' dotyczy np. plików \samp{.vf} +i~plików dołączanych \TeX-owym poleceniem \cs{openin}. +Takiego pliku może nie być (np. \file{cmr10.vf}), błędne byłoby zatem +poszukiwanie go na dysku. +Jeśli więc zapomnisz o~aktualizacji \file{ls-R} po instalacji nowego +pliku \samp{.vf}, nie zostanie on odnaleziony. +Każdy element ścieżki sprawdzany jest w~następującej kolejności: najpierw +w~bazie danych, potem na dysku. +Jeżeli plik się znajdzie, przeszukiwanie zostanie zatrzymane i~zwrócony +zostanie wynik. + +Ponieważ najprostszym i~najbardziej powszechnym elementem ścieżki jest +nazwa katalogu, \KPS{} korzysta z~dodatkowych możliwości w~przeszukiwaniu +ścieżek: +wielowarstwowych wartości domyślnych, zmiennych środowiskowych, wartości +pliku konfiguracyjnego, lokalnych +podkatalogów użytkownika oraz rekursywnego przeszukiwania podkatalogów. +Można więc powiedzieć, że \KPS{} \emph{rozwija} element ścieżki, tzn. +transformuje wszystkie specyfikacje do podstawowej nazwy lub nazw katalogów. +Jest to opisane w~kolejnych akapitach, w~kolejności w~jakiej ma to miejsce. + +Trzeba zauważyć, że jeżeli nazwa poszukiwanego pliku jest +absolutna lub jawnie względna, tj. zaczyna się od \samp{/} lub \samp{./} +lub \samp{../}, \KPS{} ogranicza się do sprawdzenia czy ten plik istnieje. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{Przykład pliku konfiguracyjnego} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Źródła ścieżek} +\label{Path-sources} + +Nazwa przeszukiwanej ścieżki może pochodzić z~wielu źródeł. +Oto kolejność, w~jakiej \KPS{} ich używa: + +\begin{enumerate} +\item + Zmienna środowiskowa ustawiana przez użytkownika, np. + \envname{TEXINPUTS}. + Zmienne środowiskowe z~dołączoną kropką i~nazwą programu zastępują inne, + np. jeżeli \samp{latex} jest nazwą uruchomionego programu, wtedy zamiast + \envname{TEXINPUTS} wykorzystana zostanie zmienna \envname{TEXINPUTS.latex}. +\item + Plik konfiguracyjny konkretnego programu, np. linia ,,\texttt{S /a:/b}'' + w~pliku \file{config.ps} programu \cmdname{dvips}. +\item Plik konfiguracyjny \KPS{} \file{texmf.cnf}, zawierający taką linię, + jak \samp{TEXINPUTS=/c:/d} (patrz poniżej). +\item Wartości domyślne dla uruchamianych programów. +\end{enumerate} +\noindent Każdą z~tych wartości dla danej ścieżki przeszukiwania można +zobaczyć, używając opcji diagnostyki błędów (patrz ,,Diagnostyka błędów'' na +stronie~\pageref{sec:Debugging}). + +\subsubsection{Pliki konfiguracyjne} + +\tolerance=3500 +\KPS{} szuka ścieżek przeszukiwania i~innych definicji w~\emph{plikach +konfiguracyjnych} o~nazwach \file{texmf.cnf}. +Ścieżka przeszukiwania używana do znajdowania tych plików określana jest +zmienną \envname{TEXMFCNF} (domyślnie taki plik znajduje się w~podkatalogu +\file{texmf/web2c}). +Czytane będą \emph{wszystkie} pliki \file{texmf.cnf} w~ścieżce +przeszukiwania, +a~definicje we wcześniejszych plikach zastąpią te w~późniejszych. +Tak więc w~ścieżce \verb|.:$TEXMF|, wartości pochodzące z~\file{./texmf.cnf} +zastąpią te z~\verb|$TEXMF/texmf.cnf|. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +Dociekliwy czytelnik może być zainteresowany jak same programy znajdują plik +\file{texmf.cnf}, skoro nie jest obowiązkowe deklarowanie specyficznej +zmiennej środowiskowej systemu. Otóż położenie domyślne jest wkompilowane +w~programy jako względne do ich położenia (określanego, jak wiemy, w~ścieżce +specyfikowanej przez \texttt{\$PATH}): \path{../../texmf/web2c/} bądź +\path{../texmf/web2c/}. Jeśli jawnie deklarujemy zmienną \envname{TEXMFCNF}, +wymagane jest podanie bezwzględnej ścieżki. + +Czytając zamieszczony poniżej opis formatu pliku \file{texmf.cnf} +warto przeglądać jego zawartość. Położenie \emph{aktywnego} pliku +znajdziemy za pomocą polecenia \texttt{kpsewhich texmf.cnf}. + +\begin{itemize} +\item + Komentarze zaczynają się od ,,\texttt{\%}'', a~kończą na końcu wiersza. +\item + Puste wiersze nie są brane pod uwagę. +\item + Znak \bs{} na końcu wiersza działa jako znak kontynuacji, tzn. + oznacza, że kolejny wiersz jest kontynuacją bieżącego. + Spacja na początku kolejnego wiersza nie jest ignorowana. +\item + Pozostałe wiersze mają postać: +\begin{alltt} + \emph{zmienna}[.\emph{program}] [=] \emph{wartość} +\end{alltt}% + gdzie \samp{=} i~otaczające spacje są opcjonalne. +\item + ,,\texttt{\var{zmienna}}'' zawierać może dowolne znaki poza spacją, + \samp{=}, lub \samp{.} (kropką), najbezpieczniej jest jednak używać znaków + z~zakresu \samp{A-Za-z\_}. +\item + Napis ,,\texttt{.\var{program}}'' ma zastosowanie w~wypadku, gdy + uruchamiany program nosi nazwę \texttt{\var{program}} lub + \texttt{\var{program}.exe}. Pozwala to różnym odmianom \TeX-a posiadać + różne ścieżki przeszukiwania. +\item ,,\texttt{\var{wartość}}'' zawierać może dowolne znaki poza + ,,\texttt{\%}'' i \samp{@}. + Nie można używać konstrukcji ,,\texttt{\$\var{zmienna}.\var{program}}'' + po prawej stronie. Zamiast tego trzeba zastosować zmienną pomocniczą. + Średnik \samp{;}\ użyty w~,,\texttt{\var{wartość}}'' zamieniany jest na + \samp{:}\ jeżeli systemem operacyjnym jest Unix; umożliwia to posiadanie + wspólnego pliku \file{texmf.cnf} dla systemów Unix oraz Windows. +\item + Wszystkie definicje czytane są zanim cokolwiek zostanie rozwinięte, tak + więc do zmiennych odwoływać się można przed ich zdefiniowaniem. +\end{itemize} +Fragment pliku konfiguracyjnego ilustrujący większość powyższych cech +\ifSingleColumn +: +\verbatiminput{examples/ex5.tex} +\else +jest pokazany na rys.~\ref{fig:config-sample}. +\fi + +\subsubsection{Rozwijanie ścieżek} +\label{Path-expansion} + +\KPS{} rozpoznaje w~ścieżkach przeszukiwania pewne specjalne znaki oraz +konstrukcje, podobne do tych dostępnych w~powłokach Unix. +Jako ogólny przykład: złożona ścieżka +\verb+~$USER/{foo,bar}//baz+ rozwija się do wszystkich podkatalogów pod +katalogami \file{foo} i~\file{bar} w~katalogu głównym \texttt{\$USER}, +które zawierają katalog lub plik \file{baz}. +Rozwinięcia te opisane są w~poniższych podrozdziałach. + +\subsubsection{Rozwijanie domyślne} +\label{Default-expansion} + +\tolerance=2500 +Jeżeli ścieżka przeszukiwania największego uprzywilejowania (patrz ,,Źródła +ścieżek'' na stronie~\pageref{Path-sources}) zawiera +\emph{dodatkowy dwukropek} (np. na początku, na końcu lub podwójny) to \KPS{} +wstawia w~tym miejscu następną zdefiniowaną w~hierarchii uprzywilejowania +ścieżkę przeszukiwania. +Jeżeli ta wstawiona ścieżka ma dodatkowy dwukropek, dzieje się dalej to samo. +Przykładowo, jeżeli ustawić zmienną środowiskową +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +oraz wartość \code{TEXINPUTS} pobraną z~\file{texmf.cnf} + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +końcową wartością użytą w~przeszukiwaniu będzie: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Ponieważ nieużytecznym byłoby wstawiać wartość domyślną w~więcej niż jedno +miejsce, \KPS{} zmienia tylko jeden dodatkowy \samp{:}\ i~pozostawia +inne bez zmian. \KPS{} najpierw szuka dwukropków na początku linii, potem na końcu, +a~następnie podwójnych. + +\subsubsection{Rozwijanie nawiasów} + +Użyteczną cechą jest możliwość rozwijania nawiasów, co oznacza, że np. +\verb+v{a,b}w+ rozwija się do \verb+vaw:vbw+. +Możliwe jest zagnieżdżanie nawiasów. +Funkcja ta może być użyta do zaimplementowania różnych hierarchii \TeX-owych +przez przypisanie listy nawiasów do \code{\$TEXMF}. Przykładowo, +w~pliku \file{texmf.cnf} znaleźć można następującą definicję: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Używając jej można następnie napisać coś w~rodzaju: +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +co oznacza, że po szukaniu w~katalogu bieżącym przeszukane będą kolejno +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +i~\code{\$TEXMFMAIN/tex} (wszystkie wraz z~katalogami niższego poziomu; +dwie ostatnie ścieżki \emph{wyłącznie} na podstawie zawartości +pliku \file{ls-R}). +Jest to wygodny sposób dla uruchamiania dwóch równoległych struktur \TeX-owych, +jednej ,,zamrożonej'' (np. na \CD), a~drugiej ciągle uaktualnianej nowymi, +pojawiającymi się wersjami. +Używając zmiennej \code{\$TEXMF} we wszystkich definicjach jest się pewnym, +że najpierw przeszukiwane jest drzewo uaktualnione. + +\subsubsection{Rozwijanie podkatalogów} +\label{Subdirectory-expansion} + +Dwa lub więcej kolejnych ,,ciachów'' (,,/'') w~elemencie ścieżki, +występujących po nazwie katalogu~\var{d}, zastępowany jest przez wszystkie +podkatalogi~\var{d}, najpierw podkatalogi znajdujące się bezpośrednio +pod~\var{d}, potem te pod powyższymi i~tak dalej. Na każdym etapie +kolejność, w~jakiej przeszukiwane są katalogi, jest \emph{nieokreślona}. + +Jeśli wyszczególni się człony nazwy pliku po \samp{//}, uwzględnione zostaną +tylko te podkatalogi, które zawierają powyższe człony. +Na przykład \samp{/a//b} rozwija się do katalogów \file{/a/1/b}, +\file{/a/2/b}, \file{/a/1/1/b} itd., ale nie do \file{/a/b/c} czy \file{/a/1}. + +Możliwe jest wielokrotne użycie \samp{//} w~ścieżce, jednakże \samp{//} +występujące na początku ścieżki nie jest brane pod uwagę. + +\subsubsection{Lista znaków specjalnych i~ich znaczeń -- podsumowanie} + +Poniższa lista podsumowuje znaczenie znaków specjalnych w~plikach +konfiguracyjnych. + +\newcommand{\CODE}[1]{\makebox[2.2em][l]{\code{#1}}} +\begin{description} +\item[\CODE{:}] znak rozdzielający w~specyfikacji ścieżki; umieszczony na +początku lub na końcu ścieżki zastępuje domyślne rozwinięcie ścieżki; +\item[\CODE{;}] znak rozdzielający dla systemów nieUnix-owych + (działa tak jak ,,\code{:}''); +\item[\CODE{\$}] rozwijanie zmiennej; +\item[\CODE{\string~}] oznacza katalog główny użytkownika; +\item[\CODE{\char`\{\dots\char`\}}] rozwijanie nawiasów, np. + \verb+a{1,2}b+ zmieni się w~\verb+a1b:a2b+; +\item[\CODE{//}] rozwijanie podkatalogów (może wystąpić gdziekolwiek + w~ścieżce, poza jej początkiem); +\item[\CODE{\%}] początek komentarza, trwającego do końca linii; +\item[\CODE{\bs}] znak kontynuacji (pozwala na przełamanie wiersza + z~wyrażeniem); +\item[\CODE{!!}] przeszukiwanie \emph{tylko} bazy danych, + a~\emph{nie} dysku. +\end{description} + + +\subsection{Bazy nazw plików} +\label{Filename-database} + +Dla celów przeszukiwania \KPS{} stara się zminimalizować dostęp do dysku. +Niemniej jednak, w~przypadku instalacji ze zbyt dużą liczbą katalogów, +przeglądanie każdego możliwego katalogu w~poszukiwaniu danego pliku może +zabierać sporo czasu (ma to miejsce zwłaszcza, jeżeli przeszukać trzeba setki +katalogów z~fontami). +Dlatego też \KPS{} może używać zewnętrznego pliku z~,,bazą danych'' +o~nazwie \file{ls-R}, który to zawiera przypisania plików do katalogów. +Unika się w~ten sposób potrzeby czasochłonnego przeszukiwania dysku. + +Drugi plik z~bazą danych -- \file{aliases} -- pozwala na nadawanie +dodatkowych nazw plikom zawartym w~\file{ls-R}. +Może to być pomocne do adaptacji do DOS-owej konwencji ,,8.3'' nazewnictwa +plików w~plikach źródłowych. + +\subsubsection{Baza nazw plików} +\label{ls-R} + +Jak to wytłumaczono powyżej, plik zawierający główną bazę nazw +plików musi nosić nazwę \file{ls-R}. +W~katalogu podstawowym każdej hierarchii \TeX-owej (domyślnie \code{\$TEXMF}), +którą chcemy włączyć w~mechanizm przeszukiwania, umieszczać można po jednym +pliku \file{ls-R}; w~większości przypadków istnieje tylko jedna hierarchia. +\KPS{} szuka pliku \file{ls-R} w~ścieżce \code{TEXMFDBS}. + +Najlepszym sposobem stworzenia i~utrzymywania pliku \file{ls-R} jest +uruchomienie skryptu \code{mktexlsr}, będącego składnikiem dystrybucji. +Jest on wywoływany przez różne skrypty typu \samp{mktex...}. +W~zasadzie skrypt ten jedynie wykonuje polecenie +\begin{alltt} +cd \var{/your/texmf/root} && ls -LAR ./ >ls-R +\end{alltt} +zakładając, że polecenie \code{ls} danego systemu utworzy właściwy format +strumienia wyjściowego (\acro{GNU} \code{ls} działa prawidłowo). +Aby mieć pewność, że baza danych jest zawsze aktualna, wygodnie jest + przebudowywać ją regularnie za pomocą demona \code{cron}. + %tak że wraz ze zmianami + %w~instalowanych plikach -- np. po instalacji lub uaktualnianiu pakietu + %\LaTeX{} -- plik \file{ls-R} jest uaktualniany automatycznie. + +Jeśli pliku nie ma w~bazie danych, \KPS{} domyślnie przechodzi do +przeszukiwania dysku. Jeżeli jednak dany element ścieżki zaczyna sie od +\samp{!!}, w~poszukiwaniu tego elementu sprawdzona zostanie \emph{jedynie} +baza danych, a~nigdy dysk. + +\subsubsection{kpsewhich -- program do przeszukiwania ścieżek} +\label{Invoking-kpsewhich} + +Przeszukiwanie ścieżek przez program \texttt{kpsewhich} jest niezależne od +jakiejkolwiek aplikacji. +Może on być przydatny jako rodzaj programu \code{find}, za pomocą którego +lokalizować można pliki w~hierarchiach \TeX-owych (jest on używany +intensywnie w~skryptach \samp{mktex...} tej dystrybucji). + +\begin{alltt} +> \Ucom{kpsewhich \var{opcje}\dots{} \var{nazwa-pliku}\dots{}} +\end{alltt} +Parametry wyszczególnione w~,,\texttt{\var{opcje}}'' mogą zaczynać się zarówno od +\samp{-} jak i~od \samp{-{}-}, i~dozwolony jest każdy jednoznaczny skrót. + +\KPS{} traktuje każdy argument nie będący parametrem jako nazwę pliku +i~zwraca pierwszą odnalezioną nazwę. +Nie ma parametru nakazującego zwracanie wszystkich nazw plików o~określonej +nazwie (w~tym celu można wykorzystać Unix-owy program \samp{find}). + +Ważniejsze parametry opisane są poniżej. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{}\\* + Ustaw rozdzielczość na ,,\texttt{\var{num}}''; ma to tylko wpływ na + przeszukiwanie fontów \samp{gf} i~\samp{pk}. Dla zgodności + z~\cmdname{dvips} parametr + \samp{-D} działa identycznie. Domyślną wartością jest 600. +\item[\texttt{-{}-format=\var{nazwa}}]\mbox{}\\ + Ustawienie formatu (typu pliku) przeszukiwania na ,,\texttt{\var{nazwa}}''. + Domyślnie format odgadywany jest z~nazwy pliku. + Dla formatów, które nie mają przydzielonego jednoznacznego rozszerzenia, + takich jak niektóre pliki \MP{}-owe czy pliki konfiguracyjne + \cmdname{dvips}-a, należy wyszczególnić nazwę, których listę wyświetli + uruchomienie \texttt{kpsewhich -{}-help}. + +\item[\texttt{-{}-mode=\var{napis}}]\mbox{}\\* + Ustaw nazwę trybu na ,,\texttt{\var{napis}}''; dotyczy to jedynie szukania + fontów \samp{gf} oraz \samp{pk}. + Brak jest wartości domyślnej -- odnaleziony zostanie dowolny + wyszczególniony tryb. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Zrób wszystko co możliwe aby odnaleźć pliki, włączając w~to przede wszystkim + przeszukanie dysku. + Domyślnie, w~celu zwiększeniu efektywności działania, sprawdzana jest + tylko baza \file{ls-R}. +\item[\texttt{-{}-path=\var{napis}}]\mbox{}\\ + Szukaj w~ścieżce ,,\texttt{\var{napis}}'' (rozdzielonej, jak + zwykle, dwukropkami), zamiast zgadywać ścieżkę przeszukiwania z~nazwy + pliku. + \samp{//} i~wszystkie zwykłe rozszerzenia są możliwe. + Parametry \samp{-{}-path} oraz \samp{-{}-format} wzajemnie się wykluczają. +\item[\texttt{-{}-progname=\var{nazwa}}]\mbox{}\\ + Ustaw nazwę programu na ,,\texttt{\var{nazwa}}''. + Może to mieć wpływ na ścieżkę przeszukiwania poprzez + ,,\texttt{.\var{program}}'' w~plikach konfiguracyjnych. + Ustawieniem domyślnym jest \samp{kpsewhich}. +\item[\texttt{-{}-show-path=\var{nazwa}}]\mbox{}\\ + Pokazuje ścieżkę używaną do poszukiwania plików typu + ,,\texttt{\var{nazwa}}''. + Użyte może być zarówno rozszerzenie (\samp{.pk}, \samp{.vf}, etc.), jak + i~nazwa pliku, tak jak w~przypadku parametru \samp{-{}-format}. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + ustawia parametry wykrywania błędów na ,,\texttt{\var{num}}''. +\end{ttdescription} + +%Zmienne środowiskowe domyślnie ustawiane są w~pliku konfiguracyjnym +%\file{texmf.cnf}. W~wypadku gdy chce się unieważnić wartości zmiennych +%wyszczególnione w~tym pliku, można narzucić ich ustawienie w~środowisku, +%w~którym uruchamiane są programy. + +\subsubsection{Przykłady użycia} +\label{SExamplesofuse} + +Przyjrzyjmy sie teraz jak działa \KPS{}. + +\begin{alltt} +> \Ucom{kpsewhich article.cls} +/usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +Szukamy pliku \file{article.cls}. +Ponieważ rozszerzenie \samp{.cls} jest jednoznaczne, nie musimy zaznaczać, że +poszukujemy pliku typu ,,tex'' (katalogi plików źródłowych \TeX-a). +Znajdujemy go w~podkatalogu \file{tex/latex/base} pod katalogiem nadrzędnym +\samp{texmf-dist}. +Podobnie wszystkie poniższe pliki odnajdywane są bez\-pro\-ble\-mo\-wo +dzięki swoim jednoznacznym rozszerzeniom: +\begin{alltt} +> \Ucom{kpsewhich array.sty} +/usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} +/usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} +/usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} +/usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} +/usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +\noindent (ostatni plik to \BibTeX-owa baza bibliograficzna dla artykułów +\textsl{TUGBoat}). + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Pliki czcionek bitmapowych typu \file{.pk} używane są przez sterowniki, +takie jak \cmdname{dvips} % ??? dvips to chyba nie przeglądarka --- +czy \cmdname{xdvi}. % w oryg. było display programs like dvips... +W~tym wypadku nie zostaną zwrócone żadne rezultaty przeszukiwania, ponieważ +w~systemie brak gotowych wygenerowanych czcionek \samp{.pk} Computer Modern +(wynika to z~faktu używania w~\TL{} fontów PostScript-owych Type1). +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +Dla tych fontów (alfabetu fonetycznego) musieliśmy wygenerować pliki +\samp{.pk}, a~ponieważ domyślnym \MF{}-owym trybem naszej instalacji jest +\texttt{ljfour} z~podstawową rozdzielczością 600dpi, zwracany jest taki +właśnie rezultat. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +W~tym wypadku, kiedy zaznaczamy, że interesuje nas rozdzielczość +300dpi (\texttt{-dpi=300}), widzimy, że taka czcionka nie jest dostępna +w~naszej instalacji. +Program taki jak \cmdname{dvips} czy \cmdname{xdvi} zatrzymałby się, aby +utworzyć pliki \texttt{.pk} w~wymaganej rozdzielczości (używając skryptu +\cmdname{mktexpk}). + +Zwrócimy teraz naszą uwagę na pliki nagłówkowe i~konfiguracyjne +programu \cmdname{dvips}. +Najpierw szukamy pliku PostScript-owego prologu \file{tex.pro}, +wykorzystywanego dla potrzeb \TeX-a. Drugi przykład pokazuje +poszukiwanie pliku konfiguracyjnego \file{config.ps}, zaś trzeci -- +szukanie pliku mapy czcionek PostScriptowych \file{psfonts.map} +(począwszy od obecnej edycji, pliki \file{.map} i~\file{.enc} +mają własne reguły przeszukiwania ścieżek i~zmienione położenie w~ramach +drzew \dirname{texmf}). +Ponieważ rozszerzenie \samp{.ps} nie jest jednoznaczne, musimy zaznaczyć +wyraźnie jaki typ jest wymagany dla pliku +\texttt{config.ps} (,,\texttt{dvips config}''). +\begin{alltt} +> \Ucom{kpsewhich tex.pro} +/usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} +/usr/local/texmf-var/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} +/usr/local/texmf-var/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +Następnie przyjrzymy się bliżej plikom pomocniczym fontów Quasi Times +(zawierają one m.in. poprawne polskie znaki diakrytyczne). +Pierwszy plik którego szukamy, to plik konfiguracyjny, zawierający nazwę +pliku z~przemapowaniem fontów: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.qtm} +/usr/local/texmf-dist/dvips/qfonts/config.qtm +\end{alltt} +W~pliku tym znajduje się wiersz: +\begin{alltt} + p +qtm.map +\end{alltt} +wskazujący na plik \file{qtm.map}, który chcemy zlokalizować w~następnej +kolejności: +\begin{alltt} +> \Ucom{kpsewhich --format=map qtm.map} +/usr/local/texmf-dist/fonts/map/dvips/qfonts/qtm.map +\end{alltt} +Plik z~przemapowaniem definiuje nazwy czcionek PostScriptowych Type~1 +w~zestawie fontów Quasi Times, zaś jego zawartość wygląda następująco +(pokazane są tylko fragmenty wierszy): +\begin{alltt} + qtmr QuasiTimes-Regular ... <qtmr.pfb + qtmri QuasiTimes-Italic ... <qtmri.pfb + qtmb QuasiTimes-Bold ... <qtmb.pfb + qtmbi QuasiTimes-BoldItalic ... <qtmbi.pfb +\end{alltt} +Używając przeszukiwania plików z~fontami Type1, znajdźmy font +QuasiTimes-Regular \file{qtmr.pfb} w~drzewie katalogów \file{texmf}: +\begin{alltt} +> \Ucom{kpsewhich qtmr.pfb} +\ifSingleColumn +/usr/local/texmf-dist/fonts/type1/qfonts/qtmr.pfb +\else +/usr/local/texmf-dist/fonts/type1/ +... qfonts/qtmr.pfb +\fi\end{alltt} + +Powyższe przykłady pokazują, jak łatwo można znajdować lokalizację danego +pliku. Ważne jest to zwłaszcza wówczas, gdy istnieje podejrzenie, że gdzieś +zawieruszyła się zła wersja jakiegoś pliku; \cmdname{kpsewhich} pokaże tylko +pierwszy napotkany plik. + +\subsubsection{Diagnostyka błędów} +\label{sec:Debugging} + +Czasami niezbędne są informacje o~tym, jak program radzi sobie +z~odniesieniami do plików. Aby dało się to wykonywać w~wygodny sposób, +\KPS{} oferuje różne poziomy diagnostyki błędów: +\begin{itemize} +\item[\texttt{\ 1}] wywołania \texttt{stat} (testy pliku). Podczas + uruchamiania z~uaktualnioną bazą danych \file{ls-R} nie powinno to + przeważnie dawać żadnego wyniku. +\item[\texttt{\ 2}] Zapis odwołań do tablic asocjacyjnych (\emph{hash + tables}), takich jak baza \file{ls-R}, pliki przemapowań, pliki konfiguracyjne. +\item[\texttt{\ 4}] Operacje otwarcia i~zamknięcia pliku. +\item[\texttt{\ 8}] Ogólne informacje o~ścieżkach dla typów + plików szukanych przez \KPS; użyteczne dla znalezienia ścieżki + zdefiniowanej dla danego pliku. +\item[\texttt{16}] Lista katalogów dla każdego z~elementów ścieżki + (odnosi się tylko do poszukiwań na dysku). +\item[\texttt{32}] Poszukiwania plików. +\end{itemize} +Wartość \texttt{-1} ustawia wszystkie powyższe opcje: w~praktyce, +potrzebując wykryć przyczyny błędów, prawdopodobnie zawsze używać +będziesz tych poziomów. + +Podobnie, w~przypadku programu \cmdname{dvips}, ustawiając kombinację +przełączników wykrywania błędów, można dokładnie śledzić skąd pochodzą pliki. +W~wypadku gdy plik nie zostanie odnaleziony, widać, w~których katalogach +program szukał danego pliku, dzięki czemu można się zorientować w~czym +problem. + +Ogólnie mówiąc, ponieważ programy odwołują się wewnętrznie do +biblioteki \KPS{}, opcje wykrywania błędów wybrać można przy użyciu +zmiennej środowiskowej \envname{KPATHSEA\_DEBUG}, ustawiając ją +na opisaną powyżej wartość (kombinację wartości). + +\noindent +\textbf{Uwaga dla użytkowników Windows:} w~systemie tym niełatwo jest +przekierować komunikaty programu do pliku. Do celów diagnostycznych +można w~tym celu ustawić chwilowo zmienne (w~oknie DOS/CMD): +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +Rozważmy na przykład mały \LaTeX-owy plik źródłowy \file{hello-world.tex}, +który zawiera co następuje: +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +Ten mały plik używa jedynie fontu \file{cmr10}. Przyjrzyjmy się jak +\cmdname{dvips} przygotowuje plik PostScript-owy (chcemy użyć wersji Type1 +fontu Computer Modern, stąd opcja \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +Mamy tu do czynienia jednocześnie z~czwartą klasą wykrywania błędów +programu \cmdname{dvips} (ścieżki fontowe) oraz z~rozwijaniem elementu +ścieżki przez \KPS{} (patrz: \emph{Dvips Reference Manual}, \OnCD{texmf/doc/dvips/dvips.html}). + %Komunikaty z~uruchomienia programu (lekko zmodyfikowane) znajdują się + %na~rys.~\ref{fig:dvipsdbga}. + %\begin{figure*}[tp] + %\centering + %\input{examples/ex6a.tex} + %\caption{Szukanie pliku konfiguracyjnego}\label{fig:dvipsdbga} + % + %\bigskip + % + %\input{examples/ex6b.tex} + %\caption{Szukanie pliku prologu}\label{fig:dvipsdbgb} + % + %\bigskip + % + %\input{examples/ex6c.tex} + %\caption{Szukanie pliku fontu}\label{fig:dvipsdbgc} + %\end{figure*} + Program \cmdname{dvips} zaczyna pracę od zlokalizowania potrzebnych mu plików. +Najpierw znajduje plik \file{texmf.cnf}, który zawiera ścieżki +przeszukiwania dla innych plików. Potem znajduje bazę danych \file{ls-R} +(dla optymalizacji szukania plików), następnie plik \file{aliases}, +który umożliwia deklarowanie różnych nazw (np. krótkie \acro{DOS}-owe ,,8.3'' +i~bardziej naturalne dłuższe wersje) dla tych samych plików. +Następnie \cmdname{dvips} znajduje podstawowy plik konfiguracyjny +\file{config.ps}, zanim poszuka pliku z~ustawieniami użytkownika +\file{.dvipsrc} (który w~tym wypadku \emph{nie} zostaje odnaleziony). +W~końcu \cmdname{dvips} lokalizuje plik konfiguracyjny \file{config.cms} +dla fontów PostScript-owych Computer Modern (jest to inicjowane przez +dodanie parametru \texttt{-Pcms} przy uruchamianiu programu). +Plik ten zawiera listę plików z~,,mapami'', które definiują relacje +pomiędzy \TeX-owymi, PostScript-owymi i~systemowymi nazwami fontów. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/config/config.cms} +p +bsr.map +p +bakomaextra.map +\end{alltt} +W~ten sposób \cmdname{dvips} wyszukuje wszystkie te pliki oraz główny plik +z~przemapowaniem +\file{psfonts.map}, który ładowany jest domyślnie (zawiera on deklaracje +często używanych fontów PostScript-owych; więcej szczegółów odnośnie +PostScript-owych plików przemapowań fontów można znaleźć w~ostatniej części +rozdziału \ref{SExamplesofuse}). + +W~tym miejscu \cmdname{dvips} zgłasza się użytkownikowi: +\begin{alltt}\ifSingleColumn +This is dvips 5.86 Copyright 1999 Radical Eye Software (www.radicaleye.com) +\else\small{}This is dvips 5.86 Copyright 1999 Radical Eye... +\fi\end{alltt}% decided to accept slight overrun in tub case +\ifSingleColumn +\ldots potem szuka pliku prologu \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +potem szuka pliku prologu \file{texc.pro}. + %(patrz rys.~\ref{fig:dvipsdbgb}). + +\fi +Po znalezieniu szukanego pliku, \cmdname{dvips} podaje datę i~czas +oraz informuje o~generowaniu pliku \file{hello-world.ps}. +Ponieważ potrzebuje pliku z~fontem \file{cmr10}, a~jest on +zadeklarowany jako dostępny, wyświetla komunikat: +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 <CMR10> is resident. +\end{alltt} +Teraz trwa poszukiwanie pliku \file{cmr10.tfm}, który zostaje znaleziony, +a~następnie \cmdname{dvips} powołuje się na kilka innych plików startowych +(nie pokazanych). W~końcu przykładowy font Type1 \file{cmr10.pfb} +zostaje zlokalizowany +i~dołączony do pliku wynikowego (patrz ostatnia linia): +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... +<texps.pro> +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +<cmr10.pfb>[1] +\end{alltt} + +\subsection{Parametry kontrolujące działanie programów} +Inną użyteczną cechą \Webc{} jest możliwość ustalania wielu parametrów +określających wielkość pamięci za pomocą pliku \texttt{texmf.cnf}. + %Załącznik~\ref{app:texmf.cnf} zaczynający się na + %stronie~\pageref{app:texmf.cnf} zawiera listing pliku \texttt{texmf.cnf}. + Ustawienia wszystkich parametrów znajdują się w~części trzeciej pliku. +Najważniejszymi zmiennymi są: +\begin{description} +\item[\code{main\_memory}] Całkowita wielkość pamięci dostępnej dla + \TeX-a, \MF{}-a i~\MP{}-a. Dla każdego nowego ustawienia tej zmiennej + należy wykonać nowy format. + %Przykładowo, możesz wygenerować ,,ogromną'' wersję formatu \TeX{} i~nazwać + %taki plik \texttt{hugetex.fmt}. + %Dzięki standardowemu sposobowi nazywania programów przez + %\KPS{}, określona wartość zmiennej \verb|main_memory| będzie + %przeczytana z~pliku \texttt{texmf.cnf} (por. wartość standardową + %oraz wartość ,,ogromną'', wykorzystywaną przez program \texttt{hugetex}, + %itd.). + % +\item[\code{extra\_mem\_bot}] Dodatkowa wielkość pamięci przeznaczonej + na ,,duże'' struktury danych \TeX-a, takie jak: pudełka, kleje itd.; + przydatna zwłaszcza w~przypadku korzystania z~pakietu \PiCTeX{}. + % +\item[\code{font\_mem\_size}] Wielkość pamięci przeznaczonej przez + \TeX-a na informacje o~fontach. Jest to mniej więcej ogólna + wielkość wczytywanych przez \TeX-a plików TFM. + % +\item[\code{hash\_extra}] Dodatkowa wielkość pamięci przeznaczonej + na tablicę zawierającą nazwy instrukcji. Tablica główna + może zmieścić w~przybliżeniu 10000 nazw; wielkość ta może okazać + się zbyt mała, np. w~wypadku obszernej książki zawierającej liczne + odsyłacze. Domyślna wartość \texttt{hash\_extra} to \texttt{50000}. +\end{description} + % +Oczywiście powyższa możliwość nie zastąpi prawdziwej, dynamicznej +alokacji pamięci. Jest to jednak niezwykle trudne +do zaimplementowania w~obecnej wersji \TeX-a i~dlatego +powyższe parametry stanowią praktyczny kompromis, pozwalając +na pewną elastyczność. + +%%==== +\section{Budowa systemu na nowej platformie Uniksowej}\label{sec:build} +Jeżeli mamy do czynienia z~platformą, dla której nie są dostarczone binaria, +trzeba będzie skompilować \TeX-a oraz towarzyszące mu programy. +Nie jest to takie trudne jak się wydaje. +Wszystko czego potrzebujemy znajduje się na \CD{} w~katalogu +\texttt{source}. + +Najpierw należy zainstalować główne drzewo plików \TeX-owych z~\CD{} +\TL{} (najlepiej jest wykonać instalację podstawową, bez wybierania +binariów systemowych). + +\subsection{Warunki wstępne} +Do skompilowania całego \TeX-a i~jego programów pomocniczych potrzeba +około 100 megabajtów wolnego miejsca na dysku. +Potrzebny jest także kompilator \acro{ANSI}~C, oprogramowanie \cmdname{make}, +skaner leksykalny oraz generator parserów. +Programy użytkowe \acro{GNU} (\cmdname{gcc}, \acro{GNU} +\cmdname{make}, \cmdname{m4}, \cmdname{flex}, \cmdname{bison}) +są najlepiej przetestowanymi na różnych platformach. +Prawidłowo powinny pracować \cmdname{gcc}-2.7.*, \cmdname{flex}-2.4.7 +i~\acro{GNU}\,\cmdname{make}-3.72.1 lub nowszy. +Istnieje możliwość pracy z~innymi kompilatorami C i~programami +\cmdname{make}, wymaga to jednak dobrego zrozumienia zasad tworzenia +programów Unixowych, aby móc poradzić sobie z~ewentualnymi problemami. + %W~wyniku wykonania polecenia \texttt{uname} powinniśmy + %otrzymać jakąś rozsądną wartość. + +\subsection{Konfiguracja} +Należy rozpakować źródła ze skompresowanego pliku \texttt{tar} +z~katalogu \dirname{source} na twardy dysk, a~potem przejść do katalogu, +do którego zostały one skopiowane. +Teraz trzeba zdecydować się, gdzie będzie główny katalog instalacji, +np.\ \path|/usr/TeX| lub \path|/usr/local/TeX|. +Naturalnie, należy użyć tej samej lokalizacji, która została wykorzystana +przy instalowaniu głównego drzewa \TeX-owego. + +Uruchomić \textsf{configure} z~linii poleceń: +\begin{alltt} +> \Ucom{./configure --prefix=/usr/local/TeX} +\end{alltt} + +Katalog ,,prefix'' to ten, w~którym zainstalowane zostało główne drzewo +\TeX-owe. Zostanie wykorzystany następujący układ katalogów + (\verb|$TEXDIR| oznacza wybrany powyżej katalog): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/man} & strony manuala Uniksowego,\\ + \dirname{$TEXDIR/share/texmf} & główne drzewo \TeX-owe, + zawierające makra itp.,\\ + \dirname{$TEXDIR/info} & podręczniki w formacie \acro{GNU} + info,\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaria\\ +\end{tabular} +%$ + +Można uniknąć stosowania ,,\dirname{share/}'' przed katalogiem +\dirname{texmf}, ponieważ \dirname{$TEXDIR/share/texmf} +i~\dirname{$TEXDIR/texmf} są wykrywane automatycznie przez skrypt \cmdname{configure}. +W~przypadku wybrania innego katalogu, trzeba wyszczególnić ten katalog +parametrem \verb|--datadir| skryptu \cmdname{configure}. + +Jeżeli nie chcemy używać katalogu \dirname{$PLATFORM} +(a~więc umieścić binaria bezpośrednio w~\dirname{$TEXDIR/bin}), w~wywołaniu +skryptu \cmdname{configure} należy użyć parametru +\verb|--disable-multiplatform|. + +Więcej dostępnych parametrów (np. pomijanie pakietów opcjonalnych, takich +jak \OMEGA\ czy \eTeX) można zobaczyć uruchamiając +\texttt{./configure -{}-help}. + +\subsection{Uruchamianie \textsf{make}} +Po upewnieniu się, że nie jest ustawiona zmienna powłoki \texttt{noclobber}, +należy napisać +\begin{alltt} +> \Ucom{make world} +\end{alltt} +i~\ldots zaparzyć sobie kawę. + +Mogłoby też być użyteczne zapisanie w~pliku \texttt{.log} całego procesu +kompilacji: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} +Zanim stwierdzimy, że wszystko jest w~porządku, warto sprawdzić czy w~pliku +\texttt{.log} nie ma komunikatów błędów (kiedy polecenie zwraca kod błędu, +\acro{GNU} \cmdname{make} zawsze używa sekwencji \samp{***}) +i~czy utworzone zostały wszystkie binaria: +\begin{alltt} +> \Ucom{cd /usr/local/TeX/bin/i586-pc-linux-gnu} +> \Ucom{ls | wc} +\end{alltt} +Oczekiwanym rezultatem jest 242. Polecenie \texttt{make world} jest +równoważne z~\texttt{make all install strip}. +Jeśli do uruchamiania \texttt{make install} potrzebne są specjalne +uprawnienia, można uruchomić dwie oddzielne sesje \cmdname{make}: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +\subsection{Końcowe kroki konfiguracyjne} +Należy uaktualnić zmienną \envname{PATH} o~nazwę katalogu zawierającego +właśnie zainstalowane binaria (np.\ +\dirname{/usr/local/TeX/bin/mips-sgi-irix6.3}); podobnie postąpić trzeba +z~\envname{MANPATH} i~\envname{INFOPATH} i~dołączyć do nich +odpowiednie nazwy podkatalogów, tj.\ +\dirname{$TEXDIR/man} oraz \dirname{$TEXDIR/info}. + +Program \cmdname{texconfig} pozwala na ustawienie domyślnych wzorców +przenoszenia wyrazów, rozmiaru papieru, poleceń do druku, trybu \MF{}-a itd. +Polecenia tego używać można interaktywnie. Aby zobaczyć jakie funkcje program +udostępnia, wystarczy napisać: +\begin{alltt} +> \Ucom{texconfig help} +\end{alltt} + +Przykładowo, jeżeli nie używamy formatu A4, możemy ustawić jako format +domyślny ,,lettersize'' pisząc: +\begin{alltt} +> \Ucom{texconfig dvips paper letter} +> \Ucom{texconfig xdvi paper us} +\end{alltt} + +%-------------------------- +\section{Podziękowania}\label{sec:acknowl} + +\TL{} jest wspólnym dziełem praktycznie wszystkich grup \TeX-owych. +Niniejsza edycja \TL{} została opracowana pod kierownictwem Sebastiana +Rahtza i~Karla Berry, przy głównym współudziale: + +\begin{itemize*} +\item Niemieckiej Grupy \TeX-owej (\acro{DANTE e.V.}), która udostępniła + komputer, na którym przygotowywano niniejsze wydanie; a~w~szczególności + Rainera Sch\"opfa i~Reinharda Zierke, którzy opiekowali się + tym komputerem oraz Volkera Schaa i~Klausa Hoeppnera, którzy + koordynowali produkcję płytek w~wydawnictwie Lehmanns; +\item firmy Perforce, która udostępniła bezpłatną kopię świetnego + oprogramowania do zarządzania zmianami w~przygotowywanej dystrybucji; +\item Petera Breitenlohnera i~\eTeX\ teamu; +\item Thomasa Essera, autora wspaniałego \teTeX-a, bez którego + \TL{} z~całą pewnością by nie powstał, i~którego stała + pomoc umożliwiła uczynienie z~tej dystrybucji coraz lepszego produktu; +\item Eitana Gurari, autora programu \TeX4ht{} (wykorzystanego do + tworzenia niniejszej dokumentacji w~wersji \HTML), który niezmordowanie pracował + nad jego ulepszaniem i~błyskawicznie wykonywał poprawki; +\item Hansa Hagena, który dostosowywał \ConTeXt\ do potrzeb \TL; +\item Pawła Jackowskiego, który wykonał instalator dla Windows \cmdname{tlpm} + i~Tomka Łuczaka, twórcy \cmdname{tlpmgui}; +\item \Thanh{}a, Martina Schr\"odera i~pdf\TeX\ teamu; +\item Petra Ol\shac{}\aac{}ka, który koordynował i~sprawdzał + przygotowanie czeskich i~słowackich pakietów; +\item Fabrice'a Popineau, który przygotował oprogramowanie dla Windows + i~szczególnie wiele czasu poświęcił na opracowanie metod przygotowania + i~zarządzania pakietami; +\item Staszka Wawrykiewicza, głównego testującego \TL{} w~różnych systemach, + który ponadto koordynował przygotowanie wszystkich polskich dodatków; +\item Olafa Webera, który cierpliwie pielęgnował Web2c; +\item Gerbena Wierda, który przygotował oprogramowanie i~wsparcie dla + \MacOSX{}; +\item Grahama Williamsa, którego prace nad katalogiem pakietów bardzo + pomogły w~przygotowaniu dystrybucji. +\end{itemize*} + +Binaria dla różnych platform skompilowali: +Tigran Aivazian (\pkgname{x86\_64-linux}), +Manfred Lotz (\pkgname{i386-freebsd}), +%Maksym Polyakov (\pkgname{sparc-solaris}), +Fabrice Popineau (\pkgname{win32}), +Norbert Prei\-ning (\pkgname{alpha-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-linux} + i~\pkgname{sparc-solaris}), +Staszek Wawrykiewicz (\pkgname{i386-linux}), +Olaf Weber (\pkgname{mips-irix}), +Gerben Wierda (\pkgname{i386-darwin}, \pkgname{powerpc-darwin}). + +Aktualizacje i~tłumaczenia dokumentacji wykonali: +Karl Berry (angielski), +Daniel Flipo \& Fabrice Popineau (francuski), +G\"unter Partosch \& Hartmut Henkel (niemiecki), +Petr Sojka \& Jan Busa (czeski\slash słowacki), +Boris Veytsman (rosyjski), +Staszek Wawrykiewicz (polski). + +Oczywiście, najważniejsze podziękowania należą się Donaldowi Knuthowi +za stworzenie systemu \TeX{} i~ofiarowanie go nam wszystkim. + +%%% +\section{Historia} +\label{sec:history} + +\subsection{Poprzednie wersje} + +Dystrybucja \TL{} jest wspólnym przedsięwzięciem +grup Użytkowników Systemu \TeX{} z Niemiec, Holandii, Wielkiej +Brytanii, Francji, Czech, Słowacji, Polski, Indii i~Rosji oraz grupy +międzynarodowej TUG (\emph{\TeX{} Users Group}). +Dyskusje nad projektem rozpoczęły się pod koniec 1993 roku, kiedy holenderska +Grupa Użytkowników \TeX-a rozpoczęła prace nad swoim +4All\TeX{} \CD{} dla użytkowników \acro{MS-DOS}. W~tym też +czasie pojawiły się nadzieje na opracowanie jednego \CD{} dla +wszystkich systemów. +Projekt taki był wprawdzie zbyt ambitny, ale zrodził nie tylko bardzo +popularny i~uwieńczony dużym powodzeniem projekt 4All\TeX{} \CD{}, +lecz również spowodował powstanie Grupy Roboczej TUG ds. Standardu Katalogów +\TeX-owych (\emph{\TeX{} Directory Structure}), określającego w~jaki +sposób tworzyć zgodne i~łatwe do zarządzania zestawy pakietów \TeX-owych. +Końcowy raport \TDS{} został opublikowany w~grudniowym numerze +\textsl{TUGboat}-a, i~jasnym się stało, że +jednym z~oczekiwanych rezultatów wprowadzenia tego standardu mogłaby +być modelowa struktura na \CD. +Niniejszy \CD{} jest bezpośrednim rezultatem rozważań i~zaleceń +Grupy Roboczej ds. \TDS. +Jasne także było, że sukces 4All\TeX{} \CD{} pokazał, że +użytkownicy Unixa także wiele by zyskali mogąc korzystać +z~podobnie łatwego w~instalacji/pielęgnacji i~użytkowaniu systemu. +Było to jednym z~celów projektu \TL. + +Projekt przygotowania nowego \CD, opartego na standardzie \TDS i~zorientowanego +na systemy Uniksowe, rozpoczął się jesienią 1995 roku. Szybko +zdecydowaliśmy się na wykorzystanie \teTeX-a autorstwa Thomasa Essera, ponieważ +oferował on wsparcie dla wielu platform i~został zaprojektowany z~myślą +o~przenośności pomiędzy różnymi systemami plików. Thomas zgodził się pomóc +i~prace rozpoczęły się na dobre na początku 1996 roku. Pierwsze wydanie +ukazało się w~maju 1996 roku. Na początku 1997 roku Karl Berry udostępnił +nową, poważnie zmienioną wersję swojego pakietu \Webc, zawierającą prawie +wszystkie funkcje wprowadzone do \teTeX-a przez Thomasa Essera. W~związku +z~tym zdecydowaliśmy się oprzeć drugie wydanie \CD{} na standardowej +bibliotece \Webc, z~dodaniem skryptu \texttt{texconfig} z~pakietu \teTeX. +Trzecie wydanie \CD{} było oparte na \Webc{} wersji 7.2, przygotowanej przez +Olafa Webera. W~tym samym czasie została przygotowana nowa wersja \teTeX-a +i~\TL{} udostępniał prawie wszystkie jego nowe funkcje. +Czwarta edycja była przygotowana podobnie, +wykorzystując nową wersję te\TeX-a i~nową wersję \Webc{} (7.3). +Wtedy to też zainaugurowano kompletną dystrybucję dla Windows. + +Edycja piąta (marzec 2000) zawierała wiele poprawek i~uzupełnień; +zaktualizowano setki pakietów. Szczegóły zawartości pakietów zostały +zapisane w~plikach XML. +Główną zmianą w~\TeX\ Live5 było usunięcie programów, które nie miały statusu +{\it public domain}. Zawartość całej płytki powinna odpowiadać ustaleniom +Debian Free Software Guidelines (\url{http://www.debian.org/intro/free}). +Dołożyliśmy wszelkich starań aby sprawdzić warunki licencyjne pakietów, +ale nadal bardzo prosimy o~zgłaszanie zauważonych pomyłek. + +Szósta edycja (lipiec 2001) zawierała aktualizacje całego materiału. Główną +zmianą było wprowadzenie nowej koncepcji programów instalacyjnych: użytkownik +miał odtąd możliwość dokładniejszego wyboru potrzebnych zestawów i~pakietów. +Zestawy dotyczące obsługi poszczególnych języków zostały całkowicie +zreorganizowane, dzięki czemu wybór jednego z~nich nie tylko instalował +potrzebne makra i~fonty, ale także przygotowywał odpowiedni plik +\texttt{language.dat}. + +\TL~7 (rok 2002) zawierał po raz pierwszy oprogramowanie dla \MacOSX{} +i,~jak zwykle, aktualizację wszelkich programów i~pakietów. +Ważnym zadaniem, które wykonano, było ujednolicenie plików źródłowych +programów z~dystrybucją te\TeX. W~programach instalacyjnych wprowadzono +możliwość wyboru bardziej ogólnych, predefiniowanych zestawów pakietów +(m.in. dla użytkowników francuskojęzycznych oraz polskich). Nowością +było także wprowadzenie procedury aktualizacji map fontowych dla Dvips +i~Pdftex podczas instalacji oraz doinstalowywania pakietów fontowych. + +W~2003~r., wraz z~napływem aktualizacji i~dodatkowych nowych pakietów, +okazało się, że \TL{} nie mieści się na pojedynczym \CD. +Zmuszeni byliśmy podzielić \TL{} na trzy dystrybucje, które wydano +na \DVD{} i~dwóch płytkach \CD. Ponadto: + +\begin{itemize*} +\item na życzenie ,,\LaTeX{} team'' zmieniono standardowe użycie + programów \cmdname{latex} i~\cmdname{pdflatex}~-- korzystały + one z~\eTeX{} (patrz str.~\pageref{text:etex}); +\item załączono nowe fonty obwiedniowe Latin Modern, które zastępują + m.in. fonty EC (zawierając komplet znaków europejskich), szczególnie + do tworzenia poprawnych plików PDF; +\item usunięto binaria dla platformy Alpha \acro{OSF} (poprzednio + usunięto także binaria dla \acro{HPUX}), niestety nie udało się znaleźć + osób chętnych do wykonania kompilacji; +\item zmieniono instalację w~systemach Windows, wprowadzając po raz pierwszy + zintegrowane środowisko pracy oparte na edytorze XEmacs; +\item potrzebne programy pomocnicze dla Windows (Perl, Ghost\-script, + Image\-Magick, Ispell) instalowano w~strukturze katalogów + instalacji \TL; +\item mapy fontowe, wykorzystywane przez programy \cmdname{dvips}, + \cmdname{dvipdfm} oraz \cmdname{pdftex}, generowano odtąd w~katalogu + \dirname{texmf/fonts/map}; +\item \TeX{}, \MF{} oraz \MP{} domyślnie pozwalały wypisywać komunikaty + na ekranie i~w~pliku .log, a~także w~operacjach \verb|\write| w~ich + reprezentacji 8-bitowej, zamiast tradycyjnej notacji \verb|^^|; + w~\TL{}~7 eksperymentalnie wprowadzono zależność przekodowania + wyjścia programów od systemowej strony kodowej, obecnie ten pomysł + zarzucono; +\item znacznie zmieniono niniejszą dokumentację; +\item wreszcie, ponieważ numery wersji kolejnych edycji mogły wprowadzać + w~błąd, postanowiliśmy identyfikować edycje \TL{} zgodnie z~rokiem + wydania. +\end{itemize*} + +\subsection{Edycja 2004} + +Jak przy każdej kolejnej wersji, w~2004 roku uaktualniono wiele pakietów +i~programów. Poniżej wymieniamy najbardziej istotne zmiany. + +\begin{itemize} +\item Gdy mamy już lokalnie zaistalowane fonty, które korzystają z~własnych +plików \filename{.map} i/lub \filename{.enc}, \emph{należy} przenieść te +pliki w~nowe miejsce w~strukturze \filename{texmf/}. + +Pliki \filename{.map} (map fontowych) są obecnie wyszukiwane w~podkatalogach +\dirname{fonts/map} (w~każdym drzewie \filename{texmf}), zgodnie ze ścieżką +określoną przez zmienną \envname{TEXFONTMAPS}. Analogicznie, pliki +\filename{.enc} (przekodowań fontów) są obecnie wyszukiwane w~podkatalogach +\dirname{fonts/enc}, zgodnie ze ścieżką określoną przez zmienną +\envname{ENCFONTS}. O~niewłaściwie umieszczonych plikach tego typu +zostaniemy ostrzeżeni podczas uruchomienia programu \cmdname{updmap}. +Zmiany te wprowadzono w~celu uporządkowania struktury katalogów: wszystkie +pliki dotyczące fontów znajdują się obecnie w~ramach jednego podkatalogu +\dirname{fonts/}. + +Metody radzenia sobie z~sytuacjami związanymi z~przejściem na nowy układ +katalogów omawia artykuł \url{http://tug.org/texlive/mapenc.html}. + +\item Do \TK\ \DVD{} dodano nową dystrybucję dla Windows o~nazwie +pro\TeX{}t (opartą na \MIKTEX-u). Jest ona dostępna także na odrębnym \CD. +Choć pro\TeX{}t nie bazuje na implementacji Web2C, stosuje układ katalogów +zgodny z~\TDS (patrz część~\ref{sec:struct-tl} na +str.~\pageref{sec:struct-tl}). + +\item W ramach \TL{} dotychczasowe pojedyncze drzewo katalogów +\dirname{texmf} zostało rozdzielone na trzy mniejsze: \dirname{texmf}, +\dirname{texmf-dist} i~\dirname{texmf-doc} (patrz +część~\ref{sec:tld}, str.~\pageref{sec:tld}) oraz pliki \filename{README} +w~każdym z~tych katalogów). + +\item Wszystkie pliki makr wczytywane przez \TeX-a są +obecnie umieszczone wyłącznie w~podkalogu \dirname{tex} w~ramach +\dirname{texmf*}. Tym samym usunięto zbędne katalogi +\dirname{etex}, \dirname{pdftex}, \dirname{pdfetex} itp. i~uproszczono +metody wyszukiwania plików. + +\item Pomocnicze skrypty wykonywalne, niezależne od platformy +i~zwykle uruchamiane w~sposób automatyczny, są obecnie +umieszczone w~nowym podkatalogu \dirname{scripts} w~ramach \dirname{texmf*}. +Znajdywane są poleceniem \verb|kpsewhich -format=texmfscripts|. +Programy korzystające z tych skryptów mogą wymagać modyfikacji. +Patrz \CDref{texmf-doc/doc/english/tds/tds.html\#Scripts} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Scripts}}. + +\item Prawie wszystkie formaty traktują obecnie większość znaków +jako jawnie ,,wyświetlalne'' (\emph{printable}), nie zaś, jak było dotychczas, +konwertowane na \TeX-ową notację \verb|^^|. Możliwe jest to dzięki domyślnemu +wczytywaniu tablicy przekodowań \filename{cp227.tcx}. Dokładniej, znaki +o~kodach 32--256, HT, VT oraz FF są traktowane dosłownie podczas wyświetlania +komunikatów. Wyjątkiem jest plain \TeX{} (tylko znaki z~zakresu 32--127 +są nie zmieniane), \ConTeXt{} (znaki z zakresu 0--255) oraz formaty bazujące +na Omedze. Podobna domyślna właściwość była wprowadzona w~\TL\,2003, ale +obecnie została zaimplementowana w~bardziej elegancki sposób i~z~większymi +możliwościami indywidualnego dostosowania (patrz +\CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(Warto wspomnieć, że wczytując Unicode \TeX{} może w~komunikatach błędów +pokazywać niekompletne sekwencje znaków, ponieważ +został zaprojektowany ,,bajtowo''.) % hmmm, cały akapit by + % o strumieniach we-wy? + +\item Program \textsf{pdfetex} jest obecnie domyślną ,,maszyną'' dla +większości formatów (nie dotyczy to samego (plain) \textsf{tex}). +Domyślnie, gdy uruchamiamy polecenie \textsf{latex}, \textsf{mex} +itp., generowane są pliki \acro{DVI}. Możliwe jest jednak wykorzystanie +w~\LaTeX, \ConTeXt{} itp. m.in. właściwości mikrotypograficznych +zaimplementowanych w~\textsf{pdftex}, a~także rozszerzonych cech \eTeX-a +(\OnCD{texmf-dist/doc/etex/base/}). + +Oznacza to także, co warto podkreślić, że \emph{zalecane} jest użycie +pakietu \pkgname{ifpdf} (który działa zarówno z~plain, jak i~\LaTeX) +lub analogicznych makr. Zwykłe sprawdzanie czy zdefiniowano \cs{pdfoutput} +bądź kilka innych poleceń pierwotnych może nie wystarczyć do rozstrzygnięcia +czy nie jest generowany plik \acro{PDF}. W~tym roku podjęliśmy +wysiłek by zachować, najlepiej jak to możliwe, kompatybilność +z~dotychczasowymi przyzwyczajeniami użytkowników. Od przyszłego roku +należy się spodziewać, że \cs{pdfoutput} może być zdefiniowany nawet wtedy, +gdy generowany jest plik \acro{DVI}. + +\item pdf\TeX\ (\url{http://pdftex.org}) posiada obecnie wiele nowych +cech: + + \begin{itemize*} + + \item \cs{pdfmapfile} i~\cs{pdfmapline} pozwalają określić + z~poziomu dokumentu użyte mapy fontowe, a~także pojedyncze + dodatkowe wpisy w~tych mapach. + + \item mikrotypograficzne operacje z~fontami są łatwiejsze w użyciu;\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item wszystkie parametry pracy pdf\TeX-a, dotychczas określane + w~specjalnym pliku konfiguracyjnym \filename{pdftex.cfg}, muszą być + teraz ustawiane poleceniami wbudowanymi, jak w~pliku + \filename{pdftexconfig.tex}; plik \filename{pdftex.cfg} + nie jest już w~ogóle wykorzystywany. Po zmianie \filename{pdftexconfig.tex} + należy na nowo wygenerować pliki formatów (wciąż jednak użytkownik ma + pełną swobodę określania parametrów w~redagowanym dokumencie); + + \item więcej informacji zawarto w~podręczniku pdf\TeX-a: + \OnCD{texmf/doc/pdftex/manual}. + + \end{itemize*} + +\item Polecenie \cs{input} w~programach \cmdname{tex}, + \cmdname{mf} oraz \cmdname{mpost} akceptuje obecnie nazwy + plików ograniczone podwójnymi apostrofami, zawierające spacje i~inne + znaki, np.: +\begin{verbatim} +\input "nazwa_pliku ze spacjami" % plain +\input{"nazwa_pliku ze spacjami"} % latex +\end{verbatim} +Więcej informacji zawiera podręcznik Web2C: \OnCD{texmf/doc/web2c}. + +\item \texttt{-output-directory} -- nowa opcja programów \cmdname{tex}, + \cmdname{mf} oraz \cmdname{mpost} -- pozwala na zapisanie wyniku pracy + w~wyspecyfikowanym katalogu (np. możemy uruchomić program \texttt{tex} + z~plikiem znajdującym się na dysku tylko do odczytu, zaś wynik zapisać + na dysku pozwalającym na~to); + +\item Rozszerzenie enc\TeX\ zostało szczęśliwie włączone do Web2C. + Aby uaktywnić to rozszerzenie, należy podczas generowania formatu + użyć opcji \optname{-enc}. Ogólnie mówiąc, enc\TeX\ obsługuje + przekodowanie wejścia i~wyjścia, włączając także Unicode (\acro{UTF}-8) + (patrz \OnCD{texmf-dist/doc/generic/enctex/} oraz + \url{http://www.olsak.net/enctex.html}). + +\item Dostępny jest nowy program Aleph, który łączy cechy \eTeX\ i~\OMEGA. + Póki co, dokumentacja jest znikoma (\OnCD{texmf-dist/doc/aleph/base} + oraz \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}). + Format bazujący na \LaTeX-u dla programu Aleph nazwano \textsf{lamed}. + +\item Aktualna dystrybucja \LaTeX-a została zaopatrzona w~nową licencję +\acro{LPPL}, obecnie w~pełni zgodną i~aprobowaną przez zalecenia określone +w~licencji Debiana. O~nowościach i~uaktualnieniach można się dowiedzieć +przeglądając pliki \filename{ltnews} w~\OnCD{texmf-dist/doc/latex/base}. + +\item Dołączono także program \cmdname{dvipng} konwertujący pliki \acro{DVI} +do formatu graficznego \acro{PNG} (\OnCD{texmf/doc/man/man1/dvipng.1}). + +\item W~porozumieniu i~z~pomocą autora, Claudio Beccari, ograniczono +pakiet \pkgname{cbgreek} do zestawu fontów rozsądnego rozmiaru. Usunięto +sporadycznie używane fonty konturowe i~służące do prezentacji. Pełen +zestaw jest oczywiście nadal dostępny z~serwerów \acro{CTAN} +(\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + +\item Usunięto program \cmdname{oxdvi}; jego funkcje obsługuje +obecnie \cmdname{xdvi}. + +\item Programy z~przedrostkiem \cmdname{ini} oraz \cmdname{vir} +(np. \cmdname{initex}), które zwykle były dowiązaniami do programów +\cmdname{tex}, \cmdname{mf} i~\cmdname{mpost}, nie są już dostępne. +W~zupełności wystarcza użycie w~wierszu poleceń opcji \optname{-ini}. + +\item Dystrybucja nie zawiera binariów dla platformy \textsf{i386-openbsd} +(głównie z~powodu braku chętnych do wykonania kompilacji). + +\item W~systemie \textsf{sparc-solaris} należy ustawić zmienną systemową +\envname{LD\_LIBRARY\_PATH}, aby uruchomić programy \pkgname{t1utils}. +Binaria były kompilowane w~C++, ale w~tym systemie brak jest standardowego +położenia bibliotek uruchomieniowych. Fakt ten był już wcześniej znany, +ale nie był dotychczas udokumentowany. Z~kolei dla systemu +\textsf{mips-irix} wymagana jest obecność bibliotek \acro{MIPS}pro 7.4. + +\end{itemize} + +\subsection{Edycja 2005} +\label{sec:tlcurrent} + +Aktualna edycja przyniosła, jak zwykle, mnóstwo aktualizacji pakietów +i~programów. Struktura dystrybucji ustabilizowała się, niemniej jednak +pojawiło się nieco zmian w~konfiguracji: + +\begin{itemize} + +\item Wprowadzono nowe skrypty \cmdname{texconfig-sys}, \cmdname{updmap-sys} + i~\cmdname{fmtutil-sys}, których zadaniem jest modyfikowanie plików + konfiguracyjnych w~głównych drzewach katalogów systemu. Dotychczasowe + skrypty \cmdname{texconfig}, \cmdname{updmap} i~\cmdname{fmtutil} + modyfikują obecnie pliki użytkownika w~katalogu \dirname{$HOME/.texlive2005}. + (Patrz część~\ref{sec:texconfig}, str.~\pageref{sec:texconfig}). + +\item Nowe zmienne środowiskowe \envname{TEXMFCONFIG} + i~\envname{TEXMFSYSCONFIG} wskazują położenie drzew katalogów z~plikami + konfiguracyjnymi, odpowiednio: użytkownika i~systemu. Tak więc może okazać + się koniecznym przeniesienie własnych wersji \filename{fmtutil.cnf} + i~\filename{updmap.cfg} w~odpowiednie miejsca. Inną możliwością jest + przedefiniowanie \envname{TEXMFCONFIG} lub \envname{TEXMFSYSCONFIG} + w~pliku texmf.cnf. W~każdym przypadku położenie tych plików i~przypisania + \envname{TEXMFCONFIG} i~\envname{TEXMFSYSCONFIG} muszą być zgodne. + (Patrz część~\ref{sec:texmftrees}, str.~\pageref{sec:texmftrees}.) + +\item W~wydaniu zeszłorocznym przy produkowaniu wynikowego pliku DVI + \verb|\pdfoutput| i~podobne polecenia pozostawały niezdefiniowane, mimo + że używany był program \cmdname{pdfetex}. Zgodnie z~obietnicą, + w~tym roku zarzuciliśmy to rozwiązanie, którego celem było zapewnienie + kompatybilności. Z~tego powodu będą musiały ulec zmianie te Twoje dokumenty, + które używają \verb|\ifx\pdfoutput\undefined| do sprawdzania czy plik + wynikowy ma być w~formacie PDF. Możesz zastosować pakiet \pkgname{ifpdf.sty}, + który działa zarówno z~plain \TeX-em jak i~\LaTeX-em, albo zapożyczyć + zastosowane w~nim rozwiązania. + +\item W~wydaniu zeszłorocznym zmieniliśmy większość formatów tak, aby na + wyjściu 8-bitowe znaki były reprezentowane przez same siebie (por. + poprzednia część). Nowy plik TCX o~nazwie \filename{empty.tcx} pozwala + w~łatwy sposób uzyskać w~razie potrzeby oryginalną notację (\verb|^^|), + np.: + +\begin{verbatim} +latex --translate-file=empty.tcx twojplik.tex +\end{verbatim} + +\item Dołączono nowy program \cmdname{dvipdfmx}, służący do konwersji DVI + do PDF. Program jest aktywnie pielęgnowaną aktualizacją programu + \cmdname{dvipdfm}, który wciąż jest dostępny, ale nie jest już polecany. + +\item Nowe programy \cmdname{pdfopen} i~\cmdname{pdfclose} pozwalają na + przeładowanie plików PDF w~Adobe Acrobat Reader, bez konieczności ponownego + uruchamiania programu. (Inne przeglądarki formatu PDF, jak \cmdname{xpdf}, + \cmdname{gv} i~\cmdname{gsview}, nigdy na tę przypadłość nie cierpiały.) + +\item Dla spójności, zmienne \envname{HOMETEXMF} i~\envname{VARTEXMF} zostały + przemianowane odpowiednio na \envname{TEXMFHOME} i~\envname{TEXMFSYSVAR}. + Istnieje również \envname{TEXMFVAR}, która przeznaczona jest domyślnie + dla użytkownika. Patrz też punkt pierwszy, powyżej. + +\end{itemize} + +\subsection{Przyszłe wersje} + +\emph{Niniejsza dystrybucja nie jest doskonała!} Planujemy wydawanie jej +raz na rok +i~chcielibyśmy żeby zawierała jeszcze więcej pomocnej dokumentacji, więcej +programów użytkowych, lepsze programy instalacyjne oraz (oczywiście) stale +ulepszany i~poprawiany katalog makr i~fontów. Zadanie to jest wykonywane +przez ciężko pracujących ochotników, poświęcających na to wiele swojego +wolnego czasu. Wiele jeszcze pozostało do zrobienia. Jeżeli możesz pomóc, +nie zastanawiaj się i~przyłącz się do nas. + +Prosimy o~przesyłanie poprawek, sugestii i~uzupełnień oraz deklaracji +pomocy w~opracowywaniu kolejnych edycji na adres:\hfill\null + % +\begin{quote} +Sebastian Rahtz\\ +{}7 Stratfield Road\\ +Oxford OX2 7BG\\ +United Kingdom\\ +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + % +Uaktualnienia, ogłoszenia i~wskazówki będą dostępne na stronie +\url{http://tug.org/texlive.html}. + +\end{document} + diff --git a/Master/texmf-doc/source/polish/texlive-pl/live4ht.cfg b/Master/texmf-doc/source/polish/texlive-pl/live4ht.cfg new file mode 100644 index 00000000000..0fcd5cd1318 --- /dev/null +++ b/Master/texmf-doc/source/polish/texlive-pl/live4ht.cfg @@ -0,0 +1,48 @@ +% tex4ht configuration file for the TeX Live documentation. +% Accumulated over many years. Public domain. +% +% html specifies the main output format. +% info for extra debugging info in the log files. + +% better approach is to have html in one piece (including footnotes). +% also the newest TeX4ht could produce UTF-8 output (-utf8 option) +%\Preamble{charset=utf-8,html,info,fn-in} +\Preamble{html,info,fn-in} + +% add extra stylesheet +\Configure{@HEAD}{\HCode{% +<link rel="stylesheet" type="text/css" href="\jobname.css" />\Hnewline +<link rel="stylesheet" type="text/css" href="tex-live.css" />\Hnewline +}} + +% or LaTeX complains it is missing. +\begin{document} + +\EndPreamble + +% simplify output for HTML. We leave TeX and LaTeX alone, since tex4ht +% actually does the lowered E (and raised A) in CSS. +%\def\OMEGA{Omega} +\def\LaTeXe{LaTeX2e} +\def\eTeX{e-\TeX} +\def\acro#1{#1} +\def\MF{Metafont} +\def\BibTeX{BibTeX} +\def\warningbox{} +\def\endwarningbox{} + +\Configure{crosslinks}{[}{] + }{następny}{poprzedni}{wstecz} + {początek}{koniec}{spis} + +\ifx\tldocenglish\undefined \else + % these definitions cause "missing } inserted" at \end{tabularx} in + % other langs. don't know why. + % + % don't make these into links, as happens with \path. We only have a couple + % special characters that actually occur. + \def\dirname{\texttt\bgroup\catcode`\$=12 \catcode`\_=12 \finishliteral} + \def\finishliteral#1{#1\egroup} + \let\filename=\dirname +\fi + diff --git a/Master/texmf-doc/source/polish/texlive-pl/tex-livep.sty b/Master/texmf-doc/source/polish/texlive-pl/tex-livep.sty new file mode 100644 index 00000000000..3277ae66b4b --- /dev/null +++ b/Master/texmf-doc/source/polish/texlive-pl/tex-livep.sty @@ -0,0 +1,427 @@ +% $Id: tex-livep.sty#14 $ $Author: staw $ $Date: 2005/10/31 $ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-livep}[2005/09/24 v1.5 TeX Live documentation style] +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\usepackage[T1]{fontenc} +%\usepackage[latin1]{inputenc} +% +% for a proper \acro command (even in the context of the definition in +% ltugboat -- \DRC overrides without checking) +\RequirePackage{relsize} +\DeclareRobustCommand{\acro}[1]{\textsmaller{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\scriptsize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% Page layout. +\advance\textwidth by 1.1in +\advance\oddsidemargin by -.55in +\advance\evensidemargin by -.55in +% +\advance\textheight by 1in +\advance\topmargin by -.5in +\advance\footskip by -.5in +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{2} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\newcommand*{\filename}[1]{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\texttt{#1}} +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +\def\Ucom#1{% + \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} + +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\KPS{Kpathsea} +\def\La{La} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\p.{p.\,} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{Pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\textsf{\TeX\ Collection}} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\^e\llap{\raise 0.5ex\hbox{\'{}}}~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\acro{DVD}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{web}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[%unicode=true, % doesn't work in some PDF viewers :( + breaklinks,colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + pagecolor=hypercolor,urlcolor=hypercolor, + filecolor=hypercolor, + bookmarksopen,pdfstartview={FitBH -320000},hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-doc/source/polish/texlive-pl/tex4ht.env b/Master/texmf-doc/source/polish/texlive-pl/tex4ht.env new file mode 100644 index 00000000000..d6368769d1a --- /dev/null +++ b/Master/texmf-doc/source/polish/texlive-pl/tex4ht.env @@ -0,0 +1,259 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% tex4ht.env / .tex4ht (unix) 2005-05-17-01:25 % +% Copyright (C) 1997--2005 Eitan M. Gurari % +% % +% This work may be distributed and/or modified under the % +% conditions of the LaTeX Project Public License, either % +% version 1.3 of this license or (at your option) any % +% later version. The latest version of this license is % +% in % +% http://www.latex-project.org/lppl.txt % +% and version 1.3 or later is part of all distributions % +% of LaTeX version 2003/12/01 or later. % +% % +% This work has the LPPL maintenance status "maintained".% +% % +% This Current Maintainer of this work % +% is Eitan M. Gurari. % +% % +% gurari@cse.ohio-state.edu % +% http://www.cse.ohio-state.edu/~gurari % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Notes: % +% 1. Empty lines might be harmful % +% 2. Tagged script segments <tag>...</tag> are scanned only if % +% their names are specified within -ctag switches of tex4ht.c % +% and t4ht.c. When -c switches are not supplied, a -cdefault % +% is implicitly assumed. % +% The tags <tag> and </tag>, but not their bodies, are % +% ignored if they are not located at the start of their lines. % +% 3. Place this file in your work directory and/or root directory % +% and/or in directory `xxx' of your choice. In the latest case, % +% compile tex4ht.c and t4ht.c with `#define ENVFILE xxx', or % +% provide the address of the file to tex4ht and t4ht throught % +% the -e switch % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% * Replace `path', and possibly what follows, with appropriate % +% content % +% * A path may start with: % +% ~ for environment variable HOME % +% ~~ for environment variable TEX4HTTFM % +% * A ! requests recursive search into subdirectories % +% * Multiple t and i entries are allowed % +% * When supported by kpathsea % +% + t entries are ignored % +% + the path before /ht-fonts/ is ignored in i records that don't % +% represent real addresses % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +tpath/tex/texmf/fonts/tfm/! +% +<default> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/iso8859/2/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/mozilla/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +</default> + +<mozhtf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/mozilla/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</mozhtf> + +<iso2htf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/iso8859/2/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</iso2htf> + +<iso5htf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/iso8859/5/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</iso5htf> + +<iso7htf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/iso8859/7/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</iso7htf> + + +<iso15htf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/iso8859/15/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</iso15htf> + +<koi8rhtf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/koi/8r/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</koi8rhtf> + +<symhtf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/symbol/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</symhtf> + +<win1251htf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/win/1251/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</win1251htf> + +<unihtf> +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/unicode/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/ascii/! +i~/tex4ht.dir/texmf/tex4ht/ht-fonts/alias/! +</unihtf> + +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% dvi-to-xxx % +% choose one G-script % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% dvips options % +% magnification: -x mag (e.g., -x 1200) % +% page size: -T x,y (e.g., -T 14in,14in) % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + <convert> + G.png + Gdvips -E -q -Ppdf -f %%1 -pp %%2 > zz%%4.ps + Ggs -sDEVICE=pngalpha -sOutputFile=%%3 -r110x110 -dEPSCrop -dBackgroundColor=16#ffffff -dTextAlphaBits=2 -dGraphicsAlphaBits=2 -q -dbatch -dNOPAUSE zz%%4.ps -c quit + Grm zz%%4.ps +G.svg +Gdvips -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.eps +Gpstoedit -f svg zz%%4.eps %%3 +%-------------------% + Gdvips -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps + Ggs -sDEVICE=ppm -sOutputFile=zz%%4.ppm -r110x110 -dTextAlphaBits=2 -dGraphicsAlphaBits=2 -q -dbatch -dNOPAUSE zz%%4.ps -c quit + Gconvert zz%%4.ppm -crop 0x0 +page -density 110x110 -transparent '#FFFFFF' zz%%4.png + Gperl png2svgGDI.pl zz%%4.png + Gperl svgGDI.pl zz%%4.svg %%3 + Grm zz%%4.ps + Grm zz%%4.ppm + Grm zz%%4.png + Grm zz%%4.svg +G. +Gdvips -E -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps +Gconvert zz%%4.ps -trim +repage -density 110x110 -transparent '#FFFFFF' %%3 +Grm zz%%4.ps +%--------- alternative instructions for old versions of convert +% Gconvert zz%%4.ps -trim -density 110x110 -transparent "#FFFFFF" %%3 +% Gconvert zz%%4.ps -crop 0x0 +repage -density 110x110 -transparent "#FFFFFF" %%3 +% Gconvert zz%%4.ps -crop 0x0 +page -density 110x110 -transparent "#FFFFFF" %%3 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + </convert> +<netpbm> +Gdvips -Ppdf -mode ibmvga -D 110 -f %%1 -pp %%2 > zz%%4.ps +Ggs -sDEVICE=ppm -r110 -sOutputFile=zz%%4.ppm -q -dbatch -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -dNOPAUSE zz%%4.ps -c quit +Gmv zz%%4.ppm temp.ppm +Gpnmcrop temp.ppm > zz%%4.ppm +Gppmtopng -interlace -transparent 1,1,1 zz%%4.ppm > %%3 +Grm zz%%4.ps +Grm zz%%4.ppm +Grm temp.ppm +% Gppmtogif -interlace -transparent 1,1,1 zz%%4.ppm > %%3 +</netpbm> +<dvipng> +G.png +Gdvipng -T tight -x 1400 -D 72 -bg Transparent -pp %%2:%%2 %%1 -o %%3 +G.gif +Gdvipng -T tight -x 1400 -D 72 -bg Transparent -pp -gif %%2:%%2 %%1 -o %%3 +G. +Gdvips -Ppdf -mode ibmvga -D 110 -f > zz%%4.ps +Gconvert -crop 0x0 -density 110x110 -transparent '#FFFFFF' zz%%4.ps %%3 +Grm zz%%4.ps +</dvipng> + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Default scripts, shifted rightward 1 pos +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + s--- needs --- %%1.idv[%%2] ==> %%3 --- + b--- characters --- + g.png +% empty bitmaps % + Ecopy empty.png %%1%%2 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % +% +% * Address for an automatically created bookkeeping file % +% * Ignored under kpathsea % +% * The work directory is assumed for a default % + l~/tex4ht.dir/tex4ht.fls +% +% t4ht -d%%2 % +Mmv %%1 %%2%%3 +Ccp %%1 %%2%%3 +% t4ht -d%%2 -m%%1 % +Achmod %%1 %%2%%3 +% removed protection % +S* +% +<validatehtml> + .html xmllint --noout --valid --html %%1.html +</validatehtml> +<validate> + .xml xmllint --noout --valid %%1.xml + .html xmllint --noout --valid %%1.html + .css mycssparser %%1.css +</validate> + % +<oo> +%%% openoffice % +.4os mkdir sxw-%%0.dir +.4os mkdir sxw-%%0.dir/Pictures +.4os mv %%1.4os sxw-%%0.dir/settings.xml +.4os mv %%0.xml sxw-%%0.dir/content.xml +% % +.4om mkdir sxw-%%0.dir/%%1 +.4om mv %%1.4om sxw-%%0.dir/%%1/content.xml +.4om cp sxw-%%0.dir/settings.xml sxw-%%0.dir/%%1/settings.xml +% % +.4of mkdir sxw-%%0.dir/META-INF +.4of mv %%1.4of sxw-%%0.dir/META-INF/manifest.xml +% % +.4ot mv %%1.4ot sxw-%%0.dir/meta.xml +.4oy mv %%1.4oy sxw-%%0.dir/styles.xml +.4og cp -r %%1 sxw-%%0.dir/Pictures/%%1 +%-- sxw -- % +.4ox cd sxw-%%0.dir; zip -r %%0.sxw * ; cd .. +% % +.4ox mv sxw-%%0.dir/%%0.sxw . +% % +.4ox rm %%1.4ox +.4ox rm -r -f sxw-%%0.dir +%-- odt -- % +.4od cd sxw-%%0.dir; zip -r %%0.odt * ; cd .. +% % +.4od mv sxw-%%0.dir/%%0.odt . +% % +.4od rm %%1.4od +.4od rm -r -f sxw-%%0.dir +%%% end openoffice % +</oo> +% +<javahelp> +.jhm java -jar ${HOME}/jh2.0/javahelp/bin/jhindexer.jar -db %%0-doc/%%1-jhs %%1*.html +</javahelp> +<javahelp1> +.jhm java -jar ${HOME}/jh1.1.3/javahelp/bin/jhindexer.jar -db %%0-doc/%%1-jhs %%1*.html +</javahelp1> + +% end of file % + |