new-doc: use css, add info

This commit is contained in:
Daniel Kochmański 2016-06-18 17:00:02 +02:00
parent 4553d5b351
commit bb57174de0
4 changed files with 62 additions and 21 deletions

View file

@ -15,7 +15,7 @@ ecldoc.info: $(FILES)
makeinfo new-doc.txi
new-doc.html: $(FILES)
makeinfo --html --no-split new-doc.txi
makeinfo --html --css-include=ecl.css --no-split new-doc.txi
clean:
rm -rf *.{aux,cf,cfs,cp,cpp,cpps,cps,ex,exs,fn,fns,ft,fts,log,lsp,lsps,toc,tp,tps,vr,vrs,pdf,info,html}

55
src/doc/new-doc/ecl.css Normal file
View file

@ -0,0 +1,55 @@
html { background: #FFF; }
body {
margin: 1em 125px 0 10%;
line-height: 1.5em;
padding: 0 2em 1em 2em;
background: #FFF;
font: 12px Verdana,Arial, sans-serif
}
ul, dd, dl, dt { margin-top: 0; margin-bottom: 0; }
p, code, td, dl, dt {
line-height: 1.5em;
}
table {
font: inherit;
}
th, td {
vertical-align: top;
}
h1, h2, h3, h4, h5 { background: #EEE; }
code, pre {
font-size: 1em;
font-family: fixed;
}
pre {
line-height: 1em;
overflow: auto;
}
pre.screen {
font-weight: bold;
background: #EEE;
border: 1px solid black;
padding: 0.5em;
}
pre.programlisting {
background: #EEEEEE;
border-left: 1px solid black;
border-top: 1px solid black;
padding: 0.5em;
}
a { color: #000; font-weight: bold; }
div p { padding: 0 2em }
li p { padding: 0; margin: 0 }
hr { display: none; }
div.funcsynopsis p {
text-indent: -2em;
}
div.variablelist {
padding: 0 2em;
}
.type, .funcsynopsis, .symbol {
font-family: fixed;
}
.type, .symbol, .replaceable {
white-space: nowrap;
}

View file

@ -1,13 +1,6 @@
@node Evaluation and compilation
@section Evaluation and compilation
@menu
* Compiler declaration @code{OPTIMIZE}::
* C Reference (Evaluation and compilation)::
* ANSI Dictionary (Evaluation and compilation)::
@end menu
@node Compiler declaration @code{OPTIMIZE}
@subsection Compiler declaration @code{OPTIMIZE}
@cindex Compiler declarations
@lspindex optimize

View file

@ -1,15 +1,9 @@
@node Overview
@section Overview
@menu
* Reading this manual::
* C Reference (Overview)::
@end menu
@node Reading this manual
@subsection Reading this manual
@subsubsection Common Lisp users
@subsubheading Common Lisp users
@ecl{} supports all Common-Lisp data types exactly as defined in the
@bibcite{ANSI}. All functions and macros are expected to behave as
described in that document and in the HyperSpec @bibcite{HyperSpec}
@ -35,7 +29,7 @@ the manual copies the structure of the @ansi{} standard, having
the same number of chapters, each one with a set of sections
documenting the implementation-specific details.
@subsubsection C/C++ programmers
@subsubheading C/C++ programmers
The second goal of this document is to provide a reference for C
programmers that want to create, manipulate and operate with Common Lisp
programs at a lower level, or simply embedding @ecl{} as a library.
@ -45,7 +39,7 @@ form of one section with the name "C Reference" for each chapter of the
@ansi{} standard. Much of what is presented in those sections is
redundant with the Common Lisp specification. In particular, there is a
one-to-one mapping between types and functions which should be obvious
given the rules explained in C Reference (@ref{C Reference (Overview)}]).
given the rules explained in the next section @emph{C Reference}.
We must remark that the reference in this part of the manual is not
enough to know how to embed @ecl{} in a program. In practice the user or
@ -55,9 +49,8 @@ Interface}), manage memory (@ref{Memory Management}), etc. These
concepts are explained in a different (@ref{Embedding ECL}) part of the
book.
@node C Reference (Overview)
@subsection C Reference
@subsubsection One type for everything: @code{cl_object}
@subsubheading One type for everything: @code{cl_object}
@cindex One type for everything: @code{cl_object}
ECL is designed around the basic principle that Common Lisp already
@ -106,7 +99,7 @@ collector.
For memory allocation details @xref{Memory Management}.
For object implementation details @xref{Manipulating Lisp objects}.
@subsubsection Naming conventions
@subsubheading Naming conventions
As explained in the introduction, each of the chapters in the Common
Lisp standard can also be implemented using C functions and types. The
mapping between both languages is done using a small set of rules
@ -150,7 +143,7 @@ Most (if not all) Common Lisp functions and constructs available from
C/C++ are available in ``ANSI Dictionary'' sections which are part of
the [@ref{Standards}] entries.
@subsubsection Only in Common Lisp
@subsubheading Only in Common Lisp
@cindex Only in Common Lisp
Some parts of the language are not available as C functions, even though