aboutsummaryrefslogtreecommitdiff
path: root/doc/build.scm
Commit message (Collapse)AuthorAge
* nls: Update translations.Florian Pelz2024-04-01
| | | | | | | | | | | | | * po/guix/ar.po: New file. * po/guix/LINGUAS: Add 'ar'. * po/doc/guix-cookbook.pt_BR.po: New file. * po/doc/local.mk: Add 'pt_BR' cookbook. * doc/local.mk: Add 'pt_BR' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'ko', 'pt_BR'. * doc/guix-cookbook.texi (Top): Mention 'ko', 'pt_BR' cookbook. Change-Id: Id1846ca100263b3fc1fa2ed52654c670270ee809
* doc: build: Update paths to style sheets.Luis Felipe2024-03-15
| | | | | | | | | | | | | The Guix website style sheets are now organized in themes. This change makes the documentation builder use the resources provided by a theme called "initial" (See https://issues.guix.gnu.org/69783). * doc/build.scm (syntax-highlighted-html): Update path to CSS. (html-manual-indexes): Likewise. (stylized-html): Likewise, and update path to language picker image. Change-Id: Ib2d51fcfdec42ad827add1ead1cfee4c9c4e65b7 Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
* gnu: Rationalize texlive-updmap.cfg and texlive-tiny inputs.Nicolas Goaziou2023-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TEXLIVE-UPDMAP.CFG and TEXLIVE-TINY should only be used as native inputs. Also remove texlive packages already provided by them. * doc/build.scm (pdf-manual): * gnu/packages/algebra.scm (pari-gp): * gnu/packages/bioinformatics.scm (discrover): (phyml): (velvet): * gnu/packages/chemistry.scm (yaehmop): * gnu/packages/chez.scm (stex-bootstrap): (chez-web): (chez-sockets): * gnu/packages/cran.scm (r-prereg): * gnu/packages/docbook.scm (dblatex): * gnu/packages/emacs-xyz.scm (emacs-auctex): * gnu/packages/engineering.scm (fastcap): * gnu/packages/fsf.scm (book-faif): * gnu/packages/graphviz.scm (dot2tex): * gnu/packages/maths.scm (hypre): * gnu/packages/ocaml.scm (unison): (ocaml-bibtex2html): * gnu/packages/plotutils.scm (asymptote): * gnu/packages/python-xyz.scm (python-nbconvert): (python-pypandoc): * gnu/packages/radio.scm (gnuradio): (libosmo-dsp): * gnu/packages/statistics.scm (r-with-tests): * gnu/packages/tex.scm (texlive-makecmds): (texlive-innerscript): (teximpatient): (texlive-xkeyval): Remove texlive packages already provided by TEXLIVE-UPDMAP.CFG. Don't add TEXLIVE-TINY or TEXLIVE-UPDMAP.CFG as inputs.
* gnu: Deprecate texlive-base in favor of texlive-scheme-basic.Nicolas Goaziou2023-07-18
| | | | | | | | | | | * gnu/packages/tex.scm (texlive-base): Deprecate variable. (texlive-updmap.cfg): Use default packages from now deprecated TEXLIVE-BASE. Also remove already implemented TODO. * doc/build.scm (pdf-manual): * gnu/packages/statistics.scm: Replace TEXLIVE-BASE with call to TEXLIVE-UPDMAP.CFG. * guix/profiles.scm (texlive-font-maps): Trigger TeX Live hook whenever a texlive package is included in the manifest.
* gnu: texlive-tex-texinfo -> texlive-texinfo.Nicolas Goaziou2023-07-18
| | | | | | | | | | | * gnu/packages/tex.scm (texlive-texinfo): New variable. (texlive-tex-texinfo): Deprecate variable. * doc/build.scm (pdf-manual): * gnu/packages/finance.scm (optionmatrix): * gnu/packages/lisp.scm (sbcl): * gnu/packages/plotutils.scm (asymptote): * gnu/packages/scheme.scm (mit-scheme): * gnu/packages/xdisorg.scm (xforms): Use new name.
* gnu: texlive-fonts-ec -> texlive-ec.Nicolas Goaziou2023-07-18
| | | | | | | | | | | | | | | | | | * gnu/packages/tex.scm (texlive-ec): New variable. (texlive-fonts-ec): Deprecate variable. (lyx): (biber): * gnu/packages/python-xyz.scm (python-pypandoc): * gnu/packages/statistics.scm (r-with-tests): * doc/build.scm (pdf-manual): * gnu/packages/bioinformatics.scm (discrover): (phyml): (velvet): * gnu/packages/chemistry.scm (yaehmop): * gnu/packages/chez.scm (stex-bootstrap): * gnu/packages/ocaml.scm (unison): (ocaml-bibtex2html): * gnu/packages/plotutils.scm (asymptote): Use new name.
* doc: Adjust HTML patterns to correctly process Texinfo 6.8 output.Ludovic Courtès2023-05-25
| | | | | | | | | Prior to ceb5ef8347ae0e3015296f5c169ab903bac526a8, (@ (gnu packages texinfo) texinfo), which is what is used here, was pointing to version 6.7. * doc/build.scm (html-manual-identifier-index)[build](worthy-entry?): Adjust patterns for Texinfo 6.8. (syntax-highlighted-html)[build](syntax-highlight): Likewise.
* doc: Build pt_BR manual.Ludovic Courtès2022-11-15
| | | | * doc/build.scm (%manual-languages): Add "pt_BR".
* doc: Use a minimal texlive profile in build.scm.Maxim Cournoyer2022-06-15
| | | | | | * doc/build.scm (pdf-manual) <texinfo-profile>: New variable. <PATH>: Define in terms of the above. <GUIX_TEXMF>: New environment variable.
* doc: Build an empty index if the manual is missing.Ludovic Courtès2022-04-08
| | | | | | | | That way, the "sk" index for 'guix-manual' is empty, because 'guix-manual' lacks an "sk" translation. * doc/build.scm (html-manual-identifier-index)[build](html-files): Gracefully handle 'scandir' returning #f.
* doc: Allow different translations for 'guix-cookbook' and 'guix-manual'.Ludovic Courtès2022-04-08
| | | | | | | | | | | | | | | | Previously, 'guix-manual-text-domain' could be passed the cookbook language list as its second argument. Thus, it started failing when the set of cookbook languages was no longer a subset of the manual languages, starting with commit 93bfd4d9c7ba7055c19f02128491b3a98a180860, which removed "sk" from 'guix-manual' but kept it for 'guix-cookbook'. * doc/build.scm (%manual-languages, %cookbook-languages): New variables. (%languages): Use them. (guix-manual-text-domain): Give LANGUAGES a valid default value. (localization-helper-module): Remove optional argument to 'guix-manual-text-domain'.
* doc: Publish the Slovak translation of the cookbook.Ludovic Courtès2022-03-02
| | | | | * doc/build.scm (%languages): Add "sk" for "guix-cookbook" (it's currently at 57%).
* doc: Normalize language codes in menu URLs.Ludovic Courtès2022-01-19
| | | | | * doc/build.scm (stylized-html)[build](base-language-url): Add calls to 'normalize'.
* doc: Make the HTML language menu disappear on narrow screens.Ludovic Courtès2022-01-19
| | | | | * doc/build.scm (stylized-html)[build](navigation-bar): New procedure. (stylized-html): Use it.
* doc: Add a language menu in the HTML manual.Ludovic Courtès2022-01-18
| | | | | * doc/build.scm (stylized-html): New procedure. (html-manual): Use it.
* doc: Factorize 'language-code->native-name'.Ludovic Courtès2022-01-18
| | | | | | | * doc/build.scm (localization-helper-module)[content](translate): Add call to 'setenv' before 'write'. Remove use of 'with-language'. (language-code->native-name): New procedure. (html-manual-indexes)[build](top-level-index): Use it.
* doc: Extract (localization) module.Ludovic Courtès2022-01-18
| | | | | * doc/build.scm (localization-helper-module): New procedure. (html-manual-indexes)[build]: Use it. Remove use of GUILE-JSON-3.
* doc: Remove now unnecessary workaround.Ludovic Courtès2022-01-15
| | | | | * doc/build.scm (translated-texi-manuals): Turn into an alias for (@@ (guix self) translated-texi-manuals).
* Merge branch 'master' into core-updates-frozenLudovic Courtès2021-12-13
|\
| * doc: Handle '&nbsp' when syntax-highlighting HTML.Ludovic Courtès2021-12-13
| | | | | | | | * doc/build.scm (syntax-highlighted-html)[build](entity->string): Handle "&nbsp".
* | Merge remote-tracking branch 'origin/master' into core-updates-frozenEfraim Flashner2021-10-31
|\|
| * doc: Allow offloading of the expensive derivations.Ludovic Courtès2021-10-28
| | | | | | | | | | * doc/build.scm (translated-texi-manuals) (html-manual, pdf-manual): Pass #:local-build? #f.
* | Merge branch 'master' into core-updatesLudovic Courtès2021-07-18
|\|
| * doc: Build manual translations with 'guile-3.0-latest'.Ludovic Courtès2021-07-09
| | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/47428>. Reported by Leo Famulari <leo@famulari.name>. * doc/build.scm (translated-texi-manuals): Explicitly use 'guile-3.0-latest'.
* | Merge branch 'master' into core-updatesMarius Bakke2021-05-09
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/local.mk gnu/packages/bioinformatics.scm gnu/packages/django.scm gnu/packages/gtk.scm gnu/packages/llvm.scm gnu/packages/python-web.scm gnu/packages/python.scm gnu/packages/tex.scm guix/build-system/asdf.scm guix/build/emacs-build-system.scm guix/profiles.scm
| * doc: Clarify further the distinction between the web-based manuals.Leo Famulari2021-04-20
| | | | | | | | | | | | | | | | | | | | As discussed on #guix IRC, several of us struggle to reliably choose the right option based on the old labels: https://logs.guix.gnu.org/guix/2021-04-20.log#182137 * doc/build.scm (html-manual-indexes): Try to distinguish between the two options more clearly.
| * doc: Build the French HTML cookbook.Julien Lepiller2021-04-18
| | | | | | | | * doc/build.scm (%languages): Add 'fr' cookbook translation.
* | Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner2021-03-24
|\|
| * doc: Remove the guile-lib/htmlprag-fixed package.Maxim Cournoyer2021-03-20
| | | | | | | | | | | | | | | | | | | | This hotfix package is no longer necessary as the ability to parameterize the way htmlprag tokenizes HTML was added in guile-lib 0.2.7. * doc/build.scm (guile-lib/htmlprag-fixed): Remove variable. (html-manual-identifier-index): Replace guile-lib/htmlprag-fixed by guile-lib, and make set the %strict-tokenizer? parameter to #t. (syntax-highlighted-html): Likewise.
* | gnu: Replace all uses of texlive-union by texlive-updmap.cfg.Maxim Cournoyer2021-01-29
|/ | | | | | | | | | | | | | | | | | | | | | | * doc/build.scm (pdf-manual) Replace texlive-union by texlive-updmap.cfg. * gnu/packages/algebra.scm (pari-gp): Likewise. * gnu/packages/bioinformatics.scm (discrover, velvet): Likewise. * gnu/packages/chez.scm (chez-scheme, chez-web, chez-sockets): Likewise. * gnu/packages/docbook.scm (dblatex): Likewise. * gnu/packages/emacs-xyz.scm (emacs-auctex): Likewise. * gnu/packages/engineering.scm (fastcap): Likewise. * gnu/packages/guile-xyz.scm (emacsy, guile-cv): Likewise. * gnu/packages/lisp.scm (sbcl): Likewise. * gnu/packages/maths.scm (octave, hypre): Likewise. * gnu/packages/music.scm (lilypond): Likewise. * gnu/packages/plotutils.scm (asymptote): Likewise. * gnu/packages/python-xyz.scm (python-numpy-documentation) (python-matplotlib-documentation, python-ipython-documentation) (python-pypandoc): Likewise. * gnu/packages/radio.scm (gnuradio, libosmo-dsp): Likewise. * gnu/packages/scheme.scm (mit-scheme): Likewise. * gnu/packages/statistics.scm (r-with-tests): Likewise. * gnu/packages/tex.scm (simple-texlive-package) (texlive-xmltex, texlive-tiny, texlive-jadetex, teximpatient, lyx): Likewise.
* doc: Cookbook links to /manual/devel, not /manual.Ludovic Courtès2020-10-21
| | | | | | | | Since the Cookbook is built from the 'master' branch, it should point to the manual from that same branch. * doc/build.scm (guix-mono-node-indexes, guix-split-node-indexes): Link to /manual/devel when %MANUAL is not "guix".
* doc: Produce stylable HTML for @deftp, @deffn, etc.Ludovic Courtès2020-10-19
| | | | | | | | | | | 'makeinfo --help' uses <strong> and <em> for those entries. Replace that with CSS classes. * doc/build.scm (html-manual-identifier-index)[build]: Adjust to handle rewritten forms of <dt> entries. * doc/build.scm (syntax-highlighted-html)[build][syntax-highlight]: Handle <dt> forms and replace them. [highlight-definition, space?]: New procedures.
* doc: Generate cross-references in code snippets to the Guile manual.Ludovic Courtès2020-10-17
| | | | | | | | | | | | | Occurrences of 'list', 'cons', etc. in code snippets now link to the relevant section of the Guile manual. * doc/build.scm (guile-manual, %guile-manual-base-url) (guile-mono-node-indexes, guile-split-node-indexes): New variables. (for-all-languages, merge-index-alists): New procedures. <top level>: Rename 'mono-node-indexes' and 'split-node-indexes' to 'guix-mono-node-indexes' and 'guix-split-node-indexes' respectively. Add 'mono-node-indexes' and 'split-node-indexes' defined as calls to 'merge-index-alists'.
* doc: Allow code snippets in the cookbook to link to the manual.Ludovic Courtès2020-10-17
| | | | | | | | | | | | | Until now, only code snippets in the manual itself would contain links to identifier definitions. Now snippets in the cookbook also link to definitions in the manual. * doc/build.scm (html-manual): Add #:mono-node-indexes and #:multi-node-indexes and pass it to 'syntax-highlighted-html'. (pdf+html-manual): Likewise, and pass it to 'html-manual'. <top level>: Factorize 'version' and 'source'. Define 'guix-manual', 'mono-node-indexes', and 'split-node-indexes'. Pass #:mono-node-indexes and #:split-node-indexes to 'pdf+html-manual'.
* doc: Move manual index creation to a separate derivation.Ludovic Courtès2020-10-17
| | | | | | | | | | * doc/build.scm (normalize-language-code, html-manual-identifier-index): New procedures. (syntax-highlighted-html): Add #:mono-node-indexes and #:split-node-indexes. [build](underscore-decode, anchor-id->key, collect-anchors): Remove. (language+node-anchors, mono-node-anchors, multi-node-anchors): New variables. Use them.
* doc: Remove 'build.scm' from the source of the manual.Ludovic Courtès2020-10-17
| | | | | | | | That way we no longer have to rebuild the whole manual when fiddling with 'build.scm'. * doc/build.scm <top level>: Define 'select?' and pass it to 'pdf+html-manual'.
* doc: Syntax highlighting now handles @var within @lisp.Ludovic Courtès2020-09-04
| | | | | * doc/build.scm (syntax-highlighted-html)[build](concatenate-pieces): Handle @var{name}.
* doc: Remove one use of 'file-append*'.Ludovic Courtès2020-05-25
| | | | | * doc/build.scm (texinfo-manual-source)[build]: Use 'file-append', not 'file-append*', for 'htmlxref.cnf', to ensure it has the right basename.
* doc: Inherit md5.scm fix in custom 'guile-lib' variant.Ludovic Courtès2020-05-18
| | | | | * doc/build.scm (guile-lib/htmlprag-fixed)[source]: Remove. [arguments]: Add 'fix-htmlprag' phase.
* doc: Fix building the cookbook.Björn Höfling2020-05-02
| | | | | | | | | Fixes <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=40803>. Reported by "operator.name" <operator.name@protonmail.com>. * doc/build.scm (%languages): Add smaller list for the cookbook. (syntax-highlighted-html): Adapt regexp for mono-node files to include the cookbook.
* doc: Include *.json files in the source.Ludovic Courtès2020-04-21
| | | | | | This is a followup to c9f321e52a99dea93fcc099372ea0167150b9aac. * doc/build.scm (texinfo-manual-source)[build]: Add *.json to #$output.
* doc: Improve anchor collection.Ludovic Courtès2020-04-13
| | | | | | | This allows us to catch "operating_002dsystem-1", for instance. * doc/build.scm (syntax-highlighted-html)[build](anchor-id->key): Drop "-1" & co. from ID.
* doc: Avoid invalid 'match' pattern in 'syntax-highlighted-html'.Ludovic Courtès2020-04-13
| | | | | | | | | | | | This is a followup to da9deba13d551e316f5a99a614834efa27ddc7d1. Last-minute modification of the 'match' pattern would lead to an error: "multiple ellipsis patterns not allowed at same level" * doc/build.scm (syntax-highlighted-html)[build](collect-anchors): Add 'worthy-entry?' procedure and use it instead of the unsupported pattern for ('dt ...).
* doc: Emit hyperlinks in HTML output for @lisp snippets.Ludovic Courtès2020-04-13
| | | | | | | | | | | | | | | This makes it easier to jump to the definition of a procedure or variable when looking at a code snippet. There can be false-positive because scoping rules are ignored, for example, but it should be a good approximation. * doc/build.scm (syntax-highlighted-html)[build](highlights->sxml*): Add 'anchors' parameter. Add clause for ('symbol text). (syntax-highlight): Add 'anchors' parameter. Wrap body in named let and use it in recursive calls. Pass ANCHORS to 'highlights->sxml*'. (underscore-decode, anchor-id->key, collect-anchors, html?): New procedures. (process-file): Add 'anchors' parameter. and honor it. Rewrite mono-node and multi-node HTML files separately.
* doc: Make sure 'htmlxref.cnf' is honored.Ludovic Courtès2020-01-12
| | | | | | | | Fixes <https://bugs.gnu.org/39060>. Reported by Tobias Geerinckx-Rice <me@tobias.gr>. * doc/build.scm (html-manual)[build]: Copy 'htmlxref.cnf' to the current directory so that 'makeinfo' honors it.
* doc: Handle right arrows in 'syntax-highlighted-html'.Ludovic Courtès2019-11-28
| | | | * doc/build.scm (syntax-highlighted-html)[build](entity->string): Add "rarr".
* doc: Use the right title in HTML indices for the cookbook.Ludovic Courtès2019-10-22
| | | | | * doc/build.scm (html-manual-indexes): Add #:title. [build]: Replace "GNU Guix Reference Manual" by references to TITLE.
* doc: More responsive online manual.Julien Lepiller2019-10-21
| | | | | * doc/build.scm (%makeinfo-html-options): Add viewport to all generated html pages for better mobile device support.
* doc: Add support for "guix-cookbook.texi" to 'build.scm'.Ludovic Courtès2019-10-21
| | | | | | | | | * doc/build.scm (%manual): New variable. (html-manual): #:manual now defaults to %MANUAL. [build]: Define 'language->texi-file-name' and use it. Filter out items of LANGUAGES that lack a .texi file. (pdf-manual, html-manual-indexes, pdf+html-manual): #:manual now defaults to %MANUAL.
* doc: Support paren matching via CSS hover.Ludovic Courtès2019-09-25
| | | | | | * doc/build.scm (syntax-highlighted-html)[build](pair-open/close) (highlights->sxml*): New procedures. (syntax-highlight): Use 'highlights->sxml*'.