Come utilizzare il colore nel testo con il testo ristrutturato (rst2html.py) oppure come inserire i tag HTML senza righe vuote?

StackOverflow https://stackoverflow.com/questions/4669689

Domanda

Come si usa il colore con il testo ristrutturato? Ad esempio, si traduce in **hello** <strong>hello</strong>. Come posso fare ristrutturare (rst2html.py) translate qualcosa in <font color="####">text</font>?

ho pensato ..raw :: html, ma introduce righe vuote. Voglio inserire i tag HTML senza righe vuote.

È stato utile?

Soluzione

Ho trovato questo metodo di lavoro

In primo luogo, si ha il ruolo.

.. role:: red

An example of using :red:`interpreted text`

Si traduce in come segue.

<p>An example of using <span class="red">interpreted text</span></p>

Ora, si ha la classe rossa, è possibile utilizzare i CSS per cambiare i colori.

.red {
    color:red;
}

Altri suggerimenti

Bene, io sono un nuovo utente ora, quindi non posso commentare su altri risposta, grazie alla politica di StackOverflow qui. https://meta.stackexchange.com/questions/ 51926 / new-utenti-cant-chiedere-per-chiarimenti-tranne-as-risposte

La risposta di Sienkiew è buono, ma voglio fare la correzione sulla sua ultima frase.

Non c'è modo di specificare il foglio di stile nel file RST. L'indizio è nel post originale di Prosseek, che è il .. :: grezzo direttiva.

Si può mettere seguenti linee all'inizio del nostro file RST per specificare il suo stile.

.. raw:: html

    <style> .red {color:red} </style>

L'altro risposta qui allude a quello che volevo fare, ma presuppone una certa conoscenza dettagliata su fogli di stile in docutils. Ecco una spiegazione libro di cucina:

Nel file RST, dichiarare il ruolo una volta, quindi utilizzarlo:

    .. role:: red

    This text is :red:`colored red` and so is :red:`this`

Allora avete bisogno di un file di foglio di stile. In primo luogo, utilizzare Python per copiare il foglio di stile predefinito dal pacchetto docutils:

    python
    import os.path
    import shutil
    import docutils.writers.html4css1 as h
    shutil.copy(os.path.dirname(h.__file__)+"/html4css1.css","my.css")

Quindi modificare my.css per aggiungere le personalizzazioni alla fine:

    .red {
            color: red;
    }

Crea un file di configurazione docutils denominato "docutils.conf":

    [html4css1 writer]
    stylesheet-path: my.css
    embed-stylesheet: yes

uso rst2html.py per convertire il documento:

    rst2html.py my_document.rst > my_document.html

Se non si desidera utilizzare docutils.conf, è possibile specificare il foglio di stile ogni volta che si esegue rst2html:

    rst2html.py --stylesheet my.css my_document.rst > my_document.html

Per quanto ne sappia, non c'è modo di specificare il foglio di stile nel file RST.

La combinazione @ prosseek di e @ risposte di RayLuo in un unico luogo - per rendere più facile trovare

Nella parte superiore del file di RST, posto

.. raw:: html

    <style> .red {color:red} </style>

.. role:: red

:red:`test - this text should be red`

SIDE COMMENTO:

Naturalmente, molte persone vorrà lo stile in un file separato, come @sienkiew dice.

Ma non sempre.

es. Sto generando quanto sopra da uno script che voglio altri utenti siano in grado di correre, spesso da un URL di file. A seconda rst2html.py è già abbastanza grave - che richiedono qualcosa di non standard di essere in un file di configurazione è peggio.

Se ci fosse un modo per creare una definizione locale debole per lo stile - per esempio "Se non c'è uno stile .red uso già definito questo, ma per il resto utilizzare lo stile già definito" - sarebbe bello. Ma le definizioni AFAIK locali sono più forti.

Questa correva con rst2html.py (Docutils 0.13.1 [release], Python 3.6.4, on cygwin), ma altri strumenti di RST respinti.

per me funziona in questo modo:

.. raw:: html

    <style> .red {color:#aa0060; font-weight:bold; font-size:16px} </style>

.. role:: red

:red:`test - this text should be red``
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top