Commit Graph

96 Commits

Author SHA1 Message Date
Matthew Flatt
9c5a45985b html-properties: add xexpr-property
For injecting literal HTML (or, using `cdata`, literal anything) into
the rendered HTML of a document. If you must.
2017-12-28 16:22:07 -06:00
Matthew Flatt
5f29095f02 scribble/book-index: more book-like index style for Latex/PDF
Merge index entries that have the same key and use cleveref to
render the page-number sequence.
2017-12-18 11:07:02 -07:00
Leif Andersen
564f441d99 Add authorsaddresses field to acmart
This was added in a recent version of the acmart style and is
required to set (or remove) the addresses field at the bottom of
the first page in some styles.
2017-10-18 20:38:03 -04:00
Matthew Flatt
7278568040 section links plus scriblib/{autobib,figure}: better match acmart
Add a `link-render-style` syntax property to control the rendering of
section links --- so that HTML output can say "section <number>", and
so that Latex/PDF output can have just the section number hperlinked
(as in acmart).

It seems unfortunate that the link rendering is so hardwired into each
rendering back-end, but maybe this can be made even more configurable
in the future. Meanwhile, Latex macros already provide an additional
layer of rendering control (but not enough, it turns out, to easily
perform the same adjustments as the 'number mode that matches acmart).

For `scriblib/figure` make `figure-ref` and `Figure-ref` similarly
sensitive to the link-rendering style.

For `scriblib/autobib`, change the hyperlinking of references
so that the color can be overridden, and make `scribble/acmart`
override it.
2017-10-11 11:19:44 -06:00
Matthew Flatt
1e81f0005a scribble/decode: add 'no-index to avoid part titles in index
Using 'no-index makes sense for a book, for example.
2017-10-09 08:34:23 -07:00
Matthew Flatt
84f5301ac0 scriblib/figure: more configuration of style 2017-09-26 08:13:03 -06:00
Matthew Flatt
dd92ebd2d9 acmart: fix contract on nested-flow forms, like acks
A nested flow's argument to be decoded a pre-flow instead of a
pre-content.
2017-09-08 16:37:24 -06:00
Asumu Takikawa
77a46f46c7 Add doc examples for @author and @author+email 2017-09-08 12:35:18 -07:00
Ben Greenman
9fc96fc56e doc: require 'scribble/example' in 'examples' example
Also increase the memory limit in the example.
(On my machine, this example fails if the memory limit is 37MB or less.)
2017-08-31 00:29:40 -04:00
Matthew Flatt
9f5fe0859d change base handling of convertible values as content
If a value is convertible to 'text, then use that conversion.

Otherwise, convert using `write` instead of always using "???".

Also, correct documentation to include convertible values among
the valid forms of content, and document the new conversion rules
there.
2017-08-21 08:41:09 -06:00
Robby Findler
01b279d5ba added author+date-square-bracket-style 2017-08-14 07:23:29 -05:00
Matthew Flatt
6587e4f5ea index style-property symbols 2017-07-27 08:20:59 -06:00
Ben Greenman
c4b4e4c929 acmart: a little better for empty documents
1. Change `add-acmart-styles` to add an element WITHOUT the `pretitle` style
   for the collects phase. With this, an empty `#lang scribble/acmart` document
   builds an empty PDF.
2. Add documentation for a "minimal" `scribble/acmart` document.
2017-06-22 20:11:37 -04:00
Ben Greenman
800d08fbef doc: fix 'scribble-eval-handler' order of arguments
Change the documented order of arguments to match the implementation / uses
 in `scribble/eval.rkt` and `scriblib/gui-eval.rkt`
2017-06-11 12:21:58 -04:00
Ben Greenman
b289b76536 autobib: add contracts to *-location functions
add contracts to location-formatting functions,
and make sure those functions convert their inputs to strings,
and fix a documentation bug in `techrpt-location`
2017-05-23 23:34:02 -04:00
Leif Andersen
4c8ac8e021
Fix contract docs for departments in scribble/acmart.
(I placed the wrong contract in the docs. The correct one is the one
defined in the module.)
2017-05-23 14:22:39 -04:00
Ben Greenman
71bd7ddae0 doc: point 'tabular #:style' to 'table' docs 2017-05-20 18:12:42 -04:00
Leif Andersen
a8dec74ffa Add commands for cite-author and cite-year to autobib. (#111)
These commands work like natbib's citeauthor and citeyear commands,
and facilities making possessive citations. For example:

> Thanks to @(cite-author foo)'s (@(cite-year foo)) paper on stuff...

These identifiers are added with `define-cite` as keywords, and thus
can be omitted with no downside for backwards compatibility.

@(define-cite cite citet generate-bib
   #:cite-author cite-author
   #:cite-year cite-year)

Also in this commit:

* Add documentation.

* Add tests for autobib

* Bump version and add history.
2017-05-18 13:07:20 -04:00
Leif Andersen
ba2e1d6ca7 Top-matter text needs to be 'pretitle.
As per the acmart pdf, top matter matterial needs to appear
before the `\maketitle` command. As such, we need to use the
`pretitle` paragraph style.
2017-05-17 13:51:46 -04:00
Leif Andersen
b62bfe3bdf render -> resolve
The documentation for the `resolve-get` family of functions
incorrectly refers to themselves as `render-get`. This commit
fixes that.
2017-05-16 14:38:17 -04:00
Matthew Flatt
18e467ef9e disable _ prefix handling in racketmodname and other places
In places where module names are typeset, such as `racketmodname`,
there's no way to disable the special treatment of `_` as an
identifier prefix as in `racket`. Even using
`make-element-id-transformer` doesn't work, because the module-name
datum is explcitly disconnected from binding withing `racketmodname`.
2017-04-14 06:52:16 -06:00
Robby Findler
725f2bc9ed adjust for new location of 'blame object' @deftech{} 2017-04-12 21:48:08 -05:00
Leif Andersen
8e22565759 Add optional SHyphen Latex macro to prevent hyphens from appearing in @racket[...] identifiers
* Prevent hyphens from appearing in @racket[...] identifiers when they overflow.

* Add SHyphen command.

A style file can redefine SHyphen to toggle how they want to
hyphen their text

* Add documentation
2017-04-12 17:40:16 -04:00
Matthew Flatt
92d9a0732d improve docs on numberers
Closes #96
2017-03-29 07:12:13 -06:00
Leif Andersen
9da2f4f40f Add a pretitle style property for nested flows. (#94)
* Add a pretitle style property for nested flows.

This allows us to raise nested flows above the title. So that we do
things like raise the abstract above the title:

```
\begin{abstract}
Abstract text
\end{abstract}
\titleCommand{...}
```

This style is required by the acmart style guide.

* Paragraphs and nested flows extracted in the same order

* Fix `scribble/acmart`'s abstract form so that it gets lifted above `maketitle`, where it should be.
2017-03-25 10:08:18 -04:00
Leif Andersen
a26a7322a5 Latex macros _can_ actually have multiple optional args.
While done as a tex hack, macros in latex can have multiple optional
arguments. As such, we should support it with command-optional.

Meaning that the type of command-optional-arguments is now (Listof String)
2017-03-22 19:42:21 -04:00
Leif Andersen
558a8a5c64 Improve the scribble/acmart language
The existing scribble/acmart language in this repo felt more like latex than Scribble. This package brings scribble/acmart more inline with the existing `scribble/acmart` package that was already on the package server. In particular, this commit:

* Remove maketitle from scribble/acmart

* Extends the title form to also have the fields in `scribble/base`'s title.

* Support author information. (Like scribble/sigplans authorinfo)

* Removed unneeded functions now redundant due to the author function. Namely, affiliation based ones.

* Factor out common functions to scribble/acmart and scribble/base into private module.

These functions might make sense to be public, but since they were already private in base
I thought it made sense to leave them that way. Additionally, it might make sense to have the
file be something other than private/tag, as private/tag currently requires tag, which is
different than the normal way where its tag that requires private/tag.

* Add short-title to scribble/latex-properties

* Adds an `command-optional` property which is like `command-extras`, but is a single
optional argument placed before the mandatory ones.

* Create email, affiliation, and institution structs so that authors can have multiple of each.

* Add/improve documentation and history (and bump version number).
2017-03-21 01:06:02 -04:00
Ben Greenman
82860694a2 add font size options to scribble/acmart
Just like the 10pt option in `scribble/sigplan`,
 putting @9pt @10pt @11pt or @12pt on the #lang line of a `scribble/acmart`
 document passes to corresponding string to `\documentclass[....]`

And just like TeX, it's ok to give multiple font sizes. All but the last
 are ignored.
2017-03-17 09:39:20 -04:00
David Van Horn
049bf4b07a Scribble support for new acmart.cls. (#85)
Scribble support for new acmart.cls.
2017-03-10 16:24:27 -07:00
Benjamin Greenman
60b0cd100c add 'unnumbered' style to footnote parts
The function bound to `make-my-notes` by `define-footnote` (as in:

```
  (define-footnote my-note make-my-notes)
```

) now produces a part with the `unnumbered` style.

This way, footnote sections can go between any two sections on a page
 without upsetting the section numbers.
2017-03-03 09:52:12 -05:00
Matthew Flatt
68c4557968 catch up docs on --xelatex
Also, adjust help text for `--doc-binding` to make it
fit in 80 columns, and clean up related documentation text.
2017-03-03 07:47:45 -07:00
Ben Greenman
70586da699 typo: 'a a' -> 'a' 2017-03-03 02:07:57 -05:00
Ben Greenman
4fc7b93f6d typo: Examples -> Example
Because there's only 1 code snip.
2017-03-03 01:26:51 -05:00
Daniel Feltey
e3db079c22 Update the documented contract for xref-binding->definition-tag to reflect its description in text 2017-02-08 16:43:47 -06:00
Robby Findler
574219e1ee remove the style guide 2017-01-05 17:45:12 -06:00
Robby Findler
531ad440b7 add dictat about predicates as nouns 2017-01-04 09:18:00 -06:00
Matthew Flatt
f224034a1f "Mac OS X" -> "Mac OS" 2016-12-23 12:37:32 -07:00
Jay McCarthy
6564d5999c Adding docs for doc-binding 2016-11-30 13:55:52 -05:00
Leif Andersen
6b261eb6f8 Add an example for defstruct* 2016-11-14 15:58:56 -05:00
Ben Greenman
1676671ee0 update HTML tags, add scribble/html/extra
This commit adds:
+ a few tags to `scribble/html` (by extending the list in `scribble/html/html`)
+ even more tags to `scribble/html/extra`,
  these tags are "likely" to cause namespace issues (time, map)
  or are uncommon / esoteric (rb, ruby, svg)
+ a test in `scribble/html.rkt` that the tags from
  - `scribble/html/html`
  - and `scribble/html/extra`
  match a master list from the whatwg specification*

* https://html.spec.whatwg.org/multipage/#toc-semantics
2016-11-07 12:23:19 -05:00
Vincent St-Amour
fc57dd624a Move doc example for raw @ sign.
At Eli's suggestion.
2016-10-24 10:54:35 -05:00
Vincent St-Amour
f9cc826d5b Add example for a raw @ sing in the at-exp docs. 2016-10-13 15:10:34 -05:00
Ben Greenman
724b522f3b typo: render-date keywords to define-cite macro
Changes documentation for `define-cite` macro;
the keyword names now match the implementation.
2016-10-09 13:18:55 -04:00
Matthew Flatt
30ae71202d fix references lifted to table of contents
Certain lifted reference forms carried the prefix of the original
section, but in general the section needs to be similarly carried for
rendering elements that may contain references.

Also, fix the contract on `elemref` and `elemtag` to use
`taglet?` instead of `tag?`.

Thanks to Dupéron Georges.
2016-10-01 10:51:18 -06:00
Vincent St-Amour
cce1eff495 Extend special characters using a function rather than a dict.
Based on feedback from David Van Horn.
2016-08-24 16:14:03 -05:00
Vincent St-Amour
525b72ca4c Make the list of special characters user-extensible . 2016-08-24 16:14:03 -05:00
Vincent St-Amour
78a517a34d setup-plt -> raco setup
Survived unnoticed for 6+ years.
2016-08-24 15:27:58 -05:00
Benjamin Greenman
f488ed28f3 typo: "for and" 2016-08-09 13:25:39 -04:00
Asumu Takikawa
f4f3354466 Add doc examples for history form 2016-07-21 13:50:01 -04:00
ben
7836b78809 scribble/jfp: affiliation-mark example 2016-07-11 14:53:30 -04:00