diff options
author | Norbert Preining <norbert@preining.info> | 2020-05-07 03:01:09 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2020-05-07 03:01:09 +0000 |
commit | 56bd1f5b8377f54b4af39a114362a7762d27f13c (patch) | |
tree | 882c573288f2a3f158b490ea3de1672fca9e94a9 /macros/luatex/optex/demo | |
parent | 36d8a5cd45b5a96007208a0d5b1f52e708d0fec8 (diff) |
CTAN sync 202005070301
Diffstat (limited to 'macros/luatex/optex/demo')
-rw-r--r-- | macros/luatex/optex/demo/op-demo.tex | 127 | ||||
-rw-r--r-- | macros/luatex/optex/demo/op-letter.tex | 41 | ||||
-rw-r--r-- | macros/luatex/optex/demo/op-ring.png | bin | 0 -> 512984 bytes | |||
-rw-r--r-- | macros/luatex/optex/demo/op-slides.tex | 288 | ||||
-rw-r--r-- | macros/luatex/optex/demo/slides-bg.png | bin | 0 -> 62385 bytes |
5 files changed, 456 insertions, 0 deletions
diff --git a/macros/luatex/optex/demo/op-demo.tex b/macros/luatex/optex/demo/op-demo.tex new file mode 100644 index 0000000000..ea1dd5b65d --- /dev/null +++ b/macros/luatex/optex/demo/op-demo.tex @@ -0,0 +1,127 @@ +%% This is part of OpTeX project, see http://petr.olsak.net/optex + +\fontfam[LMfonts] % Default font family: Latin Modern + +\margins/1 a5 (1,1,1,1.4)cm % A5 paper + 1cm margins +\typosize[9/10.5] % 9pt font / 10.5pt baselineskip +\parindent=10pt % typesetting parameters +\hyperlinks \Blue\Blue % active hyperlinks +\activettchar` % in-text verbatim by `...` +\everyintt={\Red} % in-text verbatim Red +\enquotes % use \"text" for English quotation + +\tit Demonstration + +\nonum\notoc\sec Contents + +\maketoc % Table of Contents is auto-generated here + +\sec Lists + +The lists have to be surrounded by `\begitems` +and `\enditems` sequences. + +\begitems +* First item. +* Second item. + \begitems \style i + * Nested item list, + * numbered by roman numerals. + \enditems +* Last item. +\enditems + +\secc Title of\nl Subsection + +The subsection text\dots + +\sec References + +There is a numbered equation. +The number is auto-generated by `\eqmark` sequence. +$$\label[my-eq] + a^2 + b^2 = c^2 \eqmark +$$ +We can refer to Equation~\ref[my-eq] +on page~\pgref[my-eq]. +We can refer to Table~\ref[my-tab] in +Section~\ref[tab-sec] too. And Figure~\ref[my-pic] +is on page~\pgref[my-pic]. + +\sec Hyperlinks + +You can refer to \url{http://petr.olsak.net} using `\url`. +Or use `\ulink` if the raw URL needs to be hidden: +\ulink[http://petr.olsak.net/optex]{\OpTeX/ page}. +The parameter text is colorized and it becomes +an active link if the `\hyperlinks` sequence +is used at the beginning of the document. +Internal links are activated too. + +\sec[tab-sec] Tables + +The `\table` sequence can be used +instead of \"low level" `\halign`. +The following table is framed by `\frame` sequence +in order to get a double frame. + +\bigskip +\caption/t [my-tab] Testing table. +\cskip +\centerline{% + \frame{\table{|r|c|l|}{\crl + \bf Title A & \bf Title B & \bf Title C \crll + first & second & third \cr + next & text & last \crl }}} + +\sec Images + +The images (PDF, JPG, PNG, TIFF) can be inserted +by `\inspic` sequence. The `\caption` +can be added if you need to refer to a figure. + +\label[my-pic] +\centerline {\picwidth=2.7cm \inspic{op-ring.png}} +\cskip +\caption/f The nonempty ideal of a simple ring -- + the ring itself. + +\sec Verbatim + +In-text verbatim is surrounded by the character declared +by `\activettchar` sequence. The listing can be surrounded +by `\begtt` and `\endtt` sequences +\begtt +This is verbatim. + All characters are printed $$, \, # etc. +\endtt +or it can be included by `\verbinput` from external file. + +\verbinput (98-100) op-demo.tex + +\sec Math + +The Math alphabets +`\mit`, `\cal`, `\script`, `\frak`, `\bbchar`, `\bi` +are provided. For example: +$$ + {\bi A} = \pmatrix {\cal C & \script C \cr + \frak M & \bbchar R }. +$$ +Hundreds of AMS symbols are available: +$\sphericalangle, \boxplus, \Cup, \Cap, \ldots$ + +\sec Others + +The `\fontfam` command selects a desired family of fonts. +The `\typosize` or `\typoscale` sequences set the size +and baselineskip of used fonts (including math fonts). +The `\fnote` generates a footnote\fnote{Like this} and +`\mnote` generates a margin note. +The `\margins` sets margins and paper dimensions. +The `\cite` sequence can be used for bibliographic citations. +The `\bib` sequence creates one bibliography record. Or +you can use `\usebib` for direct access to the {\tt.bib} files. +The list of features does not end here\dots + +\bye diff --git a/macros/luatex/optex/demo/op-letter.tex b/macros/luatex/optex/demo/op-letter.tex new file mode 100644 index 0000000000..1b5d722d3b --- /dev/null +++ b/macros/luatex/optex/demo/op-letter.tex @@ -0,0 +1,41 @@ +%% This is part of OpTeX project, see http://petr.olsak.net/optex + +\letter % \letter OpTeX style activated +\fontfam[bonum] +\cslang + +\address + Vážený pan + Mgr. Bořek Byrokrat + ředitel Ústavu pro další možnosti + Úřední 789 + 123 45 Praha 1 + +\hfill V Praze dne \today + +\subject Žádost o možnost další možnosti + +Vážený pane řediteli, + +na základě Vašeho dopisu č.j.~123456/78-dat a elektronické výzvy si dovoluji +Vás požádat o prozkoumání mé možnosti další možnosti. +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do +eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim +veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea +commodo consequat. + +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do +eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim +veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea +commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit +esse cillum dolore eu fugiat nulla pariatur. + +S úctou + +\hfill \address + {\it Petr Olšák} + specialista na \TeX/ + Ulice 12345 + Praha 13 + +\bye diff --git a/macros/luatex/optex/demo/op-ring.png b/macros/luatex/optex/demo/op-ring.png Binary files differnew file mode 100644 index 0000000000..de7811df83 --- /dev/null +++ b/macros/luatex/optex/demo/op-ring.png diff --git a/macros/luatex/optex/demo/op-slides.tex b/macros/luatex/optex/demo/op-slides.tex new file mode 100644 index 0000000000..f6213cc63d --- /dev/null +++ b/macros/luatex/optex/demo/op-slides.tex @@ -0,0 +1,288 @@ +%% This is part of OpTeX project, see http://petr.olsak.net/optex + +\slides % OpTeX slides style activated + +\catcode`<=13 % special printing of <text> +\def<#1>{\hbox{$\langle$\it#1\/$\rangle$}} +\everyintt={\catcode`\<=13} + +\hyperlinks\Blue\Blue % hyperlinks are used in the title page +\backgroundpic{slides-bg.png} % background picture + +\activettchar` % inline verbatim +\enquotes % English quotes \"..." + +\slideshow %------------------------------------------------------------ + + +\tit \OpTeX/ slides + +\subtit Petr Olšák\nl petr@olsak.net + +\subtit\rm \url{http://petr.olsak.net/optex} + +\pg; %------------------------------------------------------------------ + +\sec Basics + +* The the simple document looks like: + +\begtt +\slides % style initialized +%\wideformat % 16:9 +\slideshow % partially uncovering ideas + +\sec First slide +text +\pg; + +\sec Second slide +text +\pg. +\endtt + +* If `\slideshow` is missing or commented out then + \"partially uncovering ideas" (see later) are deactivated. It is useful + for printing. +* The `\slideshow` must be the last command in the declaration part of the + document. +* By default, the slides have A5 landscape format. + You can declare `\wideformat`. Then the height is the same + but width is 263\,mm, i.\,e.~the ratio width:height is 16:9. + +\pg; %------------------------------------------------------------------ + +\sec Title slide + +* Title of the document (used at the first slide) is created + by `\tit Title` (terminated by end of line). +* The `\subtit Author name etc.`\ (terminated by end of line) + can be used after `\tit` at the first slide. +* You can use `\nl` for new line in paragraphs or titles. + +\sec Default design + +* The paragraph texts are ragged right. +* Titles, subtitles and section titles are centered. +* The `\sec` and `\secc` are printed without numbers. +* Paragraph indentation is zero. There is a little vertical space between + paragraphs. +* The Heros font family (aka Helvetica) is initialized as default.\nl + Sans-serif FiraMath font for math typesetting is used. +* The items in lists are started by blue square (`\type X` and `\type x` ). + +\pg; %------------------------------------------------------------------ + +\sec One slide (one page) + +* Top level item list is activated by default. The asterisk `*` opens + new item at the top level list. +* Nested items lists (second and more level) should be created in + the `\begitems`\dots`\enditems` environments. +* Each slide (page) must be terminated by `\pg;` command. +* The last slide must be terminated by `\pg.` command or by `\bye`. + +\begtt +\sec My ideas + +* First idea +* Second idea + \begitems + * First sub-idea + * Second sub-idea + \enditems +* Final idea +\endtt + +* Note: each page is processed in a group, so: put your own definitions + (if~exist) before `\slideshow` or use `\global` assignment. + +\pg; %------------------------------------------------------------------ + +\sec Partially uncovering ideas + +* The control sequence `\pg` must be followed by:\pg+ +\begitems +* the character `;` -- normal next page,\pg+ +* the character `.` -- the end of the document,\pg+ +* the character `+` -- next page keeps the same text + and a next text is added (usable for partially uncovering of ideas).\pg+ +\enditems + +* Summary: +\begtt +\pg; ... next page +\pg. ... the end of the document +\pg+ ... uncover next text at the same page +\endtt +\pg+ + +* When `\slideshow` is not declared then `\pg+` is deactivated.\pg+ +* The `\pg+` creates a new \"virtual page", so the current paragraph is + terminated. + +\pg; %------------------------------------------------------------------ + +\sec Example with partially uncovering ideas + +The previous page was created by: + +\begtt +\sec Partially uncovering ideas + +* The control sequence `\pg` must be followed by:\pg+ + +\begitems +* the character `.` -- normal next page,\pg+ +* the character `;` -- the end of the document,\pg+ +* the character `+` -- next ... \pg+ +\enditems + +* Summary +... +* When `\slideshow` is not declared + then `\pg+` is deactivated.\pg+ +* The `\pg+` creates a new \"virtual page", + so the current paragraph is terminated. +\pg; +\endtt + +\pg; %------------------------------------------------------------------ + +\sec Notes + +* When `\slideshow` is active then you cannot reference sections by + hyperlinked `\ref`. Only `\pgref` works (and goes to the last layer + of the referenced page). +* If the text overfull the page (slide) then it follows to the next page without + saying explicitly `\pg;`. But `\slideshow` cannot work in such case.\pg+ + +\sec More about design + +* You can use `\backgroundpic{<image-file>}` for putting an image to the backgroud. +* You can re-declare `\footline` or re-define internal macros for design as + you wish. +* You can put the images or text wherever using `\putimege` or `\puttext` + macros... + +\pg; %------------------------------------------------------------------ + +\sec Putting images and texts wherever + +* `\puttext <right> <up> {<text>}` puts a <text> to the desired place: + It moves the current point <right> and <up>, puts the <text> and returns + back, so the typesetting continues from previous position. The parameters + <right> and <up> are dimensions. For example + +\begtt +\puttext 0mm 50mm {\Red HELLO} +\endtt + + \puttext 0mm 50mm {\Red HELLO} + prints red HELLO, as shown here.\pg+ + +* `\putpic <right> <up> <width> <height> {<image-file>}` + puts the image with desired <width> and <height> at the position like + `\puttext` puts the text. + + \putpic .8\hsize 20mm 30mm \nospec {op-ring.png} +* The ring above is the result of + +\begtt +\putpic .8\hsize 20mm 30mm \nospec {op-ring.png} +\endtt + % + used at beginning of this paragraph.\pg+ +* Use `\nospec` for <width> or <height> of the image if you don't want to specify both + dimensions (because you don't want to change the image aspect ratio). + +\pg; %------------------------------------------------------------------ + +\sec Limits of the \code{\\pg+} sequence + +* The \code{\\pg+} sequence (partially uncovering ideas) cannot be used inside + a~group. +* The exception is the nested environment `\begitems...\enditems`. +* The `\pg+` always finalizes the current paragraph. + It is impossible to hide only a part of horizontal mode.\pg+ + +\sec The \code{\\layers}\,...\code{\\endlayers} environment + +If you really need something unsupported by `\pg+` then you can use + +\begtt \catcode`\<=13 +\layers <number> +<layered text> +\endlayers +\endtt + +* The <layered text> should include conditions like + `\ifnum\layernum...` or `\ifcase\layernum`. + It is printed <number> times to more slide pages (layers) with the same + surrounding text. See next page... + +\pg; %------------------------------------------------------------------ + +\sec Example of \code{\\layers} environment + +The `\slides` style provides a shortcut `\use` and a macro `\pshow` (means +partially show): + +\begtt +\def\use#1#2{\ifnum\layernum#1\relax#2\fi} +\def\pshow#1{\use{=#1}\Red \use{<#1}\Transparent \ignorespaces} +\endtt + +The `{\pshow<num> <text>}` prints <text> in Red when current layer is equal +to <num> or it prints <text> normally when current layers is greater than <num>. +The transparent (invisible) text is used in other cases. + +The following dance: +\layers 3 +{\pshow2 Second text.} {\pshow3 Third text.} {\pshow1 First text.} +\endlayers +\pg+ + +was generated by + +\begtt +\layers 3 +{\pshow2 Second text.} {\pshow3 Third text.} {\pshow1 First text.} +\endlayers +\endtt + +\pg+ +* The <layered text> is treated as macro parameter. So, you cannot use verbatim + nor `\sec` titles here. Maximal one `\layers` environment can be per one + page (terminated by `\pg+` or `\pg;` or `\pg.` + +\pg; %------------------------------------------------------------------ + +\sec Comparison \OpTeX/ slides with Beamer\fnote{\url{http://www.ctan.org/pkg/beamer}} + +The \LaTeX{} package {\bf\Blue Beamer} gives much more features and many themes +are prepared for Beamer, {\bf\Red but} +\pg+ +* the user of Beamer is forced to {\em program} his/her document using + dozens of \code{\\begin{foo}} and \code{\\end{foo}} and many another + programming constructions,\pg+ +* plain \TeX{} gives you a possibility to simply + {\em write} your document with minimal markup. The result is more compact. + You can concentrate to the contents of your document, not to the + programming syntax.\pg+ +* User needs to read 250 pages of doc for understanding Beamer,\pg+ +* on the other hand, you need to read only ten + slides\fnote{this eleventh slide isn't counted} + and you are ready to use {\bf\Blue\OpTeX/ slides}. + +\pg; %------------------------------------------------------------------ + +\null +\vskip2cm +\centerline{\typosize[35/40]\bf Thanks for your attention}\pg+ + +\vskip2cm +\centerline{\Blue\typosize[60/70]\bf Questions?} + +\pg. %----------------------------- THE END ---------------------------- + diff --git a/macros/luatex/optex/demo/slides-bg.png b/macros/luatex/optex/demo/slides-bg.png Binary files differnew file mode 100644 index 0000000000..4ac1ad8c38 --- /dev/null +++ b/macros/luatex/optex/demo/slides-bg.png |