SFTtech / SFTtech/openage

pdflatex documentation fails because of unicode character and other things

Open
#834 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug documentation
Dominant language
Python
Stars
14.4k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Description

creating the latex documentation with make doc; cd bin/doc/latex; make fails:

Chapter 53.
(./md__home_castilma_.repo_ap_openage_doc_nyan_engine_types.tex [163]

! Package inputenc Error: Unicode char ⇒ (U+21D2)
(inputenc)                not set up for use with LaTeX.

See the inputenc package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.87 ... # WIP: how about checking (speed < 0) ⇒
                                                   instant before

somehow we (or doxygen) need to tell pdflatex not to choke on unicode characters. I haven't checked yet, what the option would be (maybe \usepackage[no_unicode_choke]{inputenc}) or how we would need to tell doxygen to write that options into the .tex files.
I wanted to see, if this was the only problem. It wasn't. I edited mentioned file and removed the troubling character. next error:

(./md__home_castilma_.repo_ap_openage_doc_reverse_engineering_unit_stats_unit_stats.
tex

! Package array Error:  Illegal pream-token (5): `c' used.

See the array package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.6 \begin{longtabu} spread 0pt [c]{*15{|X[-1]}|}

I'm confused by this. latex says check array package documentation for explanation, but longtabu is in from the tabu package. the longtabu doc mentions the c options and:

The tabu environment behaves mostly like tabular: the preamble is parsed by the macros in
array.sty and some measures are performed before printing. tabu improves tabular and array:

I don't exactly understand how latex packages work, but tabu seems to somehow change the behaviour of array which causes this error?
I changed the c to an r. Still the c is the problem. The question now is only, which c?

! Package array Error:  Illegal pream-token (5): `c' used.

See the array package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.6 \begin{longtabu} spread 0pt [r]{*15{|X[-1]}|}

So, what now? What is the direct cause of the problem? Who needs to fix his code?
EDIT: the c is not the problem, it is the 5 in {*15{...

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure with make doc; cd bin/doc/latex; make and inspect the generated .tex files named in the pdflatex output. Start with the Unicode inputenc error, then investigate the longtabu preamble in md__home_castilma_.repo_ap_openage_doc_reverse_engineering_unit_stats_unit_stats.tex. Done means the generated LaTeX documentation builds without these errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
latex
Domain
build-system, documentation
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.