forked from OpenLogicProject/forallx-cam
-
Notifications
You must be signed in to change notification settings - Fork 34
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
update for BookML to 10.1; more detail in accessibility notes
- Loading branch information
Showing
8 changed files
with
167 additions
and
66 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
### CONFIGURATION | ||
# Remove the initial '#' and change the value to customise the build process | ||
# See CONFIGURATION in bookml/bookml.mk for all the options | ||
# | ||
# Options can also be customized on the command line, for instance | ||
# make SPLITAT= singlepage.zip | ||
# will compile singlepage.tex into a single page | ||
# | ||
# For example: remove '#' below to split your document by chapter | ||
|
||
# split at chapters | ||
SPLITAT = chapter | ||
# includestyles, otherwise fitch.sty is not processed and we get no | ||
# proofs | ||
# --nomathtex to leave out the tex code in ALT tags on math elements | ||
# --nocomments to remove comments from HTML | ||
LATEXMLEXTRAFLAGS = --includestyles --nocomments | ||
LATEXMLPOSTEXTRAFLAGS = --pmml --nomathtex --css=forallxyyc.css --css=fitchml.css | ||
|
||
# Only convert the HTML driver not all the other TEX files | ||
SOURCES = forallxyyc-html.tex | ||
### END CONFIGURATION | ||
|
||
include bookml/bookml.mk | ||
|
||
# You may also override SPLITAT and other options for a single file, as follows: | ||
#singlepage.zip: SPLITAT= |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,8 +4,18 @@ \chapter{Notes on accessibility} | |
|
||
Special attention has been paid to make this HTML version as | ||
accessible as possible, especially to readers using Assistive | ||
Technology (AT), such as screen readers. It has, however, not | ||
been extensively tested. If you are using it with a screen reader or | ||
Technology (AT), such as screen readers like | ||
\href{https://www.nvaccess.org/download/}{NVDA} | ||
and | ||
\href{https://www.freedomscientific.com/products/software/jaws/}{JAWS}. | ||
Screen readers are software designed to enable users with low or no | ||
vision to access and navigate web pages like this book. Some sighted | ||
users also sometimes prefer text-to-speech (TTS) software to read web | ||
pages aloud. TTS software has fewer features than screen readers | ||
designed for non-sighted users and may not convert everything in this | ||
book to audio. | ||
|
||
If you are using the HTML version of this book with a screen reader or | ||
Braille terminal, or are helping a student who relies on such tools | ||
(e.g., as instructor or accessibility advisor), and you have feedback | ||
please \href{mailto:[email protected]}{get in touch}! | ||
|
@@ -23,71 +33,67 @@ \chapter{Notes on accessibility} | |
beginning of the content, past the navigation sidebar and style | ||
buttons. The buttons are, in order: | ||
\begin{itemize} | ||
\item `toggle sidebar' to turn the navigation bar on or off; | ||
\item `font settings' for font size, serif or sans serif font, and | ||
\item ``toggle sidebar'' to turn the navigation bar on or off; | ||
\item ``font settings'' for font size, serif or sans serif font, and | ||
light, sepia, or dark modes; | ||
\item `download' for links to download the PDF versions; and | ||
\item `information about the toolbar' for a popup that shows | ||
\item ``download'' for links to download the PDF versions; and | ||
\item ``information about the toolbar'' for a popup that shows | ||
keyboard shortcuts for navigation. | ||
\end{itemize} | ||
Those keyboard shortcuts are: left and right arrow for moving to the | ||
previous and the next page, and `s' to toggle the navigation sidebar. | ||
|
||
\paragraph{Symbols and formulas} All logical symbols and formulas in | ||
this book are converted to MathML and displayed using | ||
\paragraph{Symbols and formulas} | ||
|
||
Logical symbols and formulas in this book are converted to | ||
\href{https://www.w3.org/Math/}{MathML} and displayed using | ||
\href{https://www.mathjax.org/}{MathJax}. MathJax provides additional | ||
\href{https://docs.mathjax.org/en/latest/basic/accessibility.html}{accessibility | ||
features} for formulas, which are found in the MathJax context | ||
menu---activate/right click on any formula to activate it. If your | ||
screen reader does not read out formulas such as $\forall x(A(x) \land | ||
B(x))$ you may need to activate Speech Output in the Speech submenu of | ||
the MathJax accessibility menu. | ||
|
||
For reference, here is a table of all the symbols used in the text, | ||
how they are (probably?) pronounced, and what they are called in the | ||
text. In the rightmost column we provide a suggested way to enter them | ||
using ASCII characters, if inserting special symbols (in a homework | ||
assignment or email to your instructor, say) is not an option. | ||
features} for formulas, which are found in the MathJax context menu. | ||
With a mouse, you can right click on any formula to activate it. | ||
Screen readers will announce that formulas can be activated (e.g., | ||
NVDA says ``application clickable'' before every formula to indicate | ||
the presence of the MathJax menu.) If your screen reader does not read | ||
out formulas such as $\forall x(A(x) \land B(x))$ you may need to | ||
activate Speech Output in the Speech submenu of the MathJax | ||
Accessibility menu and reload the page. | ||
|
||
\begin{tabular}{lllll} | ||
\lxBeginTableHead{}Symbol\lxTableColumnHead{} & Pronounciation\lxTableColumnHead{} & Meaning\lxTableColumnHead{} & ASCII equivalent\lxTableColumnHead{}\\ | ||
\hline\lxEndTableHead | ||
$\enot$ & not sign & logical not & \verb+~+ or \verb+-+\\ | ||
$\eor$ & or & logical or & \verb+\/+\\ | ||
$\eand$ & and & logical and & \verb+/\+ or \verb+&+\\ | ||
$\eif$ & right arrow & conditional & \verb+->+ or \verb+>+\\ | ||
$\eiff$ & left right arrow & biconditional & \verb+<->+ or \verb+<>+\\ | ||
$\ered$ & up tack & contradiction & \verb+_|_+ or \verb+!?+\\ | ||
$\forall$ & for all & universal quantifier & \verb|A| or \verb|@|\\ | ||
$\exists$ & there exists & existential quantifier & \verb|E| or \verb|3|\\ | ||
$\therefore$ & therefore & therefore & \verb|:.|\\ | ||
$\proves$ & right tack & proves & \verb+|-+\\ | ||
$\nproves$ & does not prove & does not prove & \verb+|/-+\\ | ||
$\entails$ & true & entails & \verb+|=+\\ | ||
$\nentails$ & not true & does not entail & \verb+|/=+\\ | ||
$\ebox$ & white square & necessary & \verb+[]+\\ | ||
$\ediamond$ & white diamond & possible & \verb+<>+ | ||
\end{tabular} | ||
Here are some of the more common symbols. Different screen readers and | ||
TTS applications will pronouce them differently, and sometimes not at | ||
all. After each symbol, we provide the customary pronounciation used | ||
by logicians. | ||
\begin{itemize} | ||
\item Uppercase and lowercase italic letters like $A$ (``upper A'') | ||
and $x$ (``lower x'') | ||
\item Uppercase and lowercase script letters like $\metav{A}$ | ||
(``script upper A'') and $\metav{x}$ (``script lower x'') | ||
\item Logical connectives: $\enot$ (``not''), $\eor$ (``or''), | ||
$\eand$ (``and''), $\eif$ (``only if''), $\eiff$ (``if and only if''), $\ered$ (``contradiction'') | ||
\item Quantifiers: $\forall$ (``for all''), $\exists$ (``there exists'') | ||
\item Metatheoretical symbols: $\therefore$ (``therefore''), | ||
$\proves$ (``proves''), $\nproves$ (``does not prove''), $\entails$ (``entails''), $\nentails$ (``does not entail'') | ||
\item Modal operators: $\ebox$ (``box''), $\ediamond$ (``diamond'') | ||
\end{itemize} | ||
|
||
Subscripts should be pronounced by screen readers, although | ||
if the subscript is a number, they may not be. They can be | ||
represented by an underline, e.g., $A_2$ as \verb|A_2|. | ||
they may not indicate that they are subscripts. The formula $A_2$ may | ||
be read out as ``upper A sub 2'' or just as ``A2''. | ||
|
||
The expressions `\blank{}' and `\ifeff' (`if' with two `f's) are used | ||
throughout the textbook. In the HTML version, `\blank{}' includes an | ||
invisible spelled-out word `blank' which screen readers should read | ||
out loud. The abbreviation `\ifeff' is short for `if and only if'. In | ||
the HTML version it is coded using an invisible zero-space word joiner | ||
character which should make screen readers pronounce `\ifeff' as | ||
`if-eff'. | ||
`if-eff' or `aye-eff-eff'. | ||
|
||
\paragraph{Proofs} The natural deduction proofs in | ||
\cref{ch.NDTFL,ch.NDFOL,ch.ML} use vertical lines to indicate where | ||
subproofs start and end. Such vertical lines extend from the | ||
assumption line of the subproof to its last line and are displayed | ||
between the line numbers and the formulas in any given line. This | ||
makes proofs a special challenge for users with low vision or complete | ||
loss of vision. | ||
loss of vision. | ||
|
||
To make these proofs accessible in this HTML version, proofs are coded | ||
as tables. Each table line has four columns: the line number, a | ||
|
@@ -133,6 +139,62 @@ \chapter{Notes on accessibility} | |
different subproofs. If you cannot see the subproof lines, you have to | ||
pay special attention to how the subproof level numbers change | ||
\emph{and} when a formula is an assumption. A screen reader should | ||
announce line 7 as ``7, close subproof, 2, open subproof, $X$, AS.'' | ||
The abbreviations `\PR' (for `Premise') and `\AS' (for `Assumption') | ||
are coded in the HTML version using the `\verb|abbr|' tag. | ||
read line 7 approximately as: ``7, close subproof, 2, open subproof, | ||
upper X, AS.'' The abbreviations `\PR' (for `Premise') and `\AS' (for | ||
`Assumption') are coded in the HTML version using the `\verb|abbr|' | ||
tag. | ||
|
||
Note that simple text-to-speech applications may not read out complex | ||
tables such as the ones containing proofs or truth tables at all. | ||
|
||
\paragraph{Diagrams} | ||
|
||
The text also contains a few diagrams. In the HTML version, these are | ||
provided with image descriptions, e.g., | ||
\begin{center} | ||
\begin{tikzpicture} | ||
\node[circle, grey_shape] (cat1) {A}; | ||
\node[right=10pt of cat1, diamond, phantom_shape] (cat2) { } ; | ||
\node[right=10pt of cat2, circle, white_shape] (cat3) {C} ; | ||
\node[right=10pt of cat3, white_shape] (cat4) {D}; | ||
\end{tikzpicture} | ||
\bmlDescription{There are three shapes: the first shape is a grey | ||
circle labelled A, some empty space, the second shape is a white | ||
circle labelled C, and the fourth a white square labelled D.} | ||
\end{center} | ||
The image description here should read: ``There are three shapes: the | ||
first shape is a grey circle labelled A, some empty space, the second | ||
shape is a white circle labelled C, and the fourth a white square | ||
labelled~D.'' | ||
|
||
\paragraph{Table of symbols} | ||
|
||
What follows is a table of all the symbols used in the text, how they | ||
are most likely to be pronounced by screen readers, and what they are | ||
called in the text. In the rightmost column we provide a suggested way | ||
to enter them using ASCII characters, if inserting special symbols (in | ||
a homework assignment or email to your instructor, say) is not an | ||
option. | ||
|
||
\begin{tabular}{lllll} | ||
\lxBeginTableHead{}Symbol\lxTableColumnHead{} & Pronounciation\lxTableColumnHead{} & Meaning\lxTableColumnHead{} & ASCII equivalent\lxTableColumnHead{}\\ | ||
\hline\lxEndTableHead | ||
$\enot$ & not sign & logical not & \verb+~+ or \verb+-+\\ | ||
$\eor$ & or & logical or & \verb+\/+\\ | ||
$\eand$ & and & logical and & \verb+/\+ or \verb+&+\\ | ||
$\eif$ & right arrow & conditional & \verb+->+ or \verb+>+\\ | ||
$\eiff$ & left right arrow & biconditional & \verb+<->+ or \verb+<>+\\ | ||
$\ered$ & up tack & contradiction & \verb+_|_+ or \verb+!?+\\ | ||
$\forall$ & for all & universal quantifier & \verb|A| or \verb|@|\\ | ||
$\exists$ & there exists & existential quantifier & \verb|E| or \verb|3|\\ | ||
$\therefore$ & therefore & therefore & \verb|:.|\\ | ||
$\proves$ & right tack & proves & \verb+|-+\\ | ||
$\nproves$ & does not prove & does not prove & \verb+|/-+\\ | ||
$\entails$ & true & entails & \verb+|=+\\ | ||
$\nentails$ & not true & does not entail & \verb+|/=+\\ | ||
$\ebox$ & white square & necessary & \verb+[]+\\ | ||
$\ediamond$ & white diamond & possible & \verb+<>+ | ||
\end{tabular} | ||
|
||
Subscripts can be represented by an underline, e.g., $A_2$ as | ||
\verb|A_2|. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters