GithubHelp home page GithubHelp logo

just-enough-algebra's Introduction

Ok here is how the structure works:

main.ptx includes each of the chapter files ch-NAME.ptx, and each of the chapter files includes each of the section files sec-NAME.ptx.

The section files do a bunch of component= versioning. There are four components:

  • "web": things that should only apply in the online version, not in either pdf
  • "not-web": things that should only apply in pdf
  • "workbook": things that should only appear in the workbook
  • "not-workbook": things that should appear in both the fullprint and the online version

Here is how those components are used:

  • two versions of the <title> tag generate either the plain title (not-workbook) or the title decorated with "- Practice exercises" (workbook)
  • the text of the section is enclosed in an <introduction component="not-workbook">
  • each of the "Do you know..." lists is in a separate document as an <ol> element
  • a <conclusion component="workbook"> loads the "Do you know..." list in after the exercises in the workbook version
  • a <conclusion component="not-workbook"> loads the "Do you know..." list in before the exercises in other versions
  • The file NotSure.ptx prints some "not-sure" instructions in not-workbook formats and the "Don't forget!" alert in the workbook version
  • WYD.ptx is a <conclusion component="workbook"> that is loaded between the exercises and the "Do you know ..." list

Some other important versioning happens in the exercise files ex-NAME.ptx:

  • ex-intro.ptx is an <introduction> element that doesn't display in the workbook
  • exercises 1-4 are not componented, so they appear in all builds
  • if exercises 1-4 include xrefs to exercises 5-? in other sections, those "story also appears in" sentences are versioned in <em component="..."> tags
    • I reference the containing section rather than the exercise directly in the workbook component tag
  • exercises 5-8 are written in <exercise component="not-workbook">

Custom xsl in the xsl folder is very important to how this book works. In the latex versions:

  • Most importantly, it makes <exercises> respect <page> and @workspace in the workbook version
  • it contains some header customization
  • it contains some customization of the enumerate labels and makes nested enumerates with empty introductions behave similarly to vanilla latex
  • it makes sections start with a pagebreak
  • it kills some extra periods generated in titles
  • it formats <aside> to appear as margin notes

just-enough-algebra's People

Contributors

rhinopotamus avatar

Watchers

 avatar

just-enough-algebra's Issues

spacing in tables

What are ways to control the amount of space inside a table cell so that students can write their answers in it?

Fix "the problem continues"

If you just put
<p><em>The problem continues โ€ฆ</em></p>
somewhere in the middle of a worksheet, it doesn't render. Figure out a better way to do this.

Also, do we think it should be on the previous page or the next page?

units letters

<exercise xml:id="walnut-tree-algebraic-notation"> is maybe the perfect illustration of the issue.

cancel isn't working

Mostly this is a problem for sec-Units.ptx.

Per the guide, I added this to docinfo.ptx:

<math-package latex-name="cancel" mathjax-name="cancel"/>

No dice, though.

pandoc conversion doesn't respect certain boxes

From Rate_of_change.tex:

\bigskip
 \framebox{
 \begin{minipage}[c]{.85\textwidth}  
~ \bigskip \\  \textsc{Rate of change formula:} \quad $ \displaystyle \text{rate of change = }\frac{\text{change dep}}{\text{change indep}}$\\ ~ \bigskip
\end{minipage}
}
\bigskip

This just plain got eaten.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.