Przydatny pakiet do wstawianie identyfikatora wersji dokumentu. Do tej pory stosowałem do tego makra `generyczne', ewidentnie wymyślone w okolicach f-my BOP sc.:
\newdimen\hs\hs 210mm \newdimen\vs\vs 297mm \def\shipmarg{\kern15mm} \newbox\shipbox \let\oriship\shipout \def\DOSHIP{% \hoffset-1in \voffset-1in \oriship\vbox to\vs{ \shipmarg\nointerlineskip \nointerlineskip\vss \hbox to\hs{\hss\box\shipbox\hss}% \nointerlineskip\vss \hbox to\hs{\shipmarg \DOCNOTE \hss} \shipmarg }} \def\doship{\aftergroup\DOSHIP} \def\shipout{\afterassignment\doship\setbox\shipbox}
(Zaznaczone przerażające polecenia \aftergroup/\afterassignment, których w życiu nie używałem i przyznam nawet, że nie znam ich znaczenia.) Po czymś takim, umieszczonym najlepiej w osobnym pliku, należy zdefiniować tekst umieszczany na każdej stronie:
\def\DOCNOTE{ .... }
Patent ten
w zmodyfikowanej wersji był wykorzystywany m.in. w klasie wzmgr.
Był ale ponieważ przestał działać wymieniłem go na pakiet prelim2e
.
Sądząc z zawartości google -- mniej znany. Używa się go
zaś bardzo prosto:
\usepackage{prelim2e} \renewcommand{\PrelimWords}{...} %% <-- opcjonalnie, jeżeli domyślny tekst się nie podoba
Pakiet draftcopy
nie działa z pdftexem więc od razu został
zdyskwalifikowany. (Poza tym nie podoba mi się zwyczaj
wstawiania bombastycznego
napisu w tle tekstu kolumny.)
Dodanie prelim2e
do wzmgr
zrobiłem warunkowo.
Jak ktoś doda do dokumentu opcję brudnopis
, to
zamieni się to na poniższe:
\DeclareOption{brudnopis}{\AtEndOfClass{\input{prelim2e.sty}% \renewcommand{\PrelimWords}{\ThisDocVersionId}\linespread{1.0}}} \def\ThisDocVersionId{....} %% <-- trzeba zdefiniować --
Bez umieszczenia \input
wewnątrz \AtEndOfClass
, LaTeX zgłaszał błąd powtórnej
definicji \PrelimWords
.
Mam nadzieję, że powyższe jest OK, ale tradycyjnie pewności nie ma:-)
Prosta tabela składająca się z dwóch kolumn, ale zawierająca
wielowierszowe rubryki.
Rubryki mają być składane ,,w chorągiewkę''. Zatem dodaję
pakiet array
i definiuję za pomocą
\newcolumntype
:
\usepackage{array} \newcolumntype{L}{>{\raggedright\hspace{0pt}}p{.48\textwidth}} \begin{document} \begin{tabular*}{\textwidth}{@{\extracolsep{\stretch{1}}}LL}\hline coś tam coś tam coś & coś tam coś tam coś \\ \end{tabular*}
Nie działa a przyczyna jest subtelna. Otóż
\raggedright
m.in. definiuje
polecenie \\
, które kończy wiersz.
Wewnątrz tabular
też jest zdefiniowane \\
,
które kończy wiersz tyle, że tabeli -- a to co innego.
Na okoliczność tego konfliktu wymyślono polecenie
\tabularnewline
. Należy zamiast \\
na końcu
wiersza tabeli wstawiać \tabularnewline
i będzie git!
Do
dziś nie potrzebowałem \tabularnewline
więc
nawet nie wiedziałem, ze takie coś istnieje.
Zamiast \tabularnewline
można -- dołączając pakiet
ragged2e
-- wstawić ,,bezpieczną wersję''
\raggedright
, czyli \RaggedRight
.