Re: Sulla scrittura di simbolo matematici nei forum

From: posi <positrone1_at_libero.it>
Date: Sun, 23 Feb 2020 13:04:32 +0100

Il 22/02/20 11:28, Soviet_Mario ha scritto:

>> Sì, UTF-8 è unicode.
>
> no no, unicode codifica wide char
> UTF-8 è "variable length", nel senso che supporta da 1 a 3 (forse 4)
> byte per carattere.
>

Confondere l'unicode con il wide char è un tipico errore dei programmatori.

In realtà l'unicode ha un numero di caratteri estensibile e
potenzialmente illimitato, che comunque oggi supera i 65536. Quindi
l'idea di codificarlo interamente con 2 byte (ammesso che tu intenda
questo per "wide char"), è fondamentalmente sbagliata.

Le codifiche unicode sono principalmente tre: UTF-8 che ha il pregio di
occupare meno meno spazio ma è "variable length", e quindi un vero
incubo per i programmatori. Un'altra è UTF-16 (cioè basate sul "wide
char") che occupa il doppio, ma ha il vantaggio di essere *quasi* fixed
lenght (fanno eccezione lettere oggi poco usate, come l'alfabeto fenicio
o l'aramaico imperiale, ma anche le emoticon, carte da gioco e simboli
alchemici, ecc.). L'unica codifica unicode realmente fixed lenght è la
UTF-32, che però occupa ben 4 byte per ogni carattere.


>>
>> F⃗ = 1/(4πε₀) (q₁q₂)/r² r̂
>
> è corretto vedere una r con accento circonflesso ?
>

Sì, è il simbolo di versore.
Sopra la F invece dovrebbe esserci una piccola freccetta verso destra.
Se tutti riescono a leggerla vuol dire che non ci sono problemi neanche
per questi simboli un po' più particolari.

Se necessario posso anche spiegare come inserirli.

> ci mancherebbe ! Anche un sistema linux sa che moltissima parte dei PC
> con cui scambierà dati sono macchine windows usanti unicode.
> Ma è una questione di opportunità, e le implementazioni di programmi
> entro il sistema possono anche essere un po' bacate.


Sì, ma non c'entra il sistema operativo: è uno standard.

>> resto tu stesso stai usando le vocali accentate, che sono non-ASCII.
>
> non so cosa alla fine usi Thunderbird. I font e le stringhe native di
> Debian sono UTF-8 non unicode, ma cmq anche unicode è supportato.
>

Di norma lo la codifica di scambio usato per l'unicode è l'UTF-8.
Internamente ognuno fa come vuole: il java usa UTF-16.


>> Per π o ∆ è la stessa cosa.
>>
>> Altri simboli un po' più particolari o combinazioni insolite
>> potrebbero non essere rese ottimamente oppure del tutto ignorate.
>
> in genere UTF-8 riesce a includere la maggior parte dei simboli unicode
> come sequenze valide.
> Però ci sono alcuni (credo limitati) range di codici che sono validi o
> solo in unicode o solo in UTF

A cosa ti riferisci esattamente?

> nel qual caso vengono resi un po' a cazzo dai programmi utente che
> cercano cmq di preservare la resa di tutto il resto anche dopo un codice
> invalido (che viene "circoscritto" al minimo danno per il seguito)
> .
> UTF-8 è molto compatto come occupazione di spazio, grazie alla variable
> size, ma ha una codifica non "assoluta", nel senso che nei multibyte la
> validità dello stato di un byte a volte dipende dalla "storia" degli 1 o
> 2 byte che lo precedono.
> Se non ricordo male unicode è "assoluto" nel senso che ogni sequenza è
> in teoria valida

Dato un qualunque byte preso a caso in mezzo alla stringa, si può capire
immediatamente se è l'inizio, la fine, o la parte centrale di un
carattere, quindi non c'è bisogno di scorrere tutti i byte dall'inizio
della stringa.

> La forte affermazione di unicode ha portato a introdurre ad es. in C la
> dichiarazione "wide char" per le stringhe non ASCII.
> Quel che forse non è sempre vero è che non sempre un FONT selezionato
> contiene simboli per tutte le 65536 combinazioni del dato wide char, per
> cui si possono avere simboli che, ancorché validi come stringa, non
> riescono a essere resi bene perché o il Font non è dichiarato oppure non
> è "embedded" nell'oggetto e nemmeno installato nel sistema, a quel punto
> il programma che renderizza il testo si deve arrendere ed emettere un
> simbolo di default.
>

Quello è il problema minore. Il problema grosso delle codifiche è quando
viene reso il simbolo sbagliato, e questo problema, con l'unicode è
stato risolto.
Received on Sun Feb 23 2020 - 13:04:32 CET

This archive was generated by hypermail 2.3.0 : Sat Jan 04 2025 - 04:23:27 CET