Compare commits
No commits in common. 'main' and 'main' have entirely different histories.
@ -1,72 +0,0 @@ |
|||||||
#!/usr/bin/perl |
|
||||||
|
|
||||||
# Script taken from https://gitlab.com/derobert/random-toys/blob/master/pdf/pdftoc-to-latex |
|
||||||
# Manually adapt for sphinxdoc generated pdf |
|
||||||
use 5.024; |
|
||||||
use strict; |
|
||||||
use warnings qw(all); |
|
||||||
use IPC::Run3; |
|
||||||
use LaTeX::Encode; |
|
||||||
use Encode qw(decode); |
|
||||||
|
|
||||||
my @levels |
|
||||||
= qw(chapter section subsection subsubsection paragraph subparagraph); |
|
||||||
my @counters; |
|
||||||
|
|
||||||
my ($data_enc, $data); |
|
||||||
run3 ['pdftk', $ARGV[0], 'dump_data_utf8'], undef, \$data_enc; |
|
||||||
$data = decode('UTF-8', $data_enc, Encode::FB_CROAK); |
|
||||||
|
|
||||||
my @latex_bm; |
|
||||||
|
|
||||||
my $bm; |
|
||||||
foreach (split(/\n/, $data)) { |
|
||||||
/^Bookmark/ or next; |
|
||||||
if (/^BookmarkBegin$/) { |
|
||||||
add_latex_bm($bm) if $bm; |
|
||||||
$bm = {}; |
|
||||||
} elsif (/^BookmarkLevel: (\d+)$/a) { |
|
||||||
++$counters[$1 - 1]; |
|
||||||
$#counters = $1 - 1; |
|
||||||
$bm->{number} = join(q{.}, @counters); |
|
||||||
$bm->{level} = $1 - 1; |
|
||||||
} elsif (/^BookmarkTitle: (.+)$/) { |
|
||||||
# In Sphinx title include a utf-8 icon of a link, so remove it |
|
||||||
my $title = substr($1, 0, -1); |
|
||||||
$bm->{title} = latex_encode($title); |
|
||||||
} elsif (/^BookmarkPageNumber: (\d+)$/a) { |
|
||||||
$bm->{page} = $1; |
|
||||||
} else { |
|
||||||
die "Unknown Bookmark tag in $_\n"; |
|
||||||
} |
|
||||||
} |
|
||||||
add_latex_bm($bm) if $bm; |
|
||||||
|
|
||||||
print <<LATEX; |
|
||||||
\\documentclass{report} |
|
||||||
\\title{Guide de montage Vhéliotech v1.0} |
|
||||||
\\renewcommand{\\familydefault}{\\sfdefault} |
|
||||||
\\setcounter{page}{2} |
|
||||||
\\begin{document} |
|
||||||
${ \join('', @latex_bm) } |
|
||||||
\\end{document} |
|
||||||
LATEX |
|
||||||
|
|
||||||
exit 0; |
|
||||||
|
|
||||||
sub add_latex_bm { |
|
||||||
my $bm = shift; |
|
||||||
# Don't extract subtitle with level > 1 |
|
||||||
if ($bm->{level} > 1) { |
|
||||||
return; |
|
||||||
} |
|
||||||
|
|
||||||
my $level = $levels[$bm->{level}]; |
|
||||||
my $number = $bm->{number}; |
|
||||||
my $title = $bm->{title}; |
|
||||||
my $page = $bm->{page} + 2; |
|
||||||
|
|
||||||
push @latex_bm, <<LINE; |
|
||||||
\\contentsline {$level}{\\numberline {$number}$title}{$page}% |
|
||||||
LINE |
|
||||||
} |
|
@ -1,42 +0,0 @@ |
|||||||
# Plan général |
|
||||||
|
|
||||||
```{image} img/vues-generales/01.svg |
|
||||||
:alt: Côté droit |
|
||||||
:align: center |
|
||||||
``` |
|
||||||
|
|
||||||
<p> </p> |
|
||||||
|
|
||||||
```{image} img/vues-generales/02.svg |
|
||||||
:alt: Côté gauche |
|
||||||
:align: center |
|
||||||
``` |
|
||||||
|
|
||||||
```{image} img/vues-generales/03.svg |
|
||||||
:alt: Avant/arrière |
|
||||||
:align: center |
|
||||||
``` |
|
||||||
|
|
||||||
<p> </p> |
|
||||||
|
|
||||||
```{image} img/vues-generales/04.svg |
|
||||||
:alt: Dessus/dessous |
|
||||||
:align: center |
|
||||||
``` |
|
||||||
|
|
||||||
```{image} img/vues-generales/05.svg |
|
||||||
:alt: Coupe longitudinale |
|
||||||
:align: center |
|
||||||
``` |
|
||||||
|
|
||||||
<p> </p> |
|
||||||
|
|
||||||
```{image} img/vues-generales/06.svg |
|
||||||
:alt: Coupes transversales |
|
||||||
:align: center |
|
||||||
``` |
|
||||||
|
|
||||||
```{image} img/vues-generales/07.svg |
|
||||||
:alt: Coupe en altimetrie |
|
||||||
:align: center |
|
||||||
``` |
|
@ -1,9 +0,0 @@ |
|||||||
# Assemblage des glissières |
|
||||||
|
|
||||||
Placer les deux glissières CHO30 de part et d'autre sur la tôle du coffre central CHO23, de façon à ce que les crémaillères soient orientées vers l'intérieur. Les jupes se retrouvent prises en sandwitch entre la tôle et les glissières. |
|
||||||
|
|
||||||
Positionner chaque glissière avec 3 vis M6x40 (QIN40), ainsi qu'une rondelle M6 L (QIN12) entre la glissière et la tête de vis. Placer également une rondelle côté écrou puisqu'elle sera contre un tube aluminium. Ne pas serrer les vis pour le moment : les glissières devront être réglées une fois que les embases universelles (supports des sièges) seront prêtes. Vous pouvez toutefois effectuer le réglage avec les embases seules si les sièges ne sont pas encore prêts. |
|
||||||
|
|
||||||
<img src="img/Glisiere_sur_vhelio.jpg" alt="Glissière" width="600px"> |
|
||||||
|
|
||||||
Réaliser le même montage pour les deux glissières arrière CHO32. Elles se fixent sur la tôle supérieure porte bagage CHO25 avec 3 vis M6x40 par glissières. |
|
@ -1,50 +0,0 @@ |
|||||||
.document-title { |
|
||||||
width: 100%; |
|
||||||
color: #fbbb15; |
|
||||||
text-align: center; |
|
||||||
font-size: 5em !important; |
|
||||||
border-top: 2px solid black; |
|
||||||
border-bottom: 2px solid black; |
|
||||||
line-height: 1.2; |
|
||||||
font-weight: bold; |
|
||||||
} |
|
||||||
|
|
||||||
.document-subtitle { |
|
||||||
text-align: center; |
|
||||||
font-size: 1.5em; |
|
||||||
margin-top: 30px; |
|
||||||
margin-bottom: 30px; |
|
||||||
} |
|
||||||
|
|
||||||
.title-page-footer { |
|
||||||
text-align: center; |
|
||||||
font-size: 1.2em !important; |
|
||||||
margin-top: 30px; |
|
||||||
} |
|
||||||
|
|
||||||
/* displayed as a title, but doesn't count in numbering and doesn't appear in TOC */ |
|
||||||
.fake-title { |
|
||||||
font-weight: 700; |
|
||||||
font-size: 175% !important; |
|
||||||
font-family: Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif; |
|
||||||
break-before: always; |
|
||||||
} |
|
||||||
|
|
||||||
/* hide this title, we don't want to display it, it's only there to give a title to the page */ |
|
||||||
section#guide-de-montage h1 { |
|
||||||
display: none; |
|
||||||
} |
|
||||||
|
|
||||||
/* hide title numbers after h2 */ |
|
||||||
h3 span.section-number, h4 span.section-number, h5 span.section-number, h6 span.section-number { |
|
||||||
display: none; |
|
||||||
} |
|
||||||
|
|
||||||
.rst-downloads { |
|
||||||
padding: 12px; |
|
||||||
padding-top: 0; |
|
||||||
} |
|
||||||
|
|
||||||
.rst-downloads a { |
|
||||||
color: #fcfcfc; |
|
||||||
} |
|
@ -1,18 +0,0 @@ |
|||||||
{% extends "!page.html" %} |
|
||||||
{% block body %} |
|
||||||
{% if current_version and latest_version and current_version != latest_version %} |
|
||||||
<div class="warning admonition"> |
|
||||||
<p class="admonition-title">Attention</p> |
|
||||||
<p> |
|
||||||
{% if current_version.is_released %} |
|
||||||
Ceci est une ancienne version de la documentation. |
|
||||||
La dernière version est la <a href="{{ vpathto(latest_version.name) }}">{{latest_version.name}}</a>. |
|
||||||
{% else %} |
|
||||||
Ceci est une version en cours de développement. |
|
||||||
La dernière version stable est la <a href="{{ vpathto(latest_version.name) }}">{{latest_version.name}}</a>. |
|
||||||
{% endif %} |
|
||||||
</p> |
|
||||||
</div> |
|
||||||
{% endif %} |
|
||||||
{{ super() }} |
|
||||||
{% endblock %} |
|
@ -1,33 +0,0 @@ |
|||||||
{%- if current_version %} |
|
||||||
<div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions"> |
|
||||||
<span class="rst-current-version" data-toggle="rst-current-version"> |
|
||||||
<span class="fa fa-book"> Autres versions</span> |
|
||||||
{{ current_version.name }} |
|
||||||
<span class="fa fa-caret-down"></span> |
|
||||||
</span> |
|
||||||
<div class="rst-other-versions"> |
|
||||||
{%- if versions.tags %} |
|
||||||
<dl> |
|
||||||
<dt>Versions</dt> |
|
||||||
{%- for item in versions.tags %} |
|
||||||
<dd><a href="{{ item.url }}">{{ item.name }}</a></dd> |
|
||||||
{%- endfor %} |
|
||||||
</dl> |
|
||||||
{%- endif %} |
|
||||||
{%- if versions.branches %} |
|
||||||
<dl> |
|
||||||
<dt>Branches</dt> |
|
||||||
{%- for item in versions.branches %} |
|
||||||
<dd><a href="{{ item.url }}">{{ item.name }}</a></dd> |
|
||||||
{%- endfor %} |
|
||||||
</dl> |
|
||||||
{%- endif %} |
|
||||||
</div> |
|
||||||
|
|
||||||
{%- if current_version_data.pdf_url %} |
|
||||||
<div class="rst-downloads"> |
|
||||||
<a href="{{current_version_data.pdf_url}}"><span class="fa fa-download"> Télécharger au format PDF</a></span> |
|
||||||
</div> |
|
||||||
{% endif %} |
|
||||||
</div> |
|
||||||
{%- endif %} |
|
@ -1,93 +0,0 @@ |
|||||||
.wy-grid-for-nav { |
|
||||||
position: static !important; |
|
||||||
} |
|
||||||
|
|
||||||
@page { |
|
||||||
@bottom-left { |
|
||||||
content: "Guide de montage - v1.0.0a - Version de travail"; |
|
||||||
font-size: 9px; |
|
||||||
font-family: Lato, proxima-nova, Helvetica Neue, Arial, sans-serif; |
|
||||||
} |
|
||||||
@bottom-center { |
|
||||||
content: "vhelio.org Besoin d'aide ? communaute.vhelio.org"; |
|
||||||
font-size: 9px; |
|
||||||
font-family: Lato, proxima-nova, Helvetica Neue, Arial, sans-serif; |
|
||||||
white-space: pre; |
|
||||||
} |
|
||||||
@bottom-right { |
|
||||||
content: counter(page) "/94"; /* total number of pages is automatically updated by count_pdf_pages.py */ |
|
||||||
font-size: 9px; |
|
||||||
font-family: Lato, proxima-nova, Helvetica Neue, Arial, sans-serif; |
|
||||||
} |
|
||||||
|
|
||||||
counter-increment: page; |
|
||||||
} |
|
||||||
|
|
||||||
@page :first { |
|
||||||
counter-reset: page 2; |
|
||||||
@bottom-left { |
|
||||||
content: ""; |
|
||||||
} |
|
||||||
@bottom-center { |
|
||||||
content: ""; |
|
||||||
} |
|
||||||
@bottom-right { |
|
||||||
content: ""; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
.html-only { |
|
||||||
display: none; |
|
||||||
} |
|
||||||
|
|
||||||
div[role=navigation], .headerlink { |
|
||||||
display: none; |
|
||||||
} |
|
||||||
|
|
||||||
h1 { |
|
||||||
break-before: always; |
|
||||||
} |
|
||||||
|
|
||||||
.avoid-break { |
|
||||||
break-before: avoid; |
|
||||||
break-after: avoid; |
|
||||||
} |
|
||||||
|
|
||||||
.avoid-break-next-block + ul { |
|
||||||
break-inside: avoid; |
|
||||||
} |
|
||||||
|
|
||||||
.admonition { |
|
||||||
break-inside: avoid; |
|
||||||
} |
|
||||||
|
|
||||||
.resized { |
|
||||||
width: 550px; |
|
||||||
} |
|
||||||
|
|
||||||
/* Automatic title numbering */ |
|
||||||
body { |
|
||||||
counter-reset: h1 |
|
||||||
} |
|
||||||
|
|
||||||
h1 { |
|
||||||
counter-reset: h2 |
|
||||||
} |
|
||||||
|
|
||||||
h1:before { |
|
||||||
counter-increment: h1; |
|
||||||
content: counter(h1) ". " |
|
||||||
} |
|
||||||
|
|
||||||
h2:before { |
|
||||||
counter-increment: h2; |
|
||||||
content: counter(h1) "." counter(h2) ". " |
|
||||||
} |
|
||||||
|
|
||||||
.colwidths-auto { |
|
||||||
width: 100%; |
|
||||||
} |
|
||||||
|
|
||||||
table > * img { |
|
||||||
width: 100%; |
|
||||||
} |
|
@ -1 +0,0 @@ |
|||||||
pdf_url = 'vheliotech-guide-de-montage.pdf' |
|
@ -1,14 +0,0 @@ |
|||||||
# This tiny sphinx extension will simply copy the current_version (generated by sphinx_multiversion) to the 'version' entry in html_context, so that it is correctly displayed by the ReadTheDocs template |
|
||||||
# You need to have the sphinx_multiversion extension as well |
|
||||||
|
|
||||||
def setup(app): |
|
||||||
app.connect('config-inited', config_inited) |
|
||||||
|
|
||||||
def config_inited(app, config): |
|
||||||
app.connect('html-page-context', html_page_context) |
|
||||||
|
|
||||||
def html_page_context(app, pagename, templatename, context, doctree): |
|
||||||
try: |
|
||||||
context['version'] = context['current_version'].name |
|
||||||
except: |
|
||||||
context['version'] = 'no_version_found' |
|
@ -1,21 +0,0 @@ |
|||||||
# This module can read data from a python file in the source folder. This will read data from the version being built (as opposed to standard sphinx-multiversion behavior that executes python from the working copy) |
|
||||||
# All global variables defined in file current_version_data.py will be put in html_context['current_version_data'] which allows to use them in HTML templates. |
|
||||||
|
|
||||||
import sys |
|
||||||
|
|
||||||
current_version_data = {} |
|
||||||
|
|
||||||
def setup(app): |
|
||||||
app.add_config_value("version_sourcedir", '', "html") |
|
||||||
app.connect('config-inited', config_inited) |
|
||||||
|
|
||||||
def config_inited(app, config): |
|
||||||
app.connect('html-page-context', html_page_context) |
|
||||||
try: |
|
||||||
exec(open(app.config.version_sourcedir + '/current_version_data.py').read(), globals(), current_version_data) |
|
||||||
except: |
|
||||||
print('No file current_version_data.py found') |
|
||||||
pass |
|
||||||
|
|
||||||
def html_page_context(app, pagename, templatename, context, doctree): |
|
||||||
context['current_version_data'] = current_version_data |
|
Before Width: | Height: | Size: 360 KiB |
Before Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 726 KiB |
Before Width: | Height: | Size: 232 KiB |
Before Width: | Height: | Size: 299 KiB |
Before Width: | Height: | Size: 241 KiB |
Before Width: | Height: | Size: 288 KiB |
Before Width: | Height: | Size: 263 KiB |
Before Width: | Height: | Size: 270 KiB |
Before Width: | Height: | Size: 304 KiB |
Before Width: | Height: | Size: 309 KiB |
Before Width: | Height: | Size: 360 KiB |
Before Width: | Height: | Size: 325 KiB |
Before Width: | Height: | Size: 439 KiB |
Before Width: | Height: | Size: 362 KiB |
Before Width: | Height: | Size: 317 KiB |
Before Width: | Height: | Size: 366 KiB |
Before Width: | Height: | Size: 392 KiB |
Before Width: | Height: | Size: 414 KiB |
Before Width: | Height: | Size: 520 KiB |
Before Width: | Height: | Size: 619 KiB |
Before Width: | Height: | Size: 600 KiB |
Before Width: | Height: | Size: 550 KiB |
Before Width: | Height: | Size: 575 KiB |
Before Width: | Height: | Size: 620 KiB |
Before Width: | Height: | Size: 553 KiB |
Before Width: | Height: | Size: 263 KiB |
After Width: | Height: | Size: 115 KiB |
Before Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 147 KiB |
Before Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 186 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 136 KiB |
After Width: | Height: | Size: 540 KiB |
After Width: | Height: | Size: 775 KiB |
After Width: | Height: | Size: 540 KiB |
After Width: | Height: | Size: 2.4 MiB |
After Width: | Height: | Size: 713 KiB |
After Width: | Height: | Size: 903 KiB |
After Width: | Height: | Size: 1.2 MiB |
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 1.6 MiB |
After Width: | Height: | Size: 243 KiB |
After Width: | Height: | Size: 916 KiB |
After Width: | Height: | Size: 534 KiB |
After Width: | Height: | Size: 698 KiB |
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 1.1 MiB |
After Width: | Height: | Size: 424 KiB |
After Width: | Height: | Size: 243 KiB |
After Width: | Height: | Size: 301 KiB |
Before Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 133 KiB |
Before Width: | Height: | Size: 8.1 KiB |
After Width: | Height: | Size: 82 KiB |
Before Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 77 KiB |
Before Width: | Height: | Size: 408 KiB |
Before Width: | Height: | Size: 252 KiB |
Before Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 142 KiB |
After Width: | Height: | Size: 208 KiB |
After Width: | Height: | Size: 135 KiB |
After Width: | Height: | Size: 131 KiB |
After Width: | Height: | Size: 87 KiB |
After Width: | Height: | Size: 169 KiB |
After Width: | Height: | Size: 44 KiB |