In rete: http://www.elegio.it/mc2/convenzioni-proformule.html
http://www.elegio.it/mc2/libreria-proformule.txt

Test - scrittura formule (200907)

Uso cinque caratteri di controllo ( _ ! ° § ^ ) che vanno usati dopo il carattere su cui agiscono ( ossia postposti e non anteposti come viene di solito fatto con un carattere di controllo ) ed uso un carattere ausiliario ( # ) opzionale che influenza la modalità di azione sul carattere che lo segue. Ecco come funzionano questi caratteri speciali [ metto in parentesi il valore unicode utile per mascherare il carattere di controllo all'analisi della funzione converto(da,ad) ]:
Attenzione Se alla function converto vengono passati non due ma tre argomenti si ottiene il cambiamento del funzionamento dei caratteri "!","°" e "§" nel seguente modo: non vengono più generati apici ma solo pedici. Quello che prima sarebbe stato un apice viene visualizzato come pedice e quello che prima sarebbe stato un pedice viene visualizzato ancora come un pedice ma... sottolineato. Questa convenzione può venire applicata per evitare che si generi confusione tra esponenti ed apici ossia indici controvarianti. Solo gli esponenti sono trattati come apici mentre gli indici sia controvarianti che covarianti sono trattati come pedici e gli indici covarianti sono pedici sottolineati.

Nei casi in cui i caratteri di controllo non agiscono vengono editati come sono. Se occorre invece disattivare la loro azione nei casi in cui normalmente agirebbero, basta anteporre il carattere ausiliario "#". Per esempio se scrivo 5! ottengo un pedice ma se voglio indicare il 5 fattoriale scrivo 5#! perché il carattere ausiliario disattiva l'azione del carattere di controllo "!".
Alternativamente si può usare la sequenza #*_ che non produce nessun carattere, neppure uno spazio bianco, ma che può servire a impedire l'entrata in funzione dei caratteri di controllo.
Per fare esperimenti per controllare come funzionano le precedenti convenzioni di scrittura, usare la seguente area di testo:




Ottengo:
?

In conclusione: queste convenzioni sono state pensate per velocizzare la scrittura di formule con apici e pedici mentre per la scrittura di nomi espressivi quando si scrivono sorgenti di linguaggi di programmazione, sono più adatte le convenzioni riportate in: http://www.elegio.it/mc2/convenzioni-tensoriali.html dato che richiedono solo l'uso di caratteri alfanumerici e non pongono limiti alla lunghezza dei nomi degli indici. Quelle convenzioni sono però più prolisse di quelle presentate in questo documento e quindi sono consigliabili queste per la realizzazione di pagine HTML.

Questa pagina contiene una piccola libreria basata su un'unica function ossia converto(da,ad) dove da è la stringa con l' id della marca da cui viene prelevato il testo da trasformare mentre ad contiene la stringa con l' id della marca in cui va messo il risultato. Il valore di ad può coincidere con quello di da. In alternativa si può nascondere il contenuto della marca che funge da sorgente indicando il seguente stile di scrittura applicato alla ipotetica marca div con id fonte:
<div id="fonte" style="display:none" >
...qui sta il testo sorgente...
</div>
In questo modo il testo sorgente diventa invisibile ma può essere consultato e/o modificato dinamicamente in caso di necessità.
La libreria è facilmente ampliabile imitando lo stile di quanto è stato già fatto. Basta soltanto conoscere il numero Unicode del simbolo che si desidera rendere usabile ed associarlo a qualche simbolo ASCII come ad esempio le cifre o qualche carattere di punteggiatura. Come pro memoria riporto qui un elenco dei caratteri speciali che potrebbero venire utili per scrivere formule; a fianco il risultato visibile:

<span title="middot">&#183;</span> ·
<span title="minus">&#8722;</span>
<span title="frac12">&#189;</span> ½
<span title="nabla">&#8711;</span>
<span title="sum">&#8721;</span>
<span title="prod">&#8719;</span>
<span title="radic">&#8730;</span>
<span title="bull">&#8226;</span>
<span title="part">&#8706;</span>
<span title="int">&#8747;</span>
<span title="infin">&#8734;</span>
<span title="asymp">&#8776;</span>
<span title="ne">&#8800;</span>
<span title="equiv">&#8801;</span>
<span title="le">&#8804;</span>
<span title="ge">&#8805;</span>
<span title="un_terzo">&#8531;</span>
<span title="punto_alto">&#729;</span>˙


La libreria Javascript, usabile in un qualsiasi documento HTML col comando:
<script src="http://www.elegio.it/mc2/convenzioni-proformule.txt" ></script>
sta in convenzioni-proformule.txt. Per capire come usare questa piccolissima libreria vedere il sorgente HTML del file http://www.elegio.it/mc2/convenzioni-proformule-test.html .