amkhlv/ js
amkhlv/ js-url
amkhlv/ path-to-link
amkhlv/ elemstyle
amkhlv/ rectangular-table?
amkhlv/ table
amkhlv/ verb
amkhlv/ clr
amkhlv/ titlepage-init
amkhlv/ slide
amkhlv/ afterpause
amkhlv/ remove
amkhlv/ initialize-formula-collection
amkhlv/ number-for-formula
amkhlv/ ref-formula
amkhlv/ command-to-typeset-formula
amkhlv/ formula
amkhlv/ equation


This manual is not very useful, because most of the functions are auto-generated by macros. The beginner user should find the instructions in the form of a slide presentation here, and also study the sample file slides-manual.scrbl, which is in the samples directory. This sample file can be used as a template for creating new presentations.

 (require (planet amkhlv/bystroTeX/common))

(amkhlv/js x)  (traverse-element?)
  x : string?
Javascript injection

(amkhlv/js-url url)  (traverse-element?)
  url : string?
Insert Javascript from URL

(amkhlv/path-to-link x)  (string)
  x : string?
Returns the string representing a file URL for the UNIX path represented by x

(amkhlv/elemstyle x)  (style?)
  x : string?
Style selector for element. Example of use:

(element (amkhlv/elemstyle "vertical-align:middle") (image "flowers-on-the-wall.png"))

(amkhlv/rectangular-table? l)  (boolean?)
  l : any
Verifies if l is a list of lists representing a rectangular table

(amkhlv/table rows #:orient dirn)  (table)
  rows : amkhlv/rectangular-table?
  dirn : (or/c 'hor 'vert #f)
To insert a table

(amkhlv/verb x #:indent i #:rest xs)  (block)
  x : string?
  i : exact-nonnegative-integer?
  xs : (listof string?)
Like (verbatim x #:indent i xs) but modified so that copy-past does not introduce extra linebreaks

(amkhlv/clr colorname #:rest xs)  (element)
  colorname : string?
  xs : (listof string?)
Colored text.

 (require (planet amkhlv/bystroTeX/slides))

(amkhlv/titlepage-init)  (element)
Installs the titlepage style

(amkhlv/slide x    
  [#:tag tg    
  #:showtitle sttl]    
  #:rest xs)  (part?)
  x : content?
  tg : (or/c symbol? string? #f) = #f
  sttl : boolean? = #f
  xs : (listof pre-flow?)
A basic slide. The title of the slide is x, and the contents are xs. I recommend providing a nice tag tg, which will serve as a filename for the html. Otherwize, x will be used as a filename, which may lead to awkward effects.

(amkhlv/afterpause [#:tag tg] #:rest xs)  (part?)
  tg : (or/c symbol? string? #f) = #f
  xs : (listof pre-flow?)
The continuation of the slide to be shown after pause.

(amkhlv/remove)  (void?)
Removes the most recently shown part of the slide

(amkhlv/initialize-formula-collection x y)  (db?)
  x : string?
  y : string?
This is to initialize the formula collection. The name of the sqlite database is x, and the name of the folder for keeping png files is y. This function should not be called by the user, because it is called automatically.

(amkhlv/number-for-formula x)  (string?)
  x : string?
Like \label{...} in LaTeX, the label is x.

(amkhlv/ref-formula x)  (string?)
  x : string?
Like \ref{...} in LaTeX, reference to the label x.

(amkhlv/command-to-typeset-formula comm    
  fn)  (string?)
  comm : path-string?
  tex : string?
  n : number?
  fn : string?
This should not be directly called by the user. Just for reference, comm is the path to an executable, which has the following properties. That executable should take 3 arguments: a LaTeX string tex representing a formula, a number n which is the intended fontsize of the formula, and a string fn which is the filename, which should have extension .png. The executable, upon success, should return a number representing the vertical offset. (Because e.g. letters x and y have different vertical offset.)

(amkhlv/formula #:database x    
  #:formulas-in-dir y    
  [#:shell-command z]    
  #:size n    
  [#:align m    
  #:use-depth ud    
  #:aa-adjust aa-adj]    
  #:rest tex)  (element?)
  x : db?
  y : string?
  z : path? = #f
  n : natural-number/c
  m : (or/c (integer-in (- 99) 99) #f) = #f
  ud : boolean? = #f
  aa-adj : (integer-in (- 99) 99) = 0
  tex : (listof string?)
The user probably will not want to call this procedure directly, because there are various auto-generated shortcuts.

(amkhlv/equation tex    
  #:hspace hs    
  #:database x    
  #:formulas-in-dir y    
  #:shell-command z    
  #:size n    
  [#:label l    
  #:aa-adjust aa-adj])  (nested-flow?)
  tex : (listof string?)
  hs : natural-number/c
  x : db?
  y : string?
  z : path?
  n : natural-number/c
  l : (or/c string? #f) = #f
  aa-adj : (integer-in (- 99) 99) = 0
Display-style formula. But it should not be called directly, because there is a shortcut defined in the headers of the slide file.