Comment utiliser la couleur dans le texte avec le texte restructurés (de rst2html.py) ou comment insérer des balises HTML sans lignes vides?
-
10-10-2019 - |
Question
Comment puis-je utiliser la couleur avec texte ReStructured? Par exemple, **hello**
se traduit par <strong>hello</strong>
. Comment puis-je faire Restructurer (rst2html.py) traduire quelque chose dans <font color="####">text</font>
?
Je pensé ..raw :: html, mais il présente des lignes vides. Je veux insérer des balises HTML sans lignes vides.
La solution
J'ai trouvé cette méthode de travail
D'abord, vous avez le rôle.
.. role:: red
An example of using :red:`interpreted text`
Il se traduit comme suit.
<p>An example of using <span class="red">interpreted text</span></p>
Maintenant, vous avez la classe rouge, vous pouvez utiliser les CSS pour changer les couleurs.
.red {
color:red;
}
Autres conseils
Eh bien, je suis un nouvel utilisateur maintenant, je ne peux donc pas commenter sur la réponse des autres, grâce à la politique de stackoverflow ici. https://meta.stackexchange.com/questions/ 51926 / nouveaux utilisateurs-cant-demande-de-clarifications, sauf-en-réponses
La réponse de Sienkiew est bonne, mais je veux faire la correction au sujet de sa dernière phrase.
Il y a moyen de spécifier la feuille de style dans le fichier RST. L'indice est en post original de Prosseek, qui est la .. :: première directive.
Nous pouvons mettre les lignes suivantes au début de notre fichier RST pour préciser son style.
.. raw:: html
<style> .red {color:red} </style>
L'autre réponse laisse deviner ici à ce que je voulais faire, mais il suppose une certaine connaissance détaillée sur les feuilles de style en docutils. Voici une explication de livre de cuisine:
Dans votre fichier RST, déclarer le rôle une fois, puis utilisez:
.. role:: red
This text is :red:`colored red` and so is :red:`this`
Ensuite, vous avez besoin d'un fichier de feuille de style. Tout d'abord, utiliser Python pour copier la feuille de style par défaut sur le package docutils:
python
import os.path
import shutil
import docutils.writers.html4css1 as h
shutil.copy(os.path.dirname(h.__file__)+"/html4css1.css","my.css")
Puis modifier my.css pour ajouter vos personnalisations à la fin:
.red {
color: red;
}
Créez un fichier de configuration docutils nommé "docutils.conf":
[html4css1 writer]
stylesheet-path: my.css
embed-stylesheet: yes
Utilisation rst2html.py pour convertir votre document:
rst2html.py my_document.rst > my_document.html
Si vous ne souhaitez pas utiliser docutils.conf, vous pouvez spécifier la feuille de style à chaque fois que vous exécutez rst2html:
rst2html.py --stylesheet my.css my_document.rst > my_document.html
AFAIK, il n'y a aucun moyen de spécifier la feuille de style dans le fichier RST.
La combinaison @ de @ prosseek et les réponses RayLuo en un seul endroit - pour rendre plus facile à trouver
En haut de votre fichier RST, lieu
.. raw:: html
<style> .red {color:red} </style>
.. role:: red
:red:`test - this text should be red`
SIDE COMMENTAIRE:
Bien sûr, beaucoup de gens voudront le style dans un fichier séparé, comme le dit @sienkiew.
Mais pas toujours.
par exemple. Je générer ce qui précède d'un script que je veux que les autres utilisateurs puissent exécuter, souvent à partir d'une URL de fichier. Selon rst2html.py est assez mauvais - exiger quelque chose à nonstandard dans un fichier de configuration est pire.
S'il y avait un moyen de créer une définition locale faible pour le style - par exemple «S'il n'y a pas de style .red utilisation déjà défini, mais autrement utiliser le style déjà défini » - serait bien. Mais les définitions locales sont plus fortes afaik.
RAN rst2html.py (Docutils 0.13.1 [release], Python 3.6.4, on cygwin)
, mais d'autres outils de la TVD ont rejeté.
Travaux pour moi comme ceci:
.. raw:: html
<style> .red {color:#aa0060; font-weight:bold; font-size:16px} </style>
.. role:: red
:red:`test - this text should be red``